十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

N1盒子刷Armbian安装CasaOS:轻量级NAS搭建与内网穿透指南

N1盒子刷Armbian安装CasaOS:轻量级NAS搭建与内网穿透指南 家里翻出来一个吃灰的N1盒子这玩意儿当年运营商白送了一大批后来热度退了闲鱼上几十块钱就能收一个。很多人拿到手刷个电视系统就扔那儿了其实这颗晶晨S905的芯片放到今天跑个轻量级NAS完全够用。我前后折腾过五六个N1有的刷了Armbian当下载机有的装了CasaOS做家庭影音中心还有的纯粹拿来跑一些定时任务。这篇就把整个流程从头到尾捋一遍包括怎么刷Armbian、怎么在Armbian上装CasaOS、以及装好之后怎么从外网访问家里的服务。整个过程不需要什么高深技术照着做就行但里面有几个坑我踩过会重点标出来。1. 为什么N1盒子值得刷Armbian而不是继续用安卓1.1 N1盒子的硬件底子和性能边界先把这个盒子的硬件参数摆出来心里有个数。N1用的是晶晨S905D四核Cortex-A53架构主频最高1.5GHzGPU是Mali-450内存2GB DDR3存储是8GB eMMC。这个配置放在电视盒子领域属于入门级但拿来跑轻量级Linux服务其实绰绰有余。2GB内存跑一个Armbian系统加上CasaOS的面板日常占用大概在400到600MB之间剩下的内存跑几个Docker容器完全没问题。网络方面N1只有一个千兆网口没有WiFi模块部分批次有但驱动支持很麻烦所以最好用网线直连路由器。USB接口有两个都是USB 2.0这个速度用来接移动硬盘做影音存储拷贝大文件的时候大概能跑到30到40MB/s看个1080P的蓝光原盘是够的但如果你要同时跑多个高码率视频流USB 2.0的带宽就会成为瓶颈。存储方面8GB的eMMC装完Armbian之后大概还剩5GB左右装CasaOS和几个常用Docker镜像之后基本就满了。所以强烈建议插一个U盘或者移动硬盘做数据盘把Docker的数据目录和影音文件都放在外置存储上。我自己的做法是拿一个64GB的U盘专门放Docker数据一个2TB的移动硬盘放影音资源。1.2 Armbian相比安卓系统的核心优势很多人会问N1原厂安卓系统也能装Kodi看视频为什么还要折腾Armbian这里面的差别其实挺大的。安卓系统本质上是一个为触屏和遥控器设计的消费级系统它的后台管理机制、文件系统权限、网络服务能力都受到很大限制。你想在安卓上跑一个Samba共享得装一堆第三方App稳定性还差。你想跑Docker安卓根本就不支持。而Armbian是一个完整的Debian系Linux发行版你可以像操作一台普通服务器一样操作它apt装软件、systemd管理服务、Docker跑容器这些都是原生支持。另一个关键点是资源占用。安卓系统本身加上各种后台服务开机之后内存就吃掉一大半剩下给应用的内存很有限。Armbian最小化安装之后内存占用可以控制在200MB以内剩下的资源全部可以分配给实际的服务。这对于只有2GB内存的设备来说差别是巨大的。还有一点是远程管理的便利性。Armbian天然支持SSH你可以在任何一台电脑上通过终端管理它不需要接显示器。安卓系统虽然也有ADB但那个体验跟SSH完全不是一个级别。1.3 CasaOS在N1上的实际表现预期CasaOS是一个轻量级的家庭云面板它的定位是让普通人也能轻松管理家里的NAS服务。它自带应用商店可以一键安装常用的Docker应用比如Jellyfin、qBittorrent、Alist、Syncthing等等。界面做得挺好看中文支持也完整。在N1上跑CasaOS我的实测体验是面板本身响应速度可以接受打开页面大概1到2秒切换菜单基本秒开。但是如果你同时跑三四个Docker容器比如Jellyfin在转码视频、qBittorrent在下载、Alist在挂载网盘这时候面板的响应就会变慢有时候要等三四秒。这不是CasaOS的问题是N1的CPU和内存确实到极限了。所以我的建议是N1上的CasaOS不要贪多同时跑两到三个轻量级容器就够了。Jellyfin做影音服务、qBittorrent做下载、Alist做网盘挂载这三个组合是最实用的。如果你还想跑更多服务建议换性能更强的设备比如N100或者树莓派4B。2. 刷机前的准备工作与固件选择2.1 需要的硬件和软件清单刷N1需要准备的东西不多但每一样都不能少。硬件方面一个N1盒子、一根USB双公头线就是两头都是USB-A公头的那种线、一台Windows电脑、一个U盘8GB以上、一根网线、一个螺丝刀拆机用后面会说到为什么可能需要拆机。软件方面Amlogic USB Burning Tool晶晨官方的刷机工具版本建议用2.2.0以上、N1的降级固件包、Armbian的镜像文件、balenaEtcher用来把镜像写入U盘、以及一个SSH客户端Windows上用PuTTY或者Windows Terminal自带的ssh命令都行。这里重点说一下USB双公头线。很多人家里没有这种线因为平时用的都是USB-A到USB-B或者Type-C的线。这个线在刷机过程中用来连接电脑和N1的USB口是必须的。网上买的话几块钱一根建议提前准备好。2.2 固件版本的选择逻辑N1的Armbian固件有好几个来源比较主流的是恩山论坛上大佬们编译的版本以及Armbian官方对S905系列的支持版本。我推荐用恩山论坛上专门为N1适配的版本因为官方版本对N1的网卡驱动和eMMC支持有时候会有问题。具体版本号方面我实测比较稳定的是基于Debian 11Bullseye的Armbian 23.02版本内核是5.15系列。这个版本对N1的硬件支持比较完善网卡能正常识别eMMC也能正常挂载。更新的版本比如基于Debian 12的有些会出现网卡不识别或者eMMC写入失败的问题不建议新手尝试。CasaOS的安装倒是没什么版本限制只要Armbian能正常跑起来用官方的一键安装脚本就行。但要注意CasaOS对Docker版本有要求需要Docker 20.10以上Armbian自带的Docker版本一般都能满足。2.3 降级操作的必要性和具体步骤N1的原厂系统有一个引导验证机制如果不降级直接刷Armbian刷机工具会报错。所以第一步必须先把原厂系统降级到一个可以接受第三方固件的版本。降级的具体操作是先把N1接上电源和网线开机进入原厂系统。然后在电脑上通过ADB连接到N1需要先在N1上开启ADB调试执行降级命令。降级包里面通常包含三个文件bootloader、boot和recovery。你需要依次把这些文件推送到N1的对应分区。这个过程说起来简单但实际操作中有几个坑。第一个坑是ADB连接不稳定有时候会断断了之后要重新来。第二个坑是降级包版本不对刷进去之后N1直接变砖只能拆机短接救砖。所以降级之前一定要确认降级包是针对你的N1批次的。N1有两个批次早期批次和后期批次的闪存芯片不一样降级包不能混用。注意降级之前先用原厂系统的系统信息页面确认一下你的N1是什么批次。如果系统信息里面显示的版本号是2.19及以下说明是早期批次2.22及以上是后期批次。不同批次的降级包不通用。3. 从零开始刷入Armbian的完整流程3.1 制作启动U盘和首次引导Armbian的镜像下载下来是一个压缩包解压之后得到一个.img文件。用balenaEtcher把这个img文件写入U盘写入完成之后U盘会被分成两个分区一个是FAT32的boot分区一个是ext4的rootfs分区。Windows下面只能看到boot分区这是正常的。写入完成之后把U盘插到N1靠近HDMI的那个USB口上这个口是OTG口也是引导口。然后给N1通电同时用牙签或者取卡针按住N1底部的复位键在网口旁边那个小孔里面。按住复位键的同时通电保持按住大概5秒钟再松开。这时候N1会从U盘引导而不是从eMMC引导。如果一切正常你会看到N1的HDMI输出有画面显示Armbian的启动日志。如果没有画面可能是U盘没做好或者复位键按的时机不对。多试几次这个操作需要一点耐心。首次启动Armbian会要求你设置root密码和创建一个普通用户。密码建议设置得复杂一点因为后面要暴露到公网。创建完用户之后系统会重启这次重启就不需要按复位键了它会自动从U盘引导。3.2 把系统写入eMMC的详细操作U盘引导成功之后你可以在SSH里面操作把系统从U盘写入到eMMC。Armbian自带了一个安装脚本执行armbian-install命令就行。脚本会问你几个问题选择要安装的设备选eMMC、选择文件系统类型选ext4、是否格式化选是。然后它会自动把U盘上的系统拷贝到eMMC。这个过程大概需要5到10分钟取决于U盘的速度。写入完成之后脚本会提示你关机拔掉U盘然后重新通电。重新通电之后N1就会从eMMC引导Armbian了。这里有一个非常关键的坑写入eMMC之后第一次从eMMC启动可能会失败卡在开机画面不动。这个问题的原因是eMMC的引导记录没有正确写入。解决办法是重新用U盘引导然后执行armbian-install的时候选择“安装引导记录到eMMC”这个选项。或者更简单的方法在U盘引导状态下执行dd if/dev/zero of/dev/mmcblk1 bs1M count10清空eMMC的前10MB然后重新安装。3.3 刷机后必须做的系统初始化配置系统写入eMMC并成功启动之后有几件事必须马上做不然用起来会很别扭。第一件事是更新软件源和系统。执行apt update apt upgrade -y这个过程可能需要十几分钟因为Armbian的源在国外速度比较慢。如果实在等不了可以换成国内源但要注意Armbian的源结构和Ubuntu不太一样不能直接套用Ubuntu的源。第二件事是设置静态IP。N1作为NASIP地址不能变不然每次重启之后你都要重新找它的IP。编辑/etc/network/interfaces文件把eth0的配置改成静态IP。或者如果你用的是NetworkManager可以用nmcli命令来设置。第三件事是安装必要的工具。apt install -y htop curl wget git vim这些工具后面都会用到。特别是curlCasaOS的安装脚本需要用它来下载。第四件事是检查eMMC的剩余空间。执行df -h看看根分区的使用情况。如果剩余空间不到2GB建议把Docker的数据目录迁移到外置存储上不然装几个容器就满了。4. 在Armbian上部署CasaOS的实操细节4.1 CasaOS的一键安装与常见报错处理CasaOS的官方安装命令很简单curl -fsSL https://get.casaos.io | sudo bash。这个脚本会自动检测系统环境安装Docker和Docker Compose然后拉取CasaOS的镜像并启动。但是在N1上执行这个脚本大概率会遇到两个问题。第一个问题是脚本检测到系统架构是armv8之后会去拉取arm64的镜像但有些镜像在Docker Hub上没有arm64版本导致拉取失败。第二个问题是脚本执行到一半的时候因为网络原因超时导致安装中断。对于第一个问题解决办法是手动指定镜像版本。CasaOS的主镜像是有arm64版本的但一些依赖镜像可能没有。你可以在脚本执行失败之后手动执行docker pull命令把缺失的镜像拉下来然后重新执行安装脚本。对于第二个问题最简单的办法是配置Docker的国内镜像加速器。编辑/etc/docker/daemon.json文件加入镜像加速地址然后重启Docker服务。这样拉取镜像的速度会快很多脚本就不容易超时了。安装完成之后CasaOS会监听80端口。你在浏览器里面输入N1的IP地址就能看到CasaOS的登录页面。首次登录需要创建一个管理员账号这个账号密码要记好后面管理Docker容器都要用它。4.2 存储挂载与Docker数据目录迁移CasaOS默认把Docker的数据目录放在/var/lib/docker这个目录在eMMC上。前面说过eMMC只有8GB装完系统和CasaOS之后剩不了多少空间。所以必须把Docker的数据目录迁移到外置存储上。迁移的步骤是先停止Docker服务systemctl stop docker然后把/var/lib/docker目录下的所有内容拷贝到外置存储的某个目录下比如/mnt/usb/docker。拷贝完成之后编辑/etc/docker/daemon.json文件把>
返回列表