N1 盒子刷最新版 armbian 及软件安装

2019-12-22 16:02:10 87点赞 791收藏 78评论

写在前面

前段时间关注了#如何玩转NAS 后,玩性大发,各路值友们分享的好玩东西都分别尝试了一下,现在主力是一台x86的小箱子做云存储,部署了smb/jellyfin/nextcloud等。不过感觉最好玩的还是N1盒子,主要是玩法太多了。

不过最爱的还是 armbian,因为它有无限可能。不过包括某山和张大妈、各种网上资料里,系统版本都有点老了,一些内容已经过时。我自己踩了遍各种坑,现在整理一下,希望帮助到有兴趣的值友,也作为自己的备忘。

  1. 这篇文章并不适合所有人,由于armbian有一定上手难度,需要一些linux基础,适合有嵌入式设备操作经验的同学

  2. 关于N1如何线刷降级、如何准备各种软件就不再赘述了。

  3. 截止目前,这个教程还没有完全完善,最新系统从U盘刷入内置存储后,盒子无法启动,需要U盘辅助启动。我也会跟进一下有没有解决方案。

下载最新镜像

我选用的镜像从这里下载的,我是从19.11.3下载的最新版本,更新日期大约在19年11月27日左右,装完后基本没有需要更新的包。这个站点也有稳定的 5.99 等版本,大家可以自己选择。

具体该选择哪个文件呢?这里科普下 armbian 的命名规则,如我选的版本 Armbian_19.11.3_Aml-g12_buster_legacy_5.3.0_20191126.img.xz,包含以下部分:

  • Armbian: 项目名称,没什么好说的

  • 19.11.3: 版本,这里是不稳定版本所以是19开头的,稳定版是类似5.99等

  • Aml-g12: 硬件信息,最早需要下载Aml-s905 或者 s9xx 的版本,现在因为各种硬件支持都集合在一起了所以无所谓

  • buster: 系统版本代号,buster 是debian 10的代号,是debian的最新发行版,类似还有:

    • bionic: ubuntu 18

    • eoan: ubuntu 19

    • stretch: debian 9

    • xenial: ubuntu 16

  • 5.3.0: Linux 内核版本

  • 20191126: 编译日期

  • img: 文件类型,img代表磁盘镜像

  • xz: 压缩算法

烧录

下载完成后,我们需要将 img 文件解压出来。在 windows 下可以用 rar/7z 等进行解压,在 Linux/mac下面可以通过 xz d Armbian-xxxxx.img.xz 命令进行解压。

得到的img文件就是U盘镜像。里面是完整的U盘内容拷贝。我们需要找一个 U 盘,利用烧录软件将镜像烧录到 U 盘中。

windows 下面可以用 usb image tool 等进行烧录。烧录过程中有可能因为第一个分区被系统挂载了盘符导致烧录失败,这时候关掉文件管理器窗口重新烧录就行。

linux下可以用下面的命令进行烧录:

sudo dd if=Armbian-xxxxx.img of=/dev/sdb

# 这里的 sdb 是 U 盘的设备描述符,也可能是 sdc 等,通过 lsblk 可以查看磁盘情况;

mac的情况类似,不过盘符应该是类似 /dev/disk2 这种,具体可以通过 Disk Utility 查看。另外,无论 linux 还是 mac,如果 U 盘被自动挂载了,务必先卸载再进行烧录。

警告:烧录有风险,如果输错了盘符或者U盘上有重要文件可能会导致数据丢失,请谨慎驾驶。烧录不谨慎,亲人两行泪

修改启动设置

烧录成功后U盘上将会有两个分区,一个较小的BOOT分区,格式是FAT,一个较大的ROOTFS分区,格式是ext4。我们需要挂载并修改 BOOT 分区的文件。

打开 uEnv.ini,可以看到如下内容:

dtb_name=/dtb/amlogic/meson-xxx-n1.dtb

bootargs=root=LABEL=ROOTFS ...

我们需要修改dtb_name的文件名为类似 meson-gxl-s905d-phicomm-n1.dtb。

上电!

在N1断开电源状态下插入U盘到第一个USB口(HDMI接口附近那个),然后上电,应该可以看到Linux的启动消息。

