通过网络启动的方式安装 Debian
本文主要介绍如何使用仅 48 MB 的镜像网络启动安装 Debian Linux。
引言
作为一个极简主义者,对于那些巨大的镜像显然是不感冒的。对于几乎所有系统,我都更喜欢用更小的网络启动镜像来安装,所以便有了这篇文章。
优缺点
使用网络启动镜像安装系统的优点是:
- 需要下载的内容是最少的
- 可以根据自己的需要方便的增加模块
缺点是:
- 需要可以上网的环境
- 相比于普通的安装方式要稍显复杂
环境
以下是本文的实验环境:
- VMware Workstation 16.1.2
- mini.iso
- 可以上网的宿主机
mini.iso 是本文用于网络启动安装 Debian 所准备的镜像,你可以点击以下链接下载。
https://deb.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/mini.iso
优化虚拟机设置
具体优化项目可见:提升 VMware Workstation 性能和易用性的几个 Tips。如果你使用物理机进行安装,那么可以直接跳过此步。
安装
启动安装程序
刚开机,会显示出如下界面:
你可能会很迷惑,不是说好的要安装系统吗?怎么跳出 GRUB 命令行来了?
因为我们用的是 mini.iso,是所有镜像中最小的一种,仅包含了必须文件(包括内核、Initrd 文件等)。所以我们需要手动输入命令以装载内核文件和 Initrd 文件。
当你的启动固件为 BIOS
时,输入以下命令(可以使用 Tab 键进行补全):
linux /linux
initrd /initrd.gz
boot
如果你的启动固件为 UEFI
,则输入以下命令:
linuxefi /linux
initrdefi /initrd.gz
boot
更改 debconf priority 级别
将命令输入之后,我们就可以看到接下来的安装程序了。
进行此步骤的目的是,可以让我们对接下来的安装更为可控。
按 Tab 键移动到 <Go Back>
,然后按 Enter 键确认,此时界面如下:
我们选择 Change debconf priority
,选择之后此时界面如下:
我们选择最低的 low
级别并确认,在之后的界面直接按回车即可回到我们一开始的 Language
界面。
选择语言
语言方面,我个人直接选择 English
,之后进入选择国家和地区步骤,我选择了我自己的所在地,你可以根据自己的想法选择。
之后我们进行 locales
的配置,我选择了 en_US.UTF-8
。
然后让我们选择附加的 locales
,此步骤我没有附加其它 locales
,而是直接选择 Continue
进行到下一步。
此时你会发现界面又回到了选择步骤的页面,并且自动帮你选择了下一步配置项,以后每配置完一项之后回到这个界面都可以直接按回车确认以进行下一步骤。
选择键盘布局
键盘布局方面,中国的键盘布局和美国的键盘布局是一样的,所以直接选择 American English
就可以了。
配置网络
接下来我们配置网络,先移动到 Detect network hardware
选项,然后确认以检测网络硬件,之后我们进入网络配置界面。
由于我使用的虚拟机网卡模式为 NAT 模式,自带 DHCP,所以我直接选择了自动配置网络选项。
接下是配置网络链路检测时间上限,我使用了默认的 3 秒,如果有别的需求可以更改。
经过 DHCP 获取到地址之后,我们开始配置主机名、域名:
配置镜像源
由于我们使用的镜像是网络启动镜像,其中并没有包含 https
的 CA 证书的相关包(Package),所以我们选择 http
协议。
接下来的步骤我就不一一截图了,选择对于你来说速度最快的镜像源即可,我选择的是 BFSU 镜像源。
之后的界面是配置 HTTP 代理,如果有需要可以在这里配置。
然后我们开始选择 Debian 的版本,Debian 共有三个版本,分别是 Stable
、Testing
、Unstable
,顾名思义,分别是稳定版、测试版和不稳定版本。我个人选择使用稳定版本。
下载组件
选择好镜像源之后,我们开始下载必须的组件。
在这个界面可以选择你需要下载的组件,我本次的安装是最小安装,所以并没有下载额外的组件。
开始下载组件。
等进度条走完之后,我们进入到下一步。
设置用户和密码
接下来我们开始设置用户和密码。首先开启 shadow passwords
,开启此功能可以让我们的系统更加安全。
之后就是让我选择是否允许 root 用户登录,我个人选择了允许登录,可按个人喜欢选择。
设置 root 用户密码。
再输一遍以确认密码。
接着我们创建普通用户。
输入用户全名,注意,此处的全名不等同于用户名,可置空。
此时才开始输入用户名。
输入用户密码。
之后再输入一遍以确认密码没有输错即可。
设置时钟
选择是否使用 NTP 来校时,NTP 是一种校时服务,可以实时与 NTP 服务器同步时间,我选择 Yes
。
设置 NTP 服务器地址,我这里设置的是中国官方的 NTP 服务器:ntp.ntsc.ac.cn
。
设置时区。
分区
首先直接回车以扫描磁盘,之后会自动帮我们移动到下一个步骤,我们只需再按一次回车。
接下来我们选择磁盘分区方法,我个人选择了手动分区,也就是最后一个选项。
基本的磁盘分区方案可以查看 Red Hat 的官方文档:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/performing_a_standard_rhel_installation/partitioning-reference_installing-rhel
注意,红帽官方文档使用的容量单位为 GiB 而不是 GB,但是 Debian 安装程序中使用的单位是 GB,所以需要换算。
以下是我的分区方案:
将更改写入硬盘。
安装基本系统
直接回车以开始安装基本系统。中途会让我们选择需要安装的内核,如果你所安装的机器是云服务器且使用的技术并非 Hyper-V VMware,同时配置又较低,那么就可以使用 linux-image-cloud-amd64
,此内核是经过精简的内核,更适用于配置较低的机器。其它情况下一般选择安装 linux-image-amd64
。
接下来会让你选择需要包含在 Initrd 中的驱动,如果后续需要添加许多不同种类的硬件设备,那么选择第一项。如果后续不需要添加其它种类的硬件设备,则选第二项以精简 Initrd。
配置包管理器
一般情况下我们也会使用非自由软件,所以我们选择 Yes
。
我们在需要编译程序的时候,可能会用到程序的源代码文件,所以该选项我们也选择 Yes
。
接下来选择要包含的存储库,如果你正在安装的机器处于国内,则去掉第一个选项,如果在国外,则勾选所有选项即可。国内连接到 Debian 官网并不是很顺畅,所以我们需要暂时取消勾选第一项,后面我们可以通过更改配置文件的方法来重新启用。
选择要安装的软件
回车进入此步骤后,会让你选择是否自动安装安全更新,我个人推荐第二个选项,也就是开启自动安装安全更新,这样的话 Debian 官方发布安全更新后,包管理器会帮我们自动安装从而省去手动安装的麻烦并且可以让系统更加安全。
之后会让我们选择是否加入包使用统计调查,会将你的包使用情况自动上传到服务器,由于担心隐私泄露我这里选择了 No
。
接下来我们选择需要安装的软件,我个人倾向于全部不选择以达成最小化安装,之后有需要了再通过包管理器等方式安装。
安装 GRUB
进入此步骤后会让你选择是否强制将 GRUB 安装到 EFI 分区上,建议选择 No
。对于大部分机器来说,选择 No
都可以正常开机,并且这种实现更为标准和优雅,如果你的机器厂家的 UEFI 做的不是很好,可能会导致无法开机,此时再选择 Yes
即可。
完成安装
选择 Finish the installation
之后会让你决定是否将硬件时钟调整为 UTC 时区,如果你的机器中还装有其它系统,比如 Windows,则建议选择 No
,反之则选择 Yes
。
最后,安装完成,回车确认之后就会重新启动,之后我们就可以看到你安装好的 Debian Linux 了。