如何以非root用户身份挂载Samba共享

是否有一个分步教程,详细指导如何在Ubuntu 10.04桌面上卸载非root用户使用的Samba共享?

注意:谷歌搜索上有很multithreading处理这个看似新的问题。 过去在Ubuntu 8.04(或旧版本的smbfs)上工作的说明不再有效。

我需要找到一些最新且可重复的东西。

SMBNetFS是一个非常好的工具,可以在您的主文件夹中轻松安装samba共享。 使用此工具,您几乎可以通过家中的挂载点访问几乎所有应用程序的samba共享。

如何使用SMBnetFS:

  • 通过包管理器安装包
  • cp /etc/smbnetfs.conf ~/.smb/smbnetfs.conf复制标准配置
  • cp /etc/samba/smb.conf ~/.smb/smb.conf复制samba配置
  • mkdir ~/sambashare或挂载点的任何其他名称
  • smbnetfs ~/sambashare将共享挂载到挂载点

不幸的是,只有很少的文档可用。 有关选项,请参阅man smbnetfs ,并查看/usr/share/doc/smbnetfs的FAQ文件。

使用gnome时,只需在sauti:// url中键入Nautilus即可。 通常应该安装gvfs-fuse和其他gvfs软件包,以便您可以直接使用文件浏览器安装samba。 此外,您应该在〜/ .gvfs文件夹中找到所有已安装的内容。 这甚至适用于其他协议和压缩文件等。

 gvfs-mount smb://user@server/storage 

我用eclipse和其他工具测试了它,它的工作原理。 必须安装gvfs-fuse。

man mount将帮助您确定您想要的选项。 如果Windows系统始终可用。 您可以将挂载添加到/etc/fstab并将其挂载。 您可以使用选项user,noauto允许用户根据需要安装和卸载分区。 要允许其他人卸载,请将user更改为users

Autofs还支持使用samba的按需安装。 咒语取决于您想要挂载的目录。 我在开发环境中成功运行它。

编辑:如果你需要为很多用户这样做,我建议使用autofs进行安装。 这不需要更改fstab。 获取各种用户的凭据可能是个问题。 我使用/net/$HOST/$USER格式的目录结构作为我的坐骑。 Autofs配置为mount的/net/$HOST部分,并根据需要自动安装其下的目录。

特殊的安装方法取决于您的需求。 我曾经遇到过用户需要在服务器上安装桌面目录的情况,尽管典型的安装是基于服务器的。

对于拥有大量用户的大型组织,将目录移动到Linux服务器并使用Samba将文件共享给Windows用户可能是有意义的。 我没有尝试相反,但它可能是可能的。

我在研究最近执行的魔术时发现了这个问题,为我的一个用户做了这个。 我的工作流程与其他答案显着不同。 但请注意,这是最简单的情况。

假设您的用户名是ae而您的家是/home/ae

1)设置smbfs:
mkdir /home/ae/.smb

1a)如果需要Windows登录凭据,请创建并编辑文件: /home/ae/.smb/smbnetfs.conf以获取内容:

 auth winuser "winpassword" 

winuser是您要访问的Windows计算机上创建的用户。 winpassword是用户登录该计算机上的Windows的密码。

2)创建挂载点:
mkdir /home/ae/nethood

3)执行smbnetfs命令:
smbnetfs /home/ae/nethood


请注意,整个“网络邻居”将显示在/home/ae/nethood ,工作组是第一层子目录。

以下所有列表都是从我在ubuntu主机上作为非特权用户浏览文件夹时复制的。 用户名和组更改为aesudo从未使用过。 Windows计算机位于非正式Windows网络上,共享文件夹受用户/密码保护(在Windows计算机上使用Windows用户名和密码)。

 $ cd nethood $ ls -alh total 12K drwxrwxrwx 9 ae ae 0 Dec 31 1969 . drwxr-xr-x 9 ae ae 21 Jul 28 11:49 .. drwxrwxrwx 2 root root 0 Dec 31 1969 WORKGROUP 

浏览工作组WORKGROUP

 $ cd WORKGROUP $ ls -alh total 0 drwxrwxrwx 2 root root 0 Dec 31 1969 . drwxrwxrwx 9 root root 0 Dec 31 1969 .. lrwxrwxrwx 1 root root 11 Dec 31 1969 HTPC -> ../HTPC lrwxrwxrwx 1 root root 14 Dec 31 1969 NEWPC -> ../NEWPC 

将目录更改为计算机,将正常列出和访问任何共享文件夹。

 $ cd NEWPC $ ls -alh total 0 drwxrwxrwx 2 root root 0 Dec 31 1969 . drwxrwxrwx 9 root root 0 Dec 31 1969 .. drwxrwxrwx 2 root root 0 Dec 31 1969 Desktop drwxrwxrwx 2 root root 0 Dec 31 1969 Users 

和文件:

 $ cd Desktop/ $ ls -alh ls: cannot access desktop.ini: No such file or directory total 30M drwxrwxrwx 2 root root 0 Dec 31 1969 . drwxrwxrwx 2 root root 0 Dec 31 1969 .. -rwxr--r-- 1 ae ae 1.5K Jan 25 2013 Command Prompt.lnk -????????? ? ? ? ? ? desktop.ini -rwxr--r-- 1 ae ae 156K May 28 2013 Download %25285%2529.iif -rwxr--r-- 1 ae ae 2.4K Jul 24 12:28 Google Chrome.lnk -rwxr--r-- 1 ae ae 178 Feb 4 2013 import orders.bat -rwxr--r-- 1 ae ae 2.3M Mar 30 2012 msvc2008_x86_vcredist_x64.exe drwxr-xr-x 2 ae ae 0 May 20 2014 OpenOffice 4.1.0 (en-US) Installation Files -rwxr--r-- 1 ae ae 406K Jun 6 2013 Paypal_Jan_1_2012_to_Dec_31_2012.iif -rwxr--r-- 1 ae ae 15M May 8 2012 php-5.4.3-Win32-VC9-x86.zip -rwxr--r-- 1 ae ae 1.9K Jul 24 13:03 PSPad.lnk -rwxr--r-- 1 ae ae 1.1K Jul 24 12:31 VB Demo.lnk 

请注意,上述目录具有所有权root root 。 文件所有权与您的用户相同。

无论挂载点或该文件夹的所有权或权限如何,其他任何用户都无法访问这些文件夹。 如果您的用户可以“写”到该文件夹​​(并且它是空的),smbnetfs将在那里安装网络邻居,并且不允许任何其他人访问,甚至是root 。 要root可以访问,你必须su ae


如果没有共享文件夹,则计算机的目录将为空。

如果您没有Windows计算机的凭据,则可能会收到错误消息:
ls: cannot open directory .: Input/output error

Interesting Posts