本来在工作机上用WinXP,最近想深入Linux开发,于是决定装个Linux。家里的Arch Linux + Awesome用得很好,于是决定在工作机上也装一套。
不想刻盘,也不想用U盘,通过Grub引导吧。这方面的经验分享很多,我参考的是这一篇 。
准备grub4dos解压,将其中得 grldr, grub.exe 和 sample 目录下的 menu.lst 复制到 C:。
修改c:\boot.ini。添加一个启动项c:\grldr="Grub",并把默认的入口改为c:\grldr。
[boot loader] timeout=10 default=c:\grldr [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /noexecute=alwaysoff c:\grldr="Grub"你可以重新启动,试一下看grub4dos是否正常工作。
准备镜像到 https://www.archlinux.org/download/ 下载最新版 ArchLinux,当前的版本是 2015.03.01。
你可以下载其torrent文件,然后用bt工具下载,也可以从镜像站点直接下载。
下载完之后,镜像文件是 archlinux-2015.03.01-dual.iso,dual表示iso里同时包含了32位和64位两个版本。
将此镜像复制到C盘根目录,并用解压缩工具解压出arch/boot/i686下的两个文件: archiso.img 和 vmlinuz,放在C盘根目录下。(i686表示32位的系统,如果你想安装64位的,就把arch/boot/x86_64下的两个文件解压出来)
然后在menu.lst中增加一个入口:
title Install ArchLinux ... root (hd0,0) kernel /vmlinuz archisolabel=ARCH-201503 initrd /archiso.imghd0表示第一个硬盘,如果你只有一个硬盘,它一定是hd0。
(hd0,0)表示第一个硬盘的第一个分区。
重启机器,用Install ArchLinux ...入口,引导进程会因为找不到光盘而停下来,并给你一个root用户的提示符。
我们手动加载镜像:
mkdir /iso mount -r -t ntfs /dev/sda1 /iso modprobe loop losetup /dev/loop6 /iso/archlinux-20150301-dual.iso ln -s /dev/loop6 /dev/disk/by-label/ARCH-201503 exit因为我们帮忙挂载好了镜像,系统完成了引导,进入系统,我们得到一个root用户的提示符。
(注意,如果你的C盘是Fat32分区,就把-ntfs改为-vfat。)
准备分区运行 fdisk /dev/sda,添加三个分区,
/dev/sda7 (512M, 用于/boot),
/dev/sda8 (30G,用于根系统,即 /),
/dev/sda9 (60G,用于 /home)
将三个分区格式化
mkfs.ext4 /dev/sda7 mkfs.ext4 /dev/sda8 mkfs.ext4 /dev/sda9挂载 /boot 和 /home
# mount /dev/sda8 /mnt # mkdir /mnt/{boot, home} # mount /dev/sda7 /mnt/boot # mount /dev/sda9 /mnt/home 安装为了加快软件下载速度,我们先改一下源列表,编辑 /etc/pacman.d/mirrorlist。
搜索China,把中国的镜像站点都保留下来,其余的都删掉。
然后,把163的镜像站点放在第一位。
安装基本系统和网络工具
pacmstrap /mnt base base-devel net-tools生成文件分区表
genfstab -U -p /mnt >> /mnt/etc/fstab用 arch-chroot /mnt 改变根目录,到我们真正安装的系统下去操作:
编辑locale.gen,把en_US.UTF-8, zh_CN.UTF-8, zh_CN.GBK, zh_CN.GB2312, zh_CN.GB18030前的#去掉,然后运行locale-gen生成这些字符集的locale。
设置时区, ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置主机名, echo your_host_name >> /etc/hostname
生成ramdisk, mkinitcpio -p linux
用户,先用passwd更改root的密码,然后useradd -m -g users -G wheel -s /bin/bash your_user_name添加用户,并passwd your_user_name设置密码。
然后exit退出chroot,重启吧。再进winXP,改一下c:\menu.lst,添加ArchLinux的启动入口
title GNU/Linux ArchLinux root (hd0,6) kernel /boot/vmlinuz-linux root=/dev/sda8 ro vga=791 init=/usr/lib/systemd/systemd initrd /boot/initramfs-linux.img boot重启后,发现ArchLinux没有自动联网,我手动运行了一下 dhcpd,网络就通了。
图形界面你可以 lspci -v看一下,发现所有的设备都已经被驱动起来。这就是ArchLinux爽的地方。
为xserver安装显示驱动: # pacman -S xf86-video-ati xf86-video-intel。
Ati驱动独立显卡,intel驱动GPU。
检查有没有 startx 程序,如果没有,就安装 xorg-xinit。
接下来,就是我常用的软件了,我最爱的编辑器Emacs和最喜欢的窗口管理器Awesome。
对了,还有fcitx输入法。因为我用双拼,所以不觉得Linux下的输入法有多逊。