通过网络安装全新的 Debian 10 Buster

由于众多云主机商家的系统模板总是让人不满意,不是多装了软件就是瞎 JB 写了一些配置,而且 Debian 10 都发布有一段时间了,国内云主机商能跟上步伐的很少,京东云甚至直接不提供 Debian 系统模版,而且发了几次工单都没得到任何反应,这是绝对不能忍的。

作为一只有洁癖的人,我决定亲自动手重新安装腾讯云和京东云的系统,这里我们以腾讯云为例,希望安装的操作系统是最新版本 Debian 10 Buster.

1、必要条件

必要条件

  1. 你得有后台登陆权限
  2. 重装系统并选择 Debian 或者 Ubuntu
  3. 云主机商得提供 Console (类似 VNC ,腾讯云叫做登录)
  4. 云主机商使用的 KVM 构架,并且没有使用 LVM 分区
  5. 使用 Chrome 浏览器,Firefox 的某些快捷键会冲突

2、记录主机的相关信息

开通云主机之后,首先我们需要记录一下 IP 等相关信息,腾讯云的网络分为两种,分别是基础网络和私有网络(VPC),机器中全都是使用内网 IP 连接,再绑定外网 IP。

这里我们以基础网络为例:

root@VM:~# ip route

default via 10.144.64.1 dev eth0 onlink 
10.144.64.0/18 dev eth0 proto kernel scope link src 10.144.78.218
root@VM:~# cat /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
auto eth0
iface eth0 inet static
address 10.144.78.218
netmask 255.255.192.0
gateway 10.144.64.1

其中 10.144.78.218 为内网 IP, 网关是 10.144.64.1, CIDR 形式是 10.144.78.218/18,其实这些信息在 /etc/network/interfaces 中全都以静态IP的形式写出来:

address 10.144.78.218
netmask 255.255.192.0
gateway 10.144.64.1

3、下载 Debian 10 硬盘安装文件

由于我们是全新的机器,不需要保留任何数据也不需要保留任何分区信息,所以我们直接按照 Debian 官方的说法,通过 GRUB2 启动进行抹盘安装

首先,新建立一个 /boot/newinstall 目录并且下载必要的两个文件 linuxinitrd.gz

mkdir /boot/newinstall && cd /boot/newinstall
wget http://ftp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
wget http://ftp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux

首先,你需要保证 /etc/default/grub 文件是可以让你选择进入界面的,举例如下

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT=50
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

主要是其中正文的第二行 GRUB_TIMEOUT=50 建议将数值改大一些,这样有足够时间进入启动界面选择重新系统的启动项,否则就直接进入默认系统了。
另外如果这个文件更改过,那么还需要 update-grub 命令重新更新 grub 引导程序。

因为 Debian 8 使用的是 GRUB2,所以我们直接修改 /boot/grub/grub.cfg 文件,在相应位置加入以下启动项

menuentry 'Debian Stable New Install' {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
linux /boot/newinstall/linux
initrd /boot/newinstall/initrd.gz
}

一般是寻找 menuentry,加到相应位置,大概是这个位置,注意括号

如果是更旧的系统,比如 Debian 7 或 Ubuntu 14.04 用的 GRUB1,那么你需要修改 /boot/grub/menu.lst 在相应位置加入启动项

title  Debian Stable New Install
root   (hd0,0)
kernel /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz

4、安装全新的 Debian 10 Buster

首先,你需要先在腾讯云后台登录一下远程连接,首次登录需要验证一下手机号,验证完再次登录就不需要了。进入腾讯云后台后,选择相应云主机后,点最右边的“登录”,进入 VNC

首先关掉页面中的登录项,再点右上角的“其它登录方式”

选择“浏览器VNC方式登录“,立即登录

正常验证手机号

之后我们直接在 SSH 用 reboot 命令重启,再次在网页中以 VNC 方式,按照上述方法登录到机器中,然后就可以看到腾讯云的机器在让你选择启动项目的界面,依次选择 Advanced options for Debian GNU/LinuxDebian Stable New Install 然后回车即可


