大佬教程收集整理的这篇文章主要介绍了取消共享--pid / bin / bash-fork无法分配内存,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
取消共享-p / bin / bash
@H_801_2@取消共享进程将执行/ bin / bash,并且/ bin / bash派生几个子进程,bash的第一个子进程将成为新名称空间的PID
1,并且该子进程将在完成其工作后退出。因此,新名称空间的PID 1退出。
@H_801_2@PID 1进程具有特殊功能:它应该成为所有孤立进程的父进程。如果根名称空间中的PID 1进程退出,内核将出现恐慌。如果子命名空间中的PID
1进程退出,linux内核将调用disable_pID_alLOCATIOn函数,该函数将清除该命名空间中的PIDNS_HASH_ADDING标志。当linux内核创建新进程时,内核将调用alloc_pID函数在命名空间中分配PID,并且如果未设置PIDNS_HASH_ADDING标志,则alloc_pID函数将返回-
ENOMEM错误。这就是为什么出现“无法分配内存”错误的原因。
@H_801_2@您可以使用’-f’选项解决此问题:
取消共享-fp / bin / bash
@H_801_2@如果使用’-f’选项运行unshare,unshare将在创建新的pID名称空间后派生一个新进程。然后在新进程中运行/ bin /
bash。新进程将是新pID名称空间的pID 1。然后bash还将派生几个子流程来完成一些工作。由于bash本身是新pID名称空间的pID
1,因此其子进程可以正常退出。
以上是大佬教程为你收集整理的取消共享--pid / bin / bash-fork无法分配内存全部内容,希望文章能够帮你解决取消共享--pid / bin / bash-fork无法分配内存所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。