DD官网Debian11镜像到VPS

DD官网Debian11镜像到VPS

以 DHCP 获取 IPV4/IPV6 地址以及无后台 VNC 屏幕举例,支持 bios/efi 引导的小鸡,包括不限于:aws、az、gcp、龟壳、阿里云、腾讯云、等。

警告!此操作硬盘数据会全部丢失!
警告!此操作硬盘数据会全部丢失!
警告!此操作硬盘数据会全部丢失!

以实际硬盘是 vda举例 可通过 lsblk 查看实际硬盘

1、首先给小鸡 DD个 OpenWrt 内存系统

echo 1 > /proc/sys/kernel/sysrq
echo u > /proc/sysrq-trigger

curl -Lo- "https://drive.google.com/uc?export=download&id=1cZZlTQaD8ydPAaQYFMSvsDe3HAmqj64Z" | zcat | dd of=/dev/vda bs=1M

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

 

2、等待 1-3分钟重启进入 OpenWrt内存系统

ssh地址:你小鸡 IPV4 or IPV6地址
ssh账号:root
ssh密码:hostloc.com

 

3、DD Debian官方最新系统到小鸡硬盘

3.1、DD原始 raw镜像(2G 不利于网络传输 他不需要解压 CPU占用很小)

curl -Lo- "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-genericcloud-amd64.raw" | dd of=/dev/vda bs=1M

3.2、DD压缩后的 raw镜像 tar.xz格式(不到200M 网络传输快 CPU占用相对原始 raw镜像较高)

curl -Lo- "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-genericcloud-amd64.tar.xz" | tar -xJO | dd of=/dev/vda bs=1M

 

4、DD完之后修复硬盘、重读分区并扩容

4.1、修复硬盘

parted -l

 4.1、获取分区表

partprobe

 4.2、查看实际硬盘名称

lsblk

 4.3、扩容 Debian 11系统分区到最大

parted -s /dev/vda resizepart 1 100%

 4.4、扩容 Debian 11系统分区的文件系统到最大

e2fsck -f /dev/vda1
resize2fs /dev/vda1

 

5、修改 ssh密码、密钥,并允许 ssh以密钥方式登录

5.1、挂载 Debian系统分区到 /mnt目录 并查看硬盘扩容是否成功

mount /dev/vda1 /mnt
df -h

 5.2、ssh密码生成

root@debian:~# openssl passwd -1 hostloc.com
$1$DiGZGr2m$Ht8S5tfK9oXxLwp6LjPUT0

 5.3、修改刚才 Debian的 ssh密码

sed -i 's/root:*/root:$1$DiGZGr2m$Ht8S5tfK9oXxLwp6LjPUT0/g' /mnt/etc/shadow

 5.4、添加 ssh登录公钥

rm -rf /mnt/root/.ssh/
mkdir /mnt/root/.ssh/
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAxbMN/h4PR+XVhpdUze/eEwxf5vw1aC0PwVdIwqsYq78A3F0wvwAUN2DuPiDhArfN5HzN6ye1TPCaXhKYZM1wGHrWjFM64XuDT0sDuFVp67rLc9McJ4YAXChNQ51Y8LBss6nHiBDjDl6AobmQ67S2GTODiG3gILdiekluXS+FfaQNSPdfaHZIxTPQc/SuqyZGpSVyW9pSkVXVZn7/EO66+f1jULMt7EjFI8fBQuZlu9oCvodQyz6JMpIYRehZr8XfPaTX84XU9p3PbG9iulMh7yW1okEvGapTnuNTouZDLASAI8BvDXrw2wJiXeQ06dmsHXAfQwf3hzRUc0vFUErC3w== rsa 2048-011123" > /mnt/root/.ssh/authorized_keys
chmod 700 /mnt/root/.ssh/
chmod 600 /mnt/root/.ssh/authorized_keys

 5.5、 只允许 root以密钥方式登录 ssh

sed -i 's/#PermitRootLogin/PermitRootLogin/g' /mnt/etc/ssh/sshd_config

 

6、在开机脚本添加 ssh主机密钥,非常重要!(开机连上 ssh之后就可以删除了,首次需要而已。)

cat <<EOF> /mnt/etc/rc.local
#!/bin/bash
/usr/bin/ssh-keygen -A
systemctl restart ssh
EOF

 6.1、给开机脚本添加执行权限 否则无法运行

chmod +x /mnt/etc/rc.local

 

7、 禁用 cloud-init这就是母鸡给小鸡下发配置的后门

touch /mnt/etc/cloud/cloud-init.disabled

 

8、重启进入新系统……

reboot

 

补充:

 

这次的 OpenWrt内存系统镜像 使用 Grub引导 vmlinuz内核 加载 initrd.gz 进入 OpenWrt内存系统

menuentry 'OpenWrt Minimalist in-memory diskless Linux distribution based' {
insmod part_msdos
insmod fat
insmod ext2
set root='(hd0,msdos1)'
linux /vmlinuz
initrd /initrd.gz
}

 一键脚本

cat << EOF >/boot/Reinstall.sh
#!/bin/bash
rm -f /boot/initrd88.img /boot/vmlinuz88
wget -P /boot/ http://mirror.nsc.liu.se/centos-store/7.2.1511/os/x86_64/images/pxeboot/initrd.img -O /boot/initrd88.img
wget -P /boot/ http://mirror.nsc.liu.se/centos-store/7.2.1511/os/x86_64/images/pxeboot/vmlinuz -O /boot/vmlinuz88
cat << EOFEOF>/etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry "VNCInstallCentos8" {
    set root='hd0,msdos1'
    linux16 /boot/vmlinuz88 inst.vnc inst.vncpassword=hostloc.com inst.repo=http://mirror.nsc.liu.se/centos-store/7.2.1511/os/x86_64/ inst.headless ip=dhcp nameserver=1.1.1.1 inst.lang=en_US inst.keymap=us selinux=0
    initrd16 /boot/initrd88.img
}

EOFEOF
grub2-mkconfig -o /boot/grub2/grub.cfg
grub2-reboot VNCInstallCentos8
reboot
EOF

bash /boot/Reinstall.sh

 

 

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
DD官网Debian11镜像到VPS
以 DHCP 获取 IPV4/IPV6 地址以及无后台 VNC 屏幕举例,支持 bios/efi 引导的小鸡,包括不限于:aws、az、gcp、龟壳、阿里云、腾讯云、等。 警告!此操作硬盘……
<<上一篇
下一篇>>