AOSC OS/Retro 初識筆記——在虛擬機和龍芯2F小本上安裝


AOSC OS,沒有 LiveCD ,看起來不是很友好,但是事實上它卻很友好;看起來很復雜,事實上又開箱即用;這和 ArchLinux 很不一樣,但是又有相似之處,回味無窮。

這是我第一次安裝使用 AOSC OS 即 安同 OS ,決定體驗它,一者它支持一些老硬件,其中就包括龍芯2f小本;二者我崇拜的人,他在這里。 AOSC OS 是用 tarball 的方式安裝的,這是我第一次體驗的,為了相對順利地安裝之,我使用了 ArchLinux 的 LiveCD 而不是推薦的 GParted Live ,並且放棄了在實機安裝的想法。由於是在 VirtualBox 中安裝,我打算先分區,再將 tarball 下載在虛擬磁盤中安裝。

同時,我引用了一些的 Arch Wiki 頁面,因為我確實參考了一些 Arch Wiki 的內容。

應該基本 LiveCD 都能用來安裝它吧(我猜的),畢竟不是哪兒都有 GParted Live ,想到這里,我更不用 GParted Live 了 233 。

之后我還嘗試了在龍芯2F小本上安裝, AOSC 提供了 N64 port,所以這個過程也適合 AOSC Retro。

安裝篇

LiveCD 的 shell 要使用 bash ,也不建議用版本比較老的 LiveCD,防止發生一些奇奇怪怪的問題。如果沒有 LiveCD,也可以考慮使用宿主機。

創建虛擬機的過程、引導到 ArchLinux 鏡像和分區的過程直接略過。順帶一提我選的 type 為 Linux , version 為 Other Linux (64-bit) 。 ArchLinux 的 Live 環境是以 root 用戶身份登錄的,另外並沒有 wget ,需要自行安裝。

而為龍芯2F小本安裝,需要在龍芯 LiveCD 上進行,或者拆盤用另一台龍芯主機作為宿主機。當然也可以用 tarball 自行建立 LiveCD。不能用 x86 的機器的原因,是 qemu-static 不能正常工作。

獲取和解壓 Tarball

官方源慢,這里給出清華源的:

wget https://mirrors.tuna.tsinghua.edu.cn/anthon/aosc-os/os-amd64/kde/aosc-os_kde_20200526_amd64.tar.xz

# 如果是龍芯2F小本
wget https://mirrors.bfsu.edu.cn/anthon/misc/aosc-os_x11-experimental_20200814.1_loongson2f.tar.gz

當然 tarball 的文件名得用當前最新的。

首先得將分區 mount/mnt (這也同時是 ArchLinux wiki 的習慣),然后解壓 Tarball:

cd /mnt
tar --numeric-owner -pxvf /path/to/tarball/aosc-os_kde_20200526_amd64.tar.xz

Tarball 解壓的過程中大致可以看到預裝的軟件。軟件版本看起來沒有 ArchLinux 那么激進,預裝了一些常見軟件,默認輸入法是 fcitx ,也是我喜歡的。

Chroot 前的小配置

genfstab

熟悉的操作:

/mnt/usr/bin/genfstab -U -p /mnt >> /mnt/etc/fstab

綁定設備和系統路徑

mkdir /mnt/run/udev
for i in dev proc sys run/udev; do mount --rbind /$i /mnt/$i; done

之后可以用 umount -R 遞歸卸載。

然后就可以 Chroot 了:

chroot /mnt /bin/bash

更新和最后的准備

更新

主源的速度有點草啊,更改源和 Debian 一致,鏡像列表請看官方頁面。頁面里 Generate APT Configuration 這個選項挺有趣的~

# 自帶只有nano
nano /etc/apt/sources.list

# 注釋掉原來的並加入清華源
deb https://mirrors.tuna.tsinghua.edu.cn/anthon/debs stable main
# 清華源壓力很大 也可以選擇北外源
deb https://mirrors.bfsu.edu.cn/anthon/debs stable main
# retro 需要把 debs 改為 debs-retro

# update && full-upgrade
apt update
apt full-upgrade

這個過程比較久,可以弄幾杯茶或者小愜一下。另外會有好多要求選 Configuration file 是否保留的選項,不知道有沒有辦法自動。

初始化 RAM Dick

retro 不需要這個步驟

sh /var/ab/triggered/dracut

配置GRUB

龍芯2F不需要這個步驟

我是BIOS引導:

grub-install --target=i386-pc /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

如果是EFI,下面是manual中的示例:

mount /dev/sda1 /efi
grub-install --target=x86_64-efi --bootloader-id="AOSC OS" --efi-directory=/efi
grub-mkconfig -o /boot/grub/grub.cfg

# 對於 Bay Trail 設備,可能需要使用 i386-efi 作為 target
grub-install --target=i386-efi --bootloader-id="AOSC OS" --efi-directory=/efi
grub-mkconfig -o /boot/grub/grub.cfg

注意GRUB似乎並不會自動把更高版本的內核作為默認的引導選項,如果確實老版本的內核被錯誤設置成了首選,那么需要手動卸載老版本的內核。

配置 boot.cfg

龍芯pmon特殊操作

