CIFS 安装问题,错误 cifs_mount 失败,返回代码 = -2

tra*_*ows 5 fstab mount cifs systemd

我的 CIFS 安装可以正常工作,但已损坏。它仍然安装sudo mount -a,但不会在启动时安装。CIFS 共享托管在树莓派 4 上的 openmediavault 5 上。我在 OMV 日志中没有看到任何错误。

\n

我的 fstab 条目如下所示:

\n
//192.168.1.97/sharedrive /media/Nas cifs credentials=/home/brad/.smbcredentials,vers=3,_netdev,iocharset=utf8,auto,forceuid,forcegid,uid=1000,gid=5000,file_mode=0777,dir_mode=0777 0 0\n
Run Code Online (Sandbox Code Playgroud)\n

DMESG 输出如下所示:

\n
CIFS: Attempting to mount //192.168.1.97/sharedrive\nCIFS VFS: Error connecting to socket. Aborting operation.\nCIFS VFS: cifs_mount failed w/return code = -2\n
Run Code Online (Sandbox Code Playgroud)\n

JOURNALLCTL 输出如下所示:

\n
systemd[1]: media-Nas.mount: Mount process exited, code=exited, status=32/n/a\nsystemd[1]: media-Nas.mount: Failed with result 'exit-code'.\nsystemd[1]: Failed to mount Mount CIFS Share.\n
Run Code Online (Sandbox Code Playgroud)\n

任何帮助将不胜感激。谢谢!

\n

编辑:

\n

的输出systemctl status NetworkManager-wait-online.service

\n
systemctl status NetworkManager-wait-online.service\n\xe2\x97\x8f NetworkManager-wait-online.service - Network Manager Wait Online\n     Loaded: loaded (/lib/systemd/system/NetworkManager-wait-online.service; enabled; vendor preset: enabled)\n     Active: active (exited) since Fri 2021-01-29 17:42:32 EST; 43min ago\n       Docs: man:nm-online(1)\n    Process: 806 ExecStart=/usr/bin/nm-online -s -q --timeout=30 (code=exited, status=0/SUCCESS)\n   Main PID: 806 (code=exited, status=0/SUCCESS)\n\nJan 29 17:42:26 HP-Laptop systemd[1]: Starting Network Manager Wait Online...\nJan 29 17:42:32 HP-Laptop systemd[1]: Finished Network Manager Wait Online.\n
Run Code Online (Sandbox Code Playgroud)\n

的输出systemd-networkd-wait-online

\n
systemctl status systemd-networkd-wait-online\n\xe2\x97\x8f systemd-networkd-wait-online.service - Wait for Network to be Configured\n     Loaded: loaded (/lib/systemd/system/systemd-networkd-wait-online.service; disabled; vendor preset: enabled)\n     Active: inactive (dead)\n       Docs: man:systemd-networkd-wait-online.service(8)\n
Run Code Online (Sandbox Code Playgroud)\n

编辑2:

\n
systemctl status systemd-networkd-wait-online\n\xe2\x97\x8f systemd-networkd-wait-online.service - Wait for Network to be Configured\n     Loaded: loaded (/lib/systemd/system/systemd-networkd-wait-online.service; enabled; vendor preset: enabled)\n     Active: active (exited) since Fri 2021-01-29 18:42:00 EST; 3min 54s ago\n       Docs: man:systemd-networkd-wait-online.service(8)\n    Process: 444 ExecStart=/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)\n   Main PID: 444 (code=exited, status=0/SUCCESS)\n\nJan 29 18:42:00 HP-Laptop systemd[1]: Starting Wait for Network to be Configured...\nJan 29 18:42:00 HP-Laptop systemd[1]: Finished Wait for Network to be Configured.\n
Run Code Online (Sandbox Code Playgroud)\n

编辑3:

\n

的输出systemctl status networkd-dispatcher.service systemd-networkd.service

\n
\xe2\x97\x8f networkd-dispatcher.service - Dispatcher daemon for systemd-networkd\n     Loaded: loaded (/lib/systemd/system/networkd-dispatcher.service; enabled; vendor preset: enabled)\n     Active: active (running) since Fri 2021-01-29 19:19:51 EST; 1min 20s ago\n   Main PID: 747 (networkd-dispat)\n      Tasks: 1 (limit: 9072)\n     Memory: 19.7M\n     CGroup: /system.slice/networkd-dispatcher.service\n             \xe2\x94\x94\xe2\x94\x80747 /usr/bin/python3 /usr/bin/networkd-dispatcher --run-startup-triggers\n\nJan 29 19:19:51 HP-Laptop systemd[1]: Starting Dispatcher daemon for systemd-networkd...\nJan 29 19:19:51 HP-Laptop systemd[1]: Started Dispatcher daemon for systemd-networkd.\nJan 29 19:19:57 HP-Laptop networkd-dispatcher[747]: WARNING:Unknown index 3 seen, reloading interface list\nJan 29 19:20:00 HP-Laptop networkd-dispatcher[747]: WARNING:Unknown index 5 seen, reloading interface list\nJan 29 19:20:00 HP-Laptop networkd-dispatcher[747]: WARNING:Unknown index 6 seen, reloading interface list\n\n\xe2\x97\x8f systemd-networkd.service - Network Service\n     Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)\n     Active: active (running) since Fri 2021-01-29 19:19:49 EST; 1min 22s ago\nTriggeredBy: \xe2\x97\x8f systemd-networkd.socket\n       Docs: man:systemd-networkd.service(8)\n   Main PID: 431 (systemd-network)\n     Status: "Processing requests..."\n      Tasks: 1 (limit: 9072)\n     Memory: 4.1M\n     CGroup: /system.slice/systemd-networkd.service\n             \xe2\x94\x94\xe2\x94\x80431 /lib/systemd/systemd-networkd\n
Run Code Online (Sandbox Code Playgroud)\n

