我正在运行安装了Debian 8(Jessie)的经过修改的WD MyCloud(第1代)NAS。
由于设备的细微差别,我无法调整根分区的大小,并且在其空间上苦苦挣扎。
为了解决这个问题,我已经将/var
和/usr
目录同步到了主数据分区上。
然后,我将以下几行添加到/etc/fstab
:
/data/rootfs/var /var none defaults,bind 0 0
/data/rootfs/usr /usr none defaults,bind 0 0
在重新启动,我发现/var
目录已成功地被安装,但该/usr
目录还没有。
如果再运行mount -a
,则不会出现任何错误,并且/usr
目录已正确安装。
怎么了
如果您使用systemd,则挂载是并行完成的(通过将fstab条目动态转换为挂载单元),因此不会保留行序,这与系统前的经验是一样的。
您有一个无法自动猜测的依赖性:在安装/data/
之前先进行安装/usr
。否则,您将获得比赛条件。
您必须使用手动将依赖项添加为伪安装选项x-systemd.requires=
。因此,如果以前应该挂载的挂载点是/data
,这应该可以使它工作:
/data/rootfs/var /var none x-systemd.requires=/data,bind 0 0
/data/rootfs/usr /usr none x-systemd.requires=/data,bind 0 0
如果别人发现了这个问题,但使用的情况下是/data
作为一个远程网络文件系统,如NFS,伪安装选项_netdev
(预systemd选项也由systemd识别)必须也可以在添加/data/rootfs/usr
条目把一切工作正常,因为none
不能自动提示这一点,没有提示可能会混淆x-systemd.requires=
分辨率。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句