每次重新安装ArchLinux, 我都需要看一遍wiki, 在这里记我安装archlinux的整个过程,方便以后快速获取有用的信息.
-
在GNU linux中可以使用dd命令:
$ dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress && sync
在windows中可以使用Rufus
-
此处已安装了windows, 并且已分好区, 选择一个合适的分区安装archlinux, eg: /dev/sda2. 有需要的可以使用fdisk或者parted修改分区表
$ mkfs.ext4 /dev/sda2 // 格式化分区 $ mount /dev/sda2 /mnt $ vim /etc/pacman.d/mirrorlist // 修改镜像源 $ pacstrap /mnt // 安装基础pkgs $ genfstab -U /mnt >> /mnt/etc/fstab $ arch-chroot /mnt $ ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime $ hwclock --systohc --utc // 设置时间标准 $ vim /etc/locale.gen // 指定本地化类型 en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8 zh_TW.UTF-8 UTF-8 $ locale-gen // 生成locale信息 $ echo LANG=en_US.UTF-8 > /etc/locale.conf $ echo myhostname > /etc/hostname // 设置主机名 $ vim /etc/hosts 127.0.1.1 myhostname.localdomain myhostname $ passwd // 重置root密码
-
下面是我用到的grub引导双系统启动的例子:
$ pacman -S grub $ grub-install --target=i386-pc /dev/sda $ grub-mkconfig -o /boot/grub/grub.cfg
开机启动引导已安装的Windows系统
$ mount /dev/sda1 /mnt
/dev/sda1 该分区安装了Windows系统
$ grub-probe --target=fs_uuid /mnt/bootmgr F258C55958C51D6B $ grub-probe --target=hints_string /mnt/bootmgr --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1
这里生成的F258C55958C51D6B和–hint-bios=hd0,msdos1 –hint-efi=hd0,msdos1 –hint-baremetal=ahci0,msdos1在下面需要用到
在/boot/grub/grub.cfg中添加下面几行
if [ "${grub_platform}" == "pc" ]; then
menuentry "Microsoft Windows Vista/7/8/8.1 BIOS-MBR" {
insmod part_msdos
insmod ntfs
insmod search_fs_uuid
insmod ntldr
search --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 F258C55958C51D6B
ntldr /bootmgr
}
fi
如果是Windows XP最后一行为ntldr /ntldr