Raf*_*ffa 1

您的fstab条目看起来不错并且应该可以正常工作。

然而,它。似乎是在网络连接可用之前尝试安装(特别是 systemd 的连接)。因此出现了这些错误:

CIFS VFS:连接到套接字时出错。正在中止操作。

systemd[1]:media-Nas.mount:挂载进程已退出,代码=已退出,状态=32/n/a systemd[1]:media-Nas.mount:失败,结果为“退出代码”。systemd[1]:无法挂载 CIFS 共享。

这是由于该服务systemd-networkd-wait-online 被禁用所致。

像这样启用服务:

sudo systemctl enable systemd-networkd-wait-online
Run Code Online (Sandbox Code Playgroud)

这应该执行没有错误。

之后重新启动您的系统。您的网络共享现在应该在启动时安装。

如果共享仍未安装,请检查:

systemctl status networkd-dispatcher.service systemd-networkd.service
Run Code Online (Sandbox Code Playgroud)

并查看任一服务是否被禁用并启用它们。然后重新启动系统。


Jag*_*ags 1

我也有完全相同的问题。虽然在我的例子中,CIFS 共享托管在带有 DD WRT 3.0 的 ASUS RT AC68U 上

\n

这是我解决问题的方法:

\n

(1) 启用这些服务(因为我过去已经禁用了这些服务):

\n
sudo systemctl enable systemd-networkd-wait-online\n\nsudo systemctl enable systemd-networkd.service\n\nsudo systemctl enable NetworkManager-wait-online.service\n
Run Code Online (Sandbox Code Playgroud)\n

注意:如果这些服务中有任何一个masked,那么您需要首先unmask,然后启用它。

\n

您可以在此处找到有关如何正确操作的更多信息unmask[1][2]

\n

(2) 我注释掉(删除)fstabCIFS共享条目,并创建systemd mount为 cifs 共享创建了:

\n

注意:在目录中创建一个新文件 media-admn-nas.mount/etc/systemd/system

\n

文件名必须包含安装点名称,其中斜杠替换为 \xe2\x80\x9cminus\xe2\x80\x9d。挂载目录/media/admn/nas => media-admn-nas.mount

\n

sudo nano /etc/systemd/system/media-admn-nas.mount

\n
[Unit]\nDescription=CIFS Mount Service \nRequires=network-online.target systemd-networkd.service\nAfter=network-online.target network-online.service media-admn-1\\x2d6TB.mount remote-fs.target\nWants=network-online.target NetworkManager-wait-online.service\n\n[Mount]\nWhat=//192.168.1.1/nas\nWhere=/media/admn/nas\nOptions=rw,_netdev,auto,cache=none,vers=3.11,credentials=/home/admn/.smbcredentials,forceuid,forcegid,uid=1000,gid=1000\nType=cifs\nTimeoutSec=15\n\n[Install]\nWantedBy=multi-user.target\n
Run Code Online (Sandbox Code Playgroud)\n

Note-1:在我的例子中,media-admn-1\\x2d6TB.mount是一个额外的硬盘驱动器,我在其中安装了 cifs 共享,因此我将其添加为After=要求添加了它。

\n

Note-2:由于我仍然收到错误,所以我添加了TimeoutSec=15

\n

(3) 启用挂载:

\n
sudo systemctl enable media-admn-nas.mount\n\nsudo systemctl daemon-reload\n
Run Code Online (Sandbox Code Playgroud)\n

(4) 重启:重启后15秒,CIFS共享应该被挂载。

\n

(5) 检查状态:

\n
$ systemctl status media-admn-nas.mount\n\xe2\x97\x8f media-admn-nas.mount - CIFS Mount Service\n     Loaded: loaded (/etc/systemd/system/media-admn-nas.mount; enabled; vendor preset: enable>\n     Active: active (mounted) since Sun 2021-01-31 10:37:52 IST; 1h 58min ago\n      Where: /media/admn/nas\n       What: //192.168.1.1/nas\n      Tasks: 0 (limit: 19083)\n     Memory: 12.0K\n     CGroup: /system.slice/media-admn-nas.mount\n
Run Code Online (Sandbox Code Playgroud)\n