NixOS Live CD 救砖记录
前情提要:手贱在
.bashrc中添加了 nushell 的启动命令并且没有安装 nushell,导致系统无法登陆。SSH 等远程手段一并失效,只能通过 live CD 救砖。
1. 从 Live CD 启动 NixOS
没什么好说的,从 U 盘启动即可。
2. 生成用于救砖的系统镜像
基本上照着 NixOS 手动安装教程里的做就行。
- 挂载原有系统的 NixOS 分区
sudo mount /dev/sdx1 /mnt # sdx1 就是你原来挂载系统根目录的分区
sudo mount -o umask=077 /dev/sdx2 /mnt/boot # sdx2 是你原来挂载 /boot 目录的分区
sudo mount /dev/sdx2 /mnt/home # 以此类推,根据你自己的系统情况,把该挂载的都挂上
- 重新生成 NixOS 配置
由于我使用的是 NixOS + Flake + HomeManager 的配置模式,且已经将所有配置文件迁移至 home/user 目录,因此不需要备份配置。如果你的配置都放在 /etc/nixos 目录下,记得先备份。
备份后,重新生成配置
sudo nixos-generate-config --root /mnt --flake # 重新生成配置
nixos-install --flake /mnt/etc/nixos#nixos # 生成新系统镜像,重启后默认会启动这个新系统
如果 nixos-install 因为网络、配置等问题运行失败,"优化网络环境"/修改配置后重新运行一遍即可。
最后应该会让你输入 root 密码,由于这个系统仅用于救砖,随便设置点弱口令即可。
setting root password...
New password: ***
Retype new password: ***
- 重新启动
3. 在救砖系统中重建原系统
- 登录系统
进入救砖系统后需要输入用户名和密码,用户名为 root,密码就是你刚才设置的弱口令。
- 进入备份原系统配置文件的目录,修改之前的错误配置(我把启动 nushell 的配置删了)。
cd /home/uesr/nixos-config # 进入备份原系统配置文件的目录
nano home.nix # 编辑配置文件,修改错误
nixos-rebuild switch --flake .#your-host # 重建原系统
- 此时已经成功修复了原系统,重启即可

浙公网安备 33010602011771号