Archlinux - 安装教程Step 1 将镜像写入u盘u盘从来不是唯一的选择,但多数人可能喜欢这么做。
我是在OS X(Yosemite)上进行操作,如果你用的是windows,也许可以使用Image Writer for Windows或者UltraISO。
所以,先不提net booting,你可能需要一个iso...https://www.archlinux.org/download/ 会有适合你的下载方式。
你可能想用ddDisk Duplicator(destroyer)将iso写到u盘里。在这之前,如果你希望把,iso变成.img,你可以打开终端,执行以下命令:
hdiutil convert -format UDRW -o /path/to/target.img /path/to/arch.iso
OS X会自动给你加上.dmg,相信这不会给你造成麻烦。执行diskutil list,找到你的u盘,并unmount:
diskutil unmountDisk /dev/diskN
好了,我们可以dd 了
sudo dd if=/path/to/arch.img of=/dev/diskN bs=1m
如果dd提示/dev/diskN很忙,你需要确认这个设备已经unmount,注意不是eject。
如果一切顺利,现在可以将u盘eject了。
diskutil eject /dev/diskN
Step 2 安装之前...好的,但愿你已经看到这个界面了。
但安装之前,我们需要做一些准备工作。
1.建立分区和格式化我们可以使用cfdisk或fdisk对硬盘进行分区。如果你觉得fdisk无从下手,cfdisk可能是更好的选择。
首先我们可以执行fdisk -l看看都有哪些设备。执行fdisk /dev/sda,出现 Command (m or help)
输入p查看当前的分区输入n可以新建分区,随后会有提示选择分区类型,默认为主分区。输入w进行写入格式化可以使用mkfs.*命令,比如:
mkfs.ext4 /dev/sda1
接着mount一下,比如:
mount /dev/sda /mnt
2.选择mirror有些人会跳过这一步,建议认真选择,一点点改动可能会为你节省不少时间。其实只是修改一下/etc/pacman.d/mirrorlist,像我本人的例子就是除了China以外的全部去掉或者注视,好在这一步可以使用vim,让步骤简单了很多。
Step 3 安装与配置首先安装基本package
pacstrap /mnt base
如果需要用到wifi,wifi-menu可能会帮到你
生成fstab,系统会根据fstab中的信息配置挂载
genfstab -U -p /mnt >> /mnt/etc/fstab
进入新系统
arch-chroot /mnt
接着我们需要进行一些配置
修改/etc/locale.gen,将使用的区域的注释去掉,保存文件并执行locale-gen设置时间
ln -sf /usr/share/zoneinfo/zone/subzone /etc/localtime
将区域写到locale.conf中
echo LANG=your_locale > /etc/locale.conf
设置名称和密码
echo computer_name > /etc/hostnamepasswd
有些东西可以reboot后慢慢来,而有些东西需要你提前准备一下,比如boot loader和一些依赖项.
我们可以用pacman安装GRUB
pacman -S grubgrub-install --recheck /dev/sdagrub-mkconfig -o /boot/grub/grub.cfg
很多人出现过重启后无法使用wifi-menu,提示please install dialog to use wifi-menu。如果你打算重启后解决这个问题估计很麻烦,你需要用pacman来替你安装dialog,但你却无法使用wifi,而提前执行以下命令会让事情简单很多:
pacman -S dialog wpa_actiond ifplugd wpa_suppicant sudo zsh net-tools
好了,退出,重启!
exitumount /mntreboot
最后重启后用pacman安装一些工具却发现无法联网,于是执行wifi-menu选择连接后提示:
Job for netctl@****.service failed. See 'systemctl status netctl@****.service' and 'journalctl -xn' for details.
似乎很多人也遇到了这个问题,像我的情况是直接删除/etc/netctl/****并重新执行wifi-menu。还有一种情况是通过以下命令解决:
echo 'TimeoutDHCP=20' >> /etc/netctl/