Linux Mint终端挂载WD My Book NAS:无需指定目录的方法咨询
解决Linux Mint下无需逐个挂载NAS所有文件夹的问题
嘿,我来帮你搞定这个挂载WD My Book NAS的问题!你遇到的mount error(220): Invalid argument报错,核心原因是CIFS/SMB协议不允许直接挂载NAS的IP根路径——你必须指定NAS上存在的具体共享目录名,不能空着。
下面是具体的解决步骤,帮你一次性挂载NAS上的所有内容:
1. 先查看NAS上的所有共享目录
首先得知道你的WD My Book上有哪些可挂载的顶级共享(通常整个磁盘会对应一个顶级共享)。在Linux Mint终端里执行这个命令:
smbclient -L //你的NAS_IP地址 -U 你的NAS用户名
执行后输入NAS用户的密码,就能看到所有共享列表。比如WD My Book默认可能会有类似Volume_1或者MyBook这样的顶级共享,这个就是包含所有文件夹的根共享。
2. 挂载顶级共享目录
找到顶级共享名后,先创建本地挂载点(比如/mnt/nas):
sudo mkdir -p /mnt/nas
然后执行挂载命令,替换成你自己的参数:
sudo mount -t cifs //你的NAS_IP地址/顶级共享名 /mnt/nas -o username=你的NAS用户名,password=你的NAS密码
这样挂载后,你访问/mnt/nas就能看到NAS上的所有文件夹了,不用逐个挂载。
3. (可选)设置开机自动挂载
如果想每次开机自动挂载,编辑/etc/fstab文件:
sudo nano /etc/fstab
在文件末尾添加一行(替换成你的参数):
//你的NAS_IP地址/顶级共享名 /mnt/nas cifs username=你的NAS用户名,password=你的NAS密码,iocharset=utf8 0 0
注意:明文写密码不安全,你可以创建一个凭证文件:
- 创建
/etc/smbcredentials文件:sudo nano /etc/smbcredentials- 写入内容:
username=你的NAS用户名 password=你的NAS密码- 设置权限:
sudo chmod 600 /etc/smbcredentials- 然后fstab里的行改成:
//你的NAS_IP地址/顶级共享名 /mnt/nas cifs credentials=/etc/smbcredentials,iocharset=utf8 0 0
添加后保存退出,执行sudo mount -a测试是否生效。
为什么直接去掉{directory}会报错?
CIFS协议要求必须指定具体的共享资源,//NAS_IP/这种写法没有明确告诉系统要挂载哪个共享,所以会返回无效参数的错误。你需要挂载的是NAS上已经配置好的共享目录,而不是IP本身。
内容的提问来源于stack exchange,提问作者cworner1
相关产品推荐
相关产品推荐

