上个月,无意在海鲜市场刷到「龙芯3A3000平台的主板备件」,卖家说包点亮但不知如何使用,看到价格还行(两位数还包邮),于是就下单,开始折腾之旅……

吐槽

期间尝试过的发行版(MIPS64-el平台)

  • Loongnix 20
    • RC1:能正常安装;貌似只支持安装在MBR分区表的硬盘中;软件源支持有点差。(MBR)
    • RC2:板载显卡识别有问题(需要修改显示模式);虽支持GPT+UEFI,但GRUB有问题,导致无法直接进入系统。(GPT+UEFI)
  • Loongnix 1.0
    • Fedora 21:能正常安装;支持硬件解码;但内核偏老,软件支持差。(MBR)
    • Fedora 28:能正常安装;不支持硬件解码;安装器有BUG。(GPT+UEFI)
  • Deepin 15.5
    • 能正常安装;但软件源支持不足;板载显卡适配有点问题。(MBR)
  • NeoKylin 7.0
    • 能正常安装;但内核偏老,软件源支持不足。(MBR)
  • 银河麒麟服务器桌面版V10
    • 无法进入安装界面
  • 统信UOS专业桌面版V20
    • 无法进入安装界面

参数简介

收到的这块板子成色特别新,与卖家描述一致,是联想「开天S510Z」的维修备件;原台式机的宣传海报如下图所示。

S510Z海报

由于买的是备件,那么其他硬件就得自行安排啦,配置如下表所示。

类别 型号与参数
处理器 龙芯3A3000(4C4T MIPS64el 1.45GHz)
芯片组 7A1000(板载两张RTL8111千兆网卡)
内存 记忆科技 DDR3 1600MHz 2GB
硬盘 台电 极速 60GB SATA3 固态
显卡 芯片组集成(占用384MB内存做显存)
电源 随便找的爵柏500WS稳定王(bushi)
无线 雷凌RT3070 2.4GHz 150Mbps USB
系统 Loongnix 20 RC2

开始折腾

开始折腾前,需要一台能联网的电脑以及一支4GB以上容量的U盘。

烧录镜像

  1. 前往龙芯开源社区-Loongnix操作系统页面,在「下载」处下载名为 桌面: Loongnix-20.mips64el.rc2 的镜像。

  2. 下载完成,使用 balenaEtcher 软件烧录刚刚下载好的 Loongnix 20 镜像至U盘内。

⚠️请注意:这将清除U盘内的所有数据,请事前做好数据备份的操作。

烧录完成,准备安装系统啦~

安装系统

  1. 将U盘插入主板的USB接口上,按下主板上的「PowerON」按钮,当显示「Lenovo」LOGO时,按 Del 进入BIOS。

S510Z-UP

  1. 可以看到,是「昆仑固件」,能设置的参数很少,可能是固件版本较低的缘故。

S510Z-BIOS-1

  1. 进入「启动管理」菜单,将「第一启动选项」修改为U盘,随后退出即可。(你没听错,这个BIOS没有单独的保存选项)

S510Z-BIOS-2

  1. 由于显卡驱动识别的问题,进入「LiveCD」后,板载VGA输出会被当成「扩展显示器」显示,导致看不到主界面和Docker栏。此时可以通过「新建文件夹」的方式间接打开安装程序。

S510Z-install-0

  1. Loongnix 20 基于 Debian 衍生而来,其图形化安装步骤也与后者一致;但需要注意的是,安装系统前,建议把硬盘的所有分区删除,并使用GPT分区表,以免安装程序莫名闪退报错。

S510Z-install-0.5

  1. 安装过程大概需要半小时,耐心等待啦。

S510Z-install-2

  1. 安装完成,先移除U盘,然后重启电脑;然后……重头戏来啦。

S510Z-install-1

还得折腾

  1. 也不知是不是官方没注意还是存在兼容性问题,装完系统后,其GRUB信息居然是错位的,这就导致开机秒进GRUB引导程序。

S510Z-install-3

