Ict-创新/LPI/104.3
考生应能够配置文件系统的挂载
关键知识领域
- 手动挂载和卸载文件系统。
- 在启动时配置文件系统挂载。
- 配置用户可挂载的可移动文件系统。
在启动时挂载文件系统
在启动时,/etc/fstab 文件为块设备分配挂载点。
/etc/fstab 的格式
/etc/fstab 示例
LABEL=//ext2defaults1 1 LABEL=/boot /boot ext2defaults1 2 LABEL=/home /home ext3defaults1 2 /dev/fd0/mnt/floppy autonoauto,owner0 0 LABEL=/usr/usrext2defaults1 2 LABEL=/var/varext3defaults1 2 none/procprocdefaults0 0 none/dev/shmtmpfsdefaults0 0 none/dev/pts devpts gid=5,mode=6200 0 /dev/hdc9swap,pri=-1swapdefaults0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,owner,kudzu,ro 0 0 |
可用于 fstab 文件的选项
- atime / noatime / relatime Unix stat 结构记录文件最后访问时间 (atime)、修改时间 (mtime) 和创建时间 (ctime)。一个结果是,每次读取文件时都会写入 atime,这已被严重批评会导致性能下降和磨损增加。但是,atime 被一些应用程序使用,并被一些用户需要,因此它可以配置为 atime(按访问更新)、noatime(不更新)或(在 Linux 中)relatime(如果比 mtime 更旧则更新 atime)。在 Linux 2.6.29 之前,atime 是默认值;从 2.6.30(2009 年 6 月 9 日)开始,relatime 是默认值,
- auto / noauto - 使用 auto 选项,设备将在启动时或执行 mount -a 命令时自动挂载。auto 是默认选项。如果您不想自动挂载设备,请在 /etc/fstab 中使用 noauto 选项。使用 noauto,设备只能显式挂载。
- dev / nodev - 在文件系统上解释/不解释块特殊设备。
- exec / noexec - exec 允许您执行该分区上的二进制文件,而 noexec 不允许您这样做。noexec 可能对不包含二进制文件的分区(如 /var)有用,或者包含您不想在系统上执行的二进制文件,或者甚至无法在系统上执行的二进制文件。最后一种情况可能是 Windows 分区。
- ro - 以只读方式挂载。
- rw - 以读写方式挂载文件系统。再次,使用此选项可能会缓解新 Linux 用户的困惑,因为他们无法写入软盘、Windows 分区或其他媒体,
- sync / async - 文件系统的输入和输出应如何执行。sync 表示同步执行。如果您查看 fstab 示例,您会注意到这是与软盘一起使用的选项。简单地说,这意味着当您例如将文件复制到软盘时,更改将在您发出复制命令的同时物理写入软盘。
- suid / nosuid - 允许/阻止 suid 和 sgid 位的操作。
- user / users / nouser - user 允许任何用户挂载文件系统。这会自动隐含 noexec、nosuid、nodev,除非被覆盖。如果指定了 nouser,则只有 root 可以挂载文件系统。如果指定了 users,则 group users 中的每个用户都将能够卸载卷。
- owner - 允许设备所有者挂载,
- defaults - 使用默认设置。默认设置在文件系统级别按文件系统定义。对于 ext3 文件系统,这些设置可以使用 tune2fs 命令设置。Ext3 文件系统的正常默认值等效于 rw,suid,dev,exec,auto,nouser,async(无 acl 支持)。现代基于 Red Hat 的系统在根文件系统上设置 acl 支持,但在用户创建的 Ext3 文件系统上不设置。某些文件系统(如 XFS)默认启用 acl。默认文件系统挂载属性可以在 /etc/fstab 中被覆盖。
mount 命令用于使特定设备在特定目录(挂载点)上可用。语法是
mount -t [FSTYPE] -o [OPTIONS] DEVICE DIRECTORY
例如,我们可以使用以下命令将 CDROM 挂载到挂载点 /media/cdrom 上
# mount -t iso9660 /dev/cdrom /media/cdrom |
Mount 将已挂载文件系统的列表保存在 /etc/mtab 中。不带任何选项输入 mount 将显示当前已挂载的所有文件系统。输出类似于 /etc/mtab。内核还在 /proc/mounts 中跟踪已挂载的文件系统。
用户可挂载的可配置系统
在运行的系统上,/etc/fstab 文件还充当将资源分配给特定目录的快捷方式。例如
# mount /dev/cdrom |
mount 实用程序会读取 fstab 并推断出在哪里挂载资源。请注意,一些设备使用标签进行访问。标签使用 tune2fs 工具分配给设备
#tune2fs -L /usr/local /dev/hdb12 |
Mount 可以接受上面列出的大多数 fstab 选项。这允许用户以只读方式或使用 noexec 来挂载文件系统。除了挂载已在 /etc/fstab 文件中定义的文件系统外,mount 还可用于挂载未在 fstab 中定义的新设备。例如,如果将外部 SATA 驱动器插入机器,并给出其设备节点 /dev/sdc,则可以将其第一个分区挂载为
# mount /dev/sdc1 /mnt |
这将使设备的第 1 个分区在 /mnt 目录下可用。
请记住,mount -a 将挂载所有未挂载且没有选项 noauto 的 /etc/fstab 中的文件系统 |
umount 命令将卸载设备。请注意,命令拼错了!语法是
umount DEVICE or MOUNT-POINT
例如,以下命令都将卸载 CDROM 设备
# umount /dev/cdrom |
或
# umount /media/cdrom |
按照惯例,/media 下的挂载点用于可移动设备,例如 CD 或 USB 存储驱动器。
使用过的文件、术语和实用程序:* /etc/fstab
- /media
- mount
- umount