初次启动会调整主分区大小,把主分区扩展到U盘剩余空间,这个过程比较慢可能要耗时几分钟。然后就看见登录提示,输入 root 密码 1234 即可登录。

初次登录会提示修改 root 密码和创建新用户,第二个步骤不是必需的可以 ctrl-c 断开。

到这一步安装过程已经全部完成了,已经可以承接无限可能了N1 盒子刷最新版 armbian 及软件安装 接下来的步骤并不是必需的,大家可以根据情况各取所需。

连接 Wi-Fi

Armbian 提供了命令行配置工具 armbian-config,可以进行连接 wifi、安装软件等操作。命令行工具可以通过 ssh 登录的方式进行(当然必须是有有线连接或者已经连上 wifi 的前提下),也可以通过外接硬盘直接在终端进行。我这里通过有线连接后,ssh 上去进行配置的。windows 最新版已经内置了 ssh 命令,不需要额外装 putty 什么的了:

命令行远程登录并运行 armbian-config命令行远程登录并运行 armbian-config

选择 Network / WiFi 后,可以选择自己的 SSID 进行连接了(支持2.4G和5G)

wifi 选择界面,有可能会有渲染出错不过没关系wifi 选择界面,有可能会有渲染出错不过没关系

配置软件源

连上网之后我们就可以安装软件了,安装之前我们先修改一下软件包源。修改的过程也可以通过 ssh 远程连接的方式,这里不再赘述。由于我选择的是 debian,所以默认的软件源是 debian 默认的。可以直接把源地址修改成这一行(/etc/apt/source.list):

deb http://mirrors.huaweicloud.com/debian buster main contrib non-free

Armbian 默认还增加了自己的源,不更新驱动和内核的话可以直接删掉 /etc/apt/source.list.d/ 下面的文件。

镜像源的设置包含三部分。第一部分是服务器地址,第二部分是系统版本,第三部分是需要的软件包类型。完整的服务器地址可以从 https://www.debian.org/mirror/list.zh-cn.html 查看。其中国内的支持 aarch64 的有:

ftp.cn.debian.org

ftp2.cn.debian.org

mirror.lzu.edu.cn # 兰州大学

mirrors.huaweicloud.com # 华为

mirrors.tuna.tsinghua.edu.cn #清华大学

mirrors.ustc.edu.cn #中科大

然后运行 apt update,就可以更新软件包列表了。

安装到 EMMC

到目前为止系统都是跑在U盘上面的,为了更好的读写性能,我们可以将系统拷贝到内置的 EMMC 中。不过最新 armbian 的安装过程是破坏性的,安装完成后,盒子将不能直接启动,必须插入外置 U 盘才能启动。所以我们要做三件事情:

  1. 备份 EMMC 上的分区,以备将来刷回旧的系统

  2. 将 U 盘上的系统刷到 EMMC 上

  3. 配置一个 U 盘,用来引导 EMMC 上的系统


第一步,我们可以通过 ddbr 命令来进行,选择 backup (b) 然后使用压缩 (y),将 EMMC 的内容备份到 U 盘上。备份文件放在 /ddbr/BACKUP-xxxxx.gz,请妥善保管,可以将这个文件拷贝出去到别的位置以防 U 盘损坏丢失。

将来如果要恢复盒子系统,需要继续插入有 armbian 的 U 盘,然后运行 ddbr,将备份恢复到 EMMC。

然后运行 nand-sata-install 或者 /root/install.sh。安装脚本将整个 EMMC 重新分区,并拷贝进去 BOOT 和 ROOTFS 的内容。

至此,盒子将不再可启动,我们需要准备一个引导 U 盘。引导 U 盘上有一个 BOOT 分区,内置了 Linux 内核和启动配置文件。当插入启动 U 盘后,盒子会读取 uEnv.ini 并加载内核。armbian 镜像 U 盘中的系统根目录盘符为 ROOTFS,所以 uEnv.ini 中的内核启动参数为:bootargs=root=LABEL=ROOTFS。而当我们将系统写入 EMMC 后,EMMC 上的盘符为 ROOT_EMMC,所以我们需要修改 uEnv.ini 中的 LABEL 参数。

可以另外准备一个空白 U 盘,在上面创建一个只有 128M 的分区,格式化为 FAT,并将盘符改为 BOOT。然后我们把刚才制作的启动盘上的所有文件拷贝进去,并打开 uEnv.ini,修改内核参数:

