fstab 中的永久网络驱动器挂载不起作用(由于尝试挂载时网络不在线)

ekv*_*_56 0 centos mount fstab

我在 Windows10 机器上托管了一个网络驱动器,它可以通过以下命令很好地安装到我的 CentOS7 机器上:

sudo mount -t cifs //ipaddress/sharedfoldername /mountpoint --verbose -o credentials:/credential/file/location,file_mode=0666,dir_mode=0777
Run Code Online (Sandbox Code Playgroud)

file 和 dir 模式用于挂载的权限。无论如何,挂载很好,但是当我尝试执行 /etc/fstab 挂载时,我收到错误消息。

我将提供我的整个 fstab 文件内容和下面的确切错误。该错误出现在启动时,它启动到紧急模式并显示错误,并为我提供了使用 CTRL + D 继续的选项。

fstab我试图开始工作的坐骑是:

//ipaddress/sharedfoldername /mnt cifs credentials=/etc/smbcredentials,uid=1001,gid=1001,_netdev 0 0
Run Code Online (Sandbox Code Playgroud)

我的/etc/fstab内容:

#
# /etc/fstab
# Created by anaconda on Thu Dec 13 09:33:55 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=4f3871fe-a798-4d51-ad90-c40b095a2bd0 /                       ext4    defaults        1 1
UUID=1bb03b6d-3a76-4979-aa63-ff3e0eb4cc5f /boot                   ext4    defaults        1 2
UUID=f89fdb96-6dbf-4865-aa6b-1d5cc74f2d48 /home                   ext4    defaults        1 2
UUID=86f38c73-f9e0-490b-8c96-3321f9413c0d swap                    swap    defaults        0 0
//ipaddress/sharedfoldername /mnt cifs credentials=/etc/smbcredentials,uid=1001,gid=1001,_netdev 0 0

Run Code Online (Sandbox Code Playgroud)

该错误出现在启动时,您可以在下面找到它: 您正在查看 CIFS 位,无论如何需要对错误的挂载选项进行排序,这在 fstab cifs 挂载之前就存在。谢谢

错误


@telcoM 的回答

我重新启动并在启动时收到以下错误: 尝试@telcoM 的回答后出错

然后当我看到错误后登录时,我的文件浏览器左侧出现一个快捷方式,当我单击它时,我收到此错误:

Unable to mount 'shared-folder-name', mount: only root can mount //ipaddress/sharedfoldername on /mountpoint


FSTAB@TELCOM 的建议之后我的文件

#
# /etc/fstab
# Created by anaconda on Tue Dec 11 14:28:31 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=4d48ab0d-e1ab-4d7e-9f64-8481a7690060 /                       ext4    defaults        1 1
UUID=a7fad550-81d7-4150-8b76-e89584e4cfdf /boot                   ext4    defaults        1 2
UUID=0baabbc4-2dc0-4971-9d2b-c123e5ad7355 /home                   ext4    defaults        1 2
UUID=7756eafb-382c-46b3-aae8-e44d7e2cfe06 swap                    swap    defaults        0 0
#
//ipadress/sharedfoldername /mount/location cifs x-systemd.after=network-online.target,credentials=/credentials/location,vers=3.0,file_mode=0666,dir_mode=0777,uid=1001,gid=1001 0 0
Run Code Online (Sandbox Code Playgroud)

tel*_*coM 5

tmpfs: Bad mount option huge出轮番是内核错误:看到这个链接。

“连接到套接字时出错”意味着系统正在尝试在网络接口完全启用之前安装 Windows 共享。它不应该发生,但是您可以添加一个新的 systemd 样式的挂载选项来明确说明它:x-systemd.after=network-online.target. 该_netdev选项曾经是执行相同操作的旧方法,但显然在 CentOS 移至systemd7.0 版本后它不再起作用。

正如我在对您之前问题的回答中所写的那样,如果您希望每个人都能够访问共享,则需要提供 mount options file_mode=0666,dir_mode=0777。如果你这样做,那么这些uid=1001,gid=1001选项可能是不必要的,但如果你愿意,你仍然可以使用它们。

为了消除有关更改的 SMB 协议默认版本的丑陋警告(自 2017 年 5 月 WannaCry 勒索软件感染的后果)vers=3.0,如果共享由合理的现代版本提供,您还需要添加挂载选项的窗户。

所以,/etc/fstab条目应该是这样的(为了可读性,分成多行):

//ipaddress/sharedfoldername /mnt cifs 
x-systemd.after=network-online.target,credentials=/etc/smbcredentials,
vers=3.0,file_mode=0666,dir_mode=0777,uid=1001,gid=1001 0 0
Run Code Online (Sandbox Code Playgroud)

一个fstab条目应该总是正好有 6 个由空格分隔的字段 - 不多也不少。