Skip to content
0

N1 盒子永不为奴,Armbian

1 序言

  • 斐讯 N1 盒子作为一款矿渣玩法众多,比较常见的玩法:给它刷入 OpenWrt 系统做旁路由,提供特殊服务;刷入电视盒子系统,搭配一个遥控器做电视盒子;刷入游戏系统,当作一台游戏机;跑 PCDN 等等。
  • 今天的教程是准备把 Armbian 系统刷入N1盒子,让它来扮演一个家庭服务器的角色。服务器需要一个运行稳定的系统,而 Armbian 系统可以看做是运行在 Arm 架构机器上的 Debian 系统,最大的特点是其作为底层系统运行起来还是比较稳定的。
  • 在 armbian 系统上,可以根据自己的需求部署相应的服务——简单举例——我们可以部署:emby 影视服务、tailscale 内网穿透、私人笔记服务、轻 NAS 服务、相册服务、去广告服务、旁路由(特殊服务)、挂载各大网盘、家庭智能控制服务等等
  • 将 N1 盒子刷成电视盒子系统并开启优先从 USB 启动的步骤在这里就省略了,网上的教程比较多,这里直接进入刷写 armbian 系统的步骤。

2 Armbian 系统

Armbian 是一个基于 Debian 和 Ubuntu 的开源操作系统,专门为 ARM 架构设备设计。‌它提供了自动化构建版本,确保系统的稳定性和最新的软件包更新。Armbian 适用于多种 ARM 设备,如树莓派、Banana Pi 等,是开发者和爱好者的理想选择。‌

2.1 主要特性

  • ‌轻量级和高效‌:Armbian 经过优化,适合资源有限的 ARM 设备,提供稳定且高效的运行环境。
  • ‌自动化构建‌:通过自动化构建机制,Armbian 保持其镜像的新鲜度,并提供季度稳定版、每日滚动更新版以及社区周更版。
  • ‌广泛的硬件支持‌:支持多种 ARM 芯片和开发板,包括全志、Amlogic、飞思卡尔/NXP iMx6、Marvell Armada A380 和三星 Exynos 5422等。

2.2 安装和配置教程

  • ‌硬件准备‌:确保你有一台兼容 Armbian 的 ARM 设备,如树莓派或 Orange Pi 等,并准备一个足够容量的 microSD 卡用于映像烧录。
  • ‌下载和烧录映像‌:访问 Armbian 官网下载最新稳定版或滚动发行版镜像,使用 Etcher 或 dd 命令将映像烧录到SD卡。
  • ‌配置启动选项‌(可选):对于高级用户,可以在烧录前编辑boot分区的配置文件,如 config.txt(针对树莓派),以调整启动参数。
  • ‌启动设备‌:将带有 Armbian 的 SD 卡插入ARM设备,连接电源和显示器,设备将从 SD 卡启动进入 Armbian 安装界面。
  • ‌初次设置‌:初次启动会引导你完成基本配置,如地区、时间、主机名和root用户密码的设定。部分设备可能需要手动配置 Wi-Fi 或有线网络以便进行在线更新和软件安装。

2.3 社区支持和用户反馈

Armbian 社区活跃,提供丰富的文档和论坛支持,用户可以轻松找到解决方案和获取帮助。此外,Armbian 还提供了一套完整的开发工具链,方便用户进行开发和调试工作。


3 Armbian 系统制作

3.1 准备工具

  • 8G 空间以上的 U 盘,用来写入并启动 Armbian 系统

  • 鼠标,键盘,网线

  • 写盘软件:Rufus 或者B alenaEtcher

  • Armbian项目固件地址为:https://github.com/ophub/amlogic-s9xxx-armbian/releases

  • Armbian固件有四个版本

    • Armbian_noble_save 主要是 Ubuntu 24.04 LTS 版本;

    • Armbian_jammy_save 主要是Ubuntu 22.04 LTS 版本;

    • Armbian_bullseye_save 主要是 Debian 11 版本;

    • Armbian_bookworm_save 主要是 Debian 12 版本。

  • Armbian N1 固件选择,

    • 我主要选择 Debian 12 的 Armbian_bookworm 版本,
    • 固件名称为Armbian_25.02.0_amlogic_s905d_bookworm_6.1.122_server_2025.01.01.img.gz

3.2 写入 U 盘,从U盘启动 Armbian 系统

  • 将下载的 Armbian 固件通过用软件 Rufus 写入U盘(U盘会被格式化,记住了)
  • 设置 U 盘启动,这种教程很多,也可以用 reboot update app 百度一搜就是。
  • 通电,接入网线,插上键盘。

3.3 Armbian 安装设置

  • 设置 root 密码,密码要输入两遍

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-01.webp

  • shell 选择,bash 和zsh 都可以

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-02.webp

  • 普通用户以及密码,账号我设置为 armbian,密码按你的设置。

  • 语言时区设置,如果出现 Asia/Beijing,那么就输入y;否则就输入n。按照 ZH_CH.UTF-8,也就是324;接着选择 AsiaBeijing

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-03.webp

  • 温馨提示,Armbian 自动开启 ssh 和 22 端口,所以设置到这里,直接用SSH工具访问。很多教程会到这里就写入 emmc,我们先不急,先把该安装的安装了,最后再写入 emmc。

4 Armbian 基础配置

4.1 Armbian 换源

换源方法有很多,比如用命令换源,像在以前的 debian 系统中我们也介绍过。

nano /etc/apt/sources.list

输入下列清华源。

