身為一個小小弱菜,卻有個不安分的心,不停的嘗試發行版,Arch應該是在7月多去掉了AIF安裝框架,安裝過程相對就比較麻煩了,不過還好它wiki是相當的全面,網上還有很多資料可以參考
下載鏡像燒進U盤就不多說了,主菜單選擇 "Boot Arch Linux" 並按回車,系統將加載並給出登錄提示,自動以 'root' 登錄。系統默認使用美式鍵盤映射。
網絡連接
archlinux安裝是特別依賴網絡的,沒有網絡安裝的話就X疼了。 安裝程序會自動執行dhcpcd建立連接,可以試試ping一下百度什么的,不行的話用以下方法手動配置
如果是有線連接:
激活接口:
# ip link set eth0 up
添加ip地址:
# ip addr add <ip 地址>/<子網掩碼> dev <接口名>
用類似下面的命令添加網關,ip 地址替換為實際的網關地址:
# ip route add default via <ip 地址>
編輯/etc/resolv.conf 如下, 替換你的DNS服務器IP地址和本地域名:
# nano /etc/resolv.conf nameserver 61.23.173.5 nameserver 61.95.849.8 search example.com
如果是無線網絡:
下面的示例中使用 wlan0 作為接口,linksys 作為 ESSID。請根據實際情況修改。
確定網絡接口:
# lspci | grep -i net
用 iwconfig 確定 udev 已經載入驅動,而且驅動程序創建了可用的無線內核接口:
輸出和下面不相似表示驅動沒有載入,需要自己加入
#iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 unassociated ESSID:"" Mode:Managed Channel=0 Access Point: Not-Associated Bit Rate:0 kb/s Tx-Power=20 dBm Sensitivity=8/0 Retry limit:7 RTS thr:off Fragment thr:off Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
wlan0 為可用接口。
啟用接口:
# ip link set wlan0 up
在安裝 Archlinux 時,無線網絡驅動和工具已經包含在 base 組中。請確保為無線網卡安裝正確的驅動。通常在初始化的光盤系統和新裝的系統中,Udev 會加載合適的驅動,並創建無線網絡接口。如果在安裝 Archlinux 系統的時候沒有配置無線網卡,請確保下列所需的軟件包已經通過 pacman 安裝完畢(驅動,必須的固件, wireless_tools,iw,wpa_supplicant
然后使用netcfg提供的 wifi-menu 連接到網絡:
# wifi-menu wlan0
如果是需要撥號上網的 可選擇pppoe
分區
現在的arch有三種分區工具,如果你是GPT分區表的話可以選擇cgdisk,mbr選擇cfdisk,gparted則是兩者都支持。
弱菜君用的mbr分區表
# cfdisk /dev/sda
然后根據需求分區
分區之后,還需要用 mkfs 將分區格式化為選定的文件系統,我使用的是ext4文件系統
# mkfs.ext4 /dev/sda1 # mkfs.ext4 /dev/sda2
刷新一下分區表(如果變動比較大要在格式化之前刷新一下分區表)
# partprobe /dev/sda
掛載分區
要檢查當前磁盤的標識符和布局:
# lsblk /dev/sda
先掛載根分區到/mnt.
# mount /dev/sda1 /mnt # ls /mnt
格式化完應該就一個lost+found
然后掛載/home分區和其余單獨分區(/boot, /var 等)。
然后在 /mnt 中創建 home 目錄並掛載分區:
# mkswap /dev/sdaX && swapon /dev/sdaX ##分區格式化為swap,並且創造swap分區 # mount /dev/sdaX /mnt ##掛載/分區到/mnt上 # mkdir /mnt/home && mount /dev/sdaY /mnt/home ##創建home文件,並且將Y分區掛載到上面
編輯源列表
把163的源放在最前面
# nano /etc/pacman.d/mirrorlist Server = http://mirrors.163.com/archlinux/$repo/os/$arch
然后升級文件列表
pacman -Syy #nano /etc/pacman.conf
[options]
前面的選項改成這樣
RootDir = /mnt DBPath = /mnt/var/lib/pacman/ CacheDir = /mnt/var/cache/pacman/pkg/ LogFile = /mnt/var/log/pacman.log GPGDir = /mnt/etc/pacman.d/gnupg/ SigLevel = Never
后面
core、extra、community
的SigLevel = PackageRequired之前加#注釋掉
使用 pacstrap 腳本安裝基本系統:
# pacstrap /mnt base base-devel
無線的同時安裝以下軟件包,否則chroot后上不了網
#pacstrp /mnt wireless_tools wpa_supplicant wpa_actiond dialog
生成fstab
#genfstab -p /mnt >> /mnt/etc/fstab
Chroot到新系統
#arch-chroot /mnt
配置系統
#vi /etc/locale.gen
選擇你需要的本地化類型,移除前面的#即可
en_US.UTF-8 UTF-8 en_GB.UTF-8 UTF-8 zh_CN.GB18030 GB18030 zh_CN.GBK GBK zh_CN.UTF-8 UTF-8 zh_CN GB2312
然后運行
# locale-gen
locale.conf 文件默認不存在,一般設置LANG就行了,它是其它設置的默認值。
LANG=zh_CN.UTF-8 LC_TIME=en_GB.UTF-8
時區
編輯文件 /etc/timezone
Asia/Shanghai
同時,將/etc/localtime 軟鏈接到 /usr/share/zoneinfo/Zone/SubZone.其中 Zone 和 Subzone 替換為所在時區
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
硬件時間
在 /etc/adjtime 中設置,默認、推薦的設置為UTC
可用以下命令自動生成
# hwclock --systohc --localtime
NTPd是使用網絡時間協議將 GNU/Linux 系統的軟件時鍾與 Internet 時間服務器同步的最常見的方法
安裝ntp
pacman -S ntp
想要僅僅同步時鍾一次,不想啟動守護進程的話,運行:
# ntpd -qg # hwclock -s
內核模塊
一般情況下 udev 會自動加載需要的模塊,大部分用戶都不需要手動修改。這里只需要加入真正需要的模塊。
/etc/modules-load.d/中保存內核啟動時加入模塊的配置文件。每個配置文件已/etc/modules-load.d/.conf的格式命名。配置文件中包含需要裝入的內核列表,每個一行。空行和以 # 或 ; 開頭的行直接被忽略。比如
/etc/modules-load.d/virtio-net.conf # Load virtio-net.ko at boot virtio-net
注意:新版本arch使用systemd系統和服務管理器。systemd 是 Linux 下的一款系統和服務管理器,兼容 SysV 和 LSB 的啟動腳本。systemd的特性有:支持並行化任務;同時采用 socket 式與 D-Bus 總線式激活服務;按需啟動守護進程(daemon);利用 Linux 的 cgroups 監視進程;支持快照和系統恢復;維護掛載點;各服務間基於依賴關系進行精密控制。systemd 完全可以替代 Arch 默認的 sysvinit 啟動系統。
系統默認安裝systemd。建議所有系統都使用 systemd 的配置文件。
啟用 net-auto-wireless 服務
# systemctl enable net-auto-wireless.service
Make sure that the correct wireless interface (usually wlan0) is set in /etc/conf.d/netcfg:
# nano /etc/conf.d/netcfg WIRELESS_INTERFACE="wlan0"
設置主機名
/etc/hostname myhostname
設置 Root 密碼並創建一般用戶
# passwd # useradd -m -g users -s /bin/bash archie # passwd archie
安裝配置啟動加載器
BIOS 系統由三個供選擇 - Syslinux, GRUB, 和 LILO. 按個人喜好選擇一個引導
syslinux
# pacman -S syslinux # syslinux-install_update -iam
編輯 /boot/syslinux/syslinux.cfg,將 / 指向正確的根分區,這是必須的,否則 Arch 啟動不起來。將"sda3"修改為實際的根分區。同樣,修改LABEL archfallback.
# nano /boot/syslinux/syslinux.cfg ... LABEL arch ... APPEND root=/dev/sda3 ro 如果你有windows系統,將 windows啟動項目前的#刪除。
grub 我是用的grub
安裝到 BIOS 主板系統:
# pacman -S grub-bios # grub-install --target=i386-pc --recheck /dev/sda # cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
雖然手動配置grub.cfg完全可以工作,建議自動生成這個文件。
要搜索硬盤上安裝的其它操作系統,請先用 # pacman -S os-prober 安裝 os-prober。
# grub-mkconfig -o /boot/grub/grub.cfg
安裝桌面
pacman -S lxde或者pacman -S gnome-core
這個自己選擇,kde、gnome、lxde或者可以選用openbox、awesome等WM
安裝完成后, 復制/etc/xdg/openbox里的3個文件到 ~/.config/openbox :
menu.xml rc.xml autostart
也可以運行以下命令
mkdir -p ~/.config/openbox cp /etc/xdg/openbox/menu.xml /etc/xdg/openbox/rc.xml /etc/xdg/openbox/autostart ~/.config/openbox
設置開機自動啟動的程序
用你喜歡的編輯器打開/etc/xdg/lxsession/LXDE/autostart,然后在其中添加你要開機自動啟動的程序,就像這樣:
@xscreensaver -no-splash @lxpanel --profile LXDE @pcmanfm -d @fcitx @xcompmgr -Ss -n -Cc -fF -I-10 -O-10 -D1 -t-3 -l-4 -r4 &
啟動桌面環境
使用登錄管理器
通過啟動登錄管理器(或稱顯示管理器),即可進行圖形界面登錄。目前,Arch 提供了 GDM、KDM、SLiM、XDM 和 LXDM 的 systemd 服務文件。以 KDM 為例,配置開機啟動:
# systemctl enable lxdm.service
執行上述命令后,登錄管理器應當能正常工作了。
啟動速度優化
systemd 自己實現了一個 readahead,可以用來提高開機效率。不過,效果會因內核版本和硬件情況而不同(極端的還會變慢)。開啟 readahead:
# systemctl enable systemd-readahead-collect.service systemd-readahead-replay.service
要知道,readahead 的超級牛力只有在重啟幾次后才會顯現。
安裝顯卡驅動
如果是nvidia的顯卡,首先安裝yaourt
最簡單安裝Yaourt的方式是添加Yaourt源至 /etc/pacman.conf:
[archlinuxfr] Server = http://repo.archlinux.fr/$arch 或者 [archlinuxfr] Server = http://repo-fr.archlinuxcn.org/$arch 同步並安裝: # pacman -Syu yaourt
安裝nvidia-all腳本
yaourt -S nvidia-all
假如使用的是最新的顯卡,也許需要使用AUR上的驅動nvidia-beta和nvidia-utils-beta,因為穩定版的驅動不支持一些新引入的特性。
安裝的時候,如果 pacman 詢問您移除 libgl 並且因為依賴無法移除,可以使用 # pacman -Rdd libgl 移除 libgl.
自動配置nvidia,創建一個基本的配置文件/etc/X11/xorg.conf
#nvidia-xconfig
編輯/etc/X11/xorg.conf :
關閉啟動時的Logo
添加"NoLogo"選項到Device節里:
Option "NoLogo" "1"
啟用硬件加速
注意: 從97.46.xx版本開始RenderAccel就已經被默認啟用。
添加"RenderAccel"選項在Device節下面:
Option "RenderAccel" "1"
32位應用程序無法啟動
在64位系統下,安裝lib32-nvidia-utils對應相同版本的64位驅動可以修復這個問題。
筆記本觸摸板驅動
筆記本(或觸摸屏)用戶需要 synaptics 軟件包以支持觸摸板/觸摸屏: # pacman -S xf86-input-synaptics
中文化與安裝字體
除了設置好locale,還需要安裝中文字體。
常用的免費(GPL或兼容版權)中文字體有:
wqy-bitmapfont wqy-zenhei ttf-arphic-ukai ttf-arphic-uming ttf-fireflysung wqy-microhei(AUR中) wqy-microhei-lite(AUR中)
系統字體將默認安裝到/usr/share/fonts。
也可以手動安裝字體,將字體復制到 /usr/share/fonts,進入/usr/share/fonts,執行 fc-cache -fv
更新系統
更新前,請閱讀 新聞 (或者 通告郵件列表)。開發者通常會針對已知問題提供需要配置和修改的重要信息。在升級前訪問這些頁面是個好習慣。
同步、刷新、升級整個系統:
# pacman -Syu
卸載分區並重啟系統
如果還在 chroot 環境,先用 exit 命令退出系統:
# exit
卸載/mnt中掛載的系統:
# umount /mnt/{boot,home,}
重啟:
# reboot
硬盤里有ntfs分區的需要掛載,編輯/etc/fstab
首先在/mnt創建掛載到的文件夾
$sudo mkdir /mnt/winc /mnt/wind /mnt/wine
安裝ntfs-3g
$sudo pacman -S ntfs-3g
編輯 fstab
$sudo leafpad /etc/fstab
添加如下類似文件,自己修改
/dev/sda1 /media/winc ntfs defaults,iocharset=utf8 0 0 /dev/sda5 /media/wind ntfs defaults,iocharset=utf8 0 0 /dev/sda6 /media/wine ntfs defaults,iocharset=utf8 0 0
下面是lxde的簡易配置
沒有快捷鍵真不爽,所以首先設置它
網上都是說rc.xml用於設置快捷鍵,但是很奇怪,我發現登錄后,快捷鍵沒生效,不過如果運行了fusion-icon,點擊一下reload window manager,快捷鍵就能生效
繼續研究發現,~/.config/openbox下還有一個lxde-rc.xml文件,這里也可以設置快捷鍵,和上面相反,這里的設置在登錄后直接就能用,但reload wm后就不能用了。
所以辦法是,對兩個文件都設置,格式如下:
-
<keybind key="F9">
-
<action name="Execute">
-
<execute>gnome-terminal -x mocp</execute>
-
</action>
-
</keybind>
其中第一行是要設置的快捷鍵,第三行是相應的命令,把它放在 和之間。
LXDE下我找不到調節音量的東東,所以把音量調節綁定到快捷鍵了:
- <!-- 音量調節 -->
- <keybind key="C-KP_3">
- <action name="Execute">
- <command>amixer -q set Master 3%-</command>
- </action>
- </keybind>
- <keybind key="C-KP_9">
- <action name="Execute">
- <command>amixer -q set Master unmute 3%+</command>
- </action>
- </keybind>
接下來設置一下字體DPI,默認的太小了,改為96:
$ echo Xft.dpi:96 >> ~/.Xresources
如果使用startx啟動Openbox的話,要在.xinitrc的開始處添加一行:
xrdb -merge ~/.Xresources
其它設置可以用obconf,LXDE會繼承gnome的一些東西,比如登錄時自動運行的程序,在/.config/autostart目錄下。
主題之類的可以在“程序菜單-首選項-外觀”那里設置
#編輯~/.xprofile,使fcitx自啟動
#!/bin/sh LANG=zh_CN.UTF-8 export XMODIFIERS="@im=fcitx" fcitx &
接下來就是使用sudo,自動掛載U盤,配置vim zsh 看個人需要了。
到這里弱菜君的安裝筆記就算是結束了,Arch采用systemed,表示很不習慣,也不是很經常用,也沒有用過逆天的aur,現在不怎么進Arch了,主要用Debian,寒假准備最后換成Gentoo后穩定下來。