/boot 目錄下創建 boot.cfg 文件,這里給出示例文本,具體顯示的菜單名、內核文件名、根目錄等請自行修改。

default 0
timeout 5
showmenu 1

title AOSC OS
	kernel (wd0,0)/vmlinuz-aosc-retro-lemote-5.4.58
	args root=/dev/sda2 loglevel=4

注意 下載 tarball 一節示例中的2f tarball,自帶的是 5.7 內核,而 full-upgrade 以后安裝的是 5.4 內核,且 5.7 內核無法啟動。我詢問了一下是 5.7 內核不能使用。如果遇到類似的問題可以注意下。

建立用戶

建立並加入 wheel:

useradd -m -G audio,cdrom,video,wheel aosc

用戶全名:

chfn -f "AOSC User" aosc

設置密碼:

passwd aosc
passwd root

設置時區

ln -svf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

如果 /usr/share/zoneinfo/ 下為空,則要手動安裝 tzdata

sudo apt install tzdata

設置 Locale

默認啟用了所有 UTF-8 的 Locale ,我另外打開了 zh_CN.GB2312 和 zh_CN.GB18032 。如果希望只打開幾個,可以先用 sed 全部注釋,再打開需要的。另外2f的鏡像只寫了兩個 Locale ,直接添加需要的即可。

# edit
nano /etc/locale.gen

locale-gen

設置默認語言:

# edit
nano /etc/locale.conf

# 加入字段
LANG=zh_CN.UTF-8

# 如果需要英文
LANG=en_SG.UTF-8

Arch Wiki闡述了為啥使用 en_SG 。另外以后還可用 localectl 來做此事 localectl set-locale "LANG=zh_CN.UTF-8"

設置主機名

nano /etc/hostname

# 以后還可用 hostnamectl 來做此事
hostnamectl set-hostname myhostname

從 AOSC 啟動

對於在 LiveCD 安裝,首先從 Chroot 環境中退出,然后卸載掛載的分區,最后重啟:

# 卸載命令示例
umount ...
umount -R ...

# 重啟
reboot

對於拆盤安裝的 2f 小本,將硬盤塞進小本啟動即可, pmon 應該能自動識別 boot.cfg 並顯示啟動菜單。

VirtualBox Guest Additions

虛擬機特殊操作

Devices->Insert Guest Additions CD Image ,掛載后在終端打開,運行下面的命令安裝即可。

# 安裝所需軟件包
sudo apt install gcc make perl

# 安裝
sudo ./VBoxLinuxAdditions.run

# reboot
sudo reboot

# 對所有內核編譯
sudo /sbin/rcvboxadd quicksetup all

如果新老版本內核共存而引導了老版本內核時,安裝的 Guest Additions 可能失效(原因未知)。

使用篇

AMD64 的 KDE Plasma 默認使用了暗黑主題,很 nice 。

包管理

和 Debian 一樣,可以使用 aptapt-get , 看起來沒啥特別的。

順帶一提,如果錯誤將自動安裝的軟件包設置為手動,可以重新將其設置成自動:

sudo apt-mark auto package

歐侃源

龍芯2f 不適用

歐侃源收集了很多國內公司發布的專有軟件,使用它可以免去很多查找下載和安裝的時間。

我試圖使用歐侃源,但是會出現非常多的依賴關系錯誤。研究了一下發現是AOSC下包名和Debian有區別,需要重新打包。

# 下載key和配置
wget http://okapps.oukan.online/lroapps/lroapps-apt.list
wget http://okapps.oukan.online/lroapps/lroapps-linux.pub

# 安裝
sudo mv -f lroapps-apt.list /etc/apt/sources.list.d/lroapps.list
sudo apt-key add lroapps-linux.pub

# 編輯
# 只保留 app-amd64
nano /etc/apt/sources.list.d/lroapps.list

# 更新緩存
sudo apt update
# 或
sudo apt-get update

輸入法

輸入法的環境變量需要自己設置,我選擇的KDE Plasma的 tarball 默認安裝了fcitx輸入法,運行 fcitx-diagnose 可以發現沒有滿足的依賴。一個有趣的地方是, kcm-fcitx 默認安裝了,但是 fcitx-diagnose 並沒有識別到。

關於環境變量,可以參考 Arch Wiki

我們可以在 ~/.xinitrc 添加下面的環境變量:

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

日文輸入法沒有 mozc 的樣子,默認安裝了 fcitx-kkc ,它在配置界面中叫 “假名漢字”,如果找不到可以直接搜索。

終端特別操作

電量查看

自帶了 acpi 命令查看剩余電量,用下面的命令查看詳細信息:

acpi -V

Wifi 連接

鍵盤快捷鍵是可以正常運作的,打開 wifi 以后,可以使用極其友好的 nmtui 連接 wifi 網絡。

nmtui

修改 Debian 包依賴

這里給出參考命令。

#解壓出包中的文件到 Build 目錄下
dpkg -X package.deb Build/

#解壓出包的控制信息到 Build/DEBIAN/ 下
dpkg -e package.deb Build/DEBIAN/

# 修改 control
nano Build/DEBIAN/control

# 打包
dpkg -b Build package.deb

扔幾個2f的包


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM