修改/ etc / fstab后未挂载CIFS共享


8

我已经能够通过首先在/ media文件夹中创建目录来挂载nas共享,然后:

sudo gedit /etc/fstab 

为我要自动挂载的每个份额包括以下行;

//servername/sharename  /media/windowsshare  cifs  guest,uid=1000,iocharset=utf8,codepage=unicode,unicode  0  0

然而,现在我升级到12.10,突然我不能在保存后的股份安装/etc/fstabsudo mount -a,给我这个错误:

Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
mount error(22): Invalid argument

在Nautilus中,共享在网络选项卡下可见,已卸载,并且单击共享时,出现以下消息:

mount: only root can mount //192.168.1.71/photos on /media/photos

我检查以确保已安装smbfs,并且在那里没有问题。我很沮丧

Answers:


1

不知道这是否是正确的安装方式,但肯定对我有用,因为从ubuntu 12.04到12.10,我遇到了完全相同的问题。

因此,请尝试:

//servername/sharename /media/windowsshare cifs guest,users   

我也使用noauto选项,因为我并不总是在同一个网络中,我想手动安装共享。我的系统的确切fstab条目如下...

//servername/sharename /home/USER/shares/I cifs guest,users,noauto

此项是唯一允许我使用Torrent客户端通过我的家庭网络直接下载到外部HDD的条目。

另外,也许您应该尝试将共享安装在主目录中,而不是在/media根目录中。


好!如描述的那样工作。我最终要做的是,不是进入终端,而是手动打开“ sudo mkdir / blah / blah”,我打开了Nautilus并右键单击/创建文件夹。出于某种原因,在终端中手动创建文件夹会将文件夹锁定为仅root用户权限,现在我想到的是,当尝试在KDE中将相同脚本用于fstab时,这种情况发生在我身上。我几乎没有学习过Linux方面的知识,所以对我来说有一个新的教训!
道格2012年

更新; 我的股票确实增加了,但是,有几件事不能正常工作。一个,在启动12.10时,系统挂起大约20秒,出现安装错误,但是登录后,共享已挂载。其次,我在服务器上的许多文件和文件夹都没有写访问权限,应该没有。
道格2012年

@Doug不会惊讶地发现它sudo mkdir /blah/blah使目录具有仅root用户权限。这正是应该做的。默认情况下,新目录是使用所有者(即默认情况下目录的创建者)和组以及组的读取和执行权限启用的读取,写入和执行(即,如果有程序则作为程序运行)创建的。其他用户 源:man mkdir
törzsmókus

谢谢,我遇到了与OP相同的问题,这为我解决了这个问题。+1
EM-Creations

4

从12.04升级到12.10之后,我也遇到了同样的错误消息。

mount.cifs(8)说:

mount.cifs的选项被指定为键=值对的逗号分隔列表。假设cifs文件系统内核模块(cifs.ko)支持这些选项,则可以发送此处未列出的选项。传递给cifs vfs内核代码的无法识别的cifs挂载选项将记录到内核日志中。

我检查了/var/log/kern.log并发现:

CIFS:未知的挂载选项“ noatime”

因此,对我来说,解决方法是从/ etc / fstab条目中删除该选项。

尝试选择时,此消息将写入kern.log:

CIFS:未知的挂载选项“ codepage = unicode”

似乎cifs.ko的行为已从忽略无法识别的选项变为在看到一个选项时失败。

mount.cifs -V表示它是5.5版。


3

使用以下命令安装cifs-utils

sudo apt-get install cifs-utils

为我做了把戏。同时存在自动安装的“ keyutils”文件的依赖性。我没有按照其他用户的建议安装额外的smbnetfs,因此该文件可能不是必需的。


2

从12.04升级到12.10后,我遇到了同样的问题。

在12.04中,我使用smbfs并fstab读取:

//192.168.0.42/Media    /mnt/htpc/media smbfs rw,username=root,password=openelec,uid=1000    0    0

这一直有效,直到升级。为了重新工作,我安装了cifs-utils和smbnetfs:

sudo apt-get install cifs-utils smbnetfs

并更改smbfscifs我的/etc/fstab

