前期准备
其实最重要的就是前期准备了. 准备好了后面装系统改配置都是轻松加愉快啊.备份配置
备份必要的配置文件当然是必须的.首先告诉大家一个好消息, 最让人纠结的 xorg.conf (一般放在 /etc/X11/xorg.conf) 不需要. 貌似现在 arch 启动 X 并不需要这个文件了 :D
如 pacman.conf 这样的文件可以备份一下, 我实在不太记得住 archlinuxfr 的网址. 此外, arch 现在还启动了 multilib 计划, 可以把下面这个加入 pacman.conf
[multilib]
Include = /etc/pacman.d/mirrorlist
如果有修改 /etc/bash_aliases 或 /etc/vimrc 等等, 不过这些一般也没谁去改吧, 盯好自己的 ~/.bashrc ~/.bash_profile ~/.vimrc 就好了.
如果你跟我一样使用 compiz 来卖萌, 记得可以使用 ccsm 将 compiz 的设置导出到文件哦.
个人目录下其它值得备份的文件还有 .bash_history .fonts .mplayer 等等, 看各自的需求了.
当然别忘了其它重要的文件比如小电影什么的.
已安装的软件包
接下来一件比较重要的事情就是看看系统现在装着哪些软件, 装好新系统后立刻把它们都装上, 在 arch 下通过$ pacman -Q
$ pacman -Q | awk 'BEGIN { print "echo -n \"pacman\" -S"} { print "echo -n \" " $1 "\"" }' | sh > install-packages
再看一眼旧的系统, 马上就要说再见了哦.
安装
用 ArchLinux 安装镜像启动后, 会进入这样一个 shell 交互环境root@archiso ~ #
格式化磁盘
如果没有必要重新格式化磁盘, 请跳过这个步骤.首先要搞清楚硬盘在挂在哪个地方, 一般是 /dev/sda, 使用 U 盘安装的用户将还会看到 /dev/sdb, 或者 sda 是 U 盘而 sdb 才是磁盘. 对应地请小心行事, 不要误删数据了.
如果不想退的话, 先从格式化分区开始吧. 下面是用 parted 进行分区 (以在 /dev/sda 上安装为例, 高亮的部分是输入, 其它是 shell 或 parted 回显)
# parted
(parted) select /dev/sda
Using /dev/sda
(parted) mkpart primary ext4 0 40GB
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
(parted) toggle 1 boot
(parted) mkpart primary ext4 40GB -1s
(parted) q
Information: You may need to update /etc/fstab.
# ls /dev/sda*
/dev/sda /dev/sda1 /dev/sda2
到此为止分区结束, 下面在新分区上创建文件系统
# mkfs -t ext4 /dev/sda1
blah blah blah...
Writing superblocks and filesystem accounting information: done
# mkfs -t ext4 /dev/sda2
blah blah blah...
Writing superblocks and filesystem accounting information: done
配置网络
如果你跟我一样悲剧使用的是 broadcom 的网卡, 在安装时一定悚然发现找不 eth0. 这时请在命令行执行modprobe -r tg3
modprobe broadcom
modprobe tg3
现在尝试 ping 一下外网
# ping blog.bitfoc.us
好了, 开装基础系统吧.
安装基础系统
格式化分区之后, 先尝试挂载根分区 (即需要将系统装入的那个分区), 如# mount /dev/sda1 /mnt
# pacstrap /mnt base base-devel
# pacstrap /mnt vim
进入新系统
安装基础系统完毕后, 挂上其它需要挂载的分区, 比如将 /dev/sda2 挂到 /mnt/home 下# mount /dev/sda2 /mnt/home
# genfstab -p /mnt >> /mnt/etc/fstab
arch-chroot
切换根目录# arch-chroot /mnt
配置新系统
ArchLinux 中启用新的配置系统后, 很多设置都从 /etc/rc.conf 中脱离了, 比如机器名, 直接将 hostname 内容写入 /etc/hostname 作为文件内容即可.配置 locale 还是修改 /etc/locale.gen 文件, 将需要的 locale 解除注释, 并执行
# locale-gen
# ln -s /usr/share/zoneinfo/Asia/Chongqing /etc/localtime
配置 bootloader
首先要创建 initramfs# mkinitcpio -p linux
# pacstrap /mnt grub-bios
# grub-install /dev/sda
如果重启之后发现无法进入系统 (grub 可正常引导, 但选择 ArchLinux 之后提示某某某 UUID 对应的 device 找不到), 还是继续插上引导盘, 挂载新系统并且 arch-chroot 切过去, 检查 /etc/fstab 下显示的设备 ID 跟 /boot/grub/grub.cfg 出现的设备 ID 是否一致 (在 /boot/grub/grub.cfg 中搜索 "search" 找到一行含有设备 ID 的行, 然后全文替换为正确的设备 ID).
安装后工作
启用 AUR
编辑 /etc/pacman.conf 在末尾加上这样两行[archlinuxfr]
Server = http://repo.archlinux.fr/$arch
$arch
指的是架构, 比如用 32 位系统可替换为 i686.再执行
# pacman -Syu && pacman -S yaourt
恢复配置
执行先前导出的 install-packages 之前, 记得先恢复 pacman.conf, 否则 aur 中的包会提示找不到. 安装完所有的包后, 让配置文件各就各位. Now, your new system!WARNING!
如果你的机器只有 2G 内存, 而且你有长时间开大量 Chromium 标签页浏览的习惯, 最好还是放弃 64 位.