我在 Acer Chromebook C720 上运行 Ubuntu 14.04。由于某种原因,我的/etc/fstab
文件处于“未配置”状态。
me@chrubuntu:~$ cat /etc/fstab
# UNCONFIGURED FSTAB FOR BASE SYSTEM
为什么会发生这种情况?我该如何正确配置我的/etc/fstab
文件?
答案1
# UNCONFIGURED FSTAB FOR BASE SYSTEM
是生成fstab
的debootstrap
。
然后它可以在各种图像中重复使用,包括 Ubuntu Base 图像:http://cdimage.ubuntu.com/ubuntu-base/releases/18.04/release/
debootstrap
之所以使用它,fstab
是因为它试图涵盖各种各样的用例。例如,在容器用例中,fstab
不需要,因为我们使用主机配置的磁盘设备。
其他初始化配置文件也是如此,尤其是网络。
在这里我描述了一个详细的工作debootstrap
设置,可能会启发您如何配置fstab
模拟:https://unix.stackexchange.com/questions/275429/creating-bootable-debian-image-with-debootstrap/473256#473256
答案2
对于第一个问题,为什么 /etc/fstab
没有配置,我引用这ubuntuforums 主题:
/lib/init/fstab
包含启动时始终挂载的文件系统,如根文件系统/
和虚拟文件系统。但您仍然可以使用/etc/fstab
它来覆盖条目/lib/init/fstab
或添加您自己的条目。
因此,您可以在 中找到启动时挂载的内容/lib/init/fstab
,并可以在 中覆盖它们/etc/fstab
。由于 Ubuntu 现在使用 systemd,我想知道为什么它仍然被称为/lib/init/fstab
。(搜索名为 的文件fstab
,我在使用 systemd 的系统上只有/etc/fstab
和/lib/init/fstab
)
答案3
默认情况下,Ubuntu 在安装时会在 fstab 中使用 UUID。
要显示已创建的分区,请在终端中以用户身份键入以下命令:
ls -l /dev/disk/by-uuid
它将输出如下内容:
lrwxrwxrwx 1 root root 10 2014-07-25 21:43 348ea9e6-7879-4332-8d7a-915507574a80 -> ../../sda1
lrwxrwxrwx 1 root root 10 2014-07-25 21:43 610aaaeb-a65e-4269-9714-b26a1388a106 -> ../../sda2
lrwxrwxrwx 1 root root 10 2014-07-25 21:43 857c5e63-c9be-4080-b4c2-72d606435051 -> ../../sda5
lrwxrwxrwx 1 root root 10 2014-07-25 21:43 a83b8ede-a9df-4df6-bfc7-02b8b7a5f1f2 -> ../../sda6
lrwxrwxrwx 1 root root 10 2014-07-25 21:43 ad662d33-6934-459c-a128-bdf0393e0f44 -> ../../sda7
下一步是将 UUID 分区输入到 /etc/fstab。
在启动过程中,/etc/fstab 中列出的文件系统将自动挂载,除了包含 noauto 的条目之外。
该文件包含以下格式的条目:
device /mount-point fstype options dumpfreq passno
设备:现有设备名称,Ubuntu 默认使用 UUID
挂载点:挂载文件系统的现有目录。
fstype:要传递给 mount 的文件系统类型。Ubuntu 默认文件系统为 ext4。
选项:rw(用于读写文件系统)或 ro(用于只读文件系统),后面跟上可能需要的任何其他选项。一个常用选项是 noauto,用于引导序列期间通常不安装的文件系统。
dumpfreq:由 dump 用来决定哪些文件系统需要转储。如果缺少此字段,则假定值为零。
passno:确定检查文件系统的顺序。应跳过的文件系统的 passno 应设置为零。根文件系统需要先于其他所有文件系统进行检查,并且应将其 passno 设置为 1。其他文件系统应设置为大于 1 的值。如果多个文件系统具有相同的 passno,则 fsck 将尝试并行检查文件系统(如果可能)。
要将其添加到您的 fstab 文件,请使用具有 root 权限的文本编辑器:
sudo -i
nano /etc/fstab
例子:
# <device file system> <mount point> <type> <options> <dump> <pass>
UUID=ad662d33-6934-459c-a128-bdf0393e0f44 / ext4 defaults 1 1
UUID=30ebb8eb-8f22-460c-b8dd-59140274829d /home ext4 defaults 1 1
UUID=7014f66f-6cdf-4fe1-83da-9cab7b6fab1a swap swap defaults 0 0
Ctrl+ O,保存文件。Ctrl+ X,关闭 nano。
计算机重新启动后,文件系统将自动挂载。
除非需要一些特殊选项,否则没有必要在 fstab 中列出 /proc 和 /sys。
启动系统总是会挂载它们。
答案4
/etc/fstab
请注意,我在 ZFS 中看到了这一点。使用 ZFS无需挂载任何东西根据 Arch Wiki。
zfs-import-cache.service
导入读取文件的 zfs 池/etc/zfs/zpool.cache
。