什么cifs_mount失败w /返回代码= -22表示

Adi*_*dit 41 samba mount cifs

我在尝试

sudo mount -t cifs //<server>/<share> -o username=user@domain,password=**** /mnt/<mountpoint>
Run Code Online (Sandbox Code Playgroud)

错误信息:

mount: wrong fs type, bad option, bad superblock on //server/share,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
Run Code Online (Sandbox Code Playgroud)

系统日志有

 CIFS VFS: cifs_mount failed w/return code = -22
Run Code Online (Sandbox Code Playgroud)

我可以在另一个centos系统上安装相同的共享.我可以ping服务器,已经创建了挂载点目录.

aka*_*ame 44

我在使用主机名时遇到了这个问题,并使用IP地址解决了这个问题.例如:

使用

mount -t cifs //192.168.1.15/share
Run Code Online (Sandbox Code Playgroud)

而不是

mount -t cifs //servername/share
Run Code Online (Sandbox Code Playgroud)

另一种可能的解决方案是安装

CIFS-utils的

.

  • cifs-utils 也在 Ubuntu 16.04 中修复了它。在缺乏有意义的错误消息的情况下,这可能有助于实际提出解决方案,而不仅仅是说“是的,有些东西不起作用”,我们必须在互联网上寻找线索,这不是很好吗?mount 真的不能“啊,是的,我不能这样做,因为我错过了一些重要的东西”?就我而言,它是从 Ubuntu 14.04“升级”到 16.04,这破坏了它。 (2认同)

jsh*_*jsh 24

啊,可怕的-22.基本上这似乎被用作"一些不起作用的东西",虽然从技术上来说它被称为无效的论点.

客户端恕我直言,这是一个非常糟糕的工作,告诉你实际的问题.(这可能不是它的错 - 它并不总是能够访问该信息).

但是 - 您是否检查了要连接的服务器/计算机上的日志?

我正在连接到OS X samba服务器,并从我在日志中找到的内容中了解到,有必要在-o下指定其他选项,如下所示:

nounix,sec=ntlmssp

这些设置启用的内容包括"允许长名称"和"忽略UNIX文件名结尾"...... sec用于指定安全标志.

另一种可能性是您正在尝试访问mount.cifs无法实际处理的类型的文件系统.

  • 这里的OS X位非常重要......这也为我解决了这个问题.这些错误信息确实如此模糊和无益,实际上是污染和模糊问题报告和相关问题的解决方案. (4认同)
  • 让我重申一下@Marius的评论:如果你想把一个Pi连接到OS X,这里的OS X位真的很重要. (2认同)

小智 10

对于RHEL/Centos安装包 - "cifs-utils"


Rob*_*e W 9

也许移动目标?

sudo mount -t cifs -o username=user@domain,password=**** //<server>/<share> /mnt/<mountpoint>
Run Code Online (Sandbox Code Playgroud)

或许这个解决方案?(Ubuntu,Debian方法)

sudo apt-get install smbfs
Run Code Online (Sandbox Code Playgroud)

或者对于CentOS,RedHat,Fedora尝试:

sudo yum install samba-client
Run Code Online (Sandbox Code Playgroud)


And*_*ras 9

我在Ubuntu 12.04上使用"mount"包(版本2.20.1-1ubuntu3)也有类似的问题.当我尝试使用其主机名rahter而不是IP来安装服务器共享时,就发生了这种情况.

解决Ubuntu问题的另一种方法是安装cifs-utils包.这样我也可以使用完全相同的命令行(或fstab)但使用hostname挂载samba共享.

sudo mount -t cifs //hostname/share -o username=user,password=pwd /mnt/share
Run Code Online (Sandbox Code Playgroud)

  • 安装cifs-utils解决了这个问题.你知道根本原因吗? (5认同)

rob*_*613 7

刚刚完成了Ubuntu 12.04 LTS的干净安装,并尝试连接我的Linux HTPC.

通过运行解决它:sudo apt-get install cifs-utils然后重新安装它.


Rob*_*Fey 5

在许多情况下,CIFS返回代码“ -22”(不仅是无效的参数)。

对我来说,安装keyutils可以达到目的:

apt-get install keyutils
Run Code Online (Sandbox Code Playgroud)

我的发行版是“ Ubuntu 14.04.2 LTS”。

我通过增加CIFS的日志记录详细程度来解决此问题:

echo 7 > /proc/fs/cifs/cifsFYI
# disable again via:
#echo 0 > /proc/fs/cifs/cifsFYI
Run Code Online (Sandbox Code Playgroud)

可以在以下位置找到有关cifsFYI的位掩码(“ 7”)的文档:https ://www.kernel.org/doc/readme/Documentation-filesystems-cifs-README

在尝试再次挂载之后,dmesg包含了更多有用的信息:

Dec 7 12:34:20 pc1471 kernel: [ 5442.667417] CIFS VFS: dns_resolve_server_name_to_ip: unable to resolve:
Run Code Online (Sandbox Code Playgroud)

另一个可能有用的链接:

http://vlkan.com/blog/post/2015/01/08/smb-mount-troubleshoot/