我一直在使用PC在RPi上使用Samba服务器来访问RPi上的文件。

但是,有什么方法可以在Pi上打开Samba连接吗?像在RPi上浏览Windows PC Samba文件一样?

评论

ftp会快得多

是的,我知道,但是在我所有的Windows PC上安装FTP服务器很繁琐

您需要一个samba客户端。我敢肯定,如果您搜索“ linux samba客户端”,您会在网上找到许多此类解释,尽管当然其中有些实际上是关于使用客户端访问linux机器上的共享的,而不是相反的。我相信用于此的CLI实用程序是smbclient。

@goldilocks谢谢,但是默认文件管理器打开Samba是否有任何解决方法? :)

LXDE(Raspbian上的默认桌面环境)中的文件管理器是“ pacmanfm”,因此,如果您搜索“ pacmanfm samba”,您应该会发现很多东西,例如,askubuntu.com/q/249678/239729我建议使用samba -on-linux的东西通常是从U&L开始的。

#1 楼

首先安装一些软件包:

apt-get install  samba-common smbclient samba-common-bin smbclient  cifs-utils


,然后创建一个本地目录并安装远程共享:

mkdir /mnt/abc
mount -t cifs //server/share /mnt/abc


其中server是Windows计算机名称(dns或netbios),而share是Windows共享目录。

根据您对Windows共享的访问权限,需要提供所需的凭据:如果您提供共享'每个人的读取(和写入)访问权限都不需要,否则您必须在安装时添加凭据:

用您自己的凭据替换。
何时完成后只需卸下份额即可:

mount -t cifs //server/share /mnt/abc -o user=user,pass=password,dom=domain


评论


+1这适用于将共享USB驱动器连接到调制解调器/路由器的USB端口的情况。如果需要更多调试,请在'-o'之前添加'--verbose'

– Denja
16-09-23在3:39

我的凭据出现此错误:设备或资源繁忙。请参考mount.cifs(8)手册页(例如man mount.cifs)

– Axel Briche
17-10-21在11:10



我必须每次都要检查该怎么做。这个答案非常清楚简洁。谢谢 :)

–乔布
19年2月5日在19:10

sudo mount -t cifs -o username = guest,password =,vers = 1.0 //192.168.0.1/sda1 / home / pi / router我必须添加vers = 1.0才能与我的路由器smb share一起工作

– Harshil Lodhi
20 Mar 22 '20 at 10:53

#2 楼

如果samba共享不需要任何凭据即可登录,并且您想在启动树莓派时挂载该共享,则以root用户身份编辑fstab文件

sudo nano /etc/fstab


并添加下一行

//server/share  /mnt/abc  cifs  guest  0  0


关闭更改并将其保存到fstab文件中

检查所有内容是否都应使用
<如果您的samba共享需要密码,那么可以在fstab条目中使用以下内容进行连接。

sudo mount -a


如果其他人可以访问您的RPi或网络,则不是最好的方法,因为fstab可以被所有人读取并且可以读取您的密码。

更好的解决方案是使用凭据文件。

//server/share  /mnt/abc cifs username=username,password=password  0  0


,然后在文件中输入用户名和密码

nano ~/.smbcredentials


保存文件并更改其权限因此其他人不可读。

username=username
password=password


然后以root用户身份编辑fstab以添加您的samba共享

chmod 600 ~/.smbcredentials

<再次使用

//server/share  /mnt/abc cifs credentials=/home/pi/.smbcredentials  0  0


进行测试,如果没有错误,则它将在重新启动时自动安装共享。

#3 楼

我的问题是类似的。
我的目标是dd-wrt ​​samba共享。

我的问题:无论如何都无法安装它(也是RPi3的fstab)。

我遇到了从“无法将密码传递给对mount.cifs的引用”到“无效的参数错误22”的错误。

我遇到了这篇文章,无法安装samba共享:安装错误(22 ),此答案表明解决方案是将vers=1.0添加到mount的选项中。

希望对您有所帮助。

评论


vers = 1.0也为我解决了这个问题。 sudo mount -t cifs // [远程IP地址] /下载/ mnt / abc -o vers = 1.0,user = [用户]

– Tridy
18-10-28在15:01



使用vers = 1.0也对我有用,sudo mount -o vers = 1.0 // [NAS_IP] / nas / media / pi / nas

–electron1979
19年7月24日在13:21



#4 楼

如果在尝试自动挂载共享后,如果您以某种方式遇到以下情况:树莓派将不再启动,将您置于“紧急模式”和/或告诉您根帐户已锁定,则可以通过以下方法克服它:此处的说明:Raspberry Pi引导问题-root帐户已锁定!。

未来链接步骤的摘要:



检索您的通过Pi并使用适配器将SD卡安装到PC,Mac或Linux。
您应该能够看到SD卡的/boot分区。
找到文件cmdline.txt,并在行init=/bin/sh的末尾添加以下内容:注意:不要创建新行,只需将以上内容添加到当前行的末尾。
将SD卡加载回Pi并启动。
现在,您应该获得root shell提示符。在这里,您可以撤消对/etc/fstab的更改或任何其他最初破坏系统的更改。
在某些情况下,您将无法保存所做的更改,并且系统将报告只读文件系统。如果您继续进行下一步。

Raspberry Pi SD卡将具有两个主分区,因为我们无法直接读取分区表,因此必须手动为根分区和引导分区找到设备。您可以通过转到/dev目录来执行此操作,并且应该会看到类似于mmcblk0p1mmcblk0p2的内容。第二个设备mmcblk0p2将是您的根分区。您需要使用读写权限重新安装此文件:

mount -o remount,rw /dev/mmcblk0p2 /


通过将SD卡安装在另一台计算机(Mac / Linux / Windows),然后在其中编辑cmdline.txt文件。

我使用错误的fstab条目对环境进行了愚弄,并按照以下说明进行操作以消除该错误。