deb http://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib non-free non-free-firmware
#deb-src http://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib non-free non-free-firmware

deb http://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib non-free non-free-firmware
#deb-src http://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib non-free non-free-firmware

deb http://mirrors.tuna.tsinghua.edu.cn/debian bookworm-backports main contrib non-free non-free-firmware
#deb-src http://mirrors.tuna.tsinghua.edu.cn/debian bookworm-backports main contrib non-free non-free-firmware

deb http://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
#deb-src http://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware

ctrl+x,y,回车保存退出,并且输入以下命令更新。

apt update && apt upgrade -y

当然,这是 Armbian,作者有想当完美的工具,可以换源,输入以下命令,按照选择中科大和清华源都可以。

armbian-apt

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-04.webp

ctrl+x,y,回车保存退出,并且输入以下命令更新。

apt update && apt upgrade -y

当然你也可以用armbian的工具。

armbian-update

4.2 更换 IP

Armbian 网络配置用的是 netplan,所以传统配置方式和 Ubuntu 差不多。因为默认生成的配置文件名是随机的,比如 00-default-use-network-manager.yaml,但是路径为 /etc/netplan/00-xxxxx.yaml,所以我们要输入以下命令编辑这个 yaml 文件。

首先,我们要获取网卡名称,输入以下命令获取,例如 eth0 就是我们获取的网卡名称。

ip addr
cd /etc/netplan
ls
nano 00-xxxxxxx.yaml #文件名看是啥就是啥

编辑了 yaml 文件,我们要配置静态 IPv4 和动态的 IPv6。

network:
  version: 2
  # 或者是networkd,取决于系统配置
  renderer: NetworkManager 
  ethernets:
    eth0: 
      dhcp4: no
      dhcp6: true
      # 设置新的 IP 地址和子网掩码
      addresses: [192.168.x.x/24] 
      # 设置新的默认网关
      gateway4: 192.168.x.1 
      nameservers:
        # 设置 DNS 服务器
        addresses: [119.29.29.29,8.8.4.4]

ctrl+x,y,回车保存退出,并且输入以下命令生效网络配置。

netplan apply

验证网络,可以输入 ip addr 查看新 IP 配置,或者直接 reboot 重启 Armbian。

当然,在 Armbian 中你可以使用以下命令来配置绝大多数的 Armbian 配置,包括网络配置。命令如下,截图如下。

armbian-config

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-05.webp

4.3 使用 armbian-software

armbian-software 是 armbian 非常好的一个工具,可以安装很多东西,我主要是用来安装 docker,docker 是 101,CasaOS 是 309,需要的都可以安装。

armbian-software

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-06.webp

4.4 写入EMMC

完成以上的配置,基本上就可以把系统写入 emmc 了,输入以下命令,然后写入 emmc 后重启拔了U盘就可以。

armbian-install

5 挂载移动硬盘

5.1 格式化移动硬盘

输入lsblk 查看硬盘设备,比如设备识别为 dev/sda

#查看硬盘设备
lsblk

#格式化移动硬盘
mkfs.ext4 /dev/sda

# 创建挂载点 /mnt/usb1
mkdir /mnt/usb1

# 把移动硬盘挂载至挂载点/mnt/usb1
mount /dev/sda /mnt/usb1

完成后可输入 lsblk 检验一下。

注:armbian 系统可直接挂载 ntfs 格式的硬盘,想挂载现有的移动硬盘可以不执行格式化的步骤。

5.2 设置开机启动自动挂载移动硬盘

sed -i '/exit 0/imount -v /dev/sda /mnt/usb1' /etc/rc.local

6 安装、设置 samba

6.1 安装 Samba

为了方便在 PC 管理移动硬盘内容,需要安装 Samba。

# 安装samba
apt install samba

# 编辑samba配置文件
nano /etc/samba/smb.conf

拉到底,在最底部添加以下内容,[usb1] 是显示的共享名字,path = /mnt/usb1 是准备共享出来的目录。

[usb1] 
comment = myshare
path = /mnt/usb1
writable = yes    
create mask = 0755
directory mask = 0755

设置完,ctrl+x,y,回车保存退出。

6.2 创建 samba 的用户和密码

touch /etc/samba/smbpasswd
#设置账号为root,也可以是其他账号
smbpasswd -a root
#重启服务
service smbd restart

7 安装 docker、迁移 docker 根目录至外挂的硬盘

N1 盒子自身带的 8G ROM 太小了,可能部署几个 docker 后就空间告紧了,所以把 docker 根目录迁移到外挂的硬盘。

7.1 安装docker

如果你用其他方法安装过 docker,或者用 armbian-software 安装过直接省略,我这里也是忽略不说了。

7.2 迁移 docker 至外挂的硬盘

  • 停止 docker
service docker stop
  • 迁移 docker 数据,在外挂硬盘创建目录
mkdir /mnt/usb1/docker -p
  • 拷贝相关数据
cp /var/lib/docker/* /mnt/usb1/docker -rpvb
mv /var/lib/docker/ /var/lib/docker.bak
  • 创建软链接
ln -s /mnt/usb1/docker /var/lib
  • 启动
systemctl daemon-reload
service docker restart
  • 验证
docker info

在列出的信息界面中的后面看到以下有以下信息,即迁移成功。

Docker Root Dir: /mnt/usb1/docker

8 总结

我在 armbian N1 上安装了 emby,也安装了 dpanel 管理 docker。

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-07.webp

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-08.webp

/imgURL/blog/60.N1/6001-N1盒子永不为奴-Armbian-01-armbian-09.webp

最近更新