最近在虚拟机里练习安装了几次Archlinux,现在也算是有点心得了。通过一步一步配置Archlinux,我现在也算是对linux的系统结构有稍稍增加了一些了解。现在就来记录一下我的安装过程。详细的方法和步骤可以参考archwiki。另外Arch Wiki有中文版的,虽然更新比较慢,但是对于英语不好的同学还是很有参考价值的。
1.安装准备
设置虚拟机
我的用的是vmware workstation虚拟机。首先先新建一个虚拟机,选项无所谓,因为vmware没有针对Archlinux的快捷设置。内存分个1G就够用了,硬盘分个20G(轻度使用的话8G足矣),网络类型选择nat(选择其他网络选项可能出现连接不到网络的情况)。注意如果你用优化软件优化过启动项,可能会把vmware nat服务给优化掉,这样进入虚拟机里面是没有网的,需要开启nat服务才行。然后剩下的都默认就行了。然后选择好下载好的Archlinux的镜像。
选择系统类型
进去以后会出现Archlinux的live iso的启动菜单,上面还有Archlinux的logo,着实不错。如果要安装64位的arch,就选择第一项x86_64;如果想安装32位的arch,就选择第二项那个86的选项。然后等待片刻,进入arch live iso的终端命令行。默认为root用户,拥有所有权限,可以使用任何命令。
测试网络状态
第一步先试试
ping -c 4 www.baidu.com
如果有网的话就可以进行下一步,Archlinux没有网的话是不能装的。因为它和其他的linux发行版不太一样。它的live镜像真的只是一个给你在线安装arch的环境而已。所有的arch的软件包都需要联网下载安装。没网或者网速超慢的话还是先别安装了。如果ping的结果是找不到该主机,可能是由于dhcp服务没有开启,使用
systemctl enable dhcpcd.service
开启该服务。
测试系统时间
然后是确定一下系统时间是否正确。
timedatectl status
查看一下系统时间状态,如果时间不对的话可以输入
timedatectl set-ntp true
开启ntp服务,它会每隔11分钟进行一次网络对时。然后在查看一下系统时间状态。
测试存储设备
然后使用
lsblk
命令查看一下存储设备状态。在sda节点下(准确的说是sdx,有几个设备就有几个sdx)看看有没有sda1这样的,每一个带数字的都是该物理硬盘分出来的区。依据我们刚才的设置,这里应该只有sda一个20G的硬盘。
分区
下一步就是分区。我们使用cfdisk将sda分成一个mbr类型的分区。其他分区方式可以参考archwiki。输入
cfdisk
进入交互界面。该工具使用非常简便,先new出分区,容量全分了,然后改成bootable(也就是把那个星号打上);再把分区信息write进去,最后quit即可。然后再使用
lsblk
命令查看,会发现现在sda节点下已经多出了一个sda1,也就是我们刚刚分出来的分区。
格式化文件系统
分完区还没有结束,我们还要格式化这个分区。输入
mkfs.ext4 /dev/sda1
命令即可。虽然我们也可以将其分为其他格式的,但是archwiki强烈建议我们分成ext4格式的分区。
挂载目录
格式化完成,然后就是挂载目录。如果分了好几个区,可能都需要挂载到对应的目录。但是因为我们现在之分了一个区,所以只需要
mount /dev/sda1 /mnt
即可。挂载完成之后,就可以进行下面的安装步骤了。
2.安装系统和简单配置
修改软件镜像源
首先需要修改一下软件镜像源。镜像源列表在/etc/pacman.d/mirrorlist
文件中。
首先我们找到所有中国的镜像源。
grep -A 1 'China' mirrorlist|grep -v '\-\-' >mr
然后将它添加到mirrorlist最前面,或者说把mirrorlist添加到它后面。
cat mirrorlist>>mr
最后,将mr重命名为mirrorlist。
mv mr mirrorlist
修改之后的文件应该类似这样。
## China
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
Server = http://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch
安装基本系统
然后开始安装基本系统,
pacstrap -i /mnt base base-devel
稍等片刻即可,如果网速慢的话……还是安装别的吧。
生成fstab
安装完后要生成fstab,
genfstab -U /mnt >> /mnt/etc/fstab
生成完成之后必须查看一下fstab是否生成成功。
nano /mnt/etc/fstab
如果不成功需要重新生成一下。生成成功之后就可以继续了。
进入到新系统
下面切换到新系统开始配置一些重要的设置
arch-chroot /mnt /bin/bash
然后你会发现命令提示符也已经变化了。
配置区域
首先找到locale.gen文件,
nano /etc/locale.gen
打开locale文件,将en_US.UTF-8
,zh_CN.UTF-8
和zh_TW.UTF-8
这三行前面的#号删除即可。然后按Ctrl+X保存退出即可。然后使用
locale-gen```
生成区域。
然后需要设置locale.conf文件。如果你不打算安装桌面,只打算使用命令行来使用的话。执行以下命令,
``` shell
echo LANG=en_US.UTF-8 > /etc/locale.conf
如果你打算安装桌面等图形界面,并使用中文的话,则这样,
echo LANG=zh_CN.UTF-8 > /etc/locale.conf
如果在终端界面下使用中文区域的话,终端会出现乱码情况。因为终端默认的点阵显示不支持汉字。如果想要在终端界面正常显示中文的话,可以安装fbterm。
配置时区
下面是配置时区。所有时区都在
/usr/share/zoneinfo
中。使用以下命令即可查看时区。
ls /usr/share/zoneinfo/
使用以下命令配置时区。
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置主机名
设置一个主机名,我这里设置主机名为archlinux
echo archlinux >/etc/hostname
并且把主机名添加到/etc/hosts
文件中
#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 localhost.localdomain localhost archlinux
::1 localhost.localdomain localhost archlinux```
### 设置root密码
使用以下命令设置root密码。
passwd```
安装引导工具grub
安装grub
pacman -S grub
安装完成后用
grub-install --recheck /dev/sda
(这里不需要sda1这样后加数字的)写入到系统中。如果提示没有错误报告说明grub安装成功。
然后再生成一个默认的配置文件。
grub-mkconfig -o /boot/grub/grub.cfg
配置网络
然后需要配置一下网络,基本上使用该命令就可以了。
systemctl enable dhcpcd.service
进入新系统
然后退出新安装好的系统,
exit
卸载已挂载的分区,
umount -R /mnt
重启虚拟机,
reboot
稍等片刻便会进入到新系统中。这样archlinux就基本安装完成了。
3.安装桌面环境
安装xorg
所有的桌面环境都基于x11标准。x11是现在linux图形界面的标准,xorg是它的开源实现。因此我们先安装xorg等软件,输入
pacman -S xorg
pacman -S xterm
pacman -S xorg-xinit
进行安装。
安装显示管理器sddm
显示管理器也就是Linux启动之后的启动界面。世界上有很多个显示管理器,这里使用sddm,一个不错的显示管理器。要安装它,输入以下命令进行安装。
pacman -S sddm
安装完成后开机启动显示管理器
systemctl enable sddm.service
安装xfce4桌面
xfce4是一个小巧但功能完备的桌面环境,比较适合配置较差的电脑。要安装xfce4,
pacman -S xfce4
这样会安装xfce4桌面,如果还需要一些基础的工具的话,还可以安装xfce4-goodies,也就是xfce4自带的一些工具,
pacman -S xfce4-goodies
如果你在前面已经设置了中文区域,那么在安装完下xfce4桌面之后,会发现已经是中文环境了(因为它自带中文语言包)。需要注意的是,使用中文区域的情况下,务必安装一两种中文字体,否则所有程序都会显示成方块。可以用一下命令安装两种不错的字体文泉驿正黑和微米黑,
pacman -S wqy-zenhei wqy-microhei
如果想要安装更多字体的话,可以使用pacman来搜索所有字体,然后决定安装哪一种,
pacman -Ss fonts
安装plasma桌面
plasma桌面是一个华丽好看的桌面。首先安装plasma包
pacman -S plasma
如果要使用完整的kde应用程序的话,还需要安装kde-applications包
pacman -S kde-applications
再安装中文语言文件包
pacman -S kde-l10n-zh_cn
配置显示管理器sddm
安装完桌面之后,就可以配置显示管理器了。首先需要生成一个配置文件,
sddm --example-config >/etc/sddm.conf
自动登录
配置/etc/sddm.conf
文件以实现自动登录到plasma桌面(如果使用其他桌面的话对应修改)。
[Autologin]
User=john
Session=plasma.desktop
这会以john用户自动登录到系统。
注意:自动登录有风险,可能会让不合法的人登录到你的系统
使用tty7开启图形会话
编辑/etc/sddm.conf文件
[XDisplay]
MinimumVT=7
开机时自动打开数字锁定键
[General]
Numlock=on
4.美化系统
添加软件源
首先打开/etc/pacman.conf
文件,在其中添加上
[archlinuxcn]
#The Chinese Arch Linux communities packages.
SigLevel = Optional TrustedOnly
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
并安装archlinuxcn-keyring
软件包
sudo pacman -S archlinuxcn-keyring
最后刷新一下pacman缓存,然后应该就可以安装一些额外的软件比如chrome浏览器了。
sudo pacman -Syu
sudo pacman -S google-chrome-dev
安装vmware-tools
原来需要手动下载vmware-tools并安装。现在有了开源的vmtools软件包,安装起来非常方便,
pacman -S open-vm-tools
安装完成之后重启虚拟机,就可以实现自动适应窗口等功能了。
让tty支持中文
安装fbterm,并将当前用户添加到video用户组中
sudo pacman -S fbterm
sudo gpasswd -a YOUR_USERNAME video
配置zsh
zsh是一个强大的shell,有终极shell之称,因此取了z这个二十六字母中的最后一个作为名字。首先需要先安装zsh
sudo pacman -S zsh
然后设置zsh为默认shell,
chsh -s $(which zsh)
安装完之后安装oh-my-zsh,可以通过curl或者wget安装
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
安装成功后你的zsh就应该改变了,如果没有改变,可能需要退出并重新登录才能看到改变。zsh可以配置多个插件、主题,配置文件在用户目录的.zshrc文件中,比如我的插件就启用了这些插件,不过不要启用太多,否则会影响zsh的启动速度。
plugins=(git archlinux history mvn python git-extras textmate lighthouse autojump)
如果还需要其他美化,可以参考我这篇文章,配置和美化Arch Linux。