LOADING

海思机顶盒家庭服务器 NAS

机顶盒1年前 (2024)更新 ypng
33 0 0

海思机顶盒家庭服务器 NAS

我是小盒子, 也是大世界

基本信息



盒子实测耗电仅约3瓦, 一杯奶茶的成本可以养它一年 (24h * 365天)! 就是这么优秀!
盒子运行 Linux Ubuntu 20.04.4 LTS 服务器系统, 同时配置了适量的常用软件, 完全可以满足个人家庭需求

WOO, 动手打造属于你的空间吧!

常用功能按钮

点击打开进行日常维护和使用.

  1.        

 如遇到不慎操作失误或者安装了自己不清楚的软件, 可以使用还原备份系统的命令:   recoverbackup  
需要等待约4分钟左右, 系统将自动覆盖根分区, 根分区内的数据将全部被原备份系统清除并覆盖, 请做好必要的资料保存, 还原后外网访问的网址将重新随机分配

开始使用


建议使用 Edge、Chrome、火狐浏览器等访问和管理机顶盒 管理终端, 或者使用 Windows 10 的命令提示符、SSH终端管理器等登陆后台

常用的 Linux 命令

1
2
3
4
5
6
7
8
9
ssh root@192.168.x.x            终端登陆服务器
df -H                           查看磁盘使用详情   
ls -al (ll)                     查看当前目录下的所有文件   
apt update && apt upgrade -y    更新官方源已安装的软件
apt install samba               安装软件包, 例如 Samba
cd /home/ubuntu                 进入 /home/ubuntu 目录位置
wget http://xxx.com/xxx.xxx     下载网络链接文件到当前文件夹位置
passwd root                     修改当前系统账号 root 的密码, 需要重复输入两次密码

盒子内置有以下几个基本功能的软件安装小白脚本, 直接输入以下命令即可自动安装并自动配置, 即装即用

1
2
3
4
5
6
7
8
install-samba.sh        安装局域网共享
install-qinglong.sh     安装 Docker 应用: 青龙面板
install-v2ray.sh        安装 Socks5 服务器
install-portainer.sh    安装 Docker 容器管理面板
install-gitweb.sh       安装和打造个人的 Git 仓库
install-homeassistant.sh    安装智能家居控制面板
install-jellyfin.sh     安装电影播放削刮器
install-casaos.sh       安装开源家庭云系统

使用 vi 命令对文档进行编辑;

1
2
3
4
5
6
7
vi abc 打开和进入 abc 文档
提示: 连续按下两下 dd 即可删除光标所在的行
按一次键盘的 Insert 或者 i 按键, 即可进入当前文件的编辑模式
键盘上下左右移动光标,
修改编辑完毕, 按一次 Esc 按键退出编辑模式,
然后输入 :wq 这三个符号, 回车即可保存并退出文档
若不保存当前修改, 即输入 :q! 这三个符号,回车即可直接退出文档编辑

管理服务器文档


 可以采用 FTP 或 SCP 等方式对服务器文档进行管理, 上传和下载
初始账号: ubuntu 密码: 1234


具体使用指南

建议使用FileZilla或者WinSCP进行文件传输管理

操作教程 分享和答疑


内网穿透的使用场景


服务器采用 FRP 开源软件进行内网穿透

已经搭建了一个位于国外的服务器作为 FRP 的服务端, 并自动分配给盒子一个随机的二级域名, 你可以轻松的在外面访问盒子首页本盒子外网网址 : https://nas-xxxxx.any168.net

服务器详情 分享与答疑


使用场景

修改和配置 /etc/frp/frpc.ini 文档

把盒子放在家里, 公司, 或学校, 让你的盒子变身为一个比花生棒更加强大的跳板机, 没错, 也是白嫖的!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# /etc/frp/frpc.ini
[common]
server_addr = frp.ecoo.ga
server_port = 7000
log_max_days = 3
token = any168tomynas
login_fail_exit = false
[ssh-xxx]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 10086
[web-xxx]
type = http
local_ip = 127.0.0.1
local_port = 80
subdomain = nas-xxx
# 添加以下内容变身
[web-xxx-synology]
type = http
local_ip = 192.168.1.222  #假设这是你的黑群IP
local_port = 5000
subdomain = xxx-synology   
#你就可以在外网用ypng-synology.any168.net域名直接访问黑群的管理页面了
# 添加以下内容变身2
[web-xxx-mycompany]
type = http
local_ip = 192.168.1.10  #假设这是你公司的文档服务器
local_port = 80
subdomain = xxx-company
#你就可以在外网用xxx-company.any168.net域名直接访问公司文档页面了
# 添加以下内容变身3
[web-xxx-myschool]
type = http
local_ip = 192.168.1.10  #假设这是你校园内网专用的考试查询内网地址
local_port = 80
subdomain = xxx-myschool   
#你就可以在外网用xxx-myschool.any168.net域名直接访问校园内网了

