admin 管理员组文章数量: 887007
前言
本文不讨论意识形态相关内容,仅记录安装过程中的一些心得,以后查找起来方便。
不讨论意识形态是指,例如 “ Manjaro 与 Arch Linux 有什么区别?哪一个更好?” 这种问题,不在本文讨论范围内哦~
参考文章
- 官方 wiki:Installation guide
- 2021 Archlinux 双系统安装教程
- Dual boot with Windows
效果预览
安装的版本是:
[root@arch gly]# uname -a
Linux arch 5.13.10-arch1-1 #1 SMP PREEMPT Thu, 12 Aug 2021 21:59:14 +0000 x86_64 GNU/Linux
使用 KDE 桌面的效果是这样子的:
启动时 grub 界面是这样子的:
步骤
实际上,因为个人博客可能更新不够及时,所以直接参考 官方文档 是最好的方式。
1、下载 iso 文件
Arch Linux Downloads
2、准备安装介质
本文使用 Rufus 将 iso 文件写入 U 盘。
3、BIOS 的设置
下面是需要修改的:
- 关闭 secure boot(不同主板厂商的位置不同,这里不在详细说明。如果 secure boot 开关是灰色的话,可以尝试把所有的 secure key 都删掉,然后就可以调节了,在 asus 的台式机上就是通过这种办法关掉的。另外,有的机器必须设置了 bios 密码之后才能改 secure boot,也可以试一下)
- 修改启动顺序,把U盘的启动顺序放到最上面
- 关闭快速启动(快速启动这是 windows 上的一个选项,关机进入休眠状态,内存写到文件,下次开机直接恢复。关闭它是为了避免系统之间切换时把快照文件写乱。也有人说是关闭 Hybrid Boot,我没找到。)
BIOS 与 UEFI 引导方式的不同
参考:Arch boot process
为了启动 Arch Linux,必须配置一个与 Linux 兼容的引导加载程序。引导加载程序负责在初始化启动进程之前,加载好内核和 initial ramdisk。具体过程因 BIOS 和 UEFI 系统而异。
官方文档中关于二者的描述:
windows 下查看引导方式的方法是:win+R,输入 msinfo32,找到 BIOS Mode 项,就看到啦。
当然,命令行状态下也可以查看引导方式,有需要的自行查阅文档~
在 windows 上压缩出一个新的分区
参考:Dual boot with Windows
推荐先安装 Windows 再安装 Linux , 安装 Windows 时只使用硬盘的部分空间建立需要的分区.在 Windows 安装完毕后,进入 Linux 安装环境中后你可以对硬盘未分配的空间进行分区而不改动 Windows 分区. 对于 UEFI 系统,可以使用 Windows 安装时建立的 EFI 系统分区.
如果你没装 windows 的话,要装双系统,建议先 windows 后 ArchLinux,因为根据文档中说的,如果后装 windows 的话,它会把 boot 引导改成只有它自己。你要问为什么会这样?因为这就是 windows。
创建新分区的方式,依次选 ThisPC -> Computer -> Manage -> Disk Management,压缩一块空间,然后为了方便在 u 盘安装的时候通过 lsblk 命令直接看到,在这里的图形化界面上可以预先创建一个分区。
本文用 150GB 的 D 盘作为目标分区。
另外,根据官方文档中说,你的 EFI 分区至少需要 260MB。根据我的观察,我的 260G 的 EFI 分区在安装前后,用量从 15% 涨到了 41%,因为够用,所以我没有扩它。
后来看了一下,主要是两个 .img 文件占用空间较大,如下图。
也有人说,空间不够的话,可以把 fallback 那个永久删掉,我试过,删掉是可以正常运行的,感兴的话自行查阅文档。
你也可以根据自己 EFI 的剩余大小,选择性扩一下,貌似扩这个 EFI 的步骤比较复杂,操作需谨慎。
4、U 盘安装 Arch Linux
官方文档:Installation guide
中文参考:2021 Archlinux双系统安装教程(超详细)
步骤
4K 显示器上字体太小的话,可以先换一个较大的字体。
setfont /usr/share/kbd/consolefonts/LatGrkCyr-12x22.psfu.gz
检查网络
ip a
连接成功之后,检查可以连接到pacman源
pacman -Syyy
重新设置mirrorlist(可选操作,改后会快很多):
使用 reflector 来获取速度最快的 6个 镜像,并将地址保存至 /etc/pacman.d/mirrorlist
reflector -c China -a 6 --sort rate --save /etc/pacman.d/mirrorlist
硬盘挂载
因为我们已经在 windows 上建立好分区了,所以这一步相对官方给的方法来看,会更加简单一些。
提示:以下步骤,请确认无误后再操作!
mkfs.ext4 /dev/nvme0n1p4 # 分区格式化,将刚刚分好的区格式化为ext4格式,认准分区号再操作!
mount /dev/nvme0n1p4 /mnt # 先挂载 / 分区
mkdir /mnt/boot # 建立boot文件夹
mount /dev/nvme0n1p1 /mnt/boot # 检查EFI分区号后,挂载EFI分区
挂载完成后:
安装基本系统
安装默认的内核。
如果你不想用默认的内核,也可以使用 linux-lts, linux-zen, linux-hardened,具体介绍请看 Wiki
pacstrap /mnt base linux linux-firmware nano vim
生成 fstab 文件
fstab 文件 中包含了各种各样的 文件系统描述信息。
genfstab -U /mnt >> /mnt/etc/fstab
检查生成的 fstab 文件
cat /mnt/etc/fstab
正式配置新系统
1、切换到装好的系统
arch-chroot /mnt
2、设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 或者:(此方法我试过无效) timedatectl set-timezone Asia/Shanghai
3、同步硬件时钟
hwclock --systohc
4、设置 locale
vim /etc/locale.gen
找 #en_US 对应 UTF-8 那一行 取消注释
找 #zh_CN 对应 UTF-8 那一行 取消注释
5、生成 locale
locale-gen
6、创建并写入/etc/locale.conf文件
vim /etc/locale.conf
填入内容,注意这里只能填这个
LANG=en_US.UTF-8
7、创建并写入hostname
vim /etc/hostname
这里我写入的是 arch 作为 hostname,你也可以输别的
8、修改hosts
vim /etc/hosts
写入以下内容,注意 arch 的位置和你的 hostname 对应,中间的空白用tab而非空格
127.0.0.1 localhost
::1 localhost
127.0.1.1 arch.localdomain arch
9、为root用户创建密码
passwd
然后输入并确认密码(linux终端的密码没有回显,输完直接回车就好)
10、创建启动器
安装基本的包,这里使用grub为启动器
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 sudo
如果你不知道这些包的作用,请务必确保输入的指令与上面的一致
检查完毕回车,需要选择直接回车就好,等待安装结束
11、安装 ucode
如果你是intel的cpu,需要安装intel的微码文件
pacman -S intel-ucode
如果是amd
pacman -S amd-ucode
12、更新 grab 文件
Grub 2.06 更新 os-prober 用户需要手动干预
grub 2.06 更新已经进入官方源,本次更新有以下两个需要注意的变化:
1、如果您正在使用 os-prober 生成其他系统的引导项,grub 2.06 不再自动启用 os-prober,您需要添加 GRUB_DISABLE_OS_PROBER=false 至 /etc/default/grub 配置文件中并且重新运行 grub-mkconfig
2、grub 2.06 现在会自动添加 固件设置菜单 引导项目,无需手动创建
鉴于此需要手动启用os-prober来确保Windows能被正确识别:
编辑配置文件
vim /etc/default/grub
在里面找一条空行输入
GRUB_DISABLE_OS_PROBER=false
之后Ctrl-X 加Y回车保存退出
完成之后输入
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch
确保输入指令完全正确回车
生成grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg
一开始我担心这波操作会把原有的引导文件写乱,后来发现是多虑了。
机智的 grub-mkconfig 会检测你之前已经有的系统引导,并且把新的引导 append 进去。
附:/etc/default/grub 文件
这里踩过一些小坑,详见注释。
# GRUB boot loader configuration
GRUB_DISABLE_OS_PROBER=false
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
# 下面这行可以加内核启动参数 nomodeset 解决花屏问题,相当于grub页面按e编辑linux后面带的选项,用空格分割
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
GRUB_CMDLINE_LINUX=""
# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
#...此处省略n行
# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
# 这里是grab图形界面的分辨率,与上面的nomodeset结合使用时,可以让tty保持你设置的分辨率且不花屏
# 如果上面的内核参数不加nomodeset的话,这里的分辨率仅在grab图形界面有效,而在tty是无效的
GRUB_GFXMODE=800x600x32
#...此处省略n行
13、退出新系统并取消挂载
exit
umount -a
reboot
14、进入装好的Arch系统并激活网络
重启后,输入密码,进入
启动网络服务
systemctl enable --now NetworkManager
15、新建用户并授权
useradd -m -G wheel mir
wheel后面是你的用户名,这里输入的是mir
为用户创建密码
passwd mir
输入并确认密码
授权
EDITOR=nano visudo
Ctrl+W 输入 # %wheel 回车 找到这行 删除前面的 #(取消注释)
16、安装显卡驱动
安装AMD集显驱动
pacman -S xf86-video-amdgpu
安装NVIDIA独显驱动
pacman -S nvidia nvidia-utils
17、安装Display Server
这里用的是开源世界最为流行的xorg
pacman -S xorg
18、安装Display Manager
这里需要按你要安装的桌面环境而定,这里没有列出的可以自己去ArchWiki查
Gnome:
pacman -S gdm
KDE:
pacman -S sddm
Xfce || DDE:
pacman -S lightdm lightdm-gtk-greeter
设置开机自动启动,以gdm为例:
systemctl enable gdm
如果是别的请将这里的gdm替换为你安装的那个dm
19、安装Desktop Environment
Gnome:
pacman -S gnome
也可以另外再安装gnome-extra
KDE:
pacman -S plasma kde-applications packagekit-qt5
Xfce:
pacman -S xfce4 xfce4-goodies
DDE:
pacman -S deepin deepin-extra
同样 需要选择时直接回车
20、安装中文字体
这一步不装进去图形界面之后还是要装:更纱黑体
pacman -S ttf-sarasa-gothic
等待安装完毕
21、重启
reboot
在grub界面选择archlinux回车
当你看到登录界面时,恭喜你,一个相对完整的Arch安装完毕,Enjoy it!
常用软件安装
安装中文输入法 googlepinyin
参考:Manjaro安装googlepinyin
在用户根目录创建一个新文件:
nano ~/.xprofile
内容写:
export LC_ALL=zh_CN.UTF-8
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=“@im=fcitx”
安装 fcitx 以及 googlepinyin
pacman -S fcitx-im fcitx-configtool fcitx-googlepinyin
保存,注销再登录,应用程序找到 fcitx configuration ,输入法里面选择 Configure Current Input Method 即可配置快捷键了。
安装 chrome 浏览器
参考:archlinux 安装谷歌浏览器
- 在/etc/pacman.conf中添加archlinuxcn的源. (google-chrome并不在archlinux软件库中,所以需要添加archlinuxcn的软件源)
[archlinuxcn]
SigLevel = Optional TrustAll
Server = https://mirrors.tuna.tsinghua.edu/archlinuxcn/$arch
添加清华源, 或者可以添加华为, 中科大或者163源都可以.
- 安装密钥包.
pacman -S archlinuxcn-keyring
- 更新软件库.
pacman -Sy
- 可以安装谷歌浏览器或者其他的archlinuxcn软件库里的软件了.
pacman -S google-chrome
安装完成后需要注意的是google-chrome的程序名为google-chrome-stable, 而不是chrome或者google-chrome
一些 Tricks
花屏问题、字体模糊问题
启动 u 盘安装程序时,如果外接了显示器,主显示器会以 4k 分辨率显示,文字很小。安装完成后,Resolution 有下拉菜单,可以选择分辨率(不外接显示器的话,安装完成后 Resolution 无法下拉,且浏览器窗口内所有字体模糊,目前原因未知,推断可能是中间那次安装的时候没有删除之前 boot 目录下的 intel-ucode.img 导致微码文件安装失败,然而我因为字号比较小没有仔细阅读安装结果,跳过了这个报错。)
如果不外接显示器,在安装程序的选项界面需要按 e 添加启动参数 nomodeset video=800x450 但分辨率没有生效。nomodeset 会生效,解决的是安装界面的花屏问题。
wiki:关于 Mode setting,nomodeset
另外,如果想让 tty 的字体变大的话,可以根据上面说的修改 grub 配置文件同时添加 nomodeset 内核参数,但这样会导致图形界面无法启动。删除 nomodeset 参数后,图形界面正常。
关于自动设置的 font dpi:
缩放 225% -> dpi=216
缩放 250% -> dpi=240
记录一下,自己配的时候不知道应该填多少,可以参考这个默认值。
找到一些线索:可能是 xorg 的问题
history:
[root@arch gly]# history
1 ls
2 ls -la
3 rm /boot/intel-ucode.img
4 df
5 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
6 hwclock --systohc
7 vim /etc/locale.gen
8 locale-gen
9 vim /etc/locale.conf
10 vim /etc/hostname
11 vim /etc/hosts
12 passwd
13 pacman -S grub efibootmgr networkmanager network-manager-applet dialog wireless_tools wpa_supplicant os-pober mtools dosfstools ntfs-3g base-devel linux-headers reflector git sudo
14 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 sudo
15 pacman -S intel-ucode
16 vim /etc/default/grub
17 grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch
18 grub-mkconfig -o /boot/grub/grub.cfg
19 exit
20 systemctl enable --now NetworkManager
21 useadd -m -G wheel gly
22 useradd -m -G wheel gly
23 passwd gly
24 EDITOR=nano visudo
25 pacman -S nvidia nvidia-utils
26 pacman -S xorg
27 pacman -S sddm
28 systemctl enable sddm
29 pacman -S plasma kde-applications packagekit-qt5
30 pacman -S ttf-sarasa-gothic
31 reboot
32 pacman -S firefox
33 pacman -S fcitx-im fcitx-configtool fcitx-googlepinyin
34 vim ~/.xprofile
35 shutdown
36 shutdown now
37 vim /etc/pacman.conf
38 pacman -Sy
39 pacman -S archlinuxcn-keyring
40 pacman -S google-chrome
41 import -window root screenshot.jpg
42 ls
43 pwd
44 import -window root screenshot.jpg
45 import -window root screenshot.jpg
46 uname
47 uname -a
48 import -window root screenshot.jpg
49 pacman -Syu
50 df
51 lsblk
52 vim /etc/pacman.conf /etc
53 vim /etc/default/grub
54 grub-mkconfig -omk
55 grub-mkconfig -o /boot/grub/grub.cfg
56 reboot
57 import -window root screenshot.jpg
58 vim /etc/default/grub
59 cat /etc/default/grub
60 history
版权声明:本文标题:ArchLinux+Win10双系统安装踩坑指南(2021.08) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1725925976h893836.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论