用UEFI安裝ArchLinux 20140105


為了在E431上用UEFI安裝Arch一個晚上重裝了5,6次系統,整整做了一個通宵,還好是周六。今天剛好有時間正好 來總結一下。因為要用UEFI來安裝,所以安裝了兩次之后發現UEFI環境變量不可用(用efivar-tester才發現的),才又開始追求完美之路 (折騰之路)。

一、制作UEFI的啟動U盤

  1. 下載工具軟件Rufus
  2. 選擇U盤;分區選擇GPT for UEFI Computer
  3. 文件格式選FAT32(之前用Grub時找的一些資料上說Ntfs不能用,所以不能用openSUSE,>4G了)
  4. 簇大小默認4K就好
  5. 卷標和Arch光盤卷標一樣就好(不強制,之前用Grub引導iso鏡像安裝時的陰影,不一致導致無法用Grub引導)
  6. ISO選擇Arch的鏡像
  7. 寫入鏡像會刪除盤上全部數據!自己先保存好! 安裝UEFI USB的方法參見此連接

Name:  Rufus.jpg
Views: 272557
Size:  54.3 KB

要用UEFI的U盤來制作鏡像(就是發現這個才在安裝了兩次之后重新又試了幾次),我用的是,直接把Arch的鏡像通過這個軟件做進U盤(同時U盤的分區會改成GPT格式),這樣U盤也就是UEFI的了。

二、把E431的BIOS設成UEFI Only,這樣就保證是用UEFI的了。

三、安裝系統

1.基本系統的安裝

硬盤分區

分區方案是/boot/efi,/,/usr,/home四個分區,由於想用動態swap,因此不建swap分區。

1 cfdisk
2 #/boot/efi為sda1,/為sda2,/usr為sda3,/home為sda4

安裝文件系統

在sda1安裝fat文件系統,sda{2,3,4}安裝ext4文件系統

1    mkfs.vfat /dev/sda1
2    mkfs.ext4 /dev/sda2
3    mkfs.ext4 /dev/sda3
4    mkfs.ext4 /dev/sda4

掛載分區

1 #掛載/
2 mount /dev/sda2 /mnt
3 #創建boot/efi,usr和home以掛載sda1,sda3和sda4
4 cd /mnt
5 mkdir boot
6 mkdir boot/efi
7 mkdir usr
8 mkdir home
9 mount /dev/sda1 /mnt/boot/efi
10 mount /dev/sda3 /mnt/usr
11 mount /dev/sda4 /mnt/home

更新mirrorlist

更新源有兩個方法,從網上下一個mirrorlist,剛好找到的,就省去了自己改文件了

1 cd /etc /pacman.d
2 mv  mirrorlist {,.orig }
3 wget http: //docs.ihacklog.com /mirrorlist
或者,自己修改mirrorlist
1 cd /etc/pacman.d
2 sed -i "s/^\b/#/g" mirrorlist
3 nano mirrorlist
4 #將mirrors.ustc.edu.cn和mirrors6.ustc.edu.cn前面的#去掉,163的也比很快,但發現過這個源有問題,所以推薦用ustc的,雖然是學校的,但不是教育網的也很快。
5 pacman -Syy

安裝base系統

我們只需要安裝base和base-devel

1 pacstrap /mnt base base-devel #也可以只是安裝base #如果你想使用ifconfig之類的工具,請在上面加上net-tools

生成fstab

在開機時我們需要正確掛載分區,這就需要fstab 這里我使用的是UUID的方式識別

1 genfstab -U -p /mnt >>/mnt/etc/fstab

改變根目錄

1 arch-chroot /mnt /bin/bash

配置locale

打開locale.gen

1 cd /etc
2 nano locale.gen
3 #將en_US.UTF-8,zh_CN.GB18030,zh_CN.UTF-8前的#去掉
4 locale-gen
5 echo LANG=en_US.UTF-8 >> locale.conf
6 nano vconsole.conf
7 #輸入 #
    KEYMAP=us
    FONT=

設置時區

1 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

設置主機名

1 echo 主機名 >> /etc/hostname

生成ramdisk

因為/usr作為獨立分區,所以還要配置mkinitcpio.conf, 文件內有注釋說明

在HOOKS中加入 fsck usr shutdown

1 mkinitcpio -p linux

用戶配置

1 passwd
2 #修改root密碼
3 useradd -m -g users -G wheel -s /bin/bash 用戶名
4 passwd 用戶名

安裝GRUB(UEFI)

1 pacman -S grub-bios efibootmgr dosfstools
2 grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck --debug
3 grub-mkconfig -o /boot/grub/grub.cfg cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

安裝GRUB(非UEFI)

1 pacman -S grub-bios
2 grub-install /dev/sda
3 cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo  #據說這一步是為了解決一個一直未被修復的bug
4 grub-mkconfig -o /boot/grub/grub.cfg

重啟

