chroot 整理

chroot 是什么?

就是change root directory ,比如默认是 /, 可以用这个chroot 把 / 换成其他指定的目录

chroot 干什么的?

增加了系统的安全性,限制了用户的权力

这个一般是在登录 (login) 前使用 chroot,以此达到用户不能访问一些特定的文件

建立一个与原系统隔离的系统目录结构,方便用户的开发

使用 chroot 后,系统读取的是新根下的目录和文件,这是一个与原系统根下文件不相关的目录结构。在这个新的环境中,可以用来测试软件的静态编译以及一些与系统不相关的独立开发。

切换系统的根目录位置,引导 Linux 系统启动以及急救系统等

chroot 的作用就是切换系统的根位置,而这个作用最为明显的是在系统初始引导磁盘的处理过程中使用,从初始 RAM 磁盘 (initrd) 切换系统的根位置并执行真正的 init。另外,当系统出现一些问题时,我们也可以使用 chroot 来切换到一个临时的系统。

 

 

用在什么场景?

实例:通过 chroot 重新设置 root 密码

 

有什么好处?

 

 

注意,自己在本地编译一个程序生成 a.out 之后,拷进target/bin/中这样运行却不行, 因为它包含了动态连接的库,需要用 ldd 查看 a.out 需要那些动态库,将这些库拷贝到新根的对应路径下才能执行。

 

Ref:

https://zhuanlan.zhihu.com/p/409638848

https://rumenz.com/rumenbiji/linux-chroot.html

https://www.bilibili.com/video/BV1dB4y147CH/?spm_id_from=333.337.search-card.all.click, 这家伙讲的好

 

posted @ 2022-10-29 11:47  mashuai_191  阅读(7)  评论(0编辑  收藏  举报