如何将凭证文件传递给mount.cifs?


16

我正在维护Mac和Linux的异构网络,因此我决定创建一个perl脚本来统一跨计算机的安装策略。

linux中的当前实现在/ etc / fstab中可以正常工作:

//myserverhere.com/cifs_share / mnt / cifs_share cifs用户,uid = 65001,rw,workgroup = DEV,credentials = / root / .cifs 0 0

和/root/.cifs包含

username=ouruser
password=ourpassword

我尝试将其转换为非fstab格式,如下所示:

mount.cifs //myserverhere.com/cifs_share /mnt/cifs_share user,uid=65001,rw,workgroup=DEV,credentials=/root/.cifs

但这似乎不起作用。

有人可以指出我做错了吗?

提前致谢。

伊斯梅尔·卡西潘()

Answers:


19

mount.cifs的语法:

mount.cifs {service} {mount-point} [-o options] 

您需要在“ -o”之后传递选项。例如,使用给定的选项,您的命令应为:

mount.cifs //myserverhere.com/cifs_share /mnt/cifs_share \
    -o user,uid=65001,rw,workgroup=DEV,credentials=/root/.cifs

(我没有测试您提供的选项。)


“ -o”是我忘记的那个。感谢您指出。我试过了,现在可以了。非常感谢您:)
icasimpan 2012年

另外,使用UTF-8时,请确保凭据文本文件不包含字节顺序标记(BOM)。否则,你会得到一个奇怪的从“凭证格式不正确”的消息mount/ mount.cifs
ManuelAtWork

0

-o vers = 1.0选项与mount修复了我的问题。将RHEL从7.4升级到7.7后,看起来SMB协议版本已更改。指定与cifs服务器版本匹配的版本。


0

我得到的错误是这个: mount error(5): Input/output error Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

-o vers = 3.0选项与mount修复了我的问题。我没有升级服务器,但是我的客户端做了,也没有通知我。

-o vers = 1.0选项也可以像我现在测试的那样工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.