pivot_root命令的使用

Posted on 2017-05-18 15:09  白小山  阅读(7242)  评论(0编辑  收藏  举报

pivot_root命令用于将根目录替换为指定目录.语法如下:

pivot_root new_root old_root  ,其中new_root就是要替换的目标目录,old_root是用来存放原本根目录的地方.

具体例子可以用:

1. mkdir /new-root

2. mount -n -t tmpfs -o size=500M none /new-root

3. cd /new-root

4. mkdir old-root

5. pivot_root . old-root

其中在运行第五步之前需要禁用共享,否则会提示参数无效.禁用共享命令 :unshare -m  .运行该命令后会切换到root用户,可以su回来继续进行第五步.至于为何会切换到root用户,原因尚不清楚,猜测可能是原用户被踢下线导致的.

 

另外unshare -m也可以用在mount --move 命令无法使用的时候,因为mount --move命令后面接的挂载点不能在挂载点的传播类型标记为share的目录下,也就是说要把移动的挂载点本身和所有传播类型标记为share的上级目录都改掉,显然很麻烦,所以可以用unshare -m 停止共享就行了.