p.s.如果安裝了win8等系統可以安裝 os-prober 來檢查已經存在的其它系統。

1 exit #退出chroot
2 umount /mnt/{boot/efi,usr,home}
3 umount /mnt
4 reboot

2.驅動安裝

安裝ALSA(聲卡)

1 pacman -S alsa-utils
2 alsamixer #調節音量

安裝顯卡驅動

1 lspci | grep VGA #查看機器上的顯卡信息

2 pacman -Ss xf86-video | less #查看有什么顯卡包

我的E431是雙顯3000和GT740,先安裝核顯

1 pacman -S xf86-video-intel

2 pacman -S mesa #軟件實現在圖形應用程序接口

另外,為了安全起見,安裝下vesa(如果其它驅動加載失敗,Xorg會退回並加載vesa)

1 pacman -S xf86-video-vesa

安裝synaptics觸摸板驅動

1 pacman -S xf86-input-synaptics

3.桌面環境的安裝

安裝xorg

1 pacman -S xorg-server xorg-xinit xorg-utils xorg-server-utils #也可以只安裝xorg-server

安裝字體

1 pacman -S ttf-dejavu wqy-microhei-lite

安裝KDE

接下來就是桌面環境了,這里我使用的是KDE,當然是最小化安裝

1 pacman -S kdebase #一路enter就行了
2 pacman -S kdemultimedia-kmix #音量調節 可以在~/.kde4/share/config/kmixrc中加入VolumePercentageStep=?來設置音量增加步長
3 pacman -S kdeplasma-applets-plasma-nm #網絡管理
4 systemctl enable NetworkManager.service #開啟網絡管理服務
5 systemctl enable kdm.service #開啟kdm
6 pacman -S kde-l10n-zh_cn #添加中文支持

7 pacman -S phonon-vlc

啟動KDE的方法有兩個,在安裝完之后是不用管的,這里只是提一下,以備查

1.啟動kdm.service

  1 systemctl start kdm.service

2.用xinitrc來啟動

 ~/.xinitrc

 exec startkde

安裝常用軟件

1 pacman -S synaptiks #觸摸板管理程序 --已經被移至aur
2 pacman -S kde-gtk-config #gtk主題管理
3 pacman -S kcm-fcitx fcitx-qt kdeplasma-addons-applets-kimpanel fcitx-table-extra #fcitx輸入法
4 pacman -S kdeutils-ark kdeutils-kwallet #安裝ark和kwallet,這兩個用過的都知道
5 pacman -S unzip zip unrar #ark的壓縮解壓支持
6 pacman -S kdegraphics-ksnapshot kdegraphics-okular kdegraphics-gwenview #截屏、pdf閱讀及圖片瀏覽軟件

安裝Aur

 [略]改日再補

安裝wifi BCM43142

 [略]改日再補

安裝bumblebee

為了可以發揮GT740的威力又可以在不用時省電

  [略]改日再補

P.S.通過U盤引導ISO的一些經驗

用Grub引導之后會發現device label錯誤,只能回到命令行,做如下操作就行了

1 mkdir /tmpmnt
2 mount -r -t vfat /dev/sdb1 /tmpmnt #sdb1為U盤的分區
3 modprobe loop
4 losetup /dev/loop6 /tmpmnt/os/archlinux/archlinux-2014.01.05-dual.iso #此為ISO所在目錄
5 ln -sf /dev/loop6 /dev/disk/by-label/ARCH_201401
6 exit

P.S.動態Swap的設置

在文件中加入一個swap文件,我的內存是4G,所以用了個5G的Swap,這樣方便休眠,以后增加了內存也只是重新建一個swap文件就可以了,不用修改磁盤分區了!

P.S.ps(其實休眠是否能成功與swap大小沒有太大關系,當然swap必須大於等於內存大小,如果當運行時的swap占用到的swap空間小於了內存大小,就無法休眠成功了,當然現在又有了一個可以對內存進行壓縮再休眠的方法,可以減少swap上休眠失敗的可能)

1 dd if=/dev/zero of=/home/swap/5G.swap bs=1M count=5k
2 mkswap /home/swap/5G.swap
3 swapon /home/swap/5G.swap

 如果想要在啟動時就加載swap就在fstab中加入

/home/swap/5G.swap none swap sw 0 0

P.S.額外軟件

KMLDonkey
KGet
KTorrent
gparted
kdePartitionManager
kate
kdeutils-print-manager cups
samba

其它KDE控制模塊見https://wiki.archlinux.org/index.php/KDE

更多KDE軟件參見 http://kde-apps.org

KDE的安裝可以再參見

http://wiki.klniu.com/zh/Archlinux/KDE%E6%A1%8C%E9%9D%A2%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85%E9%85%8D%E7%BD%AE

http://my.oschina.net/codeaxe/blog/127533

http://ihacklog.com/post/installation-of-archlinux-201309-dist.html

 

 


免責聲明!

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



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