Arch Linux 密码绕过指南
适用系统
- Arch Linux
- Manjaro
- EndeavourOS
- Garuda Linux
- ArcoLinux
- BlackArch
- 其他基于 Arch 的发行版
Arch Linux 特点
- 滚动更新发行版
- 使用 systemd
- 默认无图形安装器
- 文件系统通常为 ext4 或 Btrfs
- 无 SELinux(除非手动安装)
- 简洁配置,少有安全限制
方法一:init=/bin/bash(推荐)
步骤 1:编辑 GRUB/systemd-boot
GRUB 启动器
启动时按
e编辑启动项找到
linux行:
1 | linux /vmlinuz-linux root=UUID=xxxx rw quiet |
- 在行末添加:
1 | init=/bin/bash |
- 按 Ctrl+X 或 F10 启动
systemd-boot(常用于 UEFI)
启动时按
e编辑在 options 行末添加
init=/bin/bash按 Enter 启动
步骤 2:修改密码
1 | # 通常已经是读写模式,检查 |
方法二:single/rescue 模式
GRUB 启动参数
在 linux 行末添加以下任一:
1 | single |
1 | 1 |
1 | systemd.unit=rescue.target |
1 | systemd.unit=emergency.target |
区别
- rescue.target:挂载文件系统,启动少量服务
- emergency.target:最小化启动,只有根分区
方法三:Arch Linux Live USB
步骤 1:启动 Live 环境
使用 Arch Linux 安装 ISO 启动
等待进入 root shell
步骤 2:挂载目标系统
1 | # 查看分区 |
步骤 3:arch-chroot(推荐)
Arch 提供便捷的 chroot 脚本:
1 | # 使用 arch-chroot(自动挂载 proc/sys/dev) |
传统 chroot 方式
1 | mount --bind /dev /mnt/dev |
方法四:直接修改 shadow
通过 Live 环境
1 | mount /dev/sda2 /mnt |
清空密码
1 | root::18000:0:99999:7::: |
设置已知密码
1 | # 生成哈希 |
Manjaro 特别说明
GRUB 菜单
Manjaro 默认显示 GRUB 菜单,操作与 Arch 相同
Manjaro 工具
Manjaro 安装介质提供图形化工具:
- 从 Live USB 启动
- 使用 Manjaro Hello 或终端
- 方法与 Arch 相同
Manjaro 特定恢复
1 | # 使用 mhwd-chroot(Manjaro 工具) |
EndeavourOS
基本与 Arch 相同
- 从 EndeavourOS Live 启动
- 使用
arch-chroot或手动 chroot - 修改密码
systemd-boot 启动器
许多 Arch 安装使用 systemd-boot 而非 GRUB:
编辑启动项
启动时按
e编辑当前条目在
options行添加:
1 | init=/bin/bash |
- 按 Enter 启动
默认配置位置
1 | /boot/loader/entries/*.conf |
加密分区 (LUKS)
解锁加密分区
1 | # 解锁 |
注意
需要 LUKS 密码才能继续
Btrfs 子卷(如使用)
常见 Arch Btrfs 布局
1 | @ / |
挂载
1 | # 挂载根子卷 |
常见分区方案
BIOS + MBR
1 | /dev/sda1 /boot ext4 |
UEFI + GPT
1 | /dev/sda1 /boot/efi vfat (ESP) |
UEFI + Btrfs
1 | /dev/sda1 /boot/efi vfat (ESP) |
常见问题
Q: 没有 GRUB 菜单?
A:
- 启动时按住 Shift(BIOS)
- 或在 UEFI 启动选择界面选择正确的启动项
- systemd-boot 按 Space 或 ↑↓ 键
Q: arch-chroot 命令找不到?
A: 确保从 Arch 安装介质启动,或使用传统 chroot 方法。
Q: 没有 root 用户?
A: 某些配置禁用 root,修改普通用户密码并使用 sudo。
Q: 键盘布局错误?
A:
1 | loadkeys us # 美式键盘 |
Q: reboot 无效?
A:
1 | echo b > /proc/sysrq-trigger |
安全说明
Arch Linux 默认:
- 无 SELinux
- 无 AppArmor(除非手动配置)
- 无密码复杂度要求
- 操作相对简单直接
适用系统:Arch Linux, Manjaro, EndeavourOS, Garuda, ArcoLinux, BlackArch
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 CodeHut!
评论
