我有同样的问题,因为我的密码包含逗号符号(即“ PASS,WORD”):
$ sudo mount -t cifs -o domain=mydomain,username=myuser,password=PASS,WORD //server/share localfolder
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
首先,您应该尝试启用详细模式(--verbose选项):
$ sudo mount -t cifs -o domain=mydomain,username=myuser,password=PASS,WORD //server/share localfolder --verbose
mount.cifs kernel mount options: ip=172.30.91.137,unc=\\server\share,WORD,user=myuser,,domain=mydomain,pass=********
在这里,我看到了我的问题。逗号会破坏所有内容。解决方法是使用凭证文件。man mount.cifs中写的是:
certificate = filename指定一个包含用户名和/或密码以及工作组名称的文件。该文件的格式为:
username=value
password=value
domain=value
与在共享文件(例如/ etc / fstab)中使用纯文本密码相比,这是首选方法。确保正确保护任何凭据文件。
您可以通过任何方式创建此文件:
$ cat > cifs.credo
username=myuser
password=PASS,WORD
domain=mydomain
和使用(可省略--verbose)
$ sudo mount -t cifs -o credentials=path/to/cifs.credo //server/share localfolder --verbose
mount.cifs kernel mount options: ip=172.30.91.137,unc=\\server\share,user=myuser,,domain=mydomain,pass=********
密码没问题。