2022 年

2022 年

是否有详细指导如何通过 smbmount 挂载 Samba 共享以供非根Ubuntu 10.04 桌面上的用户?

注意:Google 搜索中有许多帖子处理这个看似新出现的问题。以前在 Ubuntu 8.04(或旧版本的 smbfs)上有效的说明不再有效。

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

答案1

一个非常好的工具,可以轻松地将你的 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了解选项并查看 中的 FAQ 文件/usr/share/doc/smbnetfs

答案2

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

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

我已经使用 eclipse 和其他工具对其进行了测试并且它可以工作。必须安装 gvfs-fuse。

答案3

2022 年

对于脚本

如果您需要在本地安装远程 smb 共享,可以使用该gio工具包。如果您想在文件管理器中查看远程共享,它并不方便,但在编写脚本时它非常有用。

gio mount --anonymous "smb://servername/share"
gio copy --progress "smb://servername/share/filename.ext" /local/folder/
gio mount --unmount "smb://servername/share"

gio不需要超级用户权限,可以正常读取带有空格的引号字符串,并且可以处理西里尔字符。

在 Ubuntu 22.04 中gio默认安装。

...但如果你需要在文件管理器中处理文件,特别是在Dolphin

在这种情况下,您可以使用smb4k

sudo apt install smb4k

该程序可以匿名或使用凭据连接到smb://共享,可以在启动时挂载共享,具有配置文件和许多设置。但最重要的是,它允许您Dolphin直接处理文件,而无需缓存,就像它们存储在本地一样。因此,您可以使用它kid3来编辑远程文件。

答案4

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

假设您的用户名是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

相关内容