用 grml iso 作为急救盘 dd 安装 debian 12 系统
需求:一台物理机,主板不支持EFI,有 LSI MTP 阵列卡组成 6TB 的存储。想达到不使用IPMI,在原 Debian 系统环境中,能远程重装系统。
尝试:使用 grml iso 作为急救系统,在内存中使用,再通过 dd 命令,或 grml-debootstrap 重新安装 Debian 系统。
步骤:
- apt install grml-rescueboot # 安装 grml急救 工具
- mkdir /boot/grml 和 wget -O /boot/grml/grml.iso https://download.grml.org/grml64-small_2022.11.iso # 下载 grml 的iso文件
- sed -i 's|additional_param=""|additional_param="ssh=mjj2023"|g' /etc/grub.d/42_grml # 添加 grml 的启动参数,即 ssh=mjj2023 。效果是自动启动 ssh 服务,且 root 的密码是 mjj2023
- update-grub # 更新 grub 配置
- grub-reboot 2 # 下次启动,选择从第二项启动,即加载 grml iso 文件
- reboot # 重启系统。如果顺利,机子重启后,会自动加载 grml iso 文件。 grml 会自动获取IP,然后启动 ssh 服务。机子可从远程ssh连接,即可登录到 grml 的急救系统
以下部分是具体实例,仅参考。
- ip addr add 66.181.33.88/32 dev eth0 和 ip route add default dev eth0 via 100.103.2.49 onlink # 如果成功通过IPv6 ssh连接到 grml 急救系统,可执行以上两条命令,为 eth0 网卡临时配置IPv4
- wget -O- https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-nocloud-amd64.raw | dd of=/dev/sda status=progress # 这里是使用debian官方的硬盘镜像。dd 好后,需要设置root密码、允许root用户凭密码ssh登录,还需留意物理机的网卡名称可能会随环境变化
- cfdisk /dev/sda # dd 好后,调整分区大小。请留意,如果是使用debian官方的硬盘镜像,调整分区后,是否需要重新安装grub,否则重启后,会出现 grub rescue
- resize2fs /dev/sda2 # 调整文件系统大小
参考:
- https://grml.org/tips/
- https://help.ubuntu.com/community/Grub2/ISOBoot
- https://grml.org/grml-debootstrap/
- https://wiki.debian.org/GrubLegacyRecover
- https://wiki.debian.org/NetworkInterfaceNames
- https://hostloc.com/thread-881158-1-1.html
- https://hostloc.com/thread-1141170-1-1.html
- https://hostloc.com/thread-1013266-1-1.html
- https://hostloc.com/thread-1191827-1-1.html