動(dòng)配置與雙系統(tǒng)運(yùn)維實(shí)戰(zhàn)筆記)
說實(shí)話今年上半年我連續(xù)給三臺(tái)不同設(shè)備折騰了 Ubuntu 22.04一臺(tái)是主力筆記本裝雙系統(tǒng)一臺(tái)是虛擬機(jī)里跑輕量服務(wù)還有一塊 RK3566 的板子要手動(dòng)構(gòu)建系統(tǒng)。結(jié)果熱搜上那些問題我基本全撞了一遍——有線網(wǎng)卡識(shí)別不對(duì)、WiFi 驅(qū)動(dòng)消失、輸入法難用、遠(yuǎn)程登錄連不上、想卸載又怕搞壞引導(dǎo)。這篇就把這段時(shí)間的操作記錄整理成一份偏實(shí)戰(zhàn)的筆記按裝之前 → 怎么裝 → 裝完驅(qū)動(dòng) → 日常使用 → 想卸載的順序來寫適合正在用 22.04 或者準(zhǔn)備入坑的人參考。1. 裝系統(tǒng)前的準(zhǔn)備鏡像源、校驗(yàn)和啟動(dòng)盤1.1 官方源還是國(guó)內(nèi)源版本細(xì)節(jié)別搞混下載鏡像這件事看起來很簡(jiǎn)單但我想先說一個(gè)容易踩的坑Ubuntu 22.04 有多個(gè) point release比如最初的 22.04、22.04.1、22.04.2、22.04.3、22.04.4。它們的 ISO 在硬件支持上差別不小尤其是新網(wǎng)卡、新顯卡、新主板的場(chǎng)景22.04.4比最初的 22.04 要友好很多。官方下載地址是releases.ubuntu.com國(guó)內(nèi)可以用清華、阿里云的鏡像站速度差距挺大但注意拿到的版本必須一致別在官方看到 22.04.4、在鏡像站看到 22.04.3 就隨手下了安裝器版本其實(shí)還好但內(nèi)核和固件包會(huì)差一截。架構(gòu)也要看仔細(xì)筆記本、臺(tái)式機(jī)選amd64RK3566 這種 ARM 板子選arm64。我見過有人給板子下了 amd64 的 ISO寫入 SD 卡后完全啟動(dòng)不了還以為是板子壞了其實(shí)是架構(gòu)不對(duì)。下載完成后養(yǎng)成一個(gè)習(xí)慣校驗(yàn) SHA256。官方頁面會(huì)給出校驗(yàn)文件或校驗(yàn)值命令行下執(zhí)行sha256sum ubuntu-22.04.4-desktop-amd64.iso比對(duì)輸出的哈希值和官方一致再進(jìn)入下一步。這一步能避免很多啟動(dòng)盤莫名無法引導(dǎo)的詭異問題因?yàn)楹芏?U 盤實(shí)際容量比標(biāo)稱小下載文件被截?cái)嗔恕?.2 啟動(dòng)盤制作Ventoy 比 dd 更省心制作啟動(dòng)盤我推薦 Ventoy因?yàn)槲也冗^直接dd寫盤后無法 UEFI 引導(dǎo)的坑。Ventoy 的原理是先給 U 盤裝一個(gè)小型引導(dǎo)分區(qū)之后你只需要把 ISO 文件丟進(jìn) U 盤的大分區(qū)即可。這樣做有兩個(gè)好處一是可以同時(shí)放多個(gè) ISO比如 Ubuntu 22.04 和 Windows 安裝鏡像二是 ISO 文件可以隨時(shí)替換不用反復(fù)格式化 U 盤。如果用 Windows也可以選 Rufus如果手里只有一臺(tái) Linux 機(jī)器dd不是不行但要確認(rèn)寫入的 ISO 是完整的而且 U 盤最好用 UEFI 目標(biāo)模式寫入。我個(gè)人的建議是桌面主板走 UEFI 啟動(dòng)已經(jīng)是絕對(duì)主流做啟動(dòng)盤時(shí)優(yōu)先考慮 UEFI 兼容性別再用傳統(tǒng)的 MBR 引導(dǎo)方式去揣摩它。制作完成后第一次從 U 盤啟動(dòng)后先選擇Try Ubuntu進(jìn)入試用桌面確認(rèn)鍵盤、鼠標(biāo)、網(wǎng)絡(luò)、磁盤都能被識(shí)別再正式開始安裝。這一步看似多余實(shí)際能提前暴露很多驅(qū)動(dòng)問題尤其是網(wǎng)卡識(shí)別不到的情況。1.3 分區(qū)方案提前想清楚分區(qū)建議在安裝前定好避免安裝器里臨時(shí)亂分。雙系統(tǒng)場(chǎng)景我習(xí)慣手動(dòng)分區(qū)而不是直接用安裝 Ubuntu 與 Windows 共存的選項(xiàng)因?yàn)楣泊孢x項(xiàng)有時(shí)會(huì)用掉大量空閑空間劃分結(jié)果不夠直觀。常用方案是這樣的分區(qū)大小建議類型EFI 系統(tǒng)分區(qū)500 MB - 1 GBFAT32如果 Windows 已有 EFI 分區(qū)可復(fù)用根分區(qū)/至少 50 GB建議 100 GBext4 或 btrfsSwap 交換分區(qū)與內(nèi)存大小相當(dāng)或不單獨(dú)分用 swapfileswap家目錄/home剩余空間ext4如果你還想做整盤單系統(tǒng)直接讓安裝器自動(dòng)分區(qū)即可。但雙系統(tǒng)務(wù)必確認(rèn) Windows 的 BitLocker 是否已關(guān)閉否則分區(qū)操作可能觸發(fā)加密鎖導(dǎo)致 Windows 分區(qū)不可訪問。2. 三條安裝路線雙系統(tǒng)、虛擬機(jī)和 WSL22.1 雙系統(tǒng)最大的坑裝完找不到 Windows 引導(dǎo)雙系統(tǒng)安裝過程本身不復(fù)雜真正的麻煩在裝完之后。常見情況有兩種一種是開機(jī)直接進(jìn) Ubuntu看不到 Windows 引導(dǎo)項(xiàng)另一種是 Windows 引導(dǎo)項(xiàng)在但選進(jìn)去后藍(lán)屏或轉(zhuǎn)圈卡死。第一種情況多半是因?yàn)?Ubuntu 的 GRUB 沒有正確探測(cè)到 Windows 的 EFI 引導(dǎo)文件。安裝完成后在終端執(zhí)行sudo update-grub如果輸出里仍然看不到 Windows Boot Manager再檢查 EFI 分區(qū)里是否有EFI/Microsoft/Boot/bootmgfw.efi。我的修復(fù)方法是用boot-repair這是社區(qū)里相對(duì)可靠的引導(dǎo)修復(fù)工具sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt update sudo apt install boot-repair -y boot-repair選Recommended repair它會(huì)自動(dòng)檢測(cè)磁盤上的系統(tǒng)并重新生成 GRUB 菜單。修復(fù)完重啟一般就能看到 Windows 了。第二種情況是 Windows 引導(dǎo)項(xiàng)存在但選了進(jìn)不去。這通常是安裝 Ubuntu 時(shí)動(dòng)了 EFI 分區(qū)或者 Windows 的快速啟動(dòng)機(jī)制殘留了異常狀態(tài)。可以先在 Ubuntu 里執(zhí)行sudo os-prober確認(rèn) os-prober 是否能探測(cè)到 Windows。如果探測(cè)不到檢查efibootmgr -v看到的啟動(dòng)項(xiàng)順序必要時(shí)手動(dòng)添加sudo efibootmgr --create --disk /dev/nvme0n1 --part 1 --label Windows Boot Manager --loader \EFI\Microsoft\Boot\bootmgfw.efi注意/dev/nvme0n1和--part 1要根據(jù)你的實(shí)際磁盤和 EFI 分區(qū)號(hào)修改用lsblk確認(rèn)。輸入錯(cuò)誤的話啟動(dòng)項(xiàng)會(huì)指向錯(cuò)誤路徑啟動(dòng)時(shí)依然無效。2.2 虛擬機(jī)安裝VMware 和 VirtualBox 的差異點(diǎn)如果你只是體驗(yàn)一下 22.04或者想在一個(gè)隔離環(huán)境里跑測(cè)試虛擬機(jī)是最省事的方式。我常用 VMware Workstation 和 VirtualBox兩者在安裝 Ubuntu 22.04 上差別不大但有幾點(diǎn)要注意。VMware Workstation 對(duì) Ubuntu 22.04 的默認(rèn)配置比較成熟安裝系統(tǒng)時(shí)選擇 Ubuntu 64 位即可之后再安裝 VMware Tools或者直接安裝 open-vm-toolsUbuntu 官方源里有:sudo apt install open-vm-tools-desktop -yVirtualBox 則需要額外安裝增強(qiáng)功能Guest Additions而且 22.04 的 GNOME 桌面在 VirtualBox 默認(rèn)圖形控制器下的 3D 加速效果一般。建議在 VirtualBox 設(shè)置里把顯示控制器調(diào)為 VMSVGA顯存調(diào)到 128 MB 以上。虛擬機(jī)安裝時(shí)磁盤類型用虛擬磁盤即可但如果你后續(xù)要移動(dòng)虛擬機(jī)文件建議使用單文件模式別用動(dòng)態(tài)分片的多文件模式備份和遷移時(shí)省心很多。網(wǎng)絡(luò)模式方面默認(rèn) NAT 就夠了需要宿主機(jī)直接訪問虛擬機(jī)的 SSH 服務(wù)再用橋接模式。2.3 WSL2 里跑 Ubuntu 22.04輕量方案的隱藏限制WSL2 是另一個(gè)常見路徑很多人誤以為它就是一臺(tái)完整的 Ubuntu其實(shí)不是。WSL2 共享 Windows 內(nèi)核Ubuntu 22.04 在 WSL2 里以發(fā)行版形式運(yùn)行系統(tǒng)服務(wù)支持有限。安裝方式很直接Windows 終端里執(zhí)行wsl --install wsl --list --online wsl --install -d Ubuntu-22.04如果wsl --install提示需要啟用虛擬機(jī)平臺(tái)需要先重啟。裝完之后默認(rèn)是 root 用戶需要執(zhí)行sudo passwd root或者創(chuàng)建一個(gè)普通用戶因?yàn)楹芏嗖僮髟?root 下權(quán)限太大容易誤刪文件。WSL2 的局限性在于它沒有完整內(nèi)核所以涉及內(nèi)核模塊、驅(qū)動(dòng)、固件的操作比如編譯 WiFi 驅(qū)動(dòng)都不適用systemd 在 22.04 的 WSL2 里默認(rèn)已經(jīng)支持了但開啟方式需要在/etc/wsl.conf里寫[boot] systemdtrue之后執(zhí)行wsl --shutdown再重新進(jìn)入systemd 才會(huì)生效。如果你只是想跑命令行工具、Docker、開發(fā)環(huán)境WSL2 夠用但如果要測(cè)試桌面、顯卡驅(qū)動(dòng)、網(wǎng)卡驅(qū)動(dòng)還是老老實(shí)實(shí)裝虛擬機(jī)或雙系統(tǒng)。3. 裝完第一件事把網(wǎng)卡和 WiFi 驅(qū)動(dòng)理順3.1 有線網(wǎng)卡識(shí)別不對(duì)的三種常見情況Ubuntu 22.04 裝完后網(wǎng)卡問題的頻率非常高而且熱搜上那個(gè)識(shí)別不對(duì)其實(shí)包含了三種完全不同的情況需要分開排查。第一種網(wǎng)卡被識(shí)別了但接口名變了。比如以前叫eth0現(xiàn)在叫eno1或ens33。這不是故障是 systemd 的命名規(guī)則。如果你的網(wǎng)絡(luò)配置還寫在舊名字里就會(huì)出現(xiàn)接了網(wǎng)線但上不了網(wǎng)的假象。用ip a查看實(shí)際接口名改/etc/netplan/*.yaml或者用 NetworkManager 的圖形界面重新指定即可。第二種速度不對(duì)網(wǎng)線插上但速率顯示 100 Mb/s。常見于瑞昱 RTL8168/RTL8125 這類網(wǎng)卡Ubuntu 22.04 默認(rèn)加載的r8169驅(qū)動(dòng)對(duì)新硬件的兼容性不夠。解決辦法是安裝瑞昱官方提供的r8168驅(qū)動(dòng)sudo apt install dkms -y wget https://example.com/r8168-8.xxx.tar.bz2這里不推薦記憶特定版本號(hào)建議直接訪問瑞昱官網(wǎng)下載對(duì)應(yīng)驅(qū)動(dòng)的 Linux 源碼包解壓后執(zhí)行./autorun.sh。如果系統(tǒng)里已經(jīng)裝了r8168-dkms則用sudo apt install r8168-dkms sudo modprobe r8168然后用ethtool eno1查看速率。如果依然只有 100 Mb/s檢查網(wǎng)線、交換機(jī)端口、網(wǎng)卡自動(dòng)協(xié)商設(shè)置是下一步。第三種網(wǎng)卡完全沒被識(shí)別。這種情況ip a里看不到有線接口需要先查lspci -nnk | grep -A 3 Ethernet看驅(qū)動(dòng)是否是(null)或顯示kernel modules: unknown。如果是新出廠的網(wǎng)卡內(nèi)核太老就會(huì)這樣。解決辦法是升級(jí)內(nèi)核Ubuntu 官方提供 HWE 內(nèi)核棧比如 22.04 上裝了 HWE 內(nèi)核后硬件支持會(huì)向后滾動(dòng)更新sudo apt install linux-generic-hwe-22.04 sudo reboot這個(gè)操作和換驅(qū)動(dòng)不同它是更底層的兜底方案很多識(shí)別問題會(huì)因?yàn)閮?nèi)核版本更新而直接消失。3.2 RK3566 板子構(gòu)建系統(tǒng)沒有 WiFi 驅(qū)動(dòng)從三個(gè)環(huán)節(jié)排查這塊板子的問題比較特殊不是直接裝 ISO而是用 SDK 構(gòu)建出來的系統(tǒng)裝完發(fā)現(xiàn)沒有 WiFi 驅(qū)動(dòng)。我把排查思路梳理成三條線按順序走基本能定位問題。第一是硬件層。先確認(rèn)系統(tǒng)有沒有識(shí)別到 WiFi 芯片。常用的命令lspci lsusb如果 WiFi 模塊是 USB 接口lsusb里會(huì)顯示芯片廠商和型號(hào)如果是 SDIO 接口lspci不顯示需要看設(shè)備樹。最直接的現(xiàn)象是如果lsusb里能看到 RTL8821CU、RTL8852BS 這類芯片說明硬件沒問題問題在驅(qū)動(dòng)加載如果看不到可能是設(shè)備樹沒有正確描述這個(gè) WiFi 模塊或者模塊供電、時(shí)鐘沒有使能。第二是固件層。很多 WiFi 芯片除了驅(qū)動(dòng)程序還需要 firmware 文件。系統(tǒng)構(gòu)建時(shí)如果沒把/lib/firmware里對(duì)應(yīng)的.bin文件打包進(jìn)去dmesg 會(huì)提示firmware: failed to load。解決辦法是從芯片廠商或主線固件倉(cāng)庫(kù)里找到對(duì)應(yīng)固件手動(dòng)拷貝到板子系統(tǒng)的/lib/firmware目錄下。這個(gè)操作也要注意架構(gòu)ARM64 系統(tǒng)拷貝的固件和 x86 通用但有些芯片固件會(huì)區(qū)分平臺(tái)最好以廠商 SDK 提供的文件為準(zhǔn)。第三是驅(qū)動(dòng)層。SDK 默認(rèn)的內(nèi)核配置可能沒把該選的驅(qū)動(dòng)編進(jìn)去比如CONFIG_RTL8821CU這類模塊。找到內(nèi)核配置菜單確認(rèn) WiFi 相關(guān)選項(xiàng)后重新編譯再把編譯好的.ko文件拷貝到板子系統(tǒng)里sudo cp path/to/rtl8821cu.ko /lib/modules/$(uname -r)/kernel/drivers/net/wireless/ sudo depmod -a sudo modprobe rtl8821cu執(zhí)行完modprobe后用ip link查看是不是多了wlan0或類似接口。如果沒有繼續(xù)看dmesg | tail通常會(huì)有明確報(bào)錯(cuò)比如 GPIO 請(qǐng)求失敗或者中斷號(hào)沖突那就不是驅(qū)動(dòng)的問題而是設(shè)備樹配置問題。整個(gè)排查鏈路里我最想強(qiáng)調(diào)的是看 dmesg這件事。很多人在板子上一碰到 WiFi 沒驅(qū)動(dòng)的問題第一反應(yīng)是重新編譯內(nèi)核其實(shí)先花兩分鐘看dmesg很多時(shí)候一眼就能看到是固件沒加載還是設(shè)備樹沒匹配完全不需要重新編譯整個(gè)內(nèi)核。3.3 NVIDIA 顯卡驅(qū)動(dòng)更換的正確順序如果你用 22.04 做日常桌面、跑 CUDA 或者玩 Steam 游戲NVIDIA 驅(qū)動(dòng)基本繞不開。網(wǎng)上各種教程很多我按自己踩過坑的順序總結(jié)一下。第一步別急著下載官網(wǎng).run文件。Ubuntu 倉(cāng)庫(kù)里的驅(qū)動(dòng)已經(jīng)經(jīng)過測(cè)試優(yōu)先用倉(cāng)庫(kù)方案sudo apt update ubuntu-drivers devices這個(gè)命令會(huì)列出當(dāng)前硬件推薦的驅(qū)動(dòng)版本通常輸出里會(huì)標(biāo)注recommended。然后安裝sudo apt install nvidia-driver-550這里的版本號(hào)以u(píng)buntu-drivers devices輸出為準(zhǔn)不同內(nèi)核、不同卡型推薦的版本可能不同。第二步處理 Nouveau 沖突。Ubuntu 默認(rèn)開源的 Nouveau 驅(qū)動(dòng)會(huì)和 NVIDIA 閉源驅(qū)動(dòng)沖突。安裝 NVIDIA 驅(qū)動(dòng)時(shí)安裝腳本或者包管理器一般會(huì)提示禁用 Nouveau但有時(shí)候沒提示。如果裝完重啟后卡在登錄界面可能是 Nouveau 還在。創(chuàng)建一個(gè)黑名單文件sudo bash -c echo blacklist nouveau /etc/modprobe.d/blacklist-nouveau.conf sudo bash -c echo options nouveau modeset0 /etc/modprobe.d/blacklist-nouveau.conf sudo update-initramfs -u sudo reboot第三步注意 Secure Boot。如果主板開啟了 Secure BootNVIDIA 內(nèi)核模塊需要簽名后才能加載否則會(huì)出現(xiàn)無法加載模塊Operation not permitted之類的報(bào)錯(cuò)。我遇到過卡到這一步的確認(rèn)方法是mokutil --sb-state顯示SecureBoot enabled的話需要去 BIOS 里暫時(shí)關(guān)閉或者注冊(cè) MOK 密鑰這個(gè)操作比較繁瑣。我的建議是如果不依賴 Windows 的 Credential Guard 之類的功能直接在 BIOS 里關(guān)掉 Secure Boot省事很多。第四步驗(yàn)證驅(qū)動(dòng)是否真的生效nvidia-smi如果顯示顯卡型號(hào)和驅(qū)動(dòng)版本就說明裝好了。還要注意Ubuntu 內(nèi)核升級(jí)后NVIDIA 驅(qū)動(dòng)可能因?yàn)?DKMS 重編譯失敗而失效。檢查dkms status如果顯示錯(cuò)誤狀態(tài)重新執(zhí)行sudo dkms install -m nvidia -v 550.xx驅(qū)動(dòng)的版本號(hào)要和你安裝的保持一致不要記我這里的例子。4. 日常使用四件事向日葵、遠(yuǎn)程登錄、輸入法和系統(tǒng)管理4.1 向日葵從下載到開機(jī)自啟的完整鏈路遠(yuǎn)程控制這塊很多文章的注意力都放在 SSH 上但實(shí)際場(chǎng)景里家里老人的電腦、辦公室的 Linux 機(jī)器很多時(shí)候需要圖形化遠(yuǎn)程操作。向日葵是個(gè)不錯(cuò)的國(guó)產(chǎn)方案支持 Ubuntu 22.04。注意別從第三方網(wǎng)站下載直接去向日葵官網(wǎng)找 Linux 客戶端。下載下來通常是 deb 包安裝時(shí)如果提示缺少依賴用sudo apt install ./sunloginclient-xxx-amd64.debUbuntu 22.04 的軟件包管理已經(jīng)支持直接安裝本地 deb 并自動(dòng)拉取依賴比先dpkg -i再apt -f install順暢很多。安裝完成后第一次啟動(dòng)向日葵需要在圖形界面里登錄賬號(hào)并綁定設(shè)備。這里有個(gè)細(xì)節(jié)如果你用的是 Wayland 會(huì)話向日葵可能只能看到鎖屏界面或者畫面卡住。Ubuntu 22.04 默認(rèn)登錄會(huì)話可能是 Wayland建議登錄界面選擇Ubuntu on Xorg再用向日葵兼容性好很多。設(shè)置開機(jī)自啟可以走 systemd新建一個(gè)服務(wù)文件[Unit] DescriptionSunlogin Client Afternetwork.target [Service] ExecStart/usr/local/sunlogin/bin/sunloginclient Restartalways RestartSec3 User你的用戶名 [Install] WantedBymulti-user.target注意路徑可能因安裝方式不同而變化用which sunloginclient確認(rèn)實(shí)際路徑再寫入。4.2 Win10 遠(yuǎn)程登錄 Ubuntu 22.04xrdp 方案配置細(xì)節(jié)Windows 遠(yuǎn)程登錄 Ubuntu很多人第一反應(yīng)是裝 VNC Server但 Windows 自帶的遠(yuǎn)程桌面連接客戶端用的 RDP 協(xié)議和 Linux 常見的 VNC 不是一回事。想讓 Windows 的 mstsc 直接連到 Ubuntu最省事的方案是 xrdp。安裝sudo apt install xrdp -y sudo systemctl enable --now xrdp理論上這時(shí)候 Windows 的遠(yuǎn)程桌面客戶端填 Ubuntu 的 IP 就能連了但實(shí)際操作中有幾個(gè)非常常見的坑。第一個(gè)坑是連接后黑屏或者只有鼠標(biāo)光標(biāo)。這通常是因?yàn)?xrdp 和當(dāng)前桌面會(huì)話不兼容。Ubuntu 22.04 默認(rèn) GNOMExrdp 默認(rèn)啟動(dòng)startwm.sh這個(gè)腳本加載的會(huì)話配置可能是錯(cuò)的。22.04 上我建議修改/etc/xrdp/startwm.sh確保它調(diào)用的是官方會(huì)話文件if test -r /etc/profile; then . /etc/profile fi export GNOME_SHELL_SESSION_MODEubuntu export XDG_CURRENT_DESKTOPubuntu:GNOME exec /usr/bin/gnome-session保存后重啟 xrdp 服務(wù)sudo systemctl restart xrdp第二個(gè)坑是連接后閃退、反復(fù)要求登錄。這往往是.xsession文件殘留了舊配置刪除它再試rm -f ~/.xsession ~/.xsessionrc第三個(gè)坑是 xrdp 服務(wù)起不來查看日志sudo journalctl -u xrdp -n 50如果是端口被占用改/etc/xrdp/xrdp.ini的端口號(hào)。還有xrdp 默認(rèn)監(jiān)聽 3389 端口Windows 遠(yuǎn)程桌面也默認(rèn)用 3389局域網(wǎng)內(nèi)使用沒問題。還有一點(diǎn)值得說明xrdp 方案和向日葵這類第三方遠(yuǎn)程方案的使用場(chǎng)景不同。向日葵適合跨網(wǎng)絡(luò)、需要賬號(hào)認(rèn)證、穿透內(nèi)網(wǎng)的場(chǎng)景xrdp 適合局域網(wǎng)內(nèi)快速連接占資源更小。如果你有公網(wǎng)訪問需求我建議優(yōu)先考慮部署一個(gè)輕量工具而不是直接把 3389 暴露到公網(wǎng)安全性和抗掃描能力都更好。4.3 不裝 IBus 也能好好打字fcitx5 配置熱搜里那句怎么安裝別的輸入法不安裝 IBus我太有共鳴了。Ubuntu 22.04 默認(rèn)輸入法框架是 IBus但它在一些應(yīng)用里會(huì)出現(xiàn)中文輸入法候選框不跟隨光標(biāo)、快捷鍵沖突等問題。我后來切到 fcitx5整體流暢很多。先卸載或者禁用 IBus。不需要真的卸載干凈只要把輸入法框架切換掉就行sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-config-qt -y然后安裝一個(gè)輸入法引擎。如果不想用系統(tǒng)默認(rèn)的拼音可以裝搜狗輸入法 for Linux或者拼音庫(kù)更完整的fcitx5-rime。我個(gè)人的體驗(yàn)是fcitx5-chinese-addons自帶的拼音已經(jīng)夠日常用Rime 適合需要高度自定義詞庫(kù)的人搜狗適合從 Windows 過來、拼音習(xí)慣已經(jīng)固化的用戶。關(guān)鍵在環(huán)境變量。如果不設(shè)置環(huán)境變量很多 Qt 程序或 Electron 應(yīng)用不會(huì)走 fcitx5。編輯/etc/environmentGTK_IM_MODULEfcitx QT_IM_MODULEfcitx XMODIFIERSimfcitx或者只對(duì)當(dāng)前用戶生效sudo tee -a /etc/environment EOF GTK_IM_MODULEfcitx QT_IM_MODULEfcitx XMODIFIERSimfcitx EOF我建議寫成系統(tǒng)級(jí)環(huán)境變量避免某些軟件以 root 運(yùn)行時(shí)輸入法失效。設(shè)置完成后注銷重新登錄或者重啟。如果切到 fcitx5 后某些軟件里依然打不出中文檢查軟件是否支持 XIM 協(xié)議。對(duì)不支持 XIM 的軟件可以臨時(shí)把這一條也加上XIM_PROGRAMfcitx5但注意這屬于兜底方案不是所有軟件都認(rèn)。4.4 系統(tǒng)更新與內(nèi)核版本管理不翻車的小技巧日常使用中系統(tǒng)更新也是一件容易被忽略的操作。22.04 的更新提示經(jīng)常會(huì)在裝完驅(qū)動(dòng)后彈出來這時(shí)不要盲目點(diǎn)全部升級(jí)。我的習(xí)慣是先看更新內(nèi)容里有沒有 Linux 內(nèi)核和 NVIDIA 驅(qū)動(dòng)如果有先把/etc/apt/sources.list熟悉的源站測(cè)試一下延后或者手動(dòng)指定更新sudo apt update sudo apt list --upgradableNVIDIA 驅(qū)動(dòng)和內(nèi)核更新如果同時(shí)進(jìn)行重啟后很容易出現(xiàn) DKMS 重編譯失敗導(dǎo)致進(jìn)不了桌面。建議驅(qū)動(dòng)相關(guān)的更新單獨(dú)執(zhí)行執(zhí)行完確認(rèn)nvidia-smi正常后再更新內(nèi)核。另外Ubuntu 22.04 默認(rèn)不自動(dòng)清理舊內(nèi)核時(shí)間久了/boot分區(qū)會(huì)滿導(dǎo)致后續(xù)更新失敗。清理舊內(nèi)核dpkg --list | grep linux-image sudo apt purge linux-image-舊版本號(hào)但保留當(dāng)前運(yùn)行的內(nèi)核別一次清光否則重啟后沒有可用內(nèi)核。5. 卸載 Ubuntu 22.04不破壞 Windows 引導(dǎo)的操作順序5.1 先在系統(tǒng)內(nèi)刪除引導(dǎo)項(xiàng)再清理分區(qū)卸載 Ubuntu 和卸載普通軟件不是一回事。如果你裝了雙系統(tǒng)想完全退回 Windows操作順序錯(cuò)了很容易讓 Windows 也起不來。我的建議是先刪引導(dǎo)項(xiàng)再刪分區(qū)。引導(dǎo)項(xiàng)刪除在 Ubuntu 里用efibootmgrefibootmgr -v這會(huì)列出當(dāng)前所有啟動(dòng)項(xiàng)找到 Ubuntu 對(duì)應(yīng)的項(xiàng)通常類似Boot0000* ubuntu。確認(rèn)編號(hào)后刪除sudo efibootmgr --delete-bootnum --bootnum 0000注意--bootnum后面跟的是四位數(shù)比如0000不是 0。刪除引導(dǎo)項(xiàng)之后再用磁盤工具刪除 Ubuntu 分區(qū)??梢栽?Ubuntu 的 live 環(huán)境里用 GParted也可以直接在 Windows 的磁盤管理里刪除。我建議在 Windows 磁盤管理里做因?yàn)檫@樣對(duì) Windows 自己更安全。你需要在 Windows 下按 WinX 打開磁盤管理找到安裝 Ubuntu 時(shí)創(chuàng)建的分區(qū)通常是 EFI 分區(qū)旁邊、根分區(qū)、home 分區(qū)、swap 分區(qū)幾個(gè)未分配空間或 ext4 分區(qū)右鍵刪除卷。如果看不到分區(qū)類型可以用 diskpart 確認(rèn)diskpart list disk select disk 0 list partition分區(qū)列表里 ext4 分區(qū)一般顯示為主分區(qū)大小和你當(dāng)時(shí)規(guī)劃的一致。刪除時(shí)務(wù)必小心別把 Windows 的系統(tǒng)分區(qū)刪了。5.2 修復(fù) Windows 引導(dǎo)的最后一步刪完 Ubuntu 分區(qū)后最容易被忽略的是Windows 的引導(dǎo)配置里可能還有 GRUB 的殘留項(xiàng)或者 EFI 引導(dǎo)順序還把 GRUB 放在第一位。這時(shí)如果直接重啟可能黑屏或者提示找不到操作系統(tǒng)。建議你準(zhǔn)備一個(gè) Windows PE 啟動(dòng)盤進(jìn)入 PE 后使用引導(dǎo)修復(fù)工具或者手動(dòng)執(zhí)行bcdboot C:\Windows /s S: /f UEFI注意C:是 Windows 系統(tǒng)盤符S:是 EFI 分區(qū)盤符實(shí)際以 PE 里看到的為準(zhǔn)。執(zhí)行完后再用bcdedit /enum firmware檢查啟動(dòng)項(xiàng)列表把殘留的 GRUB 或 Ubuntu 啟動(dòng)項(xiàng)刪掉bcdedit /delete {標(biāo)識(shí)符}還有一種更穩(wěn)妥的辦法如果你本來就不打算保留 Ubuntu 的 EFI 分區(qū)可以直接在 diskpart 里選擇對(duì)應(yīng)的 EFI 分區(qū)刪除后重建 Windows 引導(dǎo)diskpart select disk 0 select partition 1 delete partition override create partition efi size100 format quick fsfat32 labelSystem assign letterS exit bcdboot C:\Windows /s S: /f UEFI但這一步風(fēng)險(xiǎn)很高如果你對(duì)分區(qū)結(jié)構(gòu)不夠了解建議只做刪除引導(dǎo)項(xiàng) 刪除分區(qū) bcdboot 重寫 BCD不要?jiǎng)?EFI 分區(qū)的重建。卸載操作里我最后悔的一次經(jīng)歷是當(dāng)時(shí)覺得刪分區(qū)之后總該沒事了結(jié)果忘了 EFI 引導(dǎo)順序里還有 ubuntu開機(jī)直接卡在 GRUB 命令行界面。所以順序一定是先刪引導(dǎo)項(xiàng)再刪分區(qū)最后做 Windows 引導(dǎo)修復(fù)三步缺一不可。6. 最后的幾點(diǎn)體會(huì)把這一圈折騰下來我最大的感受是Ubuntu 22.04 確實(shí)比之前的版本穩(wěn)定不少尤其是桌面環(huán)境、Wayland 兼容性和默認(rèn)軟件源包的質(zhì)量。但只要是裝系統(tǒng)、碰硬件驅(qū)動(dòng)就別指望一次成功。我說幾個(gè)自己反復(fù)用到的排查習(xí)慣應(yīng)該能幫你省不少時(shí)間。第一任何驅(qū)動(dòng)問題先看日志。WiFi 消失了看dmesg | grep -i firmware網(wǎng)卡速度不對(duì)看ethool的協(xié)商結(jié)果NVIDIA 裝不上看/var/log/apt/term.log。日志比百度經(jīng)驗(yàn)更可靠。第二不要一上來就編譯內(nèi)核。熱搜里rk3566 構(gòu)建 Ubuntu 系統(tǒng)沒有 WiFi 驅(qū)動(dòng)這種情況很多人直接重新編譯整個(gè)內(nèi)核其實(shí)先確認(rèn)設(shè)備樹有沒有正確匹配、固件有沒有被打包進(jìn)去往往幾分鐘就能解決。編譯內(nèi)核是最后的辦法不是最快的辦法。第三Ubuntu 的 LTS 版本也不是無腦升級(jí)就好。22.04 的 HWE 內(nèi)核棧雖然能支持新硬件但如果你長(zhǎng)時(shí)間不更新驅(qū)動(dòng)和內(nèi)核會(huì)慢慢出現(xiàn)偏離。系統(tǒng)級(jí)的重大更換操作建議做完之后立刻用timeshift或者至少備份一份重要配置別裸奔。最后再補(bǔ)一個(gè)小技巧如果你在局域網(wǎng)里經(jīng)常要遠(yuǎn)程登錄 Ubuntu除了 xrdp也可以試一下gnome-remote-desktop它在 22.04 上默認(rèn)支持 RDP和 GNOME 桌面集成度更高配置方式比 xrdp 簡(jiǎn)單。不過它有一些顯示器相關(guān)的限制如果不喜歡折騰xrdp 依舊是更通用的方案。