Raspberry pi 搭建 NAS (Samba)

NAS是什么?

NAS 说白了就是一个家庭式的云盘(我的理解).

NAS 用来干什么?为什么要用树莓派来做?

既然是个云盘,当然是用来备份数据,跟共享数据用啦!当然我主要是想同步我的文件,一方面是备份,另一方面是因为,我用树莓派做服务器后台的测试,为了想砸不同设备,都共用最新的代码,所以这次我做的NAS的另一个功能是同步代码.其实主要就是自己懒,不想每次修改代码后用ftp啊ssh啊之类的上传到树莓派上面...

需要什么材料呢?

  • 树莓派4
  • 64G内存卡
  • 128Gb U盘
  • 网线(我没用)
  • 固态硬盘(跟内存2选1或者选2)

既然是用树莓派左的话,那当然就是需要树莓派,一个有树莓派系统的内存卡,需要扩容的话,就加一个硬盘,最好就是外接电源的那种,毕竟树莓派的电功率...你懂的.当然想速度快,更稳定的,你还需要一条网线.
而我呢...主要功能就是同步代码...暂时还没有打算同步我的手机照片啊之类的,所以我就用无线wifi的方式就算了...毕竟我懒得拉线是重点,穷也是买不起硬盘的原因(因为要用就用固态硬盘,提高速度,不然倒不如不要买...)所以我用一个128G的U盘代替.

使用Samba 搭建 NAS

Samba 是使用在Linux,Unix上的SMB协议的免费软件.

操作步骤

第一步:更新系统

sudo apt-get update
sudo apt-get upgrade

如果你之前没有更新过的话...冲杯咖啡,慢慢享受,或者打几盘游戏,或者放空自己,慢慢等吧.

第二步:挂载硬盘/U盘

貌似现在新的树莓派系统都不需要挂载这么麻烦了.以往挂载真贼麻烦,现在只需要即插即用,至少我的系统没问题了啦...
当然不过你想稳定点的话,自己挂载固定路径,避免重启后出现有些不可控的错误.

  1. 首先查看已挂载的硬盘/u盘名称
    $ lsblk

    2-1

    如图所示的就是u盘的名称.(图中显示sda1,由于途中的u盘已经被我重新挂载过,所以最后的mountpoint 的位置路径是有意义的名称)
  2. 卸载
    $ sudo umount /dev/sda1
  3. 创建一个文件夹,然后把u盘挂载到这个文件夹内,建议还是沿用media/pi 路径
    $ sudo mkdir /home/pi/upan
    $ sudo mount -o uid=pi,gid=pi /dev/sda1 /home/pi/upan
    添加了uid跟gid选项,让pi用户能读写挂载后的u盘.
    ps:挂载 exFAT 格式的硬盘:如果你的 U盘或移动硬盘使用的是 exFAT 格式,mount 会说不支持。需要安装下 exfat-fuse 软件 sudo apt-get install exfat-fuse。
    挂载 NTFS 格式的硬盘:默认挂载 NTFS 格式的硬盘只有只读权限,需要先安装所需软件包 sudo apt-get install ntfs-3g,然后加载内核模块 modprobe fuse ,重新插拔移动硬盘就可以读写了。
  4. 当然我们最好的是用开机自动挂载(个人感觉更加保险),修改/etc/fstab文件
    $ sudo nano /etc/fstab

    fstab
    在文件最后添加

    /dev/sda1 /home/pi/upan auto defaults,nofail,noatime,umask=0000 0 0
    文件结构是 device | dir | type | options | dump | fsck ,而options是相关的安装选项,noatime – 不更新文件系统上 inode 访问记录,defaults – 使用文件系统的默认挂载参数,例如 ext4 的默认参数为:rw, suid, dev, exec, auto, nouser, async。对 Windows 下的 NTFS 和 FAT 文件系统,还可以设置 uid=(挂载设备的指定用户 id)、gid=(挂载设备的指定用户群组 id)和 umask=(挂载设备的权限屏蔽)等, umask=0000 表示对所有人可读可写可执行。

第三步:安装Samba

sudo apt-get install samba samba-common-bin

安装过程会显示
smb.conf
我选择了yes

第四步:使用Samba共享文件夹

将Samba共享我们挂载好的文件夹

$ sudo nano /etc/samba/smb.conf

文件头部添加

security = user

然后文件最后添加:

[MyNas]
path = /home/pi/upan
writeable=Yes
create mask=0777
directory mask=0777
public=no

配置信息说明:

MyNas: 这定义了与共享文件夹有关的地址和其他配置。例如,共享文件夹将是以下地址:\ raspberrypi \ MyNas。
path:共享文件夹目录;
valid users:有效用户;
read only:是否只读;
create mask:创建文件的权限;
directory mask:创建文件夹的权限;
guest ok:是否允许访客访问;
browseable:是否可见。

保存退出

第五步:添加用户

$ sudo adduser 
$ sudo smbpasswd -a 

你也可以直接用pi

$ sudo smbpasswd -a pi

然后输入一个用来登陆NAS的密码
最后重启samba

sudo samba restart

Window连接NAS

先获取NAS的ip地址

$ ifconfig

NAS的ip地址
或者直接

$ hostname -I

然后Windows10,打开"此电脑"按照以下步骤做

w-2

w-3

w-4

w-5

停止/启动samba服务

启动服务

$ /etc/rc.d/init.d/smb start

重启服务

$ /etc/rc.d/init.d/smbrestart
   # 或者
$ service smb restart

暂停共享,停止samba服务

$ /etc/rc.d/init.d/smb stop
   # 或者
$ service smb stop

完成,撒花!!!


版权归作者Conan 所有,如有转发,请附上出处链接地址.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注