检查自己修改的配置是否成功(多人使用, 只能使用唯一的xxx名称):

1
2
3
4
5
6
systemctl stop frpc         #先停止frp客户端的服务
frpc -c /etc/frp/frpc.ini       #试运行上面修改过的配置
#最后, 如果出现的都是蓝色的并且都显示success的结果, 则ok,
#否则重新修改xxx的名称避免和其他人的设置重复
#按ctrl+c结束命令
systemctl restart frpc      #重启服务

Socks5 服务器配置


海思机顶盒家庭服务器 NAS

浏览器代理设置

打开设置-网络-代理, 按照上图设置, 保存

海思机顶盒家庭服务器 NAS

Windows 代理设置

打开 Windows 设置-网络-代理, 按照上图设置, 保存

海思机顶盒家庭服务器 NAS

查看是否上线

浏览器打开在线检测IP, 看到 IP 不同则成功

限于研究学习的目的, 自带节点
安装下面的脚本后盒子打开了 Socks5 的代理服务功能, 端口号10808
你在浏览器或者系统自行设置通过盒子的IP192.168.100.141 代理 Socks5 上网即可

1
2
3
4
5
install-v2ray.sh            # 终端输入这句命令自行安装
systemctl status v2ray      # 查看运行状态是否正常
curl --socks5 127.0.0.1:10808 google.com  # 返回 301 字样则成功
install-v2ray.sh --remove   # 终端输入命令即可卸载 v2ray
           

 本功能仅作为学习以及测试使用, 禁止用于非法用途! 测试完毕请立即卸载!


创建个人博客或家庭公告栏


点击打开个人博客, 点击“我准备好了, 开始下一步”, 输入新设登陆的密码, 点击“确认, 开始安装”
博客的用途非常广泛, 你甚至可以机智地把它当成家庭公告板提醒家里人上去写留言;
也可以当成自己的网络笔记本, 粘贴上你在网络上学习过的代码, 永久保留备查;
还可以把外网网址公开给私人好友, 分享你的能量

保存和重装后还原博客数据库

在 recoverbackup 重装系统之前, 一定要备份博客的数据库
数据库位置路径在 /var/www/html/blog/usr/623d62d5e5e96.db db 名称可能会不相同
操作如下:

