文章参考来自恩山论坛《【斐讯 N1】手把手教你刷Armbian 安装博纳云,从降级开始V1.1》
感谢论坛朋友们的无私分享
经过了数次刷写和翻车之后,这个#1终于是能够有信心写下去了
斐讯N1是使用的arm架构处理器,它上面所运行的armbian是由一个.dtb引导的(这方面对于我来说所知甚少,甚至说一窍不通)
我们平常在x86平台安装Linux系统都是从U盘安装镜像启动,然后通过安装引导把系统安装到硬盘。而对于盒子来说并不是这样,N1的安装思路是把提前配置好、封装好的系统写入U盘,然后从U盘启动系统,再通过脚本写入eMMC。如果你想要亲自封装系统,建议前往恩山论坛去查阅相关资料,这方面笔者也是一窍不通。
那么接下来,正式开始我的记录
I.准备工作
文章所有需要的资源集合在此,请按需拿取(目录密码:N1
)
点击下载
首先选择一个合适的系统,是你愉快玩耍的基础(误)……
内核版本 | 系统版本 | 概述 |
3.14.29 | Armbian5.44 | 网络稳定,可刷入eMMC,不支持bbr |
5.0.2 | Armbian5.77 | 可刷入eMMC,替换dtb后稳定,支持bbr |
4.18.7 | CentOS 7.4 | 暂时不能刷入eMMC,支持性略好,其他优缺点同上 |
这三个版本的系统我都尝试了一下,说简单点就是第一个最稳定,第二支持的新特性最多,第三是属于尝鲜类的一个系统(暂时不能刷进eMMC)。
对于绝大多数人来说我个人还是推荐3.14内核的系统,可以免去很多折腾,作为一个喜欢折腾的人我选择了Armbian5.60。
2019.6折腾记录:我觉得5.77替换了dtb相比之前是非常稳定的,墙裂推荐d=====( ̄▽ ̄*)b
#Google TCP-bbr算法
bbr谷歌开发的一个TCP的拥塞算法,能够通过合理化发包次序使高延时条件下链路传输稳定性大幅提升
对于玩VPS的都知道海外的VPS安装bbr后代理速度会提升很多,不过在局域网延时低链路稳定的条件下有无bbr体验差距很小。
不得不提到,4.18+的内核刷入eMMC后会改变分区,无法再通过U盘重新覆盖安装回到3.14的版本,也无法再直接刷回盒子的系统。这个问题的解决方法两种,一种是通过ddbr恢复分区备份,另一种是线刷(参考恩山论坛)。后者我并没有操作成功,因为我的盒子在翻车之后连接电脑不管是短接还是怎么都没反应。
所以当你已经向eMMC刷入了任一版本的armbian之后,再刷入其他版本发现无法从eMMC启动,请参考
斐讯N1探索手记#2 – 使用ddbr恢复官改系统
恢复至原版安卓系统,再刷入其他版本即可
II.刷机
1.系统降级
现在买到的盒子大多数版本都比较新,需要进行降级才能够刷入第三方系统。
①打开盒子的ADB功能
将盒子正常开机,进入主界面后连接鼠标,用鼠标左键单击四下【固件版本】即可开启ADB
之前在学校没有显示器,结果到了家发现家里显示器连HDMI都没有(我哭了)。没有显示器可以在手机上安装【斐讯遥控器】这个app,通过这个app可以截图,看着截图一点一点挪动鼠标……点四下……也是可以的……
②系统降级
随后打开【斐讯T1、N1官方系统降级工具】,解压至任意摸得到的地方,双击运行【onekey】文件夹下的run.bat运行脚本
当然是选择[2]回车,随后会让你输入IP地址,之前的主页面截图上自己看就是了……填进去,如果操作正确会出现下图
如果连接失败的话,请检查ADB是否已经开启。按照提示进行后,盒子会自动重启,至此降级过程就结束了。
2.制作系统U盘
①将镜像写入U盘
选择一个自己最理想的镜像下载下来,解压获得一个.img映像文件,下载工具包中的【usbit.zip】,直接运行Usb Image Tool.exe即可
(注意此操作会格式化U盘)将一个8G以上的U盘插入电脑,在左侧选择U盘,然后再点击Restore,然后选择刚才解压出来的.img镜像,一路yes就会开始写入U盘,等着写入结束即可
②修改引导dtb
有些镜像已经修改好了引导,但是有的包并没有,检查一下总是没问题的
刻录完的U盘会有一个可读取分区和一个不可读取分区,进入可读取的那个分区(如图),用【Notepad++】编辑uEnv.ini这个文件
如图把那个.dtb替换成【meson-gxl-s905d-p230.dtb】,【Ctrl+S】保存
*armbian5.77请替换dtb为
xiangsm
修改的版本(见附件dtb补丁
)
3.引导从U盘启动
进入刚才的降级工具/onekey/data目录下(就是包含adb.exe那个文件夹),按住【Shift】键并单击鼠标右键,选择【在此处打开PowerShell窗口】
在打开的PowerShell窗口先后运行这两条指令,注意IP地址可能与刚开始降级时看到的不一致,可以在盒子的截图里再看看现在的IP是多少
1 2 |
.\adb.exe connect 192.168.xx.xx .\adb.exe shell reboot update |
操作正确后,盒子会自动重启并从U盘启动
4.将系统写入U盘
盒子在重启之后IP地址又会改变,这个时候最简单的是进入路由器去查看盒子的新IP,如果不行的就只能扫端口了
下载工具包中的【ScanPort.exe】,双击打开
去网络属性里查看一下你的路由器分配的内网网段是多少,红框内填写你的网段IP,端口号22,其他如图所示,扫描可见开放了22端口(SSH端口)的设备,其中之一肯定是你的盒子
下载并打开Xshell(其他的ssh客户端也可以,大同小异),新建连接,IP填你盒子的,然后点击【用户身份验证】,用户名root,其中armbian的默认密码是1234,CentOS的默认密码是centos,保存后连接即可
连接之后会提示你输入现在的密码并再输入新密码,输入即可(密码并不会在ssh界面显示,不要以为没输进去)
设置完又会提示加新用户,直接【Ctrl+C】跳过,重新连接。CentOS登录则直接完成,如果修改密码请用passwd指令。
三个镜像写入方式有一点差别,这里分开来写……
①Armbian_5.44
按顺序如下一条一条执行即可,按提示输入y一步一步整起走
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#根目录加权 chown root:root / -R #清除不需要的脚本 rm -f install.sh #下载需要的安装脚本 apt-get install wget wget https://static.lty.fun/%E5%85%B6%E4%BB%96%E8%B5%84%E6%BA%90/n1/5.44/install.sh #为脚本添加执行权限 chmod +x install.sh #准备系统分区 mkfs.ext4 /dev/data #安装系统至eMMC nand-sata-install |
最后显示Complete即可拔掉电源,然后拔掉U盘,再插上电源即从eMMC中的系统启动
②Armbian_5.77
一定要先替换成上面提供的补丁版dtb,然后直接执行如下条目即可
1 2 |
#安装系统至eMMC nand-sata-install |
Complete界面参考如上图,一样的
③CentOS-7-aarch64-n1-7.5.1804_4.18.7_20180922
CentOS7目前并不能安装到eMMC,但是默认又是从eMMC启动,所以上面俩系统可以选一个刷进eMMC里,然后插上U盘就会默认引导从U盘启动
常用软件配置配置请参考探索手记#3
(点击进入)
宝塔面板配置请参考探索手记#4
(点击进入)
*armbian及其他镜像和工具均转载自恩山论坛,在此表示感谢
*半原创教程,转载请注明出处(包含本站及恩山论坛的方案源)
u盘启动armbian5.77后,输入root,1234,登录后,修改密码报错自动退出ssh,怎么解决
怎么把emmc 的系统,安装到u盘,发现内置到硬盘空间太小了
执行dpkg –configure -a后提示dpkg: unrecoverable fatal error, aborting:
unable to flush updated status of ‘man-db’: Read-only file system
怎么解决啊?求大师指导
root@aml:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 467M 0 467M 0% /dev
tmpfs 184M 7.9M 177M 5% /run
/dev/mmcblk1p2 6.4G 1.6G 4.8G 25% /
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 920M 0 920M 0% /sys/fs/cgroup
tmpfs 920M 4.0K 920M 1% /tmp
/dev/mmcblk1p1 122M 73M 49M 60% /boot
/dev/zram0 49M 1.8M 44M 4% /var/log
tmpfs 184M 0 184M 0% /run/user/0
你好,非常感谢你的这四篇帖子,让我从琢磨了近半年成功的将N1刷成砖头的失败经历中又找回了信心。
我现在有个想法,想请教你。
我能否在U盘启动的系统中按照你的流程配置好宝塔后,用ddbr-B来备份系统,以后再ddbr-R+”nand-sata-install”来恢复到eMMC中?
谢谢!
想问下大佬 armbian到底刷啥版本最好?是5.77吗?我看你5.77和5.99好像都用了,我想一次到位,懒得折腾了…然后 你的5.77镜像为啥是Armbian_5.77_Aml-s905_Ubuntu_bionic_default_5.0.2_20190401.img.xz 为啥不是debian也不是desktop版?求大佬指点啊… 然后dbbr到底是干啥用的?只有需要刷回 电视盒子系统才用的上 ddbr吗?
Armbian5.77刷入u盘后启动失败 求指导
感谢站主,一次成功,现在考虑要不要写入eMMC,下载用IDM贼快!!!
我用3。14内核的桌面版 U盘能正常使用 但是用5.44的刷入方法刷入了之后u盘和emmc加载中途就卡住了,但是ssh都正常能用命令行
nand-sata-install
安装重启以后引导从U盘启动,屏幕一直显示是a start job is running for armbian …..,有好几个超时,有file 和 hardware的
请问下扫描不到22端口是怎么回事?
我刷入emmc后卡在斐讯开机画面了T^T
我不想刷入emmc,直接用的U盘启动,功能正常,但是我再插入一个移动硬盘后,ssh登录不了了,如果登录ssh后再插入移动硬盘,会发现任何命令都找不到了,只有拔电重启才能恢复
安装教程刷入 emmc的时候 ,卡在开机画面了
感谢,很详细的教程,成功刷了5.77的。只是断电之后文件会消失,用命令关机或者重启就没事,不知道有什么命令能保存emmc里的改动呢?每次都要重启有点烦。。
请问,刷入ARMBIAN之后,要是想刷回盒子桌面系统,应该如何处理?是否有相关的教程,我现在能进ARM桌面,但是USB刷机线插上不认原来的刷机设备了
root@aml:~# nand-sata-install
Start copy system for DATA partition.
resize2fs 1.44.1 (24-Mar-2018)
open: No such file or directory while opening /dev/data
tune2fs 1.44.1 (24-Mar-2018)
/sbin/tune2fs: No such file or directory while trying to open /dev/data
Couldn’t find valid filesystem superblock.
e2fsck 1.44.1 (24-Mar-2018)
e2fsck: No such file or directory while trying to open /dev/data
Possibly non-existent device?
Copying ROOTFS.
mount: /ddbr/install: special device /dev/data does not exist.
Copy BIN
Copy BOOT
Create DEV
Copy ETC
Copy HOME
Copy LIB
Create MEDIA
Create MNT
Copy OPT
Create PROC
Copy ROOT
Create RUN
Copy SBIN
Copy SELINUX
Copy SRV
Create SYS
Create TMP
Copy USR
Copy VAR
Copy fstab
/usr/sbin/nand-sata-install: 99: /usr/sbin/nand-sata-install: /usr/sbin/fw_printenv: not found
export ARCH=’arm64′
export HOME=’/root’
export LANG=’en_US.UTF-8′
export LANGUAGE=’en_US.UTF-8′
export LC_ALL=’C’
export LC_MESSAGES=’en_US.UTF-8′
export LESSCLOSE=’/usr/bin/lesspipe %s %s’
export LESSOPEN=’| /usr/bin/lesspipe %s’
export LOGNAME=’root’
export LS_COLORS=’rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:’
export MAIL=’/var/mail/root’
export OLDPWD=’/root’
export PATH=’/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games’
export PWD=’/’
export SHELL=’/bin/bash’
export SHLVL=’1′
export SSH_CLIENT=’192.168.50.15 51154 22′
export SSH_CONNECTION=’192.168.50.15 51154 192.168.50.234 22′
export SSH_TTY=’/dev/pts/0′
export S_COLORS=’auto’
export TERM=’xterm’
export USER=’root’
export XDG_RUNTIME_DIR=’/run/user/0′
export XDG_SESSION_ID=’1′
export _=’/usr/sbin/nand-sata-install’
Modify files for N1 emmc boot
Image Name:
Created: Mon Jul 1 01:04:15 2019
Image Type: ARM Linux Script (uncompressed)
Data Size: 1125 Bytes = 1.10 KiB = 0.00 MiB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 1117 Bytes = 1.09 KiB = 0.00 MiB
Emmc boot fixed end
umount: /ddbr/install: not mounted.
*******************************************
Done copy ROOTFS
*******************************************
Write env bootargs
/usr/sbin/nand-sata-install: 144: /usr/sbin/nand-sata-install: /usr/sbin/fw_setenv: not found
*******************************************
Complete copy OS to eMMC parted DATA
*******************************************
root@aml:~#
最后一步,执行结束拔电拔U盘,插电还是进入原来的系统????
shutdown -h now
关机,拔电,拔U盘,上电,即从eMMC启动你好,降级工具只是写入了boot.img.bl和rc IMG没有改?这样也算降级成功吗?
博主的资源集合里,dbt 补丁分两个版本:4.18.x 和 4.20.x
后来我又去 yangxuan8282 大佬的 N1 仓库翻了一下,找到一个据称是“适用于 4.18 内核的 armbian”的 dtb,然后我算了一下 sha1 值,发现和博主资源集合中 4.20.x 文件夹里的 dtb 文件是一致的。
不过我还记得另一个博主在他的文章里写到:“dtb 文件据称可以修复内核高负载和有线断网的 Bug,经过测试发现大多数的 Armbian 版本适用,只要替换了 dtb 文件就能解决这两个问题,没必要选择特定的内核版本”。
所以我现在蛮困惑的。
装好armbian系统后,先有线连通,然后拔网线,无线就正常了。
怎么解决?