Archlinux

此文章记录我安装arch的过程,安装环境为uefi+gpt,桌面使用gnome3,输入法使用了gnome默认的ibus

下面开始安装过程


准备工作

下载镜像及刻U盘

我的镜像来自163源mirrors.163.com/archlinux/iso/,进去选最近的日期文件夹,下载里面的iso文件即可

刻盘我使用的arch官方推荐的rufusrufus.akeo.ie,如果你用的是linux系统的话,有些系统自带刻盘工具,没有的话用dd指令即可。

改bios

进bios把第一启动项改为U盘启动

提前分区

分区其实可以在安装时进行,不过命令行里分区实在蛋疼,所以我提前在windows里分好了,进去后格式化即可

linux分区方案很多,对于新手的话,只需要一个/分区和一个swap分区即可。
不过这里我是在uefi+gpt的环境下安装,所以还需要一个boot分区

分区在windows下用可以用diskgenius进行可视化操作,只需要压缩windows下不用的分区,创建额外的分区即可,注意不要分配盘符

分区的大小可可以依照自己的需求,建议swap分区为内存的1-1.5倍,/分区大小是你将来整个系统的大小,建议15G以上,我这里分了55G,因为是要作为主系统使用,只是玩玩的话可以分少一点

如果你有windows系统,那么你已经有了boot分区,以后挂载即可

开始安装

插上U盘,重启,电脑会自动进去U盘安装程序,然后选择第一个选项开始安装64位的系统

连接网络

无线网卡

有无线网卡的使用wifi-menu指令进入wifi配置界面连接到wifi即可,网卡驱动不受支持的,请先使用手机开usb网络共享,然后参照下一条。。。。。。

有路由的网络

没网卡但是有路由器的,确认网线经过路由器的中转,输入dhcpcd即可。不过不知为何,我这里需要连续输入两次才能正确连接到网络

静态IP及拨号网络

我表示不会。。。。。。。
请参照archwiki

确认网络连接

使用ping命令确认网络连接成功

1
ping www.baidu.com

ctrl+c停止ping

同步系统时间

输入一下指令同步时间

1
timedatectl set-ntp true

分区

这里我们之前已经分好了,只要格式化一下就行,没有分区的请自行在archwiki查找分区方法

创建文件系统

输入lsblk查找你刚才分好的分区的位置,分区编号格式为/dev/sdxy,例如/dev/sda6,后面就

对于boot分区(如果你是双系统,请忽略这一步)

1
mkfs.vfat-F32 /dev/sdxy

对于/分区

1
mkfs.ext4 /dev/sdxy

对于swap分区

1
2
mkswap /dev/sdxy
swapon /dev/sdxy

挂载/分区

先挂载分区

1
mount /dev/sdxy /mnt

然后是boot分区

1
2
mkdir -p /mnt/boot
mount /dev/sdxy /mnt/boot

正式安装

配置安装镜像源

arch国外镜像连接较慢,我们需要自行配置安装镜像

编辑/etc/pacman.d/mirrorlist文件

1
nano /etc/pacman.d/mirrorlist

中国推荐中科大源和网易源

/etc/pacman.d/mirrorlist前面加入以下内容

1
2
Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.163.com/archlinux/$repo/os/$arch

安装基本软件包

1
2
pacman -Syy
pacstrap -i /mnt base base-devel

配置系统

你已经安装好了系统,下面需要进行基本配置

生成fstab

1
genfstab -U -p /mnt > /mnt/etc/fstab

chroot

chroot进新系统

1
arch-chroot /mnt /bin/bash

Locale

