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

我在Acer Chromebook C720上运行Ubuntu 14.04。 出于某种原因,我的/etc/fstab文件是“未配置的”。

 me@chrubuntu:~$ cat /etc/fstab # UNCONFIGURED FSTAB FOR BASE SYSTEM 

为什么会这样? 如何正确配置/etc/fstab文件?

默认情况下,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。

在引导过程中,除了包含noauto的条目外,/ etc / fstab中列出的文件系统将自动挂载。

此文件包含以下格式的条目:

 device /mount-point fstype options dumpfreq passno 

device:现有设备名称,默认情况下Ubuntu使用UUID

mount-point:挂载文件系统的现有目录。

fstype:要传递给mount的文件系统类型。 默认的Ubuntu文件系统是ext4。

options:用于读写文件系统的rw,或用于只读文件系统的ro,以及可能需要的任何其他选项。 对于通常在引导序列期间未安装的文件系统,常见选项是noauto。

dumpfreq:由dump用于确定哪些文件系统需要转储。 如果缺少该字段,则假定值为零。

passno:确定应检查文件系统的顺序。 应跳过的文件系统应将其passno设置为零。 需要先检查根文件系统,然后将其passno设置为1。 其他文件系统应设置为大于1的值。 如果多个文件系统具有相同的passno,则fsck将尝试并行检查文件系统。

要将其添加到fstab文件,请使用具有root权限的文本编辑器:

 sudo -i nano /etc/fstab 

例:

 #       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。

引导系统将始终安装它们。

至于第一个问题, 为什么没有配置/etc/fstab ,我引用这个 ubuntuforums-thread:

/lib/init/fstab包含始终在引导时挂载的文件系统,如root /和虚拟文件系统。 但您仍然可以使用/etc/fstab覆盖/lib/init/fstab的条目或添加自己的条目。

所以你可以在/lib/init/fstab找到挂载的东西,并可以在/etc/fstab覆盖它们。 由于Ubuntu现在使用systemd,我想知道为什么它仍然被称为/lib/init/fstab 。 (搜索名为fstab文件,我的系统上只有/etc/fstab/lib/init/fstab使用systemd)

# UNCONFIGURED FSTAB FOR BASE SYSTEMdebootstrap生成的fstab

然后在各种图像中重复使用,包括Ubuntu Base映像: http : //cdimage.ubuntu.com/ubuntu-base/releases/18.04/release/

debootstrap使用该fstab因为它试图涵盖各种用例。 例如,在容器用例中,不需要fstab ,因为我们使用主机配置的磁盘设备。

其他init配置文件也是如此,尤其是网络。

在这里,我描述了一个详细的工作debootstrap设置,可能会激发你如何配置你的fstab仿真: https ://unix.stackexchange.com/questions/275429/creating-bootable-debian-image-with-debootstrap/473256#473256