根据荒岛大佬的《甲骨文OracleLinux8手动重装系统为Debian10》操作的,区别仅仅是硬盘分区不同。
第一步,取得root权限。
sudo -i
第二步,查看硬盘分区编号,7.9系统没有/boot分区,没有额外的硬盘的话,硬盘分区一般为sda,记住/ 分区的编号,假设是8:3,则编号为3。
lsblk
第三步,在/ 分区下创建一个名为debian的目录,然后在此目录内下载debian网络安装的initrd和内核。
mkdir /debian && cd /debian
wget http://ftp.nl.debian.org/debian/dists/buster/main/installer-arm64/current/images/netboot/debian-installer/arm64/initrd.gz
wget http://ftp.nl.debian.org/debian/dists/buster/main/installer-arm64/current/images/netboot/debian-installer/arm64/linux
解压initrd:
gunzip initrd.gz
新建一个预配置文件:
nano preseed.cfg
写入下面的配置:
# 配置语言
d-i debian-installer/locale string en_US
# 配置键盘
d-i keyboard-configuration/xkb-keymap select us
# 使用自动的方式配置网络(DHCP)
d-i netcfg/choose_interface select auto
# 配置hostname和domain
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/hostname string imlala
# 配置软件源
d-i mirror/country string manual
d-i mirror/http/hostname string ftp.jp.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
# 开启root登录并设置root密码,关闭普通用户创建
d-i passwd/root-login boolean true
d-i passwd/make-user boolean false
d-i passwd/root-password password 123456
d-i passwd/root-password-again password 123456
# 设置时区为东八区
d-i clock-setup/utc boolean true
d-i time/zone string Asia/Shanghai
d-i clock-setup/ntp boolean false
# 硬盘分区,注意/dev/sda这里的设备名,要改为你自己的设备名,一般虚拟机如VMware/VirtualBox都是这个设备名
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
# 手动划分分区大小
d-i partman-auto/expert_recipe string \
boot-root :: \
1 1 1 free \
$bios_boot{ } \
method{ biosgrub } \
. \
256 2 256 fat32 \
$primary{ } \
$iflabel{ gpt } \
$reusemethod{ } \
method{ efi } format{ } \
mountpoint{ /boot/efi } \
. \
512 3 512 ext4 \
$primary{ } \
$bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /boot } \
. \
1024 5 1024 linux-swap \
$primary{ } \
method{ swap } format{ } \
. \
1 4 -1 ext4 \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
. \
# 因甲骨文的机器是efi引导,所以这里强制使用gpt分区表
d-i partman-efi/non_efi_system boolean true
d-i partman-partitioning/choose_label string gpt
d-i partman-partitioning/default_label string gpt
# 如果硬盘内之前有lvm或是raid的分区,全部删除
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/device_remove_lvm boolean true
# 下面的这些配置可以做到没有交互式的完成硬盘分区
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
# 禁止在安装的时候弹出CD/DVD扫描提示
d-i apt-setup/non-free boolean true
d-i apt-setup/contrib boolean true
d-i apt-setup/cdrom/set-first boolean false
d-i apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-failed boolean false
# 软件包选择
tasksel tasksel/first multiselect standard
# 安装额外的软件包,不更新系统
d-i pkgsel/include string openssh-server
d-i pkgsel/upgrade select none
# 禁止在安装的时候弹出popularity
popularity-contest popularity-contest/participate boolean false
# grub安装
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i grub-installer/bootdev string default
# 安装完成之后不要弹出安装完成的界面,直接重启
d-i finish-install/reboot_in_progress note
# 允许ssh服务使用root用户登录
d-i preseed/late_command string in-target sed -i 's/#PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
注意上面的内容需要全部复制,主题的原因,代码显示有问题。
这里有几个需要注意的位置,下面的/dev/sda改为你之前用lsblk看到的硬盘名:
d-i partman-auto/disk string /dev/sda
设置你的root密码,默认这里是123456,务必修改为一个高强度的密码:
d-i passwd/root-password password 123456
d-i passwd/root-password-again password 123456
配置和你机器连通性最好的源:
d-i mirror/http/hostname string ftp.jp.debian.org
完成之后把preseed.cfg内嵌到initrd里面去:
echo preseed.cfg | cpio -H newc -o -A -F initrd
重新压缩initrd:
gzip initrd
新建一个grub菜单:
nano /etc/grub.d/40_custom
写入如下配置:
menuentry 'debian 10 install' {
insmod part_gpt
insmod xfs
set root='hd0,gpt2'
linux /debian/linux
initrd /debian/initrd.gz
}
注意这里的hd0,gpt2,如果你的机器就一块硬盘那么hd0保持不变,后面的2改为你之前在lsblk看到的/ 分区编号。
更新grub配置,使之前的配置生效:
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
设置下一次重启的时候从我们新建的菜单来引导系统:
grub2-reboot "debian 10 install"
这样配置的好处是如果你的grub配置错误,不会让机器失联,你只需要在甲骨文的后台重启系统即可进入之前的系统。
重启机器,即可开始自动安装:
reboot
等大概几分钟,用新的密码登录ssh即可。
评论 (0)