来源:公众号【鱼鹰谈单片机】,ID :emOsprey
导读
前段时间家里搞了一台自用服务器 家里宽带搞个服务器,YYDS(一)使用树莓派 3B+,16 G(TF卡) + 1G 配置,增加各种功能后,明显感觉不够用了。
于是准备使用 树莓派5 升级一下服务器。配置如下:
2.4GHz 四核 64 位 Arm Cortex-A76 CPU
VideoCore VII GPU,支持 OpenGL ES 3.1、Vulkan 1.2
双 4Kp60 HDMI 显示输出
4Kp60 HEVC 解码器
双频 802.11ac 无线网络
高速 microSD 卡接口,支持 SDR104 模式
2 个 × USB 3.0 端口,支持同时 5Gbps 操作
2 个 × USB 2.0 端口
千兆以太网,支持 PoE+
用于快速外设的 PCIe 2.0 x1 接口
树莓派标准 40 针 GPIO 接口
板载实时时钟 RTC
电源按键
购买的 4G 内存(以为怎么也够用了,后面发现gitlab内存占用很高,只能优化配置),性能相比 4B 提升 2~3 倍,更不要说和我的 3B+ 对比了:
四核 1.2GHz 博通 BCM2837 64 位 CPU
1GB 内存
无线局域网和低功耗蓝牙(BLE)
以太网
40 针扩展 GPIO
4 个 USB 2 端口
4 极立体声输出和复合视频端口
全尺寸的 HDMI
CSI 摄像机端口
DSI 显示端口
用于操作系统和存储数据的微型 SD 端口
算是单车变摩托了。
功能+使用经验
目前服务器的主要功能如下:
1、gitlab V14.6.1,自己开发的代码以后都整理在这里,方便管理,同时使用 gitee 作为备份。
2、添加防火墙 UFW,ssh 密钥远程登录,关闭 22 端口,换成其它端口,关闭密钥登录,保证登录安全
3、samba 家里的网络资源共享服务器(小米电视之类的也可以使用),但是这个只能局域网使用,远程是不行的,因为目前这个端口被运营商禁用了,开通比较麻烦。所以现在基本上是使用 MobaXterm 这个工具登录和传输文件(这个工具还是比较强大的,支持串口、ssh 等方式,推荐使用)
4、Nginx,开源网页服务器,目前鱼鹰主要用来分享一些课程和公众号资源(如果在早期搭建了这个服务器,就会在自己服务器分享而不是百度网盘形式了)
5、frp 内网穿透工具,准备自己搭一个内网穿透服务器,这样以后我开发的一些好用的板子都可以通过它远程访问了。
6、ddns 动态域名服务,目前鱼鹰使用的是免费的 公云 提供的服务,这样鱼鹰可以直接通过域名访问家里的服务器(家里的虽然是公网 IP,但却是动态的 IP,所以必须使用这个)动态域名服务 DDNS,YYDS(四)。当然免费的也有一定的风险,之前就是 f3322.net 域名失效,只能换域名。不过因为家里的路由器是 TP-LINK,并且做了桥接,因此鱼鹰可以在手机 APP 上直接查询到家里的 IP 地址(据说 TP-LINK 路由器也有免费的 DDNS 服务可用,具体没折腾)。
7、自动挂载硬盘,买了一块 2T 空间的硬盘,开始时是 ext4 文件系统,但是可能因为操作大文件有误(拷贝大量的文件,然后等不及又强行中断了,建议使用 rsync -a --info=progress2 拷贝文件,这样可以看到进度条),导致经常性出现文件丢失现象,又考虑到和 window 传输文件不方便,后面干脆格式成 NTFS,就是权限问题不太友好,因此挂载时需要特殊配置 /etc/fstab:
proc /proc proc defaults 0 0
PARTUUID=b85799d8-01 /boot vfat defaults 0 2
PARTUUID=b85799d8-02 / ext4 defaults,noatime 0 1
UUID=FCEA-85D9 /u-disk vfat defaults,utf8,uid=1000,gid=1000,dmask=022,fmask=133,noatime,nofail,x-systemd.mount-timeout=2min 0 0
UUID=B8CCD0FCCCD0B5BA /samba ntfs defaults,user,rw,iocharset=utf8,umask=000,nls=utf8,noatime,nofail,x-systemd.mount-timeout=2min 0 0
UUID=8482362482361ADE /back ntfs defaults,user,rw,iocharset=utf8,umask=000,nls=utf8,noatime,nofail,x-systemd.mount-timeout=2min 0 0
UUID=1c95153b-6f4a-4348-9f48-fbb9b08f1747 /gitlab-data ext4 defaults,noatime,nofail,x-systemd.mount-timeout=2min 0 0
#check: sudo mount -a # 配置后使用该命令检查是否有误,防止挂载失败
另外就是硬盘有可能挂载失败,为了我们始终能系统运行起来(方便远程登录),需要在上面设定挂载超时时间。之前就出现过因固态硬盘问题,死活登录不了,只能断电重启,又考虑到远程断电不方便,因此购买了一个 WiFi 远程控制插座,这样万一出现特殊情况,可以随时远程重启。
8、电视盒子
小米电视(其他电视盒子类似)可以利用高清播放器这个app播放samba 里面的电影、电视剧、音乐等资源,这样家里人需要看什么电影,都可以远程放进去,然后在电视机上观看了。
生命不息,折腾不止