如何修复ArchLinux引导问题?30秒教你搞定! (修复archlinux 引导)
ArchLinux是一款Linux操作系统,它的开发初衷是为了给Linux爱好者和专业人士提供一个更加灵活和高效的操作系统。然而,与其他Linux发行版一样,使用ArchLinux也会遇到各种引导问题,这些问题可能会导致你的操作系统无法启动或者启动异常缓慢。本篇文章将会介绍如何通过简单的步骤修复ArchLinux的引导问题,只需要30秒,你即可搞定。
步骤一:检查硬件
我们需要确定硬件是否正常运作。开机时,你需要按下你们机器相应的快捷键进入BIOS或者UEFI模式,并检查硬盘的连接是否正常。如果发现连接有问题,那么你需要把硬盘插好并重新启动电脑。一旦硬盘没有异常,则需要检查硬盘是否有损坏或者出现了坏道,可以通过在Windows下使用磁盘检查工具检查。如果损坏或坏道,那么你需要更换这个硬盘或者进行数据备份和修复。
步骤二:进入ArchLinux ISO
如果问题不在硬盘上,那么说明可能是引导引起的。接下来我们需要进入ArchLinux的ISO,可以从官方网站下载ISO镜像然后将其写入U盘或者刻录成光盘。在进入ArchLinux ISO之前,你需要在BIOS/UEFI设置里面将系统从存储介质引导。当你的计算机能够从ISO镜像引导时,你可以看到一个Arch的引导菜单。你需要选择ArchLinux进入单用户模式。
步骤三:安装所需的软件
在进入ArchLinux单用户模式后,你需要安装一些必要的软件包,以便你能够修复你的引导问题。你需要使用一切还原工具(all file tool),使用该工具可以快速地进入并进行文件操作。使用以下命令:
“`
pacman -Syy arch-install-scripts
“`
以上命令会安装所必需的软件包,以便于进行接下来的操作。
步骤四:恢复引导
恢复引导的步骤可能会有所不同,具体情况可能取决于你所遇到的问题。如果你的引导问题是由Grub引起的,那么你可以使用以下命令修复引导:
“`
grub-install /dev/sda
update-grub
“`
此外,如果你的引导问题是由systemd-boot引起的,那么恢复的步骤应该是以下这样:
“`
bootctl install
“`
以上命令会重新安装systemd-boot并自动生成引导配置文件。
通过本文所提供的简单步骤,你可以快速地修复ArchLinux的引导问题。检查硬件、进入ArchLinux ISO、安装必要的软件包以及恢复引导,这四个步骤构成了修复引导的核心内容。在执行命令时,需要根据具体引导问题进行相应的更改。希望本文能够帮助你解决你遇到的ArchLinux引导问题。
相关问题拓展阅读:
- archlinux安装过程中重启系统后出现问题
- 安装ArchLinux到U盘(四)安装Archlinux
archlinux安装过程中重启系统后出现问题
不知道
还好你是在虚拟机中安装,谨记不确定后果的操作不要实施,所以不要让负面情绪影响对计算机的操作。
archlinux作为滚动发行版,更新频繁,网上的乱慎模“教程”很容易过时,其wiki的资源相对较新,不确定时建议
优先参考
archwiki的资料。
你安装时可能遗漏部分步骤:
1、安装GNOME桌面系统时,孝烂至少要有以下步骤:
pacman -S xorg-server xorg-xinit xf86-video-vesa
pacman -S gnome
~/.xinitrc exec gnome-session
2、虚拟机安装后启动未更改启动哗缓顺序
virtualbox启动时确认键盘捕获后按F12
确认你选择的Boot loader的启动顺序为首位
3、取消“启用EFI”选项后,GPT/BIOS引导缺少BIOS引导分区,故失败。
4、启动后出现fs0等,表示进入UEFI shell,需要查阅相应手册。
参考资料:
Arch Linux 中差大文文档非常详细,既然楼主用虚拟机虚敬竖安装,那么探索系统安装出现问题的解决办法远比安装系统本身更为重要,所以,多看看安装部分稿唤的文档吧
安装ArchLinux到U盘(四)安装Archlinux
点击 Power on this virtual machine 启动 Installer 虚拟机
点击 Enter 启动Archlinux安装镜像
等待启动完毕,输入 llk 应该显示下灶谨面的内容
这时候U盘还没有连接至虚拟机,点击菜单VM > Removable Devices > USB Device > Connect(Disconnect from Host),将U盘连接至虚拟机,其中
USB Device
是U盘的名称,U盘不同名称应该也是不同的。
然后输入 llk 应该显示下面的内容,可以看到已经有 sdb 这个磁盘了
以下的内容基于Archlinux官网的wiki,如果有不桥做明白的地方可以参考 官方Wiki
这里我们选择分三个区:
输入 fdisk /dev/sdb 进入分区程序
输入 o 开始分区
输入 n 新建EFI分区
点击 Enter 选择默认分区序号
点击 Enter 选择默认起始扇区
输入 +128M 新建EFI分区大小为128M
输入 n 新建根分区
点击 Enter 选择默认分区序号
点击 Enter 选择默认起始扇区
输入 +20G 新建根分区大小为20G,敏辩衡该分区容量可根据U盘容量自行决定,不一定非得是20G
输入 n 新建根分区
点击 Enter 选择默认分区序号
点击 Enter 选择默认起始扇区
点击 Enter 选择默认容量,剩余全部未分配分区
输入 p 查看分区信息
输入 w 写入分区信息
输入 llk 可以看到已经有 sdb 磁盘,下面有 sdb1 , sdb2 , sdb3 三个分区
输入 mkfs.fat -F 32 /dev/sdb1 格式化 sdb1 为FAT32格式
输入 mkfs.fat -F 32 /dev/sdb3 格式化 sdb3 为FAT32格式
输入 mkfs.ext4 /dev/sdb2 格式化 sdb2 为ext4格式,如果出现 Proceed anyway? ,输入y继续格式化
输入 mount /dev/sdb2 /mnt 挂载 sdb2 到 /mnt
输入 mkdir -p /mnt/boot/efi 创建 /mnt/boot/efi 目录
输入 mount /dev/sdb1 /mnt/boot/efi 挂载 sdb1 到 /mnt/boot/efi
sdb3 U盘分区无需挂载
输入 cd /etc/pacman.d 选择目录
输入 cp mirrorlist mirrorlist.bk 将 mirrorlist 拷贝到 mirrorlist.bk
输入 cat mirrorlist.bk | grep China -A 1 | grep -v ‘-‘ > mirrorlist 将所有中国的镜像写入 mirrorlist
输入 nano mirrorlist 编辑镜像列表
经测试,清华和163的镜像是最快的,这里可以根据实际测试来决定选择哪一个。可以在 Server 前面写入 # 来注释掉该镜像。
编辑完成之后 点击 CTRL + X 退出编辑
点击 y
点击 Enter ,保存文件
输入 pacstrap -i /mnt base base-devel ntfs-3g 安装系统,然后点击 Enter
点击 Enter
点击 Enter
然后静静地等待安装完成。
输入 genfstab -U -p /mnt > /mnt/etc/fstab 生成文件系统表
输入 arch-chroot /mnt 进入新系统
输入 nano /etc/locale.gen 选择文字编码
将 zh_CN 开头的行全部取消注释,再找到 en_US.UTF-8 UTF-8也取消注释。 编辑完成之后保存。nano 的使用方法不再赘述
输入 locale-gen
输入 nano /etc/locale.conf 在文件中写入 LANG=en_US.UTF-8 保存
输入 rm /etc/localtime 删除原 UTC 时区
输入 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置计算机系统时区为上海
输入 hwclock –systohc –localtime 设置硬件时间为本地时间
输入 echo steven > /etc/hostname 将主机名配置成 steven,这个名称可以自行更改
输入 nano /etc/mkinitcpio.conf 找到下面这行
将 block 写到 udev 之后,然后保存,这样做就是为了让u在启动的之后首先加载
输入 mkinitcpio -p linux ,生成启动镜像
输入 passwd 设置 root 用户的密码,注意输入密码时没有回显。
输入 pacman -S zd1211-firmware 安装无线网卡驱动
输入 pacman -S iw wpa_supplicant wireless_tools net-tools 安装网络工具
输入 pacman -S dialog 安装终端对话框
输入 pacman -S grub 安装引导程序
输入 grub-install –target=i386-pc /dev/sdb 安装BIOS引导
输入 blkid , 将 sdb2 的 UUID 记下来
这里 UUID 是 97b5e415-46ab-4e35-a804-6ddaez5793ac,每个分区的UUID应该都是不同的,下面具体根据自己的UUID来做修改,这是为了用 UUID 做标识来启动操作系统,否则换了电脑硬盘标签变化就不能启动了
输入 nano /boot/grub/grub.cfg , 修改grub配置文件
将所有出现的UUID全部改成 sdb2 的UUID,过程略复杂,谨慎修改,然后保存
输入 exit 退出新系统
输入 shutdown -h now 关闭 Installer 虚拟机
参考 新建虚拟机
选择安装源时,选 I will install the operating system later.
名称写成 Boot,或者可以自定义
选择磁盘时,选择 Use a physical disk(for advanced users)
然后选择 PhysicalDrive1,选择Use individual partitions
勾选前两个分区
如果发现分区信息不对,可以返回上一步,重新选择另一个PhysicalDrive,然后再试
点击 Power on this virtual machine 启动测试虚拟机
启动之后
这时候输入 用户名 root 和 passwd 设置的密码就可以登陆了
如果有USB的无线网卡,挂到虚拟机里,输入 wifi-menu 就可以选择无线网络了
输入 shutdown -h now 关闭测试虚拟机
如果关机之后,Windows 出现如下对话框,请点击 取消(Cancel)
编辑 Installer 虚拟机,点击 Edit virtual machine settings
在Options选项卡,Advanced选项右侧,将Firmware type 改为UEFI,
不要勾选 Enable Secure Boot
,然后保存
和前文一样
输入 grub-install –target=x86_64-efi –efi-directory=/boot/efi –removable 安装UEFI启动项
输入 shutdown -h now 关闭 Installer 虚拟机
和前文一样,修改 Boot 虚拟机的启动模式为 UEFI,
不要勾选 Enable Secure Boot
启动 Boot 虚拟机,这时应该可以启动了,然后关闭 Boot 虚拟机
很遗憾,目前为止,我还没有找到解决 Secure Boot 的方法,所以只能先关闭Secure Boot 再启动U盘中的 Archlinux。
网上所有我见过的解决Secure Boot的方法,都无法解决U盘移动后,磁盘信息可能会发生变化的情况,而且一般情况下不同计算机中的磁盘信息显然都是不同的。
经测试,Secure boot 安装在硬盘中是可以使用的,具体参考 安装ArchLinux到硬盘
如果BIOS(legacy)和UEFI两种启动方式,都可以启动,那么说明Archlinux已经安装成功。这时 Installer 虚拟机就失去了它的作用,可以删除了。
普通PC可以在开机的时候狂按 F2 、F12、Enter 来调整启动的顺序,理论上就可以进入了。
MAC 机器在开机的时候,按住option键,出现启动选项之后,选择 EFI boot 就可以了。
关于修复archlinux 引导的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。