1
2
3
4
5
mkdir -p /mnt/sda1/blog-data           在U盘建立数据库一个文件夹
chmod -R 777 /mnt/sda1/blog-data       给文件夹赋予权限
cp /var/www/html/blog/usr/*.db /mnt/sda1/blog-data/myblog.db
把数据库文档移出来到U盘指定目录并重命名为 myblog.db

下次重新安装博客时, 点击 “我准备好了, 开始下一步”, 数据库文件路径输入 /mnt/sda1/blog-data/myblog.db 然后无需设置密码直接点击 “确认, 开始安装”, 然后点击 “使用原数据” 这样就把数据还原了, 打开还是原来一样的所有文章
注意: 如果你常常使用的是外网网址登陆博客, 请在后台设置里填写正确的外网网址


如何安装和设置网络文档共享


第一步, 先运行命令 install-samba.sh 使用系统内置的脚本安装 Samba 软件
安装完成后会自动共享 /home/ubuntu/downloads 文件夹,
在文件管理器输入: \\192.168.100.141 即可访问

修改配置文档, 把U盘的文件夹共享出来

1
2
3
mkdir -p /mnt/sda1/usb-share       在U盘建立一个文件夹 usb-share (当然, 你也可以建立其他文件夹)
chmod -R 777 /mnt/sda1/usb-share   给这个文件夹赋予权限

输入命令 vi /etc/samba/smb.conf 修改配置, 在结尾下面添加如下代码:

1
2
3
4
5
6
7
8
[usb-shares]
path = /mnt/sda1/usb-share
read only = no
guest ok = yes
create mask = 0777
directory mask = 0777
browseable = yes
1
2
systemctl restart smbd      修改完成后需要重启 Samba 服务

最后, 在文件管理器输入: \\192.168.100.141 即可访问在网上邻居也可以找到这个共享文件夹了


其他功能与使用技巧


海思机顶盒家庭服务器 NAS

NFS服务器 –

系统已内置 NFS 文件服务器
初始地址为 /home/ubuntu/downloads

1
2
3
4
vi /etc/exports     # 编辑配置文件, 加入以下内容 (请根据实际情况修改)
/home/ubuntu/downloads *(rw,sync,no_root_squash,no_subtree_check)
/mnt/sda1 *(rw,sync,no_root_squash,no_subtree_check)
exportfs            # 运行这个命令使配置生效

 


海思机顶盒家庭服务器 NAS

更改盒子网口 MAC 地址 –

 

1
2
3
4
5
vi /etc/network/interfaces.d/eth0       # 编辑配置文件
注意:你改的mac地址必须符合16进制格式!
只能从 0123456789ABCDEF 这16个数字与字母中选。
# 在最下方增加下面的内容 (实际内容可按需修改)
pre-up ifconfig eth0 hw ether 00:11:22:33:44:66

 


海思机顶盒家庭服务器 NAS

设置静态IP –

vi /etc/network/interfaces.d/eth0 # 修改配置文件
替换为下面的内容 (网关和IP必须按实际情况自行修改)
否则你将可能不得不重新刷机,承担修复 IP 无法访问的风险。

 

1
2
3
4
5
6
7
8
9
10
auto eth0
iface eth0 inet static
address 192.168.1.10
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 192.168.1.1
pre-up ifconfig eth0 hw ether 00:11:22:33:44:55

 


海思机顶盒家庭服务器 NAS

WebDAV 服务器 –

已经内置 WebDAV 服务在 8081 端口, 默认文档位置在 /home/ubuntu/webdav
修改默认文档位置 vi /etc/nginx/sites-available/nginx_webdav
修改后输入 nginx -s reload 重启服务

Windwows 映射 WebDAV 目录
开启服务此电脑右键-管理-服务-WebClient 设为自动, 停止服务
修改注册表
修改注册表使得WIN同时支持http和https:
定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
把BasicAuthLevel 值改成2, 即同时支持http和https, 默认只支持https, 然后重启服务:
磁盘映射
在Windows资源管理器空白处右键, 选添加一个网络位置
填写正确的连接加端口号, 默认登陆用户名和密码 admin admin

1
2
3
4
5
修改用户名和密码:
echo -n 'admin:' | tee /etc/nginx/passwords.list
openssl passwd -apr1 | tee -a /etc/nginx/passwords.list
nginx -s reload

 


海思机顶盒家庭服务器 NAS

增加自建站 Nginx 模块 –

我就建个站
vi /etc/nginx/sites-available/mywebsite
复制下面代码粘贴

1
2
3
4
5
6
7
8
9
10
server {
    listen 8088;
    listen [::]:8088;
    server_name example.com;
    root /var/www/html/example.com;
    index index.html;
    location / {
    try_files $uri $uri/ =404;
    }
}
1
2
3
ln -sf /etc/nginx/sites-{available,enabled}/mywebsite
nginx -s reload
最后运行上面两句使能

把网站文档放在 /var/www/html/example.com 你就可以打开 IP:8088 访问你自己的网站了 这个例子只是简单的模板, 详细情形请搜索学习


海思机顶盒家庭服务器 NAS

安装私人 Git 仓库 –

首先要挂载U盘, 并且在U盘创建 gitweb 文件夹并赋予 777 权限
命令行输入 install-gitweb.sh 自动安装小白脚本
安装完成后, 浏览 http://192.168.100.141 :8011 即可管理你的 Git 仓库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
cd /mnt/sda1/gitweb             # 进入U盘
# 克隆一个 Github 上的库并建立裸库在服务器上
git clone --bare https://github.com/xxx/xxx.git xxx.git
cd xxx.git                      # 进入该仓库
touch git-daemon-export-ok
echo "xxx仓库" > description
# 这样你就可以看到这个转移过来的仓库了
# 建立一个新的空仓库:
cd /mnt/sda1/gitweb
mkdir xxx.git
cd xxx.git
git init --bare
touch git-daemon-export-ok
echo "我的第一个新仓库" > description

 

客户端克隆本服仓库命令:

1
2
git clone root@192.168.xx.xx:/mnt/sda1/gitweb/xxx.git
密码与系统相同

 


海思机顶盒家庭服务器 NAS

MiniDLNA 局域网音视频广播 –

1
2
3
4
5
apt install minidlna            # 安装 MiniDLNA 软件
vi /etc/minidlna.conf           # 修改配置文件
将 media_dir=/var/lib/minidlna 修改为 media_dir=/mnt/sda1/minidlna
mkdir /mnt/sda1/minidlna        # 在U盘创建目录
chmod 777 -R /mnt/sda1/minidlna # 赋予权限

 

在该文件夹下存放图片或音视频 MP3、MP4、PNG、JPG 等格式的文件
你就可以在局域网下的电脑、手机、电视等智能终端进行播放了


海思机顶盒家庭服务器 NAS

DDNS 解析自动更新脚本教程 –

阿里域名 DDNS 解析更新

1
2
3
4
5
6
7
8
9
10
11
# 安装 nodejs: apt install nodejs
# 修改配置文件: vi /home/ubuntu/client-mode/config.json
填写你的阿里提供的 keyid 和 keysecret, 并填写你需要解析的域名
{
"AccessKeyId": "xxxx ",
"AccessKeySecret": "xxxx ",
"hostnames": ["@.ecoo.top", "www.ecoo.top"]
}
保存并退出, 然后添加计划任务(每 15 分钟检查一次, 外网 IP 变化才自动更新)
crontab -e
输入 */15 * * * * /home/ubuntu/client-mode/client.sh

 

