ArchLinux+Win10双系统安装踩坑指南(2021.08)

前言

本文不讨论意识形态相关内容,仅记录安装过程中的一些心得,以后查找起来方便。

不讨论意识形态是指,例如 “ Manjaro 与 Arch Linux 有什么区别?哪一个更好?” 这种问题,不在本文讨论范围内哦~

参考文章

  1. 官方 wiki:Installation guide
  2. 2021 Archlinux 双系统安装教程
  3. 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 安装谷歌浏览器

  1. 在/etc/pacman.conf中添加archlinuxcn的源. (google-chrome并不在archlinux软件库中,所以需要添加archlinuxcn的软件源)
[archlinuxcn]
SigLevel = Optional TrustAll
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

添加清华源, 或者可以添加华为, 中科大或者163源都可以.

  1. 安装密钥包.
pacman -S archlinuxcn-keyring
  1. 更新软件库.
pacman -Sy
  1. 可以安装谷歌浏览器或者其他的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 settingnomodeset

另外,如果想让 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
  • 8
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Arch Linux双系统安装的步骤如下: 1. 准备一个U盘或者光盘,将Arch Linux的ISO镜像烧录到U盘或者光盘上。 2. 在Windows系统中,打开磁盘管理器,缩小Windows系统的分区,为Arch Linux留出足够的空间。 3. 重启电脑,从U盘或者光盘启动,进入Arch Linux的安装界面。 4. 根据提示,进行分区、格式化、挂载等操作,安装Arch Linux。 5. 安装完成后,重启电脑,选择Arch Linux系统启动。 6. 在Arch Linux系统中,安装grub引导程序,使得可以选择启动Windows或者Arch Linux系统。 7. 重启电脑,选择Windows或者Arch Linux系统启动。 注意事项: 1. 在安装Arch Linux时,一定要小心操作,避免误删Windows系统的分区。 2. 在安装grub引导程序时,要注意选择正确的分区和安装位置,避免出现启动问题。 3. 在使用Arch Linux时,要注意系统的稳定性和安全性,避免出现数据丢失或者系统崩溃的情况。 ### 回答2: Arch Linux是一种轻量级的Linux发行版,它具有自由和灵活性,因此很受开发者喜欢。但是,由于其自由性,它比其他Linux发行版更具有挑战性,特别是当您想将其安装双系统时。 在本文中,我们将从头开始讲解Arch Linux双系统安装的步骤和要点。 第一步是准备启动磁盘。 我们需要在制作启动磁盘时,确保其是UEFI或BIOS引导模式之一。我们需要下载Arch Linux ISO文件并将其烧录到启动盘中。 一旦准备好启动磁盘,我们就可以进入安装程序。 第二步是在安装程序中进行分区。 在此步骤中,我们需要将磁盘分为必要的分区。 将ESP(EFI系统分区)分配为200MB,并使用ext4文件系统为根分区分配空间。 我们不需要针对交换分区或/ home分配提供自己的分区,因为我们可以稍后使用swap文件和根分区作为/home分配的根目录。在完成后,我们可以设置root帐户的密码和设置新用户帐户。 第三步是安装必要的软件。 确定您所需的软件包并在安装程序中进行安装。 在此过程中,我们需要运行mkinitcpio以为内核生成initramfs文件,以确保系统可以引导。 在完成后,我们需要安装GRUB,并将其安装到ESP分区的引导路径上。最后,我们需要生成GRUB配置文件。 第四步是检查双系统是否正确安装。 确保启动磁盘使用正确的引导模式,否则系统不会引导到Arch Linux。 您可以通过选择引导设备来测试此项。 系统引导后,您需要检查是否正确安装了所需的软件包,以及文件系统是否正确配置。 最后,在引导环境中验证完后,我们可以最后重启双系统电脑,然后我们可以登录到Arch Linux。 总之,要安装Arch Linux作为双系统,您需要仔细进行规划和分区。 安装程序需要进行重要配置,并且需要按照所需的安装包并为其生成配置文件。 最后,测试和验证都是必要的步骤,以确保系统正确安装并可供使用。 ### 回答3: ArchLinux 是一款用户自主配置的 Linux 操作系统,同时也是一个桌面级的 Linux 操作系统。双系统指的是将 ArchLinux 安装在电脑上同时保留原有 Windows 系统,以便用户可以选择在启动时选择不同的操作系统。这篇文章将讲述如何在电脑上实现 ArchLinux 双系统安装。下面是详细步骤: 步骤 1:准备 ArchLinux 安装介质 在安装 ArchLinux 前,需要先准备 ArchLinux安装介质。可以从ArchLinux官网上或官方下载页面上下载最新版本的 ArchLinux 镜像文件。下载好镜像文件后,通过烧录工具将其写入U盘或光盘/ISO映像文件,成为可引导的安装介质。 步骤 2:缩小分区 安装 ArchLinux 之前,需要将当前 Windows 系统磁盘空间进行缩小,以腾出一部分空间来存储 ArchLinux 操作系统。这可以通过在磁盘管理中选择当前系统分区,右键选择“缩小卷”,按照提示操作即可。 步骤 3:进入 ArchLinux 安装界面 将 ArchLinux 安装介质插入电脑后,进入 BIOS 设置,将启动顺序更改为 U 盘或光盘。接着重启电脑,选择 ArchLinux 安装选项,进入 ArchLinux 安装界面,选择“ArchLinux 整体安装”或“ArchLinux 分区安装”。 步骤 4:进行 ArchLinux 安装 按照 ArchLinux安装指引进行安装,根据实际情况对 ArchLinux 进行自己所需的分区安装。分区可以选择与 Windows 系统分开的硬盘分区,也可以选择在同一硬盘上分区,但需注意不要覆盖原有分区,否则将导致重要数据丢失。 步骤 5:配置 Grub 启动项 安装 ArchLinux 后需要将其加入 Grub 的启动项中,通过 Grub 启动项可以在启动时选择进入 ArchLinux 或 Windows 操作系统。这需要打开 ArchLinux 终端,使用类似“ grub-mkconfig -o /boot/grub/grub.cfg ”的命令重新生成 Grub 的启动项。 总结: 以上就是 ArchLinux 双系统安装方法,在整个安装过程中也需要一定的知识和技术支持,因此需要有基本的 Linux 知识和操作经验。如果不熟悉 Linux 系统操作,也可利用相关论坛或教程进行学习,或寻找专业人员协助安装

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值