bootargs=root=LABEL=ROOT_EMMC ...

我们也可以复用 armbian 的镜像 U 盘,只需要修改 uEnv.ini,当需要启动 U 盘上的系统,将 LABEL 改为 ROOTFS,当需要启动 EMMC 上的系统,将 LABEL 改为 ROOT_EMMC 即可。

安装 Docker / portainer / Samba 等软件

后续要安装 HomeAssistant / openwrt / nextcloud 等,都可以通过 docker 来进行,所以我们先来看 docker 的安装。armbian-config 提供了集成的安装脚本,可以直接在里面进行安装,路径是 Software -> Softy:

Softy 软件选择界面Softy 软件选择界面

docker 默认通过 docker.io 拉取包,我们也可以改为国内的镜像。关于 docker 如何修改 registry 我们不再赘述。

接下来安装 portainer:

docker pull portainer/portainer:latest

docker run -d -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock-v portainer_data:/data portainer/portainer:latest

通过 docker ps 可以查看启动情况,启动完成后,访问 9000 端口就可以进入 portainer 的配置界面了:

portainerportainer

安装 HomeAssistant 等 docker 包

docker 安装软件的过程大概分为 docker pull 和创建 container 两个过程。以 HomeAssistant 为例,我们首先要知道自己需要拉取的包名字,如:

docker pull homeassistant/aarch64-homeassistant:latest

然后可以通过 portainer 或者直接用 docker run 的方式来创建容器。

配置 samba

samba 的配置很简单,第一步配置共享目录,第二步设置用户密码,第三步重启服务即可:

共享目录配置文件在 /etc/samba/smb.conf,只需要在文件末尾添加共享名称(显示在Explorer里的名称)和 path 以及授权用户即可

smb.confsmb.conf

用户密码通过 smbpasswd [用户名] 来设置。如果是新用户需要用 smbpasswd -a [用户名] 来添加用户。

然后运行 systemctl restart smbd.service 重启服务器,打开资源管理器输入 盒子IP 就能访问了。盒子默认 host 为 aml,所以也可以通过 aml 访问:

访问 smb 文件访问 smb 文件

配置 transmission 下载

transmission 运行在 N1 上很不错,整体消耗很小而且安装配置简单。我们通过 armbian-config 安装 transmission 后,先进行简单的配置,并挂载一个移动硬盘用来下载。

需要注意,transmission 在运行时直接修改配置文件可能不生效,所以我们需要先将服务停掉:systemctl stop transmission-daemon.service。

打开 /etc/transmission-daemon/settings.json,我们可以看到所有的配置选项。这里我们先改下用户名和密码,分别是 rpc-username 和 rpc-password。再次启动服务后,rpc-password 将被加密,不过我们不用担心。

将外置 usb 存储挂载到系统上后,我们在上面创建一个下载目录并修改 owner,以允许 tr 写入:

cd /media/pool # 外置硬盘的挂载地址

mkdir bt

chown debian-transmission:debian-transmission bt

然后在下载的时候将存储目录指定为这个目录或其子路径即可。也可以直接在配置文件里或者 web 界面里修改。访问 http://{盒子 IP}:9091 即可打开 transmission 目录

transmission web 界面transmission web 界面

最后,如果你有公网 IP 要挂 pt 的话,别忘了在路由器上打开端口转发,把 tr 的 peer 端口共享出去。

总结

N1 + armbian 的玩法还有很多,包括 nextcloud、媒体服务、旁路由等,甚至可以作为一台小型服务器用来提供 web 服务,而且性能相当不错。在我这里同时运行两个 docker 服务,开 tr 下载,然后通过 samba 看盒子里下的电影,CPU 也不过个位数,内存才用了三百兆左右;还有其它的玩法就等值友们共同开发了

