最近有些厌倦Windows,所以想尝试一下Linux,选择Arch的原因不再赘述,建议以ArchLinux官方安装指南为主,这篇笔记只是方便我自己安装而写的,仅供参考。
因为我是第一次使用Linux,所以暂时没打算把Arch当作主力系统,我决定采用双系统的方案,所以需要给Arch腾出一个空间。
我使用的工具是DiskGenius,因为Arch简洁,所以40G应该足矣。
访问Arch Linux下载页面,并根据需要的引导方式,获取ISO文件或netboot映像。
因为我经常安装系统,所以使用Ventoy来制作启动U盘,然后把Arch Linux的镜像放里面即可。
注意:Arch Linux安装镜像不支持安全启动。要引导安装媒介,需要禁用安全启动,可以在先关闭安全启动,安装完成后再打开。
提示:安装过程中如果想一边安装一边使用Lynx查看ArchLinux官方安装指南,可以使用
Alt + 方向键
来切换不同的控制台。
等待屏幕上出现Welcome to Arch Linux!
后系统会自动登录,然后进行下一步。
# ls /sys/firmware/efi/efivars
如果命令结果显示了目录且没有报告错误,则系统以UEFI模式引导。如果目录不存在,则系统可能以BIOS模式(或CSM模式)引导。一般这步都没什么问题,如果真的没有以UEFI模式引导,请在搜索引擎查找相关解决办法。
注意:Arch Linux必须联网安装
确保系统已经启用了网络接口
# ip link
对于无线局域网(Wi-Fi)和无线广域网(WWAN),请确保网卡未被rfkill禁用。
连接网络
iwctl
连接,这里不详细描述,操作方法可以参考6.1 iwctl。配置网络连接
# dhcpcd
用ping
检查网络连接
# ping cnblogs.com
注意:
ping
不会自动结束,可以使用Ctrl + C
中断命令。
注意:默认情况下,安装映像已预配置好并启用了
systemd-networkd
、systemd-resolved
、iwd
和ModemManager
。但已经安装好了的系统并非如此。
在 Live 环境中systemd-timesyncd
默认启用,建立互联网连接后,时间将自动同步。
使用timedatectl
确保系统时间是准确的:
# timedatectl status
提示:这个部分可以使用图形化的工具
cfdisk
,具体用法请在搜索引擎中查找,笔记以fdisk
为主。
系统如果识别到磁盘,就会将其分配为一个块设备,如/dev/sda
、/dev/nvme0n1
或/dev/mmcblk0
。可以使用fdisk
查看:
# fdisk -l
找到需要分区的硬盘,硬盘路径一般为/dev/nvme0n1
这样的形式。
使用fdisk
修改分区表:
# fdisk [硬盘路径]
创建新分区:
Command (m for help): n
参数默认,直接回车即可。
保存分区表:
Command (m for help): w
查看分区表:
# fdisk -l
找到新建的分区,Type
值为Linux filesystem的就是刚才创建的分区,记住这个分区Device
的值。找到Type
值为EFI System的分区(一般为第一个),记住这个分区Device
的值。
将新建的分区格式化:
# mkfs.ext4 [分区路径]
挂载分区:
# mount [分区路径] /mnt
# mkdir /mnt/boot
# mount [EFI分区路径] /mnt/boot
国内网络访问Arch官方源速度非常慢,所以需要更换镜像源。
# vim /etc/pacman.d/mirrorlist
按I
键进入insert模式,在第一行插入国内的镜像源,镜像源可在搜索引擎获取,这里提供清华大学和阿里云的镜像源:
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch
完成后按Esc
键退出insert模式,输入:wq
,然后回车,保存并退出。
使用pacstrap
脚本,安装base软件包和Linux内核以及常规硬件的固件:
# pacstrap -K /mnt base base-devel linux linux-firmware dhcpcd
用以下命令生成fstab文件(用-U
或-L
选项设置UUID或卷标):
# genfstab -U /mnt >> /mnt/etc/fstab
检查生成的/mnt/etc/fstab
文件是否正确:
# cat /mnt/etc/fstab
chroot 到新安装的系统:
# arch-chroot /mnt
以上海为例:
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
运行hwclock
以生成/etc/adjtime
:
# hwclock --systohc
这些软件在后续的配置过程需要用到。
# pacman -S vim dialog wpa_supplicant ntfs-3g networkmanager netctl
参数默认,回车即可。
# vim /etc/locale.gen
可以用:/内容
来查找。
激活(找到要激活的语言,按X
删除行首的#
)以下语言:
zh_CN.UTF-8
zh_HK.UTF-8
zh_TW.UTF-8
en_US.UTF-8
保存退出。
执行 locale-gen
以生成locale信息:
# locale-gen
设置语言为English(此步不建议设置为中文,可以在进入桌面环境后更换为中文):
# vim /etc/locale.conf
添加:
LANG=en_US.UTF-8
保存退出。
创建hostname文件:
# vim /etc/hostname
输入主机名字,保存退出。
配置网络:
# vim /etc/hosts
在最后一行插入:
127.0.0.1 localhost
::1 localhost
127.0.0.1 [主机名字].localdomain [主机名字]
保存退出。
设置Root密码:
# passwd
提示:Linux命令行下输入密码不会显示。
安装所需软件
根据处理器选择处理器微码,amd安装amd-ucode
:
# pacman -S intel-ucode
# pacman -S os-prober ntfs-3g
# pacman -S grub efibootmgr
配置grub
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
# grub-mkconfig -o /boot/grub/grub.cfg
检查生成的文件:
# vim /boot/grub/grub.cfg
若文件里面没有Windows的入口,解决办法参考6.2 grub添加Windows。
# exit
# reboot
到此Arch的安装和基本配置就已经结束了,Arch已经可以使用了,但是此时Arch只有命令行界面,各种操作都不是很方便,所以要进行后续的配置。
之前配置的网络是Live环境的,现在配置的是安装好的Arch的。此处我配置的是Wi-Fi,但是方法与Live环境的不通用。
# systemctl enable NetworkManager
# systemctl start NetworkManager
# nmcli dev wifi
# nmcli dev wifi list
# nmcli dev wifi connect "Wi-Fi名(SSID)" password "密码"
swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间。
使用 swap 交换分区,显著的优点是,通过操作系统的调度,应用程序实际可以使用的内存空间将远远超过系统的物理内存。由于硬盘空间的价格远比 RAM 要低,因此这种方式无疑是经济实惠的。当然,频繁地读写硬盘,会显著降低操作系统的运行速率,这也是使用 swap 交换分区最大的限制。
swap分区可以简单的理解为虚拟内存,在RAM够用的情况下可以不用申请交换空间。没有特别需求(电脑较老等)不建议进行此步操作。
# dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress
# chmod 600 /swapfile
# mkswap /swapfile
# swapon /swapfile
# vim /etc/fstab
在系统盘下面一行添加:
/swapfile none swap defaults 0 0
保存退出。
创建用户
新安装的系统只有一个超级用户,即root
。使用root
进行日常操作是不安全的。应当创建普通用户进行日常操作,仅在管理系统时使用root
。
# useradd -m -G wheel 用户名
# passwd 用户名
权限提升
权限提升推荐使用sudo
。
安装sudo
:
# pacman -S sudo
配置sudo
# ln -s /usr/bin/vim /usr/bin/vi
# visudo
查找并激活:
%wheel ALL=(ALL)ALL
保存退出。
切换用户:
# su 用户名
配置pacman
源:
$ sudo vim /etc/pacman.conf
查找激活:
[multilib]
Include = /etc/pacman.d/mirrorlist
添加:
[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
Server = https://repo.archlinuxcn.org/$arch
更多ArchlinuxCN镜像源请在搜索引擎中查找。
保存退出。
$ sudo pacman -Syy
$ sudo pacman -S archlinuxcn-keyring
以下操作基于我的实际情况(KDE桌面环境+N卡),其他情况请参照Arch官方文档。
KDE桌面环境查表按需安装:
厂商
类型
驱动
OpenGL
OpenGL(multilib)
文档
AMD/ATI
Open source
xf86-video-amdgpu
mesa
lib32-mesa
AMDGPU
xf86-video-ati
ATI
Intel
Open source
xf86-video-intel
mesa
lib32-mesa
Intel graphics
NVIDIA
Open source
xf86-video-nouveau
mesa
lib32-mesa
Nouveau
Proprietary
nvidia
nvidia-utils
lib32-nvidia-utils
NVIDIA
nvidia-390xx-dkms
nvidia-390xx-utils
lib32-nvidia-390xx-utils
$ sudo pacman -S 驱动名 OpenGL OpenGL(multilib)
注意:NVIDIA闭源驱动安装后很有可能会出现无法进入图形界面的问题,建议直接参考6.5 NVIDIA闭源驱动问题进行安装。
安装KDE:
$ sudo pacman -S xorg plasma kde-applications sddm network-manager-applet
启动服务:
$ sudo systemctl enable sddm
$ sudo systemctl disable netctl
$ sudo systemctl enable NetworkManager
安装中文字体:
$ sudo pacman -S wqy-microhei wqy-microhei-lite wqy-bitmapfont wqy-zenhei ttf-arphic-ukai ttf-arphic-uming adobe-source-han-sans-cn-fonts adobe-source-han-serif-cn-fonts noto-fonts-cjk
安装git:
$ sudo pacman -S git
安装yay:
$ cd
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si
如果因为网络问题无法克隆,请参考6.3 GO语言软件安装源问题。
$ exit
# reboot
如要使用无线局域网,可以使用iwctl
进行连接。
$ iwctl
首先,如果不知道你的网络设备名称,请列出所有 WiFi 设备:
[iwd]# device list
然后,要开始扫描网络(注意:这个命令不会输出任何内容),执行:
[iwd]# station 设备名 scan
再然后,就可以列出所有可用的网络:
[iwd]# station 设备名 get-networks
最后,要连接到一个网络:
[iwd]# station 设备名 connect Wi-Fi名(SSID)
以上代码可以直接使用下面这一行代码替代:
$ iwctl --passphrase passphrase station 设备名 connect Wi-Fi名(SSID)
$ sudo vim /boot/grub/grub.cfg
添加:
menuentry 'Microsoft Windows 10' {
insmod part_gpt
insmod fat
insmod chain
search --no-floppy --fs-uuid --set=root XXXX-XXXX ## 这里填ESP分区的UUID,一般与Arch Linux的一致
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}
GO语言软件安装源被屏蔽问题可通过换源解决。
临时生效
$ export GO111MODULE=on
$ export GOPROXY=https://goproxy.cn
永久生效
$ echo "export GO111MODULE=on" >> ~/.profile
$ echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
$ source ~/.profile
安装ALSA后参考官方文档解除各声道的静音。
若提示未找到目录或未找到声卡,执行以下命令后参照上步。
$ sudo pacman -S alsa-firmware sof-firmware alsa-ucm-conf
$ sudo reboot
NVIDIA闭源驱动安装后遇到无法进入图形界面的问题时,请用安装盘卸载驱动,然后按照以下方法安装后重启。
$ sudo pacman -S nvidia-utils lib32-nvidia-utils nvidia-settings
# 配置xorg, 会生成 /etc/X11/xorg.conf
$ sudo nvidia-xconfig
# 安装驱动,此步会让kernel正确加载nvidia驱动
$ sudo pacman -S nvidia-dkms
$ sudo pacman -S fcitx
$ sudo pacman -S fcitx-configtool
$ sudo pacman -S fcitx-gtk2 fcitx-gtk3 fcitx-qt5
$ yay -S fcitx-qt4
$ yay -S fcitx-sogoupinyin
启动时打开数字锁定
Arch启动时默认不打开数字锁定,可以参考启动时打开数字键锁定
蓝牙
可以通过以下命令启动蓝牙:
sudo systemctl enable --now bluetooth
若连接蓝牙时提示br-connection-profile-unavailable
,请安装pulseaudio-bluetooth
包,在/etc/bluetooth/main.conf
中设置ControllerMode = bredr
,重启。
办公软件
推荐WPS或者Office Online。
中文输入法
在线音乐
参考在线音乐
网络
参考代理
即时通讯
校园网
中国大陆众多高校采用各种客户端拨号上网,如城市热点Drcom,锐捷。一些学校提供有网页登录或者linux版客户端,可参照相关说明文档安装使用。对于未提供网页登录以及客户端者:
手机扫一扫
移动阅读更方便
你可能感兴趣的文章