AIX命令参考大全,卷 1,a - c - chroot 命令

[ 页的底部 | 上一页 | 下一页 | 目录 | 索引 | 法律条款 ]

AIX命令参考大全,卷 1,a - c

chroot 命令

用途

更改命令的根目录。

语法

chroot Directory Command

描述

注意:如果新根目录中的特殊文件具有与实际根目录不同的主要和次要设备号,则可能会覆盖文件系统。

只有具有 root 用户权限的用户才可以使用 chroot 命令。如果具有 root 用户权限,则 chroot 命令将根目录更改到当执行 CommandDirectory 参数指定的目录。任何路径名中的第一个 /(斜杠)更改为指定 Command 及其子命令的 Directory

Directory 路径名始终相对于当前 root。即使 chroot 命令生效,Directory 路径名相对于运行进程的当前 root。

chroot 命令运行后,大多数程序可能不能正常运行。例如,如果共享库不在新的 root 文件系统中,则使用共享库的命令将失败。最常用的共享库是 /usr/ccs/lib/libc.a 库。

如果当前 root 用户位置使 /etc/passwd 文件不能到达,则 ls -l 命令不会成功给出用户名和组名。此外,如果文件(/usr/lib/nls/*)不在新的 root 文件系统中,取决于这些本地化文件的实用程序也可能会失败。您的职责是确保所有重要的数据文件都在新的 root 文件系统中,并确保已更改访问此类文件的必要路径名。

参数

Command 指定命令以使用 chroot 命令运行。
Directory 指定新的根目录。

示例

注意:以下示例中的命令可能取决于共享库。在运行 chroot 命令之前,请确保共享库在新的 root 文件系统中。
  1. 要运行 pwd 命令将 /usr/bin 目录作为 root 文件系统,请输入:

    mkdir /usr/bin/lib
     
    cp /usr/ccs/lib/libc.a /usr/bin/lib
     
    chroot /usr/bin pwd
  2. 要运行 Korn shell 子 shell 将另一个系统文件作为 root 文件系统,请输入:

    chroot /var/tmp /usr/bin/ksh

    这使目录名 /(斜杠)在 /usr/bin/ksh 命令持续时间指向 /var/tmp。它还使得原始的 root 文件系统不可访问。/var/tmp 文件上的文件系统必须包含 root 文件系统的标准目录。特别是,shell 查找 /var/tmp 文件系统中 /bin/usr/bin 文件中的命令。

    运行 /usr/bin/ksh 命令创建作为原始 shell 的单独进程运行的子 shell。 按下 END OF FILE(Ctrl-d)键控顺序以结束子 shell 并返回到您在原始 shell 中的位置。这恢复原始 shell 的环境,包括 .(当前目录)和 /(根目录)的意义。

  3. 要创建与原始 root 相关的文件,而非新文件,请输入:

    chroot directory Command > file

文件

/etc/passwd 指定包含基本用户属性的文件。
/usr/ccs/lib/libc.a 指定标准 I/O 库和标准 C 库。
/usr/ccs/lib/libcurses.a 指定 curses 库。
/usr/lib/liblvm.a 指定 LVM(逻辑卷管理器)库。
/usr/ccs/lib/libm.a 指定 math 库。
/usr/lib/libodm.a 指定 ODM(对象数据管理器)库。
/usr/sbin/chroot 包含 chroot 命令。

相关信息

ksh 命令和 ls 命令。

chdir 子例程和 chroot 子例程。

AIX 5L Version 5.2 System Management Concepts: Operating System and Devices 中的文件系统说明了 文件系统的类型、管理、结构和维护。

[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 | 法律条款 ]