经常会有取用局域网文件的习惯,利用树莓派将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下测试一下连接情况
# 使用以下地址来访问,将smb://的ip地址改为你的ip
smb://192.168.31.91
最后,链接成功。尝试创建一个文件夹或拷贝一个文件到网络文件夹中,发现可以正常使用,成功!