什么是Archlinux
Arch Linux是朝向轻量(lightweight)以及简单(simple)的Linux发行版[3]
。其中“简单”(Simplicity)被定义为“避免不必要或复杂的修改”,也就是说,是由开发者角度定义,而非用户角度思考[4]。
Archlinux是针对特定处理器而优化过的,能够更好地利用CPU周期以提高性能。相比Debian/Ubuntu、SUSE、RedHat/Fedora等其他发行版,Archlinux属于轻量级选手,其简单的设计让它容易被轻松扩展和配置成为任何想要的系统类型。
特有的包管理系统
通过二进制包管理系统pacman,仅需一个命令就能完成安装、升级等多个操作。同时也附带一个类似ports的包构建系统ABS(Arch Build System)。
滚动更新
与Gentoo类似,不同于其他大部分主流Linux发行版比如Fedora和Ubuntu。ArchLinux并没有跨版本升级的概念,通过更新,任何时期的ArchLinux都可以滚动更新到最新版。
ArchLinux哲学
轻便灵活,符合KISS原则。采用BSD风格的启动脚本,集中管理,易懂易改。
精简的打包方式,删去部分说明,但保留了man page,从而使包装后的二进制包比一般的Linux小(例如:安装基础包和X视窗,仅需约100MB)。
软件初次安装后,仅为默认配置。可能需要包手册,才能了解后续配置。
ArchLinux是Linux
如果给机器装过其他发行版例如Ubuntu/Debian/CentOS等,可以发现他们的包管理apt-get/yum包里的软件十分老,而且常常伴随依赖问题。即使Ubuntu/Debian上有aptitude这种更为优秀的包管理也经常难以解决很多问题。其他的发行版上对于软件包管理进行了过度的封装,而ArchLinux的pkgfile编写简易且易读,依赖关系一目了然,所有安装依赖/编译的过程都很可控。
安装ArchLinux
https://wiki.archlinux.org/index.php/installation_guide
LiveCD
可以选用刻录光盘或者制作u盘启动盘的办法。(ArchLinux u盘启动盘可以参照任何一个制作ubuntu启动盘的办法)
下载链接
进入LiveCD
选择安装64位系统。之后会进入命令行界面,这就是ArchLinux的预系统。
分区
cfdisk
如果我们会看到例如/dev/sda1的Device,这是Linux给你的硬盘的映射,如果有多块硬盘你会看到/dev/sda, /dev/sdb等等.
如果你想把多块硬盘当做一块分区可以使用LVM进行分区。此处我们为了简单使用最常规的分区办法:/, /home, /swap, /boot
我们的/dev/sda1上有1TB(实际为931.5G)的空间,我们准备把100GB的空间分给/,把800G的空间分给/home, 10G的空间分给/boot, 21.5G的空间给swap。
回车进入/dev/sda1(或是你想要的硬盘)进行操作。分区完毕后选择"Write"保存分区信息并退出到命令行。
再进行格式化分区,把刚才你分的区进行格式化。例如
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/sda3
mkswap /dev/sda4
swapon /dev/sda4
其中 /dev/sda1为将要挂载到/上的分区, /dev/sda2为将要挂载到/home上的分区,/dev/sda3为将要挂载到/boot,/dev/sda4为swap(虚拟内存)
接下来就要将硬盘分区挂载到挂载点上
挂载分区
mount /dev/sda1 /mnt
mkdir /mnt/home
mount /dev/sda2 /mnt/home
mkdir /mnt/boot
mount /dev/sda3 /mnt/boot
配置网络
如果你的机器连着教育网的话会自动分配ipv6地址(fudanwireless和插线直连实验室网口或者宿舍网口)
如果要确认请执行
ifconfig
如果发现有
inet6 2001:da8:8001:3303:fc29:169b:e4a2:25b0
字样则说明你可以直接使用ipv6
配置DNS
echo 'nameserver 2001:470:20::2' > /etc/resolv.conf
配置包管理源
cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist_backup
echo 'Server = http://mirrors6.ustc.cn/archlinux/$repo/os/$arch' > /etc/pacman.d/mirrorlist
安装Linux内核和基础软件
pacstrap /mnt base
保存挂载信息
genfstab -U -p /mnt >> /mnt/etc/fstab
注意如果/mnt/etc/fstab已经存在则先删除/mnt/etc/fstab再进行上述操作
进入安装好的ArchLinux
arch-chroot /mnt /bin/bash
设置root密码
passwd
配置网络
https://wiki.archlinux.org/index.php/netctl
以张江宿舍为例,张江的宿舍有ipv6DHCP但没有ipv4DHCP,所以我们需要单独设置ipv4地址。参见我的配置
Description=""
Interface=enp2s0 #此处根据你的网卡确定
Connection=ethernet
IP=static
Address=('10.147.102.44/24')
Gateway='10.147.102.1'
IP6=dhcp
DHCP6Client=dhcpcd
IP6=stateless
顺便把DNS地址也复制过来
echo 'nameserver 2001:470:20::2' > /etc/resolv.conf
安装开机引导程序GRUB
pacman -S grub os-prober
grub-install --target=i386-pc --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
重启
reboot
注意如果没有集成显卡,请注意安装独立显卡的官方驱动,否则可能导致重启后显示器突然没有反应,卡在启动界面。