Archlinux 安装记录(一)

好像好久不写blog blahblah 之类的东西了,但愿这次会坚持的久一点。

lz最近想找一台slave 机来玩(本机Ubuntu 14.04),想装一个other linux 发行版,脑抽的问了stonekyx,他在使archlinux,用户体验是最好的linux 发行版,然后我的好奇心就上来了,然后就果断去踩坑去了YMD。

Step 1:  到官网下载iso, dual 版本的会包含cpu32/64 两个版本的iso, 在setup 的时候选择一下就好。

Step 2: 制作启动盘,在linux 下就比较容易了。lz 用usb stick 来简单搞。

格式化前要备份u 盘文件, 查看一下u 盘的/dev/sdx 名字, 否则不小心把自己的磁盘搞坏了就不好了,格式化后就把iso burn into usb stick 就好啦。

# sudo fdisk -l
# sudo umount /dev/sdx
# sudo mkfs.ext4 /dev/sdx
# sudo dd if=/path/to/archlinux.iso  of=/path/to/usb.stick bs=4M


注:1、 bs 参数是一次写入字节数,应该限于硬件的读写速度。

Step 3: setup archlinux。

建议先去瞄一眼官方安装教程, lz 使用的是bios+gpt+grub 结构, 其他问题自行在wiki 或者bbs 上找答案吧。接下来lz 讲述一下setup 的慢慢长路。
setup 的过程可以简单描述为简单手动模拟linux 内核加载过程, setup 完成后会对linux 有新的理解。
Partition the disks & Format partitions
因为lz 需要的是standalone 的archlinux, 所以没有alongside windows 的顾虑, 直接乱搞/dev/sda。

# mkfs.ext4 /dev/sda
# gfdisk /dev/sda
# parted /dev/sda set 1 bios_grub on
# mkswap /dev/sdax
# swapon /dev/sdax
# mount /dev/sdax /mnt/path/to/mount
格式化sda 后就可以分区了, gpt 和 mbr 的分区格式区别见相关wiki, 使用gfdisk 分区的时候地一个分区会默认有1007B 的Free Space, 因为gpt 的分区格式需要1M 的空间(必须是磁盘的first partition, 且命名之)来设置为 bios boot type, 否则在最后把grub 装到磁盘的时候会报错。 然后分别把分区挂到/mnt 下。

接下来设置internet access。 正常的话插网线后设置一下ip 之类的是可以自动上网的,但是lz 偏偏不是正常的。 archlinux 改变了eth0 这样的cable interface 命名规则,比如lz 的是enp2s0, `ip link` 发现只有lo。。。 原因是lz 的Ethernet controller 是 Broadcom BCM57780,解决方案详见相关wiki。
# lspci
# modprobe -r tg3
# modprobe broadcom
# modprobe tg3
# ip link
后发现enp2s0, 然后配置ip blahblah, 因为archlinux 有内置的netctl 所以就用吧, 还是比较方便的。


# cp /etc/netctl/examples/ethernet-static /etc/netctl/my-ethernet-static
# nano /etc/netctl/my-ethernet-static
# ip link set enp2s0 down
# netctl start my-ethernet-static


修改mirrorlist。 lz 享用ZJU mirrors, 好开心, 修改后更新之, 并install base system。

# nano /etc/pacman.d/mirrorlist
## ADD ‘Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch’ TO THE BEGINNING OF IT. ##
# pacman -Syy
# pactrap /mnt base base-devel


生成fstab(分区表)。 然后进入系统。

# genfstab /mnt > /mnt/etc/fstab
# arch-choot /mnt /bin/bash

Step 4: 配置archlinux 系统。
初始化内存后配置一些基本信息(Optional)。

# mkinitcpio -p linux
# nano /etc/locale.gen
# locale-gen
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# echo "$myhostname" > /etc/hostname
# passwd

安装并配置bootloader(grub)。 这部分lz 参考了这里。

# pacman -S grub
# nano /etc/default/grub
## Add GRUB_DISABLE_SUBMENU=y at the end of it ##
# grub-mkconfig -o /boot/grub/grub.cfg
# grub-install --recheck /dev/sda
# exit
# umount -R /mnt
# reboot
## GOOD LUCK TO YOU ##

如果拔掉usb stick 能进入到archlinux 的系统, 那么就接下来要装图形化桌面blah blah 的了。
TO BE CONTINUED...


Zacky 原创,转载请注明出处。



你可能感兴趣的:(linux)