花生壳和 noip.com 解析脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
使用方法:
# 花生壳修改配置文件: vi /home/ubuntu/client-mode/ddns_oray.sh
# noip 配置文件: vi /home/ubuntu/client-mode/ddns_noip.sh
填写服务商提供的 DDNS 帐号和密码, 并填写你需要解析的域名
user=
passwd=
hostname=
保存并退出, 然后添加计划任务(每 15 分钟检查一次, 外网 IP 变化才自动更新)
crontab -e
*/15 * * * * /home/ubuntu/client-mode/ddns_oray.sh
或者
*/15 * * * * /home/ubuntu/client-mode/ddns_noip.sh

 


海思机顶盒家庭服务器 NAS

安装无盘网络启动 –

嗯, 这个在下一次更新推出, 期待吧

挂载外置设备


系统支持自动挂载外置设备, 插入 U盘 或移动硬盘即可自动挂载到 /mnt 下, 插入 TF卡讲自动挂载到 /mnt/mmcblk1p1

  • * 如果没有显示设备请尝试重新插拨, 查看是否自动挂载
  • * 部分机型可能需要插上USB口以后热启动上电才会被盒子识别
  • 连接外置 3.5吋 移动硬盘盒请确保供电正常

强烈建议将 U盘 或 TF卡 格式化为 ext4 文件系统

  • * 部分盒子建议插到靠近电源的USB口
  • * 建议使用 Linux 自带的 fdisk 分区命令进行重新分区
  • * 也可以使用 mkfs.ext4 /dev/sd? 命令格式化
  • 警告: (符号 ? 请自行匹配到对应的外置设备序号, 如 sda sdb)

使用 fdisk 工具格式化外置储存设备

  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    umount -l /mnt/sda1 # 卸载分区 (根据情况修改, 有时并非 /mnt/sda1)
    fdisk -l            # 查看磁盘情况
    fdisk /dev/sda      # 进入命令行分区界面 (根据情况修改)
    (注意, 这里是 sda 而不是 sda1)
        输入 o 设置新分区为 msdos 格式
        输入 n 建立新分区
        接着输入 p 建立主分区
        接着默认 2048 字节扇区头和自动的扇区尾
        (按回车即默认)
        输入 w 将上面的操作保存
    mkfs.ext4 /dev/sda1 # 执行格式化

