总结一下archlinux的安装过程,也作为以后安装的参考。(本篇细节内容有待完善,目前仅供参考)
可参考archlinux的官方安装教程:
https://wiki.archlinux.org/index.php/Installation_guide
首先下载镜像,制作u盘启动盘,按部就班即可。
有条件还可以插网线,直接在线安装。
下面进入安装步骤。
设置键盘可以跳过,用默认的美式键盘即可。
连接网络
使用lwctl命令
Iwctl
device list
station wlan0 scan
station wlan0 connect
退出
可以连接网络了,下面测试一下。
选择10个最合适的镜像,保存到配置。
$ reflector --country China –latest 10 –sort rate –save /etc/pacman.d/mirrorlist
使用lsblk
查看一下先
然后用cfdisk /dev/sdx
来分区
这边windows
已经有efi
分区了,所以就分一个根目录/
就行了,然后创建swapfile
作为swap
,或者也可以分一个盘作为swap,我个人觉得用swapfile更加灵活。
建立swapfile,内核装的不是linux-lts就要用dd命令
$ dd if=/dev/zero of=/swapfile bs=2048 count=1048576 status=progress
其中bs
是blocksize,count
是读写多少次,如果要创建16G的file,那么可以用bs=1G count=16
因为是个文件,怎么创建出来最终都一样。只要bs*count=16G
就行。
改权限
$ chmod 600 swapfile
$ mkswap /swapfile
$ swapon /swapfile # 启用swap文件
$ vim /etc/fstab
在/etc/fstab
中添加:/swapfile none swap defaults 0 0
接下来,分区格式化,使用命令
mkfs.ext4 /dev/root_partition
挂载分区
mount /dev/root_partition /mnt
建立efi
文件夹然后挂载分区到这个文件夹,或者也可以命名为boot。
$ mkdir /mnt/efi
$ mount /dev/sdx /mnt/efi
$ pacstrap /mnt base linux linux-firmware vim
$ arch-chroot /mnt
$ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock –systohc
(可选)设置与windows时间不冲突:
How to fix windows and linux showing different times when dual booting
完成后,到时候去windows还要和服务器同步一下时间才会显示正确。
$ vim /etc/locale.gen
把en_US zh_CN
的UTF-8
去掉注释,还有GBK
的也可以去掉。
然后
$ locale-gen
$ vim /etc/locale.conf
写入:LANG=en_US.UTF-8
创建hostname
$ vim /etc/hostname
写入名字
修改hosts
$ vim /etc/hosts
写入
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
设置root密码
passwd
做boot loader
这里可以用grub也可以用别的,我一开始用的是grub
,后来改为了systemd-boot
grub
其中–efi-directory=/efi或boot,取决于之前文件夹名字
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=<insert_your_grub_name>
生成grub.cfg
$ grub-mkconfig -o /boot/grub/grub.cfg
$ pacman -S grub efibootmgr networkmanager network-manager-applet dialog
wireless_tools wpa_supplicant os-prober mtools dosfstools ntfs-3g
base-devel linux-headers reflector git
装microcode,这里装了之后,启动时仍有microcode的错误。
16.重启到新系统
umount -R /mnt
reboot
参考wiki,装了系统之后需要做些什么
General_recommendations
启动网络服务
$ systemctl enable --now NetworkManager
设置wifi
$ nmtui
$ useradd -m -G wheel your_username
$ password your_username
还有把用户添加到sudoers里面
这边有一个授权方法是直接把wheel组取消注释,允许权限。
EDITOR=vim visudo
注释这一行:
# %wheel ALL=(ALL) ALL
独立显卡驱动我没装了。
$ pacman -S xorg
装sddm,和kde搭配
Pacman -S sddm sddm-kcm
设置开机启动
装桌面(试了几个感觉这个还是最好,xfce太古老了,而且不知道为什么无法识别我的手机usb)
$ pacman -S plasma kde-applications packagekit-qt5
字体
$ pacman -S noto-fonts-cjk
(介绍:谷歌的 Noto 字体家族旨在支持所有语言。请安装 noto-fonts, noto-fonts-cjk 和 noto-fonts-emoji 软件包。 )
wiki关于字体
进了系统记得选择noto sans cjk hk
,这个对于中文字体显示很好。
如有必要,也可以到windows里面把
还有一个xdg user directories
(参考archwiki,这个在post installation里面应该给出了)
这个生成用户文件夹下面的一些默认文件夹。
$ pacman -S xdg-user-dirs
$ xdg-user-dirs-update
还有一些什么pavucontrol, pulseaudio, pulseaudio-bluetooth,pulseaudio管理系统声音输出输入,这个应该默认在kde桌面里面有的,我一开始装的是xfce,里面没有这些。
安装fcitx,记得装fcitx configtools
一开始没法启动配置文件,后来发现wiki里面其实提到了fcitx configtools
24.安装google chrome,用git clone从aur的页面克隆tar.gz的包,然后makepkg
或者可以直接用yay来装 ,需要先安装yay
这里遇到的问题是:
用git clone安装,启动器列表里不显示图标。如果使用yay安装,好像在usr/share/applications里面有了google-chrome.desktop,但是还是不显示。
进入xfce,发现是显示的。但是不显示图标。可以运行。
我重新创建了一个chrome.desktop文件,然后在xfce上面显示很OK。
还用了这个来更新desktop的数据库: update-desktop-database ~/.local/share/applications
但是进到kde里面,发现还是不显示。
后来执行了:
$ xdg-settings get default-web-browser
$ xdg-settings set default-web-browser google-chrome.desktop
也没用,set之后还是那个默认的。
但是后来我点击开始,发现google-chrome和我创建的那个chrome都显示了。
然后kde的设置默认应用列表也有个google-chrome了。
谷歌了提示不是默认浏览器,设置文件类型关联后解决。
https://gregladen.com/blog/2019/02/16/chrome-as-default-browser-in-kde-plasma-getting-it-to-stick/
配置hibernate
http://blog.programmableproduction.com/2016/02/22/ArchLinux-Powermanagement-Setting-Hibernate/
https://wiki.archlinux.org/index.php/Power_management/Suspend_and_hibernate#About_swap_partition/file_size
注意要在/etc/mkinitcpio.conf里面加resume,然后生成。
另外grub记得要更新。
解决蓝牙问题,要启动蓝牙的服务。
另外,蓝牙断断续续。
还有插入耳机响声,装一个alsa-utils,即可使用alsamixer把automute关闭。
设置隐藏grub
https://wiki.archlinux.org/index.php/GRUB/Tips_and_tricks#Hide_GRUB_unless_the_Shift_key_is_held_down
设置这个之后不行,再修改grub中的:
GRUB_TIMEOUT=0
才行。
但是似乎不能按shift进入grub。
解决关机太慢的问题,可设置进程等待时间
https://itsfoss.com/long-shutdown-linux/
修改system.conf里面的九十秒
# sudo vim /etc/system.d/system.conf
DefaultTimeoutStopSec=5s
完成了splash的设置
https://doc.qt.io/qt-5/qml-qtquick-image.html#fillMode-prop
这个设置参见本地bounce的splash
安装nvidia驱动的方法
直接pacman -S 是没有用的
后面需要生成xorg.conf,进了系统,看到系统info里面显示的是nvidia, 不是mesa 什么什么intel才有用。关键是使用最小配置,但是不要写那个Ibus了,直接删去那行。然后必须要创建一个叫做.xinitrc的文件才行。测试过发现这个配置文件是必须的。 但是缺点就是,只能用nvidia了。 nvidiasettings里面不能选择显卡,optimus选项不可见。