2012年8月

记录以作备用。

前几天准备换掉RHEL5,来个其他的linux发行版。查了查,终于发现一个比较适合我的,就是arch linux,只包含一些最基本的模块,其他的都有手动去安装。但是坑爹的是网上的中文教程全部是2010版本,内含setup的图形界面,而12.08.04只有命令行模式安装方式。还好还有wiki,但是wiki的中文也是不够详细,详细的还是要看英文。

下载安装镜像和配置虚拟机都略过。 进入安装模式以后第一件事是要进行分区,分区很重要,怎么分区是由后面的grub的模式来决定的。grub有3种模式,分别对应grub-bios-gpt,grub-bios-mbr,grub-uefi。当时我因为一时糊涂,结果选择了grub-uefi这个分支世界线,结果就bad end了一天啊。所以建议走grub-bios-gpt和grub-bios-mbr这两条线,最后我选择了grub-biso-gpt这条世界线,终于一次good end了。

选择grub-bios-gpt的话,就需要用gdisk或者cgdisk来分区,千万不要用fdisk,会挂的。gdisk是直接命令行界面,cgdisk有写图形界面的样子。这次我选择了gdisk,使用 命令 gdisk /dev/sda。 根据界面提示分区如下。 大小 编码 文件系统 挂载 2M ef02 无文件系统 512M 8300 linux filesystem /boot 61.5G 8300 linux filesystem / 2G 8200 linux swap swap

2M的这个区是一定需要的因为grub-bios-gpt指明需要这个区,并且这个区推荐在最前,比/boot还要靠前,他的编码是ef02,这个一定要选对,文件系统为无。 512M 这个区其实不一定要这么大,不过我是为了以后如果可以更换为grub-uefi而预留的,刚好也可以作为一个/boot区域。 61.5G,我是直接作为一个主目录 2G,我是作为交换区域来用的。

下面是格式化 mkfs.ext4 /dev/sda2 mkfs.ext4 /dev/sda3 mkswap /dev/sda4 && swapon /dev/sda4 这个交换区,总觉得好像没有运行起来。。。 mount /dev/sda3 /mnt mount /dev/sda2 /mnt/boot

然后就是根据实际情况配置网络 ifconfig eth0 192.168.1.103 这个是IP地址 route add default gw 192.168.1.1 这个是网关 vi /etc/resolv.conf 使用VI来打开DNS配置文件添加下面两句 nameserver 218.2.135.1 nameserver 61.147.37.1

静态IP地址的可以试试看ping 网关,如果不通,那么就肯定是IP和网关没设置号。 然后在试试看ping 随便一个网站看看比如说ping . 如果提示错误的意思大致是超出范围的,那就肯定是DNS没设置好。

配置好网络然后就可以安装了 pacstrap /mnt base base-devel arch linux 基础包

pacstrap /mnt grub-bios grub-bios 和syslinux只需要一个

genfstab -p /mnt >> /mnt/etc/fstab 生成分区表

arch-chroot /mnt 切换根目录

vi /etc/hostname 设置主机名 xyz

vi /etc/hosts 设置host
127.0.0.1 localhost.localdomain localhost xyz
:1 localhost.localdomain localhost xyz search xyz

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 设置地区

vi /etc/locale.gen 找到开头为en_US和zh的行,把前面的注释符去掉

vi /etc/locale.conf
LC_COLLATE="C"

vi /usr/share/i18n/locales/zh_CN 找到LC_TIME段落,并添加 week 7;19971130;5 first_weekday 2 first_workday 2

locale-gen 生成地区信息

mkinitcpio -p linux

pacman -S grub-bios

modprobe dm-mod

grub-install --target=i386-pc --recheck --debug /dev/sda mkdir -p /boot/grub/locale

cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

grub-mkconfig -o /boot/grub/grub.cfg 生成grub配置信息

passwd root 生成root密码

exit

umount /mnt/boot

umount /mnt

reboot

OK这样就安装好了,可以进入archlinux了,当然后面还有很多需要自己配置的东西