直链下载与 BT 种子下载


Aria2 直链下载

    • * 访问地址 http://IP/ariang
    • * 默认下载位置 /home/ubuntu/downloads
    • * 请自行修改挂载U盘下载位置
    • * 例如先在U盘建立一个文件夹 aria2
    • 更新 Tracker 列表(BT 下载提速): 打开终端, 执行指令 update-tracker.sh, 按照提示操作即可
海思机顶盒家庭服务器 NAS

Transmission 种子下载

    • * 请自行修改下载位置
    • * 默认登陆帐号 admin 密码 admin
海思机顶盒家庭服务器 NAS

修改 Transmission 密码

  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # 停止 Transmission 服务
    /etc/init.d/transmission-daemon stop
    # 修改密码
    # 编辑配置文件: vi /etc/transmission-daemon/settings.json
    # 找到以下内容:
    "rpc-password": "{1e82c73f8f4b5c3ba4e2d94227fc19dc3442abf7nSWuZtsb",
    "rpc-port": 9091,
    "rpc-url": "/transmission/",
    "rpc-username": "admin",
    # 只需要修改 password、username 后面 "" 内的内容即可
    # 开启 Transmission 服务
    /etc/init.d/transmission-daemon start

Docker 容器使用基础教程


安装 Docker 程序apt update && apt install docker.io

  • 1. 内置青龙面板的安装脚本
  • install-qinglong.sh
  • 2. 内置了容器管理面板的安装脚本
  • install-portainer.sh
  • 3. 内置了特斯拉监控程序的安装脚本
  • install-teslamate1.sh
  • 4. 安装电影播放削刮器 (测试中)
  • Docker 很好用, 但并不是全部装上榨干就好, 而是适合自己用就好
  • 如果你有好的建议, 请到论坛贴出你的脚本, 有机会被采纳

Docker 使用基础初学者可以尝试新建和删除 Docker 镜像和容器

  • 1
    2
    3
    4
    5
    6
    7
    docker images       列出已安装的镜像
    docker ps           列出正在运行的容器
    docker ps -a        列出所有容器,包括未运行
    docker stop xxx     停止 xxx 容器
    docker rm xxx       删除 xxx 容器
    docker rmi xxx      删除 xxx 镜像
  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    # 安装 Docker 镜像前设置安装位置到U盘
    systemctl stop docker               # 停止 Docker 服务
    mkdir -p /mnt/sda1/docker           # 建立文件夹
    chmod 777 -R /mnt/sda1/docker           # 赋予权限
    vi /lib/systemd/system/docker.service   # 编辑配置文件
    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
    插上一句 --graph="/mnt/sda1/docker" 变为如下:
    ExecStart=/usr/bin/dockerd --graph="/mnt/sda1/docker" -H fd:// --containerd=/run/containerd/containerd.sock
    systemctl daemon-reload
    systemctl start docker

个人网盘 h5ai 应用


存档位置: /var/www/html/files/
如果要更改存档位置到外接设备 /mnt/sda1/usb-files
则执行: ln -s /mnt/sda1/usb-files /var/www/html/files/usb-files
系统默认配置已经作了一个软链接示范
/home/ubuntu/files软链接到/var/www/html/files/home

1
2
3
4
mkdir -p /mnt/sda1/usb-files
ln -s /mnt/sda1/usb-files /var/www/html/files/usb-files
echo "## 这是页首显示" > /mnt/sda1/usb-files/_h5ai.header.md
echo "## 这是页脚说明" > /mnt/sda1/usb-files/_h5ai.footer.md

网盘系统可以直接播放音视频和查看文档内容
在文档名称前面打勾, 左上角的下载按钮, 可以直接将文档打包zip格式并浏览器下载


Version History (Changelog)


本操作系统基于 Ubuntu 20.04.4 LTS, 由 Teasiu 和 Hyy2001 定制


Changelog

Copyright and License


盒子内核及运行设计版权归神雕 teasiu@ecoo.top, 任何人使用或移植借鉴须注明出自 www.ecoo.top

未经作者授权, 不得将系统用于盈利售卖, 不得用于衍生的任何软件变相收费否则视为侵权行为! 一旦被举报, 必将追究!

官方网站 www.ecoo.top

© 版权声明

相关文章

暂无评论

暂无评论...