Chinaunix首页 | 论坛 | 博客
  • 博客访问: 119196
  • 博文数量: 25
  • 博客积分: 2330
  • 博客等级: 大尉
  • 技术积分: 615
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-25 22:31
文章分类

全部博文(25)

文章存档

2008年(25)

我的朋友

分类: LINUX

2008-07-09 00:19:43

  最初使用chroot这个命令是在 fedora 系列的救援模式下,实现根文件系统由光盘上的文件系统切换到本地硬盘上的文件系统. 最近由于开发中要用到这个命令,故好好看了看文档,加深一下了解.

  这个命令的功能描述为:Run a command with a different root directory. 即在/目录理解成其它目录的环境下运行一个命令. 而我以前将其错误的理解成整个应用环境的功换. chroot下应用执行环境与原来的环境的差别只是/目录的实际物理路径不一样(当然会造成同样的路径所访问到的实际文件不一样)

 不过实际使用中,一般都是这样用chroot:
chroot 目录
 这种用法后面没有跟一个命令作为参数,chroot会默认执行SHELL环境变量所保存的值作为命令来执行. 由于SHELL这个程序运行起来后不会退出,且会在终端下给出命令提示符,所以整个个命令执行起来后,即陷入,同时出现新shell的提示符,给人的感觉是切换到新的用户环境. 由于新的shell会重新载入一些环境变量以及初始化脚本,故新环境下坏境变量与原来的环境变量还是有一些差别的.

要测试的话:
新建一个目录,把/bin以及/lib目录拷贝到新目录下,然后就可以chroot到新目录,输入exit即回到原来的环境.
阅读(921) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~