本地化的程序与库若要本地化文本,都依赖 Locale, 后者明确规定地域、货币、时区日期的格式、字符排列方式和其他本地化标准等等。在下面两个文件设置:locale.gen 与 locale.conf.
/etc/locale.gen是一个仅包含注释文档的文本文件。指定您需要的本地化类型,只需移除对应行前面的注释符号(#)即可,建议选择帶UTF-8的項:

1
2
3
4
5
nano /etc/locale.gen

en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8

接着执行locale-gen以生成locale讯息:

1
locale-gen

设置时间

1
2
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc --utc

创建初始 ramdisk 环境

在您用 pacstrap 安装 linux 时就会自动运行 mkinitcpio,大部分用户都可以使用 mkinitcpio.conf 默认设置,如果有定制需求,请阅读re-generate the initramfs image。然后运行:

1
mkinitcpio -p linux

设置 Root 密码

用 passwd 设置一个 root 密码:

1
passwd

安装bootloader

uefi模式下bootctl安装方法

输入

1
bootctl install

bootctl 会创建 /boot/loader/entries/arch.conf 并添加以下内容(没有的话请自行添加内容),别忘了把/dev/sdxy 改为您的实际/分区,例如/dev/sda1:

1
nano /boot/loader/entries/arch.conf

写入

1
2
3
4
title          Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/sdxy rw

然后创建 /boot/loader/loader.conf,并写入下面配置:

1
nano /boot/loader/loader.conf

写入timeout数值为开机选择系统的时间,我这里设置了30s

1
2
default  arch
timeout 30

完成后输入

1
bootctl update

grub引导

1
2
3
4
5
pacman -S grub os-prober efibootmgr ntfs-3g
#BIOS+MBR
grub-install --recheck /dev/sdX
#UEFI+GPT
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --recheck

然后执行

1
grub-mkconfig -o /boot/grub/grub.cfg

chroot下执行上述命令并不会添加windows引导,你需要在下次重启到arch后再次执行上述命令。

主机名

设置个您喜欢的主机名,这里以myhostname代替:

1
echo myhostname > /etc/hostname

并在/etc/hosts 添加同样的主机名:

1
2
3
#<ip-address>	<hostname.domain.org>	<hostname>
127.0.0.1 localhost.localdomain localhost myhostname
::1 localhost.localdomain localhost myhostname

网络连接

dhcp网络

1
systemctl enable dhcpcd

无线网络

1
pacman -S iw wpa_supplicant dialog

重启进新系统

你已经完成了基本系统的安装,输入exit退出chroot并输入reboot重启进系统(开机前拔掉U盘)双系统直接进windows的话,请在windows下使用easyuefi禁用windows boot manager

需要驱动及拨号连接请自行查找资料

图形界面安装

下面开始安装图形界面

Xorg

首先是装Xorg

1
pacman -S xorg-server xorg-xinit

触摸板驱动

1
pacman -S  xf86-input-synaptics

显卡驱动

下面安装显卡驱动
intel

1
pacman -S xf86-video-intel

英伟达

1
pacman -S xf86-video-nv

ATi

1
pacman -S xf86-video-ati

我这里是双显卡,我只安装了intel的驱动

这个时候startx是不能进入x界面的,不过不用担心,请继续看后续教程。

gnome桌面

gnome桌面只要安装gnome包即可,还有一个gnome-extra包可以提供额外的常用软件和几个游戏,你可以安装时选择你要的软件,没有必要全选,当然也可以不装这个包,我这里只选了gnome-tweak-tool这个工具

1
pacman -S gnome gnome-extra

然后安装gdm登录管理器

1
pacman -S gnome gdm

将gdm设置为开机自启动,这样开机时会自动载入桌面

1
systemctl enable gdm

kde5桌面

安装plasma5

1
2
3
4
5
6
基础包
pacman -S plasma
完整包
pacman -S plasma-meta
最简安装(仅有桌面软件)
pacman -S plasma-desktop

然后是登录管理器SDDM

1
pacman -S sddm

将SDDM设置为开机自启动

1
systemctl enable sddm

安装中文包

1
pacman -S  kde-l10n-zh_cn

startx 启动图形界面

如果你不想开机自动进入桌面,可以使用startx启动桌面,如果要使用startx,就不用安装登录管理器。

1
pacman -S xorg-xinit

对你的startx配置文件进行设置

1
nano /etc/X11/xinit/xinitrc

文件最后有这样一段,删掉或者注释掉这些内容

1
2
3
4
5
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

如果你使用的是gnome桌面,在最后添加

1
exec gnome-session

如果是kde5,则添加

1
exec startkde

然后保存文件,这时候,你已经可以使用startx来进入桌面了。
如果想要每个用户进入不同的桌面,你可以以用户身份登录,为用户复制一份单独的配置文件

1
cp /etc/X11/xinit/xinitrc ~/.xinitrc

然后编辑~/.xinitrc即可

创建新用户

1
useradd -m -G wheel -s /bin/bash 用户名

用户密码

1
passwd 用户名

安装sudo

为安全期间,我们可以用sudo来使用root权限

1
pacman -S sudo

将用户加入sudo组
/etc/sudoers加入这个:

1
用户名   ALL=(ALL) ALL

也可以去掉#%wheel ALL=(ALL) ALL这一行前面的#

中文字体

你需要中文字体才能使用gnome-terminal

1
pacman -S wqy-microhei

现在你已经可以使用你的系统了,输入reboot重启后系统即可自动进入gdm界面,然后进入桌面

网络管理

安装 NetworkManager 并设置自启。

1
2
3
pacman -S networkmanager
systemctl enable NetworkManager
systemctl start NetworkManager

后续优化

yaourt

Yaourt是archlinux方便使用的关键部件之一,但没有被整合到系统安装中的工具。建议在装完系统重启之后,更新完pacman和基本系统之后,就安装这个工具。
最简单安装Yaourt的方式是添加Yaourt源至您的/etc/pacman.conf,在文件最后加入:

1
2
3
4
[archlinuxcn]
#The Chinese Arch Linux communities packages.
SigLevel = Optional TrustAll
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch

然后

1
pacman -Syu yaourt

中文输入法

这里安装ibus作为中文输入法

1
2
sudo pacman -S ibus
sudo pacman -S ibus-pinyin

~/.xprofile里面加入

1
2
3
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

然后在设置里启用输入法

你也可以安装fcitx:

1
sudo pacman -S fcitx-im fcitx-configtool

同样的,在~/.xprofile写入

1
2
3
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=“@im=fcitx”

然后执行

1
2
3
gsettings set \
org.gnome.settings-daemon.plugins.xsettings overrides \
"{'Gtk/IMModule':<'fcitx'>}"

安装搜狗输入法

1
yaourt -S fcitx-sogoupinyin

然后进入fcitx设置进行配置即可

chrome

前面已经安装了yaourt,这里只要

1
yaourt -S google-chrome

解压软件

需要图形化的解压软件可以这样:

1
sudo pacman -S p7zip file-roller unrar

文件系统支持

要支持制作fat文件系统,安装dosfstools,默认内核只能读取ntfs,要支持ntfs读写,安装ntfs-3g。

1
sudo pacman -S ntfs-3g dosfstools

无线AP

需要安装create-ap才能使用gnome3设置里的创建热点选项

1
sudo pacman -S create_ap

美化

此处仅为gnome美化
这里先展示一下美化后的样子
桌面

gnome-tweak-tool

如果你安装了gnome-extra,那么这个工具已经被安装了,否则的话

1
sudo pacman -S gnome-tweak-tool

图标包

这里我使用的numix-circle图标包,这个图标包在aur里,直接用yaourt即可

1
yaourt -S numix-circle-icon-theme-git

然后在gnome-tweak-tool里启用主题

gtk主题

gtk主题我选择了arc主题

1
yaourt -S gtk-theme-arc-git

然后在gnome-tweak-tool里启用

gnome-shell主题

首先在gnome-tweak-tool里的拓展里启用User themes

然后安装主题,这里我是用的贴吧的@Air_Wawei的Air主题,并自己做了些修改。

首先下载主题 然后解压,将Air文件夹放到/usr/share/themes/文件夹里,在gnome-tweak-tool里启用主题

gdm背景

输入以下指令

1
2
3
curl -L -O http://archibold.io/sh/archibold
chmod +x archibold
./archibold login-backgroung 你的背景的地址

重启后gdm就会变成你要的背景

gnome-shell拓展

shell拓展请进入https://extensions.gnome.org/自行按照说明安装

screenfetch

screenfetch可以在终端里输出你的系统logo和状态。
screenfetch
可以用pacman安装:

1
pacman -S screenfetch

要让screenfetch在打开终端是自动输出,在~/.bashrc里加入

1
screenfetch

dock

要获得像苹果osx一样的dock可以用docky或者dash-to-dock
docky的话sudo pacman -S docky即可,docky不支持wayland
dash-to-dock是gnome拓展,请在https://extensions.gnome.org/自行按照说明安装
我这里装了docky,这是我的docky配置
docky


至此,arch的基本配置就算完成了,秀一下桌面
gnome 窗口管理
gnome 应用列表