自动挂载 CIFS 共享:系统启动时出现错误

自动挂载 CIFS 共享:系统启动时出现错误

我的操作系统是 Linux Mint 18.1。我家里的网络上有一个 NAS。我以前通过 fstab 文件挂载它的卷,一切都很好。在升级我的电脑后,我又添加了一个分区来挂载(在 SSD 上)。当我在 fstab 中添加了 automount 行时,问题就开始了。

我尝试了各种方法。电脑在启动时死机了,我不得不返回默认的 fstab 文件才能继续……最后系统完全拒绝启动,我不得不重新安装我的 Linux Mint。

我遇到的 fstab 问题:我无法修复错误消息。因此我决定使用 /etc/rc.local 并查看错误。我在 rc.local 中添加了这样的命令:

mount -t ext4 -L Data /mnt/data
mount -t cifs -o credentials=/home/user/my-sys/.user,iocharset=utf8,file_mode=0775,dir_mode=0775 //192.168.0.100/Volume_1 /mnt/vol1 2> /home/user/mounterr.log

数据分区正在顺利安装。CIFS 给出错误:安装错误 (101):网络不可访问

手动启动此 mount 命令即可。rc.local 执行期间出现错误的原因是什么?我想了解一下 - 而不是只使用另一种方法(crone 或其他方法...)。

问候,尤里

答案1

该错误mount error(101): Network is unreachable意味着您在网络启动之前尝试进行挂载。

要解决此问题,请添加_netdev选项添加到您的/etc/fstabCIFS 条目中。 _netdev意味着延迟挂载,直到您的网络已连接。

你的/etc/fstab行看起来应该像这样:

//192.168.0.100/Volume_1 /mnt/vol1 credentials=/home/user/my-sys/.user,iocharset=utf8,file_mode=0775,dir_mode=0775,_netdev 0 0

要继续使用/etc/rc.local您的坐骑,您需要设置一个新的作业(以防止阻塞),循环直到网络启动。

Ask Ubuntu 中的这个答案

(
until ping -nq -c3 W.X.Y.Z; do
   # Waiting for network
   sleep 1
done
mount -t cifs -o credentials=/home/user/my-sys/.user,iocharset=utf8,file_mode=0775,dir_mode=0775 //192.168.0.100/Volume_1 /mnt/vol1
)&

替换W.X.Y.Z为响应 ICMP 请求的 IP 地址,例如路由器网关。

相关内容