歲月留聲

DD 官网 Debian 11 云镜像到 VPS

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

「DD 官网 Debian 11 云镜像到 VPS:https://0xo.net/424」

DD 官网 Debian 11 云镜像到 VPS - 第1张图片

DD 官网 Debian 11 云镜像到 VPS 温馨提示

以下 DD 教程来自 LOC-KDE

警告!!!操作前切记先备份数据!!!此 DD 操作硬盘数据会全部丢失!!!

「DD 官网 Debian 11 云镜像到 VPS:https://0xo.net/424」

警告!!!操作前切记先备份数据!!!此 DD 操作硬盘数据会全部丢失!!!

警告!!!操作前切记先备份数据!!!此 DD 操作硬盘数据会全部丢失!!!

下面以实际硬盘是 vda 举例,可通过 lsblk 命令查看实际硬盘。

「DD 官网 Debian 11 云镜像到 VPS:https://0xo.net/424」

DD OpenWrt 内存系统到 VPS

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

进入 OpenWrt 内存系统

等待 1-3 分钟重启完成即可 ssh 登录,SSH 地址:VPS IPV4 或者 IPV6 地址;SSH 账号:root;SSH 密码:hostloc.com

DD Debian 官方最新系统到 VPS 硬盘

两个方法,选其中一个即可:

方法一:DD 原始 raw 镜像(2G 不利于网络传输,但是不需要解压,CPU 占用很小):

「DD 官网 Debian 11 云镜像到 VPS:https://0xo.net/424」
curl -Lo- "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-genericcloud-amd64.raw" | dd of=/dev/vda bs=1M

方法二: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

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

修复硬盘:parted -l

获取分区表:partprobe

查看实际硬盘名称:lsblk

扩容 Debian 11 系统分区到最大:

parted -s /dev/vda resizepart 1 100%
e2fsck -f /dev/vda1
resize2fs /dev/vda1

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

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

mount /dev/vda1 /mnt
df -h

SSH 密码生成:openssl passwd -1 uuk.app(uuk.app 改为自己想要的密码),命令行回显:

$1$Pxfpe1.2$.oUxoptajNTWc3SKWw0Xh.

然后将回显的代码修改进去 Debian 系统 SSH 密码:

sed -i 's/root:\*/root:$1$Pxfpe1.2$.oUxoptajNTWc3SKWw0Xh./g' /mnt/etc/shadow

添加 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

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

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

在开机脚本添加 ssh 主机密钥

非常重要!!!首次需要,开机连上 ssh 后可以删除。

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

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

chmod +x /mnt/etc/rc.local

禁用 cloud-init

这是母鸡给小鸡下发配置的后门:

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

然后重启进入新系统: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
}

有需要试试吧,在 LiteServer 上测试进入 OpenWRT 后连接不到网络,无法下载 Debian 11 系统文件。

退出移动版