自己重装archlinux的次数也很多了,每次总是有一些不满意就重装,喜欢这种从零开始的感觉,所以就此记录下archlinux的安装过程,当做自己安装配置的笔记用。距离第一次安装arch已经一年多了,中间也学到了许多linux方面的知识,对这个安装过程又有了全新的认识,最近重新看了下这篇博客,archwiki的安装过程也基本没变,此次更新主要更新了安装中提到的一些软件方面的,比如fcitx,还有yay。
由于archlinux更新较快,所以本篇提到的一些软件或者说安装步骤,也许会随着时间发生变化,所以,请一定注意实效性!
本文最新更新于2019年9月13日。
archlinux官方安装wiki(英文版):
Installation guide - ArchWiki
目录
安装准备
分区与挂载
1.查看硬盘分区情况
2.调整分区
3.格式化和挂载分区
4.单独/usr或者其他一些需要另外操作的分区(可选)
基础安装与配置
1.配置镜像源
2.连接网络
3.安装系统基础包
4.建立fstab文件
5.用户管理
6.设置时区
7.设置主机名
8.网络配置
9.系统引导
后续配置与图形化
1.声卡:
2.X 及基本组件
3.字体及本地化配置
4.配置archlinuxcn源
5.中文输入法
6.安装桌面环境及常用基本组件
7.AUR helper
1.archlinux 启动U盘制作,Windows下用rufus,Linux环境下用dd 命令,bios等安装前的设置,每个电脑情况不同,关闭安全启动,win10关闭快速启动。
2.互联网环境,手机数据线共享网络即可。
3.U盘制作完成后,重启选择U盘启动,快捷键根据电脑的情况而定,华硕笔记本ESC选择启动方式。
进入安装界面后,默认是root用户。
手机连接好,开启数据线网络共享,再命令行执行 dhcpcd 即可自动配置网络,再执行 ping www.baidu.com 能通的话就可以进行下一步了。
分区工具有很多,建议使用cfdisk,接近图形界面,比较友好,也省去了自己输入命令。
lsblk
从输出中看自己的硬盘状况,并决定了下面的分区操作
我的安装后的输出结果提供参考:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 245G 0 part
├─sda2 8:2 0 8G 0 part [SWAP]
├─sda3 8:3 0 60G 0 part /opt
├─sda4 8:4 0 223.2G 0 part /home
├─sda5 8:5 0 128.8G 0 part
├─sda6 8:6 0 226.4G 0 part
└─sda8 8:8 0 40G 0 part
sdb 8:16 0 111.8G 0 disk
├─sdb1 8:17 0 8G 0 part
└─sdb2 8:18 0 103.8G 0 part /
sdc 8:32 0 119.2G 0 disk
├─sdc1 8:33 0 118.3G 0 part
├─sdc2 8:34 0 100M 0 part /boot/efi
└─sdc3 8:35 0 874M 0 part
安装时应该是有loop什么的,那个不用管。
cfdisk /dev/sda
即表示对sda这个磁盘进行分区操作,因为接近图形界面,操作比较简单,/分区的type选择linux file system x86_x64就可以了,其他分区同理。
分区调整完后要进行格式化。
mkfs.ext4 /dev/sdax
mkswap /dev/sday
将x,y替换为自己的分区标示
上面是格式ext4和swap分区的命令,由于是在win10之后安装arch的,所以已经存在efi分区了。不用自己创建,如果安装纯arch,
或者想用LVM分区的,参考wiki。
mount /dev/sdax /mnt #将自己创建的/分区挂载到/mnt,此时把/mnt看做自己即将安装好的arch的/分区。
swapon /dev/sday #激活swap分区
mkdir /mnt/home /mnt/boot /mnt/boot/efi
mount /dev/sdax /mnt/home
mount /dev/sdc2 /mnt/boot/efi
参考上面的挂载方式,对于/home这种一定要先挂载了/,再创建home目录才能挂载,/boot/efi同理,对于uefi启动的双系统,以上。
如果单独将/usr分区了,后面有额外的操作。
为了节约时间,最好配置镜像源。
修改 /etc/pacman.d/mirrorlist
将China的几个移动到最前面,推荐163,ustc,tsinghua的几个。
前面已经说了。更多网络配置,参考官方wiki。
执行
pacstrap /mnt base base-devel
等待安装完成
genfstab -U /mnt > /mnt/etc/fstab
cat /mnt/etc/fstab # 需要检查生成的 /mnt/etc/fstab 文件是否正确
检查fstab的时候,主要查看UUID是否与对应分区想对应,所以需要开机加载的分区是否都在,使用lsblk -f 命令可以查看所有分区的UUID,与生成的fstab进行对比。
对于/usr单独分区的情况,在这里开始要多几步,水平线内的为额外必需的操作
修改 刚才生成的 /mnt/etc/fstab文件,
将/usr 分区的那一行,
再编辑/etc/mkinitcpio.conf
在HOOK那一行,里面加入shutdown 和usr,用空格隔开
如:
HOOKS="base udev autodetect modconf block lvm2 filesystems keyboard fsck shutdown usr"
最后执行
mkinitcpio -p linux
即可
用户和密码
passwd #设置或更改root用户密码 连续两次输入,密码不会显示
useradd -m -g users -s /bin/bash archer #添加新普通用户 archer是新建的用户名
passwd archer #设置或更改用户密码
sudo权限
chmod u+w /etc/sudoers
echo 'archer ALL=(ALL) ALL' >> /etc/sudoers #将archer加入sudo
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 设置时区
hwclock --systohc --utc #使用utc时间
Windows中还需要设置将硬件时间设置为UTC时间:
在Windows中cmd中执行
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
即可
echo MyPC > /etc/hostname
systemctl enable dhcpcd #开机自启动有线网络
pacman -S iw wpa_supplicant dialog #无线网络
更多网络配置参考wiki。
这是很关键的一步,wiki中找起来相对较为麻烦。
#安装引导程序 grub 和 efi管理工具
pacman -S grub efibootmgr
# 如安装有多系统 需安装 os-prober
pacman -S os-prober
# 安装引导 使用了efi的情况
grub-install --efi-directory=/boot/efi --bootloader-id=Archlinux
其中bootloader-id=Archlinux 中Archlinux为uefi启动引导项中该grub引导程序的名字,可以自己改
# 生成引导配置
grub-mkconfig -o /boot/grub/grub.cfg
对于多系统,这一步并不会识别其他系统,重启后grub中只有archlinux,
只有重新进入archlinux,再次执行上述命令,grub中才会有Windows等其他启动选项。
此时,archlinux的基础安装已经完成。
pacman -S alsa-utils alsa-oss
要用xfce的图形化声音管理插件的话,就用 pulseaudio
pacman -S xorg-server xorg-xinit dbus xf86-video-intel xf86-input-evdev
笔记本用户参考wiki的触摸板手势的配置。
NVIDIA双显卡的,如果主要用intel, 就考虑bumblebee,NVIDIA的性能会降低很多,
如果是用NVIDIA比较多,考虑 NVIDIA optimus 中用Using NVIDIA的这一条,但这样会无法切换intel,
只能使用NVIDIA,此时NVIDIA性能基本和Windows下的表现差不多。
两种方案均可参考NVIDIA optimus wiki中的内容!
参考wiki: Localization/Simplified Chinese (简体中文)
主要为三个步骤,开启中文locale,安装中文字体,用户/系统 汉化环境设置
里面介绍得很详细。
这是一个十分优秀的arch源
编辑 /etc/pacman.conf
添加以下内容(清华大学源):
[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
再执行:
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring
如果想用archlinuxcn的其他源,参考该 github项目
fcitx+搜狗:
pacman -S fcitx fcitx-im fcitx-configtool #安装fcitx
pacman -S fcitx-sogoupinyin #搜狗输入法,需要安装archlinuxcn源后才有
由于arch官方移除了fcitx-qt4支持,但是目前搜狗依赖于qt4,要解决这个问题,安装arhclinuxcn的这个包即可:
sudo pacman -S fcitx-lilydjwg-git
编辑 /etc/environment
加入以下内容:
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
首先是通用组件:
pacman -S gamin accountsservice gvfs gvfs-mtp gvfs-afc ntfs-3g exfat-utils
网络管理器:
pacman -S networkmanager network-manager-applet gnome-keyring
完成后执行 systemctl enable NetworkManager.service 将其加入开机启动
桌面及桌面管理器(我选择lightdm和xfce,轻量级,简约):
1.lightdm&&xfce
pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings xfce4 xfce4-goodies
安装后执行systemctl enable lightdm,其他桌面管理器同理
2. gnome gdm
pacman -S gnome gnome-extra gdm
3.KDE
基础包
pacman -S plasma
完整包
pacman -S plasma-meta
最简安装(仅有桌面软件)
pacman -S plasma-desktop
桌面管理器是sddm
pacman -S sddm
安装完成后,直接重启吧,就可以进入图形界面了。
目前个人使用的是yay,与pacman的语法差不多,并且可以支持使用proxychains,安装gcc-go后再重新编译yay即可,见该github-issue:
https://github.com/Jguer/yay/issues/951
本文与个人博客网站同步更新,网站域名:https://www.smartdeng.com