接着选择安装的语言,建议默认选择 English ,如果选择其他语言可能有些程序会出现各种奇怪错误

然后选择国家,这回影响到后续的服务器默认源和时区,建议选择服务器所在地,因为我们的服务器是香港的,所以我们选 Hong Kong,如果是中国大陆的话在 0ther > Asia > China


然后选择键盘类型,肯定直接选择默认的英语键盘

接着会给你配置网络信息,默认 Debian 的安装会去尝试使用 DHCP 获取网络信息,但基础网络的腾讯云由于使用内网IP,所以会失败,无法获取网络信息

虽然京东云同样也是内网IP,但却可以正常获取网络信息,无需手动配置。这里我们使用的是腾讯云,所以手工配置一下 IP 即可,这时候就需要我们在第二步里记录下的 IP 信息了,按照实际情况填写

我们选择手工配置网络

输入 IP 地址的 CIDR 形式,比如 10.144.78.218/18

输入网关地址,比如 10.144.64.1

输入 DNS 地址,比如 8.8.8.8

这时就会乖乖地去获取网络信息了

接着输入 hostname 前缀

然后输入 hostname 的域名,没有的话可以不写,也可以乱写,写了就会变成 DNS 搜索域名,一般不写也没问题

然后选择镜像地址

由于我的云主机是在香港,所以首先选择 China, 然后选择 deb.debian.org。如果是大陆的机器,强烈推荐选择第一个 mirrors.tuna.tsinghua.edu.cn

如果没有 HTTP 代理,就不需要理会,直接回车继续

接着就会开始检查需要下载的文件了

检查完毕后,会让你输入 root 密码并进行二次确认


注意 如果指定了 root 密码,那么默认是不装 sudo 的,普通用户切换 root 的时候需要用 su 命令,一般如果关闭了 root 密码登陆的话(默认都是关闭的,所以安装结束后需要打开 root 密码登录),不指定 root 密码也无大碍

然后指定一个普通用户的名字并确认密码,如果网速不行,远程连接是很卡的,可以按 Tab 键到 Show Password in Clear 查看自己输入的密码是否正确,没问题再按回车确认



接下来会配置网络时间服务器(NTP)

然后就是等待下载安装各种必要的软件

接着会让你设置硬盘分区,如无特殊需求,都按照默认的确认即可

选择安装系统的硬盘

选择默认分区

确认分区无误

再次确认

好了,开始安装了

Debian 安装过程中会跳出是否愿意加入安装统计调查,自行选择 NO 即可

接下来会询问你需要装哪些软件,这里我们特别注意,因为是服务器,不需要桌面客户端,所以按空格Debian desktop enviroment 以及 print server 去掉,然后一定要勾选上 SSH server, 否则没法用 SSH 连接管理服务器

继续安装软件

如果没有特殊需求,我们还是用 GRUB 来引导启动系统

选择安装 GRUB 引导程序的硬盘

开始安装 GRUB,安装完成,选择继续,并重启

自动重启后,即可看到选择启动顺序里只有 Debian 一个选项了,继续后会出现登陆界面

这样我们就已经安装好整个系统了,然后由于默认是关闭 root 用户密码登录的,所以还需要通过 VNC 设置允许 root 用户通过密码登录。继续在 VNC 中使用 root 用户和密码登录

然后编辑 SSH 配置 vi /etc/ssh/sshd_config

在合适位置输入 PermitRootLogin yes

然后保存 reboot 重启机器。接着就可以使用 root 用户和密码进行 SSH 登陆操作,和常规的服务器并无区别,最后如有需要可以手工修改 /etc/network/interfaces 配置网络。

参考:烧饼博客

标签: Debian

精彩评论
  1. 小红 小红

    真棒 加油我觉得你是明日之星

发表评论: