![fstab 可以通过读取文件或文件名来动态挂载分区吗?](https://linux22.com/image/153208/fstab%20%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E8%AF%BB%E5%8F%96%E6%96%87%E4%BB%B6%E6%88%96%E6%96%87%E4%BB%B6%E5%90%8D%E6%9D%A5%E5%8A%A8%E6%80%81%E6%8C%82%E8%BD%BD%E5%88%86%E5%8C%BA%E5%90%97%EF%BC%9F.png)
我的分区结构如下:
/dev/sdc1 => Partition 1 ( My OS. [ Linux flavour ] )
/dev/sdc2 => Partition 2 ( This contents some data. )
/dev/sdc3 => Partition 3 ( This also contents some data. )
/dev/sdc4 => Partition 4 ( I want this as a deciding partition. )
我正在尝试根据分区 4 中存在的文件动态挂载分区 2 或分区 3。
例如:-如果分区 4 包含名为two
.如果分区 4 包含名为 的文件,则将安装分区 3 three
。
笔记:-该分区永远不会一起安装,即如果安装了分区 2,则在卸载分区 2 之前不会安装分区 3。因此我可以为两个分区使用一个公共目录。
由于我的操作系统上有 systemd,我可以编写一个启动脚本,该脚本可以从分区 4 读取并在启动时安装适当的分区,并将分区记录写入 /etc/fstab。
但根据我的理解,fstab 是关键文件,如果发生任何故障或 fstab 损坏,它将阻止系统启动。
问题:
现在我想要实现的是我可以在 fstab 中添加一个条目,该条目将动态读取分区 4,并根据分区 4 中存在的文件添加分区 2 或分区 3 的条目。
答案1
但根据我的理解,fstab 是关键文件,如果发生任何故障或 fstab 损坏,它将阻止系统启动。
正确的。
现在我想要实现的是我可以在 fstab 中添加一个条目,该条目将动态读取分区 4,并根据分区 4 中存在的文件添加分区 2 或分区 3 的条目。
通过正确的命令和访问权限,您实际上可以写入任何文件,包括/etc/fstab
.
如果您尝试这样做,将会发生的情况是,您写入的任何内容fstab
都会在操作系统读取并安装适当的文件系统之后写入那里。
- 充其量,您的更改不会产生任何影响。
- 最坏的情况是,您在
/etc/fstab
编辑中犯的任何错误或拼写错误实际上都会在下次重新启动时“弹出”(这对于共享计算机或正常运行时间较长的计算机来说确实是个坏消息,因为您可能不记得篡改过/etc/fstab
)
答案2
解决方案应该是基于 systemd 的,您不必使用/etc/fstab
systemd 进行编辑,为什么要这样做?您只需根据您概述的因素安装分区,然后就可以了。
我不明白为什么你想要编辑/etc/fstab
如果 systemd 可以安装你需要的东西。请注意,如果其中的条目/etc/fstab
不可用,systemd 将拒绝启动。这意味着在带有 systemd 的系统上,/etc/fstab
只能用于启动必需的静态文件系统。