//192.168.0.42/Media    /mnt/htpc/media cifs rw,username=root,password=openelec,uid=1000    0    0

1
sudo apt-get install cifs-utils

在全新的64位安装12.10下解决了我的问题。(在看这里之前,还安装了smbnetfs。我相信两者都需要,但不是很积极。


0

我也遇到了这个问题,而我使用的对保持最新文档统一性非常有用的解决方法是删除unicode和那些参数,但是保留其余部分:对于12.10和更高版本,我使用以下方法://192.168.0.20 / mainshare / media / mainshare cifs guest,uid = 1000 0 0

uid = 1000为您提供读/写访问权限,因为我们的共享对用户开放。此解决方法为我节省了12.10-否则我仍将保持在12.04。


0

那是我的确切情况,并通过从etc / fstab的以下行中删除fsc选项来解决:

//192.168.1.1/smbshare/ /media/mntfolder cifs fsc,rw,_netdev,iocharset=utf8 0 0

所以实际的行显示如下:

//192.168.1.1/smbshare/ /media/mntfolder cifs rw,_netdev,iocharset=utf8 0 0

我发现通过手动尝试不同的挂载选项(因此也可以检查自己的错误)。

我想那可能是一个错误,或者fsc选项已被删除,真的不知道...希望它能对某人有所帮助。


0

从12.04升级到12.10后也出现此错误。

感谢您分享的所有信息-我能够使用它并解决我的问题。

我还指定了自动选项。但是,还有另一个问题。检查/var/log/kern.log,我发现此消息:

CIFS VFS: Unable to select appropriate authentication method!

我的/ etc / fstab包含sec = lanman选项。

//192.168.1.101/Public  /media/smb-public       cifs    credentials=/home/foo/.smbpasswd,uid=1000,gid=1000,user,sec=lanman 0       0

因此,我用sec = ntlm替换了该选项,现在可以使用了。

//192.168.1.101/Public  /media/smb-public       cifs    credentials=/home/foo/.smbpasswd,uid=1000,gid=1000,user,sec=ntlm 0       0

再次感谢大家的信息。


0

感谢https://ubuntuforums.org/showthread.php?t=2375075上对此的启发性讨论,我终于能够使它工作。就我而言,报告了以下错误

satyadeep@satyadeep:~$ sudo mount -a
[sudo] password for satyadeep: 
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

我监视并在kern.log中看到以下内容

11:09 $ tail -f  /var/log/kern.log 
Mar  1 10:06:51 satyadeep kernel: [160456.442423] input: USB Optical Mouse as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/0003:0461:4D81.0003/input/input13
Mar  1 10:06:51 satyadeep kernel: [160456.442670] hid-generic 0003:0461:4D81.0003: input,hidraw0: USB HID v1.11 Mouse [USB Optical Mouse] on usb-0000:00:1d.0-1.2/input0
Mar  1 10:30:33 satyadeep kernel: [161879.205573] No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.
Mar  1 10:30:33 satyadeep kernel: [161879.206637] CIFS VFS: Unable to select appropriate authentication method!
Mar  1 10:30:33 satyadeep kernel: [161879.206640] CIFS VFS: Send error in SessSetup = -22
Mar  1 10:30:33 satyadeep kernel: [161879.206658] CIFS VFS: cifs_mount failed w/return code = -22
Mar  1 10:48:22 satyadeep kernel: [162948.218284] No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.
Mar  1 10:48:22 satyadeep kernel: [162948.219378] CIFS VFS: Unable to select appropriate authentication method!
Mar  1 10:48:22 satyadeep kernel: [162948.219382] CIFS VFS: Send error in SessSetup = -22
Mar  1 10:48:22 satyadeep kernel: [162948.219408] CIFS VFS: cifs_mount failed w/return code = -22

如所示,我将fstab更改如下:

//QQQ/share/sdm /mnt/store cifs username=XXX,password=YYY,domain=ZZZ,iocharset=utf8,sec=ntlm,vers=1.0  0 0

注意额外的

vers = 1.0

参数。之后我做了

satyadeep@satyadeep:~$ sudo mount -a

它像魅力一样运作!

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.