笔记本双显卡 EFI 启动安装 ArchLinux
筆記本雙顯卡 EFI 啟動安裝 ArchLinux
推薦準備一個 ≥ 4G 的U盤,用U盤安裝系統,并且在操作錯誤的時候能再次通過U盤啟動拯救系統。建議手里有兩臺電腦或一個 Pad 用于瀏覽本文和官方 WiKi 爬坑。手機…估計看起來很累
??這里以當前系統為 Windows 系統舉例安裝,國內鏡像下載地址:163.com。打開后選擇最新的日期,截止博文日期最新為:2017.02.01/。下載那個 archlinux-20xx.xx.xx-*.iso 就行。然后下載 Win32 Disk Imager,用于寫入鏡像到U盤,操作非常簡單,瀏覽的時候右下角的文件過濾選擇 *.*,然后選擇下載好的 ISO 鏡像并選擇正確的U盤盤符即可寫入。
需要注意一點,首先你得清楚你當前系統的啟動方式是 MBR 還是 EFI 不過問題不大,從U盤啟動的時候,如果是 EFI,ArchLinux 會顯示 EFI 字樣。準備工作
??除了U盤的工作需要提前準備外,另一個就是建議準備好 Free Space,提前劃分一部分空閑的空間出來,假設現在是 500G 的機械硬盤,3個分區 C、D、E,我們利用 Windows 中的【計算機管理 - 磁盤管理 - 壓縮卷】功能來得到一部分空間用于 ArchLinux,例如在磁盤管理中對著 E 盤右鍵選擇“壓縮卷”,然后會讓你輸入需要壓縮的空間大小,計算一下,如果你準備給 Linux 50G 的空間,就是 50 × 1024M = 51200M。當然如果內存偏小的用戶建議在安裝的時候留一部分空間用來做 Swap 分區,這個后面會說到。這里就先得到一部分空間,注意不要格式化!
從U盤啟動
??啟動后選擇第一個選項進入 ArchLinux 安裝,稍等一會兒,屏幕上會有一堆綠色的 [ OK ],之后進入到命令行界面,大致如下:
Arch Linux 4.x.x-1-ARCH (tty1)archiso login: root (automatic login) root@archiso ~ #_ArchLinux 分區工作
熟練分區請跳過這里,新手建議仔細閱讀??首先通過命令 fdisk -l 查看當前各個分區設備號,記下 EFI System 的 Device 部分,例如我的顯示為 /dev/sda1,然后輸入命令 cfdisk【新手必備】,可以看到下方有一個綠色的行,Device 顯示為 Free Space,Size Type 顯示為 50G(我留下的空間大小是 50G),通過 ↓ 鍵移動到這一行,屏幕最下方通過 ← → 選擇到 [ New ] 上并回車,提示輸入分區大小。前文說過內存小的用戶建議在這里預留 Swap 分區,例如我總共剩余空間為 50G,這里可以分配 45G,剩下 5G 創建 Swap 分區。所以這里我輸入 45G 并回車。接著下面剩下的 5G 也 New 一個,分區大小直接回車。
??最后記得把 5G 這個小分區的分區類型修改為 Swap,移動到 5G 分區,下方選擇 [ Type ] 回車,出現分區類型表,選擇 Linux swap 即可。至此 45G 分區類型應該為 Linux filesystem,5G 分區類型為 Linux swap。不要忘記寫入分區修改,下方選擇 [ Write ] 并輸入 yes 寫入分區表完成分區工作。
??選擇 [ Quit ] 退出分區工具 cfdisk
格式化分區
這部分比較簡單-
首先 fdisk -l 查看新的分區情況,記下 Linux filesystem 和 Linux swap 兩個類型的 Device 部分,例如 /dev/sda6 和 /dev/sda7
-
通過 mkfs.ext4 /dev/sdaN 格式化 Linux filesystem 分區【此處的 N 替換為你剛剛查看的 Linux filesystem 設備號,例如我的是 6,則這里應該輸入命令 mkfs.ext4 /dev/sda6】。如果有提示輸入 y 繼續則輸入后回車。
-
通過 mkswap /dev/sdaN 格式化 Linux swap 分區,同上 N 替換為你的 Linux swap 設備號,如果沒有創建 swap 分區請忽略此步驟。
掛載分區并安裝基本系統
請一定記得替換 N 為你的設備號首先掛載你的 Linux filesystem 到 /mnt。
mount /dev/sdaN /mnt因為使用的 EFI 引導,所以得先做一個準備工作【☆重要】
mkdir -p /mnt/boot/efi掛載 EFI System 分區到 /mnt/boot/efi。如果忘記了隨時 fdisk -l 查看。
mount /dev/sdaN /mnt/boot/efi激活 Linux swap 分區。(如果沒有請忽略)
swapon /dev/sdaN選擇鏡像源
通過訪問 Arch Linux - Pacman China Mirrors 獲得最新的可用鏡像,個人推薦 163。
替換鏡像為國內
cd /etc/pacman.d mv ./mirrorlist ./mirrorlist.bak nano ./mirrorlist(也可以用vim)在彈出的 nano 編輯器中輸入國內的地址然后 Ctrl+O 保存,Ctrl+X 退出。
【不要問我為什么我也不想,2月這個鏡像的 mirrorlist 里面全是沒有打 # 號的,難不成要一個一個添加只保留 China 那個…我認了,自動選擇太費時…我多輸了幾次已經背下了下面的 163 地址…淚目】
編輯 mirrorlist 的時候按下方格式輸入
Server = http://mirrors.163.com/archlinux/$repo/os/$arch連接網絡
如果是有線連接,直接插上線后就可以了 dhcpcd 是默認啟用的
如果是無線連接,輸入命令 wifi-menu 選擇你的 WiFi,輸入密碼回車稍等就連接啦。
測試一下:ping -c 3 www.baidu.com 看看通了沒,
更新系統時間
直接 timedatectl set-ntp true
時差問題先不用理會。
安裝基本系統
先刷新本地數據庫
pacman -Syy接著安裝
pacstrap -i /mnt base base-devel輸入后需要按兩次回車再輸個 y,然后抽根煙喝杯茶冷靜冷靜…
配置系統
生成 fstab 文件
genfstab -U /mnt >> /mnt/etc/fstab檢查一下,可以看到 EFI、ext4、swap 等分區卷標信息
cat /mnt/etc/fstab切換到已安裝的 ArchLinux 系統
arch-chroot /mnt切換后左邊變成了
[root@archiso /]# _設置時區
等同于北京
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime然后 UTC 時間
hwclock --systohc --utc本地化
nano /etc/locale.gen移除下方 4 個前的 # 保存即可
#en_US.UTF-8 UTF-8 #zh_CN.GBK GBK #zh_CN.UTF-8 UTF-8 #zh_CN.GB2312執行 locale-gen 生成
官方建議: 將系統 locale 設置為 en_US.UTF-8,系統的 Log 會以英文顯示,這樣更容易判斷問題和處理。
echo LANG=en_US.UTF-8 > /etc/locale.conf主機名
myhostname 為你的主機名稱,可以設置電腦名,例如 ASUS-ArchLinux-Notebook
echo myhostname > /etc/hostname添加對應信息到 /etc/hosts
127.0.0.1 localhost.localdomain localhost ::1 localhost.localdomain localhost 127.0.1.1 myhostname.localdomain myhostname # 例如 127.0.1.1 ASUS-ArchLinux-Notebook.localdomain ASUS-ArchLinux-Notebook無線網絡
不安裝進系統可是沒法聯網的【☆重要】
pacman -S iw wpa_supplicant dialog安裝引導工具
不安裝你從哪兒啟動系統呢?【☆重要】
EFI 和 BIOS Legacy 不一樣(過濾我這句話)
第二行 --bootloader-id 的值是可以自定義的,影響你開機選擇所顯示內容,如果想好看一點可以設置為 --bootloader-id=ArchLinux
pacman -S dosfstools grub efibootmgr os-prober grub-install --efi-directory=/boot/efi --bootloader-id=grub --recheck grub-mkconfig -o /boot/grub/grub.cfg忽略執行 grub-mkconfig 下方的錯誤,前幾行包含 Found XXX.img 就行。
后續部分
引導安裝完成后執行
exit reboot開機時打開 Boot Menu,可以看到 grub 或 ArchLinux 選項,選擇 grub 或 ArchLinux 進入。
【如果 grub 引導失敗,沒有執行到讓你輸入用戶名登錄的界面,請插上U盤并從U盤啟動后重新安裝引導和配置】
進入 ArchLinux 系統
假設已經進入到登錄界面,輸入用戶名 root【無密碼】回車進入1
為 root 用戶設置密碼
passwd root添加普通用戶
替換 username 為你的用戶名,例如 maxsky
-m 創建用戶 home 目錄 -g 指定用戶組,這里添加為 users -s 登錄新賬戶的 SHELL useradd -m -g users -s /bin/bash username為新用戶設置密碼
passwd username設置新用戶 root 權限
nano /etc/sudoers在 root ALL=(ALL) 下方添加例如 maxsky ALL=(ALL)
設置 wheel 組權限
去掉 #%wheel ALL=(ALL) ALL 前的 # 號
安裝字體
pacman -S ttf-dejavu wqy-microhei wqy-zenhei音頻
pacman -S alsa-utils顯卡驅動
確定顯卡型號,記下左邊的 BusID,類似 00:02.0 VGA…
Intel 和 NVIDIA 的話,兩個都要記下
雙顯卡是非常尷尬的,先裝一個 Intel 驅動吧
pacman -S xf86-video-intelIntel + NVIDIA 參閱文檔:NVIDIA Optimus【中文文檔長時間未翻譯,還是看英文原版】
需要安裝這些
pacman -S nvidia nvidia-libgl xorg-xrandr完成后生成一份 N 卡配置,位于 /etc/X11/xorg.conf
nvidia-xconfig修改這個文件
nano /etc/X11/xorg.conf多余部分刪掉,參照下方內容配置 N 卡,BusID 那里 N 卡一般是 BusID "PCI:1:0:0"
【注意格式,00:02.0 這種形式需要轉換成 0:2:0】
完成后保存并進入 /etc/X11/xorg.conf.d 目錄
cd /etc/X11/xorg.conf.d新建文件并編輯
nano 20-intel.conf內容如下,Intel 的 BusID 一般是 BusID "PCI:0:2:0"
Section "Device"Identifier "intel"Driver "modesetting"BusID "PCI:Intel 的 BusID" EndSection完成后保存進入下一節
安裝桌面環境
自選桌面環境,這里以 plasma 舉例,第二個是觸摸板支持
pacman -S plasma kdebase kde-l10n-zh_cn pacman -S xf86-input-synaptics需要注意一點,所選的桌面環境不同,啟動顯卡的配置也不同
建議仔細閱讀:Display Managers
下表如無特殊備注,均在第二列的添加位置內添加如下內容
xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto| LightDM | /etc/lightdm/display_setup.sh | 記得 chmod 添加 x 權限。 |
| /etc/lightdm/lightdm.conf | [Seat:*]里添加 display-setup-script=/etc/lightdm/display_setup.sh | |
| SDDM | /usr/share/sddm/scripts/Xsetup | |
| GDM | /usr/share/gdm/greeter/autostart/optimus.desktop | 創建此文件,文件內容參考2 |
| /etc/xdg/autostart/optimus.desktop | 創建此文件,文件內容同上 | |
| KDM | /usr/share/config/kdm/Xsetup |
添加后重啟
進入桌面系統
重啟后還是回到了命令行登錄界面,保險起見,我們沒有開機自啟桌面
因為如果顯卡沒有配置正確,會卡在黑屏上,又得插上U盤慢慢折騰,所以小心為上我們一步步來
如果前面的配置沒有問題,此時輸入下面的命令稍后就會出現登錄 UI 了
【如果安裝的 gnome 這里應該的 sddm 應替換為 gdm,以此類推】
桌面 WiFi 配置
選擇用戶(這里建議用新建的普通用戶)輸入密碼進入系統,先把桌面系統的 WiFi 管理器弄上
sudo systemctl enable NetworkManager一般來說是有的,如果沒有這貨先用 wifi-menu 連接 WiFi 后下載
【有個坑,有時候是 networkmanager,有時候又是 NetworkManager。自己嘗試】
尾聲
把桌面管理器設置自啟
如果前一步能正常進入桌面UI,這里就可以設置桌面管理器的自啟了。
注意把 sddm 替換成你所安裝的桌面管理器
如果 Windows 啟動項沒了看這里
EFI 引導一般不會丟,開機在 BIOS 通過筆記本的 F12 等鍵啟動 Boot Menu,會發現有一個 Windows Boot Manager,這貨就是用來啟動 Windows 的。
保險起見還可以在進入 ArchLinux 桌面系統后,使用下面的命令重新生成 grub 配置,這樣在開機啟動 ArchLinux 時就有第三個選項了。
sudo grub-mkconfig -o /boot/grub/grub.cfg沒什么內容了
此文針對 I + N 卡描述,A 卡需要自己爬官網 WiKi: ArchLinux - ATI。
WiKi 上基本都有中文的翻譯,但是注意日期,部分頁面過于陳舊請盡量閱讀英文原文
建議在沒有進入桌面系統前都使用 root 用戶登錄。 ??
文件內容 ??
總結
以上是生活随笔為你收集整理的笔记本双显卡 EFI 启动安装 ArchLinux的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C++】gcd函数的写法
- 下一篇: linux创建虚拟声卡,修改服务器版li