展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2499元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2599元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3499元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1799元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4299元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3299元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1341.01元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1299元起
78评论

  • 精彩
  • 最新
  • 装ubuntu 可以跑的动吗

    校验提示文案

    提交
    不跑桌面的话都一样,跑桌面比较吃力

    校验提示文案

    提交
    收起所有回复
  • dtb是啥

    校验提示文案

    提交
    设备表,你可以理解为内核patch,让一个内核跑在不同硬件上

    校验提示文案

    提交
    收起所有回复
  • 有没有办法不用u盘引导?

    校验提示文案

    提交
    移动硬盘分一个128M的区格式化成FAT也可以引导,顺便满足存储需求

    校验提示文案

    提交
    收起所有回复
  • 请教一下大神,我的n1是yyf带下载的系统,用tr下pt时发现端口80的种子速度很快,但是端口443的种子没有速度,如何解决?我的路由是移动光宽带+k2原生系统,由于K2没法降级,所以没有刷别的系统。

    校验提示文案

    提交
    会不会是你的pt站的tracker证书有问题?你看看下载列表里面应该有tracker信息

    校验提示文案

    提交
    收起所有回复
  • 安装到 EMMC这里的第3个步骤:
    配置一个 U 盘,用来引导 EMMC 上的系统

    这个意思是?我想用EMMC 上的系统,还是必须要插一个u盘才行,离开了u的引导,盒子还是跑不起来?

    校验提示文案

    提交
    确实有这个问题,新版本的 armbian 只能用usb引导。。不过外接硬盘可以只分一个很小的FAT分区,别的分区可以挂载当资料盘

    校验提示文案

    提交
    收起所有回复
  • 安装到emmc就不用U盘了啊!

    校验提示文案

    提交
    sh install-aml.sh之后重启,不插u盘后进不去armbian……我的是联通送的盒子,只有一个usb口,很难受...你试过可以直接用emmc不外接u盘就可以启动吗?

    校验提示文案

    提交
    安卓刷到6.0之后在搞armbian就能正常安装到emmc 已成功 [高兴]

    校验提示文案

    提交
    收起所有回复
  • 小白求教:小钢炮➕docker和ambian➕docker的区别是什么?

    校验提示文案

    提交
    对docker来说没区别,跟windows上网和mac上网区别一样没区别。

    校验提示文案

    提交
    armbian是针对arm架构的轻微精简版的Linux,小钢炮是非常精简版的linux [观察]

    校验提示文案

    提交
    还有5条回复
    收起所有回复
  • 轻度使用的话ac86u挂个硬盘,用ddnsto搭配aria2和aicloud就能愉快的在任何地方看片了,当然啦,折腾才是最有趣的,点赞 [赞一个]

    校验提示文案

    提交
  • 在Armbian下能否安装kodi当个播放器用?我刚需挂博客和电视盒子

    校验提示文案

    提交
  • 技术贴必须支持

    校验提示文案

    提交
  • 什么都用docker跑,我不如用小钢炮

    校验提示文案

    提交
  • 手里5-6个u盘,烧录完每次启动n1盒子就是安卓机器人躺在屏幕中间

    校验提示文案

    提交
    重新烧录,重新刷系统,最好用USB2.0的U盘。你这种情况应该是U盘不行,我用的是零几年的索尼8G U盘,一次成功。

    校验提示文案

    提交
    不是,armbian 最新的安装脚本里明确写了一开始就全盘重新分区,然后再恢复 uboot,所以说除非更新uboot,不然无解

    校验提示文案

    提交
    还有6条回复
    收起所有回复
  • 正用作旁路由的路过……

    校验提示文案

    提交
    旁路由有什么玩法

    校验提示文案

    提交
    没啥,只是提子速度快了

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 这个能硬改USB3.0就好了

    校验提示文案

    提交
  • 虽然看不懂吧,但还是打赏并点赞了!期望写篇易懂的nas教程!

    校验提示文案

    提交
  • 有点怀念房间折腾pogoplug.虽然手上三个n1.如果还是安静让他做个机顶盒

    校验提示文案

    提交
  • 刚买了一个刷好机的N1,还没到货,有啥注意的?

    校验提示文案

    提交
    提前买点红牛,注意补充体力,好科学研究比较累 [皱眉]

    校验提示文案

    提交
    求关键字,马云家搜不到

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • Transmission可以下载一个WebUI,比原生的好多了

    校验提示文案

    提交
  • 太高端的玩不了,搞了个群晖218j搞pt,加n1刷的coreelec当高清播放器,真香啊

    校验提示文案

    提交
  • 刷的是5.77的版本,稳定跑几个月了

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
791
扫一下,分享更方便,购买更轻松