经常会有取用局域网文件的习惯,利用树莓派将u盘(或硬盘)在局域网内共享,做一个小型的存储服务器(NAS),方便我们临时取用文件,共享资源。我这里使用一个64G u盘来演示,首先在windows下将u盘格式化为ntfs格式备用,在树莓派ubuntu系统下执行lsblk命令查看系统磁盘情况。root@ubuntu:/# sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 51.5M 1 loop /snap/core20/1170
loop1 7:1 0 26.7M 1 loop /snap/snapd/13271
loop2 7:2 0 53.2M 1 loop /snap/lxd/21782
loop3 7:3 0 26.7M 1 loop /snap/snapd/13644
loop4 7:4 0 53.8M 1 loop /snap/lxd/21622
mmcblk0 179:0 0 29.5G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 29.3G 0 part /
root@ubuntu:/#
此时插上u盘,重新执行命令,与之前的结果对比,可以看到多出来一个磁盘sda,其中sda2是我们需要的分区,因为可以看到其有57.4G的空间。NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 51.5M 1 loop /snap/core20/1170
loop1 7:1 0 26.7M 1 loop /snap/snapd/13271
loop2 7:2 0 53.2M 1 loop /snap/lxd/21782
loop3 7:3 0 26.7M 1 loop /snap/snapd/13644
loop4 7:4 0 53.8M 1 loop /snap/lxd/21622
sda 8:0 1 57.6G 0 disk
├─sda1 8:1 1 200M 0 part
└─sda2 8:2 1 57.4G 0 part
mmcblk0 179:0 0 29.5G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot/firmware
└─mmcblk0p2 179:2 0 29.3G 0 part /
root@ubuntu:/#
这里的sda就是我们刚插入的u盘,将它的/sda2挂载到系统目录中(根据自身的情况,不要照搬),使用以下命令。# 创建一个挂载目录
mkdir -p /home/ubuntu/udisk
# 挂载,可以不手动挂载
# sudo mount -t ntfs /dev/sda2 /home/ubuntu/udisk
# 设置开机启动
sudo vim /etc/fstab
# 在最后一行加入以下代码/dev/sda2 /home/ubuntu/udisk ntfs defaults 0 0
# 挂载,没报错则正常
sudo mount -a开始安装samba服务sudo apt-get install samba
sudo apt-get install vim
sudo touch /etc/samba/smbpasswd
# 把ubuntu为用samba的登录用户(用户需要在系统中存在,没有则先用useradd创建),创建登录密码
sudo smbpasswd -a ubuntu
sudo vim /etc/samba/smb.conf
# 将以下内容复制到最后一行粘贴
[ubuntu]
comment = ubuntu
path = /home/ubuntu/udisk
writable = yes
valid user = ubuntu
available = yes
create mask = 0777
directory mask = 0777
public = yes
sudo /etc/init.d/smbd restart
# 开机自启动
sudo systemctl enable smbd
Mac下连接在mac下测试一下连接情况imageimage# 使用以下地址来访问,将smb://的ip地址改为你的ipsmb://192.168.31.91输入之前创建的samba用户登录,我这里使用ubuntu。image最后,链接成功。尝试创建一个文件夹或拷贝一个文件到网络文件夹中,发现可以正常使用,成功!Windows下链接在Windows下直接使用Win + R输入\ip来连接会报错,就像下面这样。因为我们为samba服务设置了密码,但在windows下需要单独的设置。下面是正确的操作: 在windows中的运行窗口输入"control userpasswords2"后回车。依次点击以下的按钮这里填入你的samba服务的ip地址(ip地址前可以不加\\)、用户名和密码。设置完成后,重启计算机发现就能正常访问了。Android下连接这里使用"ES文件浏览器"这款软件来辅助操作,将手机连接到同一个局域网下,通过扫描或手动添加主机。选中网络,按提示输入用户名和密码,就可以正常访问使用了。