工业盒子A311D(ubuntu)搭建家庭NAS

1,196 阅读7分钟

背景:最开始有这个想法是因为家里的电视内存不够,播放4K比较卡,于是将没有用上的魔百盒H301刷机来连接电视,后面发现效果不好。

为什么会萌生树莓派的想法

  1. 家里电视内存不够用
  2. 想拥有一个家庭版的Nas
  3. 每年购买个人服务器费用不划算,服务器上需要挂frp、网站等小东西
  4. 家里的米家一直想接入苹果的家庭
  5. 一直听说openwrt想试下功能

基于以上种种,最开始的想法是买一个外贸盒子(HK1 Box)配置也可以,但是扩展性不强端口比较少。然后在某鱼一直留意mini主机,但是配置稍微好点的基本都要500+了,自己最开始的预算只有200~300,然后整天关注最后入手了Eais-750E EAIS-750E产品介绍 1.jpeg

判断程序状态

ps -ef | grep clash

 ### 判断clash的状态

设置程序自启动

1. 打开/etc/profile文件
sudo vim /etc/profile
2. 在文件的末尾添加以下内容:
# start clash
nohup /opt/clash/clash -f /opt/clash/config.yaml -d /opt/clash/ > /dev/null 2>&1 &
 
# start frp
nohup /opt/frp/./frpc -c /opt/frp/frpc.ini  > /dev/null 2>&1 &
3. 保存并关闭文件
4. 运行以下命令使配置生效:source /etc/profile
5. 现在重新启动系统时,Clash将在启动时自动启动。

安装frp

# 下载软件
wget https://github.com/fatedier/frp/releases/download/v0.50.0/frp_0.50.0_linux_amd64.tar.gz

# 解压
tar -vxzf frp_0.50.0_linux_amd64.tar.gz

# 重命名
mv frp_0.50.0_linux_amd64 frp

# 复制可执行文件
cd frp
cp frpc frps /usr/bin/

# 配置别名快速启动
sudo vim ~/.bashrc
# .bashrc文件后面添加下面内容
alias frp='nohup /opt/frp/./frpc -c /opt/frp/frpc.ini  > /dev/null 2>&1 &'
alias unfrp='pkill -9 frp'
# 配置生效
source ~/.bashrc


# 开机启动
sudo vim /etc/profile
# 在文件的末尾添加以下内容:
# start frp
nohup /opt/frp/./frpc -c /opt/frp/frpc.ini  > /dev/null 2>&1 &
# 配置生效
source /etc/profile

安装frp是在我已经有frp服务器的前提下,当然有公网IP肯定是最好的解决方案;没有frp服务器,可以试下Ddnsto价格便宜(1年/4M/22.9RMB)、Natapp

安装clash

Country.mmdb是MaxMind GeoIP2数据库中的一个文件,用于将IP地址映射到国家/地区。它包含一个IPv4和IPv6地址范围列表,以及每个地址范围对应的国家/地区代码。可以将其用于开发Web应用程序,以便根据访问者的IP地址获取其国家/地区信息,从而提供更好的用户体验和定位服务。简单来说就是可以被用来确定目标网站所在的国家或地区,从而方便选择相应的代理。

# 创建目录
sudo su
mkdir /opt/clash
cd /opt/clash

# 下载并附权
wget https://github.com/Dreamacro/clash/releases/download/v1.15.1/clash-linux-arm64-v1.15.1.gz
gzip -d clash-linux-arm64-v1.15.1.gz
mv clash-linux-arm64-v1.15.1 clash
chmod +x clash

# 获取Country.mmdb
wget -O Country.mmdb https://gitee.com/mirrors/Pingtunnel/blob/master/GeoLite2-Country.mmdb

#下载订阅链接内容并重命名为config.yaml
wget -O config.yaml [订阅链接] 

# 配置别名快速启动
sudo vim ~/.bashrc
# .bashrc文件后面添加下面内容
alias clash='nohup /opt/clash/clash -f /opt/clash/config.yaml -d /opt/clash/ > /dev/null 2>&1 &'                  
alias unclash='pkill -9 clash'
# 配置生效
source ~/.bashrc

# 开机启动
sudo vim /etc/profile
# 在文件的末尾添加以下内容:
# start frp
nohup /opt/clash/clash -f /opt/clash/config.yaml -d /opt/clash/ > /dev/null 2>&1 &
# 配置生效
source /etc/profile


# 启用终端代理
export http_proxy=http://127.0.0.1:7890 #7890为你配置的端口
export https_proxy=http://127.0.0.1:7890 #7890为你配置的端口
#取消终端代理
unset http_proxy
unset https_proxy

# 配置别名
sudo vim ~/.bashrc
# .bashrc文件后面添加下面内容
alias proxy="export http_proxy=http://127.0.0.1:7890;export https_proxy=http://127.0.0.1:7890"
alias unproxy="unset http_proxy;unset https_proxy"
# 配置生效
source ~/.bashrc


# 配置UI界面
# 克隆项目并重命名为ui,方便后续配置
sudo git clone -b gh-pages https://github.com/Dreamacro/clash-dashboard ui
# 修改clash的配置文件
 # 先关闭后台运行的clash进程
 pkill -9 clash 
 # 编辑配置文件
 sudo vim config.yaml 
# 在配置文件中加上external-ui参数
external-ui: /opt/clash/ui


clash下载订阅地址的文件乱码解决办法

直接新建config.yaml文件然后拷贝正常使用clash的配置文件内容

配置了UI无法访问

修改config.yaml配置文件将external-controller: '0.0.0.0:XXXX'前面的IP改成0.0.0.0试下(我这里是把IP改成内网地址192.168.0.99)

安装Aria2

# 安装aria2,使用脚本维护
https://github.com/P3TERX/aria2.sh 

# 安装ariang面板,用于管理aria2

## 拉取镜像
docker pull p3terx/ariang

## 启动容器
docker run -d \
--name ariang \
--log-opt max-size=1m \
--restart unless-stopped \
-p 6880:6880 \
p3terx/ariang

安装迅雷

使用 docker-compose,实际使用迅雷比Aria2速度快太多

version: "2.1"
services:
xunlei:
image: cnk3x/xunlei:latest
privileged: true
container_name: xunlei
hostname: mynas
network_mode: bridge
ports:
- 2345:2345
volumes:
- /mnt/sdb1/xunlei:/xunlei/data #data目录
- /mnt/sdb1/downloads:/xunlei/downloads #下载目录
restart: unless-stopped

安装Samba

安装 Samba 服务

sudo apt install samba samba-common

配置需要共享的目录

# 新建目录,用于共享
sudo mkdir /mnt/sda/samba
# 更改权限信息
sudo chown nobody:nogroup /mnt/sda/samba
# 给所有用户添加读写权限
sudo chmod 777 /mnt/sda/samba

添加系统用户

sudo adduser yixiaoping

添加 Samba 用户

添加 Samba 用户,用于在访问共享目录时使用。这里添加的用户在 Linux 中必须存在。 sudo smbpasswd -a 用户名

⚠️:测试中发现必须要先添加系统用户再添加Samba用户才能访问,否则会出现无权限访问

配置 Samba

修改 /etc/samba/smb.conf,在最后面添加以下配置:

[Samba]
  comment = Samba Share
  path = /mnt/sda/samba
  browseable = yes
  writable = yes
  available = yes
  valid users = 用户名

设置为开机启动

sudo vim /etc/rc.local

在exit 0前面添加/etc/init.d/smbd start

安装OpenWRT

www.kejiwanjia.com/jiaocheng/5…

安装Mysql进程占满CPU

修改 /proc/sys/vm/swappiness里面的数据为8

备份系统

折腾好了软件最好备份一个,因为你不知道什么时候系统更久crack了,查询了ubuntu的备份方式,大概如下

使用命令行备份

tar -cvpzf /mnt/sda/backup/backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=/media /

tar 是用来备份的程序 c - 新建一个备份文档 v - 详细模式, tar程序将在屏幕上实时输出所有信息。 p - 保存权限,并应用到所有文件。 z - 采用‘gzip’压缩备份文件,以减小备份文件体积。 f - 说明备份文件存放的路径, /mnt/sda/backup/backup.tgz 是本例子中备份文件名。 --excloude - 排除指定目录,使其不被备份 最後一个参数是我们想要保存的目录. 我们想要保存所有的东西,使用 / 作为根目录。

恢复系统

tar -zxvpf backup.tgz -C /

设备烧固件那些坑

  • 买回来的ttl转usb的设备一定要电脑安装驱动(由于自己是小白在这个问题上捣鼓了好久)
  • ttl转usb的小板连接线的rx连接开发版的tx,tx连接开发版的rx,gdn连接开发版的gdn,不插3v、5v的电源线
  • 安装设备驱动后,设备管理器中一直没有那个设备的解决办法,我购买的CH340G,其他的板子自行谷歌
  • ttl转usb的线连接至电脑后(我这里使用的是MobaXTerm),MobaXTerm里面是不会有反应的,需要插上电源才能看到反应
  • 双头USB的线连接设备可能没反应,多试几次,最后我成功的步骤是,先插电脑端,然后插EAIS-750E端就成功的

其他事项

扩展硬盘。未重启2.5寸硬盘盘符一直变化

最开始在某鱼入手了65快的3.5寸的1T机械硬盘,后面发现3.5寸的需要硬盘盒子,并且需要给硬盘盒供电,于是又在某鱼入手了25块的硬盘盒;再折腾过程中硬盘盒倒了几次直接不转了。于是将13年的笔记本的机械硬盘拆卸下来并在某东买了19块的不需要供电的硬盘盒,刚开始使用无问题,但是后面发现磁盘盘符一直变化从/dev/sda -> /dev/sdb -> /dev/sdc,一只不清楚什么情况,最后将硬盘盒换成供电的硬盘盒解决问题,自己估计是硬盘盒供电不足导致的什么问题,建议硬盘盒买好一点,或者直接上一个供电的3.5/2.5通用的硬盘盒

折腾结果

现在用的最多的是迅雷远程下载 -> 荣耀智慧屏X1 -> 当贝播放器 -> Samba服务器直接查看视频

180041oy43x3v5r4vyrdvt.jpeg