这部分忘了截图,后续再补充吧╮( ̄▽ ̄””)╭

  1. 这个时候不用慌,其实内核引导都是存在的,只不过grub.cfg参数对不上;先进入系统,然后再通过终端进行修复。
  • 此时,你需要输入 ls 查看下当前硬盘信息,找到「引导分区」(也就是\boot)、「系统分区」(一般是单独的分区,例如(hd0,gpt3))。

  • 接着,在「引导分区」中通过 Tab 键补全查找「Linux 内核」与「Linux 引导」共两个文件。

  • 然后,加载Linux内核到磁盘0的第3个分区:linux /vmlinuz-4.19.0-12-loongson-3 ro root=/dev/sda3(根据实际情况进行修改);

  • 接着,加载Linux引导:initrd /initrd.img-4.19.0-12-loongson-3(根据实际情况进行修改);

  • 如果没有出现报错提示,只需要输入 boot 命令,手动引导操作完成。

  • 💡提示:GRUB可以使用 Tab 键补全。

  1. 进入系统,跟「LiveCD」一样,系统依旧把板载VGA输出当成副屏显示;现在得把屏幕显示配置正确才行。
  • 还是使用创建文件夹的方法,在桌面创建一个文件,并使用「Vim编辑器」打开。
    • 相信聪明的你已经知道要做什么事情了——调出「终端」。
  • 不过这还不够,如果按常规操作输入退出编辑器,这个终端窗口也会被关闭;因此需要在这个跳板「终端」上再创建一个新的会话窗口。
  • 接下来,就是使用 xrandr 命令临时切换主副屏。
    • 首先,输入xrandr -q 查看主副屏信息,以及支持的分辨率。
    • 接着,输入xrandr --output <板载VGA视频的名字> --primary,将板载显卡设置成主屏幕
    • 不出意外,应该能正确显示了,但该命令重启后会失效;此时可直接进入MATE桌面的「显示设置」界面将显示模式修改成「镜像模式」,修改正常的分辨率并立即生效。
  • 💡提示:若使用xrandr命令设置错误,重启系统即可。
  1. 接下来,就是处理下引导的烂摊子啦。
  • 打开终端,输入命令(懒办法解决):sudo cp -r \boot\* \boot\boot\

  • 这下,就不用手动引导啦。

个人推断应该是BUG,错把boot分区的根目录直接识别成\boot;正确的EFI引导应该 标记为boot分区 下的boot目录,类似 /dev/sda1/boot

懒人命令会报错,毕竟涉及到递归问题,影响不大(空间过小除外);提高鲁棒性的方法就是进「引导分区」一点一点「精卫填海」。

系统体验

Loongnix 20 由 Debian 10(内核4.19)衍生而来,针对MIPS64el架构有优化;此版本使用的是 META 1.2 桌面环境。

更新仓库源

需要注意,2022年开始,「龙芯开源社区」更换域名了,这也导致软件仓库需要修改。

你需要修改/etc/apt/source.list文件,将 www.loongnix.org 修改成 www.loongnix.cn 并保存好。

随后,使用以下命令更新仓库密钥对(引用于:Loongnix桌面仓库源Key升级更新)。

1
2
3
wget http://pkg.loongnix.cn/loongnix/pool/main/d/debian-archive-keyring//debian-archive-keyring_2019.1.lnd.2_all.deb
dpkg -i debian-archive-keyring_2019.1.lnd.2_all.deb
apt-key add /usr/share/keyrings/debian-archive-buster-loongarch64-stable.gpg

这样仓库源才能正常使用。

启动器

S510Z-Sys-2

看本地媒体

使用VLC播放720P30帧、AVC编码、2Mbps码流的视频;能流畅播放且音画同步,拖动进度条能指哪打哪;处理器占用大约到5成(截图时存在波动,占用到75成)。

S510Z-Sys-3

总结

短暂两天的折腾,说真的心态确实有点点崩。毕竟光装系统就是好几个半小时,排坑解决问题的过程也花了不少时间QAQ。不过最终能跑上系统,还是值得的~

不过还是得吐槽一下,MIPS64el没人管了么?(哭)

网上一堆无效信息,人麻了。