此教程同样适用于斐讯 P1
咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了官改系统,可以当作一个电视盒子和下载机来使用。
有些小伙伴可能不想把它当作电视盒子,就想把它当作 NAS 或者是服务器,但是总不能拿 Android 玩吧,Android 也不是针对服务器设计的。
那么我说过,N1 不仅能刷官改,还能运行 Linux,而且是完整的 Linux 发行版,用 Linux 当服务器、NAS、下载机,体验总是要比 Android 好的。
这篇教程就教大家如何在斐讯 N1 运行 Linux 以及后续的优化,在此之前,需要将你的 N1 降级并刷入官改固件,也可以只刷入降级关键分区(感谢群里的小伙伴反馈)。传送门:《斐讯N1折腾记:降级及刷入官改》
制作 Linux 启动盘
N1 运行 Linux 的原理是通电的时候引导 U 盘里的系统
所以需要准备一个U盘来制作启动盘,U 盘大小推荐不低于8G,连续读写速度推荐达到30M/s,随机读写速度推荐达到10M/s。最好是买个全新的,如果是旧的,提前备份好U盘内数据。
本教程以 Linux 发行版 Armbian 为例,玩过树莓派的小伙伴应该对这个系统不陌生,是适用于 ARM 架构的 Debian 和 Ubuntu。
下载地址
Armbian:
里面有好几个版本,下载最新的版本,5.44 是之前最稳定的一个版本,喜欢尝鲜的玩家也可以用最新版。IMG含义
例如:Armbian_5.44_S9xxx_Debian_stretch_3.14.29_server_20180601.img
Armbian:这个就不多说了
5.44:Armbian 的版本号
S9xxx:适用的 CPU
Debian:基于 Debian 编译的,另外还有 Ubuntu。
stretch:Debian 或 Ubuntu 的发行版代号,stretch 表示的是 Debian 9。
3.14.29:Linux 内核版本号
server:桌面环境,Server 代表的是服务器版,没桌面环境,其他的代表的是相应的桌面环境,比如:xfce、mate。
20180601:编译日期
新版
例如:Armbian_5.59_Aml-s9xxx_Debian_stretch_default_4.18.0_desktop_20180829.img
Armbian:这个就不多说了
5.44:Armbian 的版本号
Aml:CPU 代号
Debian:基于 Debian 编译的,另外还有 Ubuntu。
default:没啥用
stretch:Debian 或 Ubuntu 的发行版代号,stretch 表示的是 Debian 9。
4.18.0:Linux 内核版本号
desktop:有桌面环境,没有这个则表示没有桌面环境。
20180829:编译日期
小白推荐使用 Ubuntu,桌面环境推荐使用 mate。我个人推荐使用Debian Server,做一个真正的服务器。
首先格式化你的U盘分区格式为 FAT32 或者把U盘分区全部删除。
打开启动盘制作工具:左侧选择你的U盘 → 点击 [Reset] 重置U盘 → 点击 [Restore] → 选择 Linux 镜像文件 → 提示框点击 [是] → 等待制作完成
制作完成后,会出现一个名为 BOOT 的分区,打开它。如果你把分区全部删除了,BOOT 分区默认是 FAT16 格式,Windows 是不会显示的,可以使用 DiskGenius 来访问。
然后需要对 BOOT 的分区 dtb 文件进行一些配置和修改
Armbian 5.44 和其他版本的修改方式有所不同
配置 dtb 文件
Armbian 5.44:把dtb文件夹里的gxl_p230_2g.dtb复制到 BOOT 分区的根目录并重命名为dtb.img。如果是 4.16、4.18 内核,dtb 文件是meson-gxl-s905d-p230.dtb。
Armbian 其他版本:
如果是 4.18 版本内核,下载上面的专用 dtb 文件,下载后复制到 BOOT 分区的 dtb 文件夹。然后修改 BOOT 分区的uEnv.ini文件,将dtb_name值改为/dtb/meson-gxl-s905d-phicomm-n1.dtb。
如果不是 4.18 内核,然后修改 BOOT 分区的uEnv.ini文件,将dtb_name值改为/dtb/meson-gxl-s905d-p230.dtb。
如果你 4.18 内核使用 meson-gxl-s905d-phicomm-n1.dtb 有网络延迟异常的情况,可以换回 meson-gxl-s905d-p230.dtb。
meson-gxl-s905d-p230.dtb 会导致系统负载显示不正确,会一直显示 2.00 或更高的数值,忽视即可。
meson-gxl-s905d-phicomm-n1.dtb 不止 4.18 内核可以使用,其他内核版本也可以使用,但是在网络高负载时可能会发生网络异常的情况,系统负载会正常显示。
将 N1 断电,插上U盘、网线,最好是插靠近 HDMI 接口那个 USB 接口,通电开机。
正常情况下顺利开机并进入 Linux 系统,如果没有进入 Linux 系统而是进入了 Android 系统,ADB 连接至 N1,输入adb shell reboot update。
接下来的操作我会以 SSH 远程连接为例,如果你使用 HDMI 连接显示器也可以,这种情况推荐你连接一个 USB HUB,方便连接鼠标和键盘,当然,如果你用的是 Server,那么就不需要鼠标了。
用户:root
密码:1234
如何获取 N1 运行 Linux 的 IP?打开 cmd,输入nslookup amlogic,如果amlogic无法解析IP,可以尝试解析aml。如果还是没有解析到 IP,可以显示器和键盘连接 N1,然后输入ifconfig eth0 | grep -w inet | awk '{print $2}'。
如果你不清楚如何使用 SSH 连接 N1,可以参考《OpenWrt/LEDE 新手指南》里的 SSH 连接步骤。
首次登陆需要重置密码,先输入当前密码(1234),再输入新密码以及确认新密码。
设置完密码之后会让你新建一个普通用户,如果是使用 Server,直接按 Ctrl + C 跳过。如果是使用桌面版,推荐创建一个普通用户,按照提示操作即可。
跳过之后,再次使用 SSH 连接。
这时候,整个系统就可以用了,不过我们需要做一些小工作。