当需要将Windows上的某个文件放到树莓派上去,即实现Windows和Linux文件共享,你可能会想到使用U盘,甚至会将树莓派上的内存卡拔出来在Windows上将文件放进去后再插回到树莓派上再读出来,这些方法都太麻烦了,我们可以借助文件传输服务,直接通过网络传输文件。还有种运用场景是我们可以在Windows上编写程序,然后放到树莓派上运行。这里我们可以通过 Samba 来实现这一目的。
1、在安装samba之前,我们需要先更新一下我们apt源和软件列表,以便保持我们的软件版本与最新版的软件一致,不至出现不兼容的情况。
sudo apt-get update
sudo apt-get upgrade
2、安装samba,安装过程较长需耐心等待全部安装完成。
sudo apt-get install samba samba-common-bin -y
如果没有-y选项,需要手动输入Y才能继续安装。
3、等待上一步安装完成后,接下来要配置samba,主要是设置共享的文件夹。
配置文件为/etc/samba/smb.conf,这里对它进行修改,命令行执行:
首先最好先备份一个原始的文件,以防改出问题:
sudo cp /etc/samba/smb.conf smb.conf.backup
然后打开文件开始编辑:
sudo nano /etc/samba/smb.conf
注:nano是一个文本编辑器, 可以通过 ctrl+y(上一页) 和 ctrl+v(下一页) 实现翻页。
在文件末尾加上如下内容,其中 /home/pi/Desktop 为我设置的共享文件夹目录,其实就是桌面(将其替换为你想共享的目录即可,例如:/home/pi/public,注意得是已存在的文件夹):
[public]
comment = public storage
path = /home/pi/Desktop
valid users = pi
read only = no
create mask = 0777
directory mask = 0777
guest ok = no
browseable = yes
ctrl+o 保存,之后 回车 确认,然后 ctrl+x 退出。
参数说明:
[public] #共享文件的名称, 将在网络上以此名称显示
comment:共享文件夹说明
path:共享文件夹目录
valid users:有效用户
read only:是否只读
create mask:创建文件的权限
directory mask:创建文件夹的权限
guest ok:是否允许访客访问
browseable:是否可见
其中 valid users 即 pi 为有效用户,还需要添加其到 Samba 中,命令行执行:
sudo smbpasswd -a pi
根据提示输入两次密码确认。
4、重启samba
重启 samba 以生效配置,命令行执行:
sudo samba restart
或者
sudo /etc/init.d/samba restart
注意:
上面的指令不行的话,可以在目录下找下是否文件名改了,比如有的版本是下面的名称重启:
sudo /etc/init.d/smbd restart
sudo /etc/init.d/samba-ad-dc restart
5、Windows在资源管理器地址栏输入:\192.168.1.10,其中 192.168.1.10 替换为你树莓派的 IP 地址即可。(如果不知道树莓派的IP地址,可以使用ifconfig命令查询)
访问时需要输入用户名和密码,就是前面第三步设定的用户名和密码。