使用 debootstrap
安装新版 Debian(如 Bookworm 或 Trixie)是一种高效灵活的方式,尤其适用于定制化安装或跨架构部署。以下是详细步骤及关键注意事项:
📦 一、准备工作
-
启动环境
- 从 Debian Live 镜像或现有 Linux 系统(如 Ubuntu)启动,确保联网。
- 更新软件源并安装依赖:
sudo apt update sudo apt install debootstrap btrfs-progs dosfstools grub-efi arch-install-scripts # 推荐安装的工具
-
分区与格式化
- 使用
cfdisk
或parted
分区(示例为 UEFI + Btrfs):/dev/sda1
:Btrfs 根分区(推荐compress=zstd
挂载)/dev/sda2
:Swap 分区/dev/sda3
:FAT32 EFI 分区(需mkfs.fat -F32
)
- 挂载分区:
sudo mount -t btrfs -o subvol=/@,compress=zstd /dev/sda1 /mnt sudo mkdir -p /mnt/{boot/efi,home} sudo mount /dev/sda3 /mnt/boot/efi sudo swapon /dev/sda2
- 使用
⚙️ 二、安装基础系统
-
运行 debootstrap
- 指定版本(如
bookworm
)和镜像源(国内源加速):sudo debootstrap bookworm /mnt https://mirrors.ustc.edu.cn/debian/ # 中科大源
- 若需安装特定子版本(如初始版),使用 Debian 快照仓库:
sudo debootstrap --arch=amd64 bookworm /mnt http://snapshot.debian.org/archive/debian/20230601T030639Z/ # 替换为快照日期
- 指定版本(如
-
复制配置
- 将主机源列表复制到新系统:
sudo cp /etc/apt/sources.list /mnt/etc/apt/ # 确保新系统使用最新源
- 将主机源列表复制到新系统:
🔧 三、进入 Chroot 环境
- 挂载虚拟文件系统
sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo mount --bind /dev/pts /mnt/dev/pts
- Chroot 并配置系统
sudo chroot /mnt /bin/bash export TERM=xterm-color # 避免终端显示问题
⚡ 四、系统配置
-
基础设置
- 更新软件包并安装内核:
apt update && apt full-upgrade -y apt install linux-image-amd64 firmware-linux # 安装内核及固件
- 设置时区、语言:
dpkg-reconfigure tzdata apt install locales && dpkg-reconfigure locales
- 更新软件包并安装内核:
-
网络与用户
- 配置网络(DHCP 示例):
echo "auto eth0" >> /etc/network/interfaces echo "iface eth0 inet dhcp" >> /etc/network/interfaces
- 设置 root 密码及创建用户:
passwd root adduser yourusername && usermod -aG sudo yourusername # 添加 sudo 用户
- 配置网络(DHCP 示例):
-
生成 fstab 文件
- 使用
genfstab
(需安装arch-install-scripts
)或手动编写:genfstab -U /mnt >> /etc/fstab # 自动生成 UUID 挂载项
- 使用
🖥️ 五、安装引导程序
- GRUB 配置(UEFI)
apt install grub-efi # UEFI 系统 grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Debian update-grub # 生成 GRUB 配置文件
- BIOS 系统
apt install grub-pc grub-install /dev/sda # 目标磁盘 update-grub
🚀 六、收尾工作
- 卸载并重启
exit # 退出 chroot sudo umount -R /mnt # 卸载所有挂载点 sudo reboot
- 首次启动后任务
- 安装必要软件(如 SSH、网络管理):
apt install openssh-server network-manager
- 安装必要软件(如 SSH、网络管理):
⚠️ 关键问题处理
- 依赖错误:确保
debootstrap
时使用可靠的镜像源(如http://ftp.debian.org
),避免损坏的源导致失败。 - 无法确定发行版代号:检查分区是否挂载正确,或重新挂载安装介质(常见于 USB 安装)。
- 跨架构安装(如 ARM):
需添加qemu-user-static
并分阶段执行:sudo debootstrap --arch=armhf --foreign bookworm /mnt http://ftp.de.debian.org/debian cp /usr/bin/qemu-arm-static /mnt/usr/bin/ chroot /mnt /debootstrap/debootstrap --second-stage # 完成解压
💎 Debian 版本与源对照表
版本代号 | 状态 | APT 源示例 |
---|---|---|
bookworm |
Stable (12) | https://deb.debian.org/debian |
trixie |
Testing (13) | http://deb.debian.org/debian testing main |
sid |
Unstable | http://deb.debian.org/debian sid main |
💡 总结:debootstrap 的核心优势
- 无安装程序依赖:直接通过宿主系统部署,适合救援、容器或定制化环境。
- 文件系统自由:支持 Btrfs 子卷、LVM 加密等复杂布局。
- 版本精确控制:结合快照仓库(
snapshot.debian.org
)可安装任意历史版本。
执行前务必备份数据!关键操作(如分区、GRUB 安装)错误可能导致系统无法启动。
发表回复