前天发生了一件不得了的事情。就在前一天,老婆大人一边看着手机上的iPhone广告一边告诉我,她的iPhonexs内存不足了,就连我们的小可爱 的照片也要忍痛删除了。这时候,作为一个技术宅,我清晰的明确了老婆的需求 “需要一个大容量的私人云盘,可以存储我们可爱的儿子的照片,并且可以用iPhone随时浏览”。在此基础上,我自行将其扩展为“一个存储照片、视频、歌曲以及各种小姐姐的私人云盘”。
说干就干,我首先统计了一下手里的工具,一台闲置的树莓派,一个1T的移动硬盘,switch上替换下来的16g的内存卡。
首先,我们就用这个16g的内存卡写树莓派的系统,镜像就选用Raspberry Pi OS 32 位 Lite 版(无桌面)好了,反正我也没有额外的显示器,贫穷。
格式化内存卡,我用的diskgenius,不过无所谓,这类软件挺多的,如果是在Linux系统上操作,可以参考mkfs命令。
现在可以向内存卡写入系统了 ,balenaEtcher这个工具简单好用,一看就能明白。
对了,我没有显示器,待会儿只能使用ssh远程登陆树莓派。似乎最新的Raspbian已经默认启动了ssh支持,无需特意开启开启ssh功能。不过如果没有开启也没有关系,我们可以将内存卡用读卡器插到电脑上,然后在boot盘的根目录下建立一个名为ssh的空白文件,如此一来,启动树莓派时,ssh服务会自动开启。值得注意的是,ssh是该文件完整的文件名,即该文件并不应该有多余的后缀。以上点击查看,勾选文件扩展名即可看到文件后缀。
同理,我并没有显示器,那么应该如何连接wifi呢。
依旧是刚刚的boot盘,新建wpa_supplicant.conf文件,同样不能有多余的后缀。文件的内容这样写
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="WiFi-A" /*双引号内是你的WiFi账号*/
psk="12345678" /*双引号内是你的WiFi密码*/
key_mgmt=WPA-PSK /*双引号内是你的WiFi加密方式*/
priority=1
}
好了,现在可以远程连接树莓派了,以上操作在树莓派实验室有详细解释。
因为每一次启动DHCP往往会自动分配树莓派的IP地址,可是我并不想每一次重启都重新连接树莓派,那么我就需要给它一个固定的地址。这时候我们就需要修改 /etc/dhcpcd.conf ,也就是DHCP的配置文件。
sudo vi /etc/dhcpcd.conf
打开该文件,在文件的末尾添加如此内容:
interface wlan0 #指定接口,如果eth0就是有线连接
static ip_address=192.168.3.15/24 #IP根据需要更改,/24的意思是子网掩码为 255.255.255.0
static routers=192.168.3.1 #网关
static domain_name_servers=192.168.3.1 8.8.8.8 # DNS
需要注意的是,IP地址必须和路由器在同一网段,且网关相同,但是又不能跟路由器 DHCP 所自动分配的其它IP地址冲突。例如我的路由器的IP为192.168.3.x网段,则上面的static ip_address就要对应的修改为192.168.3.x/24。
其中网关的获取,我现在使用的是一个通过wifi连接的windows笔记本,所以我调出cmd,使用
ipconfig
登入树莓派后,我们需要进行一些时间、语系、键盘、密码、字体等等的设置,都可以使用
rasp-config
进入设置,其中的选项也比较简单,可以参考树莓派实验室进行操作。
因为国外源一般速度有点慢,所以我们都会更换成国内源。
修改软件更新源
sudo vi /etc/apt/sources.list
在文件内的所有行前面加上 # 符号,将其注释掉,然后在文件结尾另起一行:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi
修改系统更新源
sudo nano /etc/apt/sources.list.d/raspi.list
在文件内的所有行前面加上 # 符号,将其注释掉,然后在文件结尾另起一行:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
以上使用的是清华的源,还有阿里、中科大这些源可以使用。
值得注意的是很多人都想当然的写成stretch,而不查一下看吧,我的是buster。
接下来就轮到我的移动硬盘上场了,将移动硬盘连接上树莓派。查看连接好的硬盘,可以使用fdisk命令。
我这里选择将硬盘格式化为ext4格式,你可以按自己的意愿做,具体操作很简单,参考mkfs命令。
将信息写入 /etc/fstab 文件,然后使用
mount -a
挂载即可。
具体可以参考mount命令及/etc/fstab写法。
samba的安装使用如下命令即可
apt-get install samba samba-common-bin
非root用户自行使用sudo或su取得管理员权限。
我选择了添加一个新的账号用于管理samba服务。
smbpasswd -a goddog312_samba
为samba服务添加共享用户,这个用户必须是树莓派中已存在的用户。samba服务器最主要的配置文件其实只有一个,就是 /etc/samba/samba.conf ,使用如下命令编辑该文件
sudo vi /etc/samba/smb.conf
在文件末尾添加以下内容:
[share] //共享的目录名称
comment = my nas //简单的解释,内容无关紧要
path = /samba //实际的共享目录,路径需要写成你刚刚挂载的硬盘的路径
writable = yes //设置为可写入
browseable = yes //可以被所有用户浏览到资源名称
valid users = goddog312_samba //允许访问的用户
public = yes //共享开放
guest ok = yes //可以让用户随意登录
保存后重启smbd
服务,可以使用如下命令:
systemctl restart smbd
查看服务的状态,可以使用如下命令:
systemctl status smbd
好了,smbd
服务一切正常之后就可以连接看看了,例如我的iphone 8 上面有文件app,点开之后
选择右上角一个圆圈内三个点的符号,然后选择连接服务器
接下来在服务器栏输入静态设置的ip地址即可,接下来便会弹出账号密码,输入你添加的账号密码就可以成功登录了。
windows的操作大同小异
等我老婆大人逛街回来的时候,我兴冲冲的向老婆报告了刚刚的劳动成果,听完我老婆一脸懵逼,什么s什么什么b?并且同时向我炫耀,新买的iphone11pro 256G,再也不用怕存储空间不够了,而且还有三个摄像头,真是划算……