为什么我的 /etc/fstab 文件未配置?

为什么我的 /etc/fstab 文件未配置?

我在 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是生成fstabdebootstrap

然后它可以在各种图像中重复使用,包括 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

相关内容