树莓派4B搭建NAS系统(Samba)

目录

前言

从零开始,在树莓派4B上用samba建立一个简单的内网NAS服务器,可以实现简易家庭服务器的功能,虽然上传速度比较中规中矩,但是和价格上千上万的专业NAS服务器相比,一块只要几百的树莓派4B十分经济实惠且好用。

简介

NAS

NAS被定义为一种特殊的专用数据存储服务器,包括存储器件(例如磁盘阵列、CD/DVD驱动器、磁带驱动器或可移动的存储介质)和内嵌系统软件,可提供跨平台文件共享功能。

Samba

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。是在Linux和UNIX系统上实现SMB协议的一个免费软件,通过使用它实现文件的共享。

搭建

准备工作

  1. 一块树莓派4B
  2. 给安装树莓派官方镜像raspbian
  3. 给树莓派设置静态IP
  4. 给电脑安装VNC Viewer
  5. 准备一块移动硬盘或者U盘(内存大小根据需求)

使用vnc连接树莓派,进入图形化界面,打开终端,安装前进行一些比较需要的设置。

进入root

更改root密码:

~$ sudo passwd root

输入新密码更改后,进入root:

~$ su
root@:~# 

更换软件源

~# nano  /etc/apt/sources.list		//打开sources.list文件

将下面内容复制上去,并把旧的软件源屏蔽,这里使用的是清华的软件源

deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free r$

deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster ma
#deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free r$

deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster ma

保存并退出:Ctrl+XY(保存数据) 再按回车

更新源:

~# apt-get update

下载vim编辑器

之前没有接触过Linux系统的同学可以使用比较简单的nano编辑器,但是使用Linux系统,我更推荐学习和使用vim编辑器。

~# apt-get install vim

安装及配置

处理硬盘

这里我使用的是128G的U盘,查看硬盘是否被检测到:

~# fdisk -l				//查看硬盘

检测到以下内容:

Device     Boot Start       End   Sectors   Size Id Type
/dev/sda1       32768 242417663 242384896 115.6G  7 HPFS/NTFS/exFAT

分区和格式化

使用 fdisk /dev/sda 命令对硬盘进行分区和格式化,这里我直接删除就分区新建了一个分区,格式化为ext4格式:

~# fdisk /dev/sda
Command (m for help):d		//删除旧分区
Command (m for help):n		//创建新分区,一直回车按默认方式创建,除非想多建分区
Command (m for help):w		//创建好后保存退出
~# mkfs -t ext4 /dev/sda1	  //将分区格式化为ext4

如果使用的是容量较小的U盘,那么直接进行下列命令即可:

~# umount /dev/sda1           //取消挂载U盘
~# mkfs -t ext4 /dev/sda1	  //将分区格式化为ext4

将硬盘挂载到指定目录

在根目录下创建一个目录:

~# cd				//返回根目录
~# mkdir /share		//创建share目录

将硬盘挂载到指定目录:

~# mount /dev/sda1 /share

运行 df -h 命令查看硬盘挂载情况:

~# df -h

挂载成功:

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        59G  6.8G   50G  13% /
devtmpfs        3.8G     0  3.8G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G  8.6M  3.9G   1% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/mmcblk0p1  253M   48M  205M  19% /boot
tmpfs           788M  4.0K  788M   1% /run/user/1000
/dev/sda1       114G   61M  108G   1% /share	//成功挂载到/share目录

设置开机的自动挂载

每次树莓派重启或者硬盘插拔都需要对硬盘进行重新挂载,比较麻烦,因此需要自动挂载。这里要修改/etc/fstab文件。

~# vi /etc/fstab

添加 /dev/sda1 /share ext4 defaults 1 1 内容到fstab文件里:

proc            /proc           proc    defaults          0       0
PARTUUID=ad4edcf0-01  /boot           vfat    defaults          0       2
PARTUUID=ad4edcf0-02  /               ext4    defaults,noatime  0       1
/dev/sda1		/share			ext4	defaults	  	  1	  	  1
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that

完成后 :wq 保存退出

可以切到硬盘里面查看一下

~# cd /share	//进入share目录

给硬盘测速

测速可测可不测,这里我使用hdparm,你也可以使用 dd 命令。
安装hdparm:

~# apt install hdparm		//安装hdparm

测试硬盘速度:

~# hdparm -Tt /dev/sda		//测试硬盘速度

测试成功:

/dev/sda:
 Timing cached reads:   1514 MB in  2.00 seconds = 756.74 MB/sec
SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 Timing buffered disk reads:  70 MB in 11.35 seconds =   6.17 MB/sec

安装Samba

过程中会跳出安装插件,方向键左键选择yes回车就好。

~# apt install samba samba-common-bin		//安装Samba

在/share目录下创建目录data,并更改用户、用户组和权限:

~# mkdir data		//创建目录data
~# chown -R root:users /share/data		//更改用户、用户组
~# chmod -R ug=rwx,o=rx /share/data		//更改权限

配置smb

打开配置文件smb.conf:

~# vi /etc/samba/smb.conf		//打开配置文件smb.conf

找到 Authentication 部分,在下面添加一行内容:

####### Authentication #######

	security = user

找到 homes 部分,将下面的 read only = yes 改为read only = no

# By default, the home directories are exported read-only. Change the
# next parameter to 'no' if you want to be able to write to them.
   read only = no

接着来到文件的最后一行,添加以下内容:

[public]	//作为共享的文件夹名字
	comment = public storage
	path = /share/data			//文件夹路径,很重要
	valid users = @users
	force group = users
	create mask =0660
	directory mask =0771
	read only = no

至此smb整个的配置就结束了, :wq 保存退出。

接下来我们重启smb服务:

~# /etc/init.d/samba-ad-dc restart

添加用户,密码自拟,我这里使用比较简单的123

~# smbpasswd -a pi

连接

对此电脑右键->映射网络驱动器->\输入树莓派IP地址\public
树莓派4B搭建NAS系统(Samba)
已经全部完成NAS的搭建及连接。

测试

现在我们添加一个 readme.txt 文件,打开添加 I love Linux 内容 !!!并保存:
树莓派4B搭建NAS系统(Samba)
切回树莓派进入/share目录,可以看到已经有 readme.txt 文件了,我们把它的内容cat出来,成功看到 I love Linux !!!
树莓派4B搭建NAS系统(Samba)

参考

树莓派4B NAS系统搭建(第一集)

树莓派学习笔记(5):成功实现NAS家庭服务器(流媒体播放、文件共享及下载机)

上一篇:Ubuntu 安装msfconsole


下一篇:linux搭建samba服务,实现网盘*