Proxmox ve7 制作KVM Debian11镜像模板

文章目录

Proxmox虽然好用,但是每次创建KVM机器就必须从头安装一次,所以有个模板那就是坠好的。

模板的制作涉及到cloud-init(这玩意超方便),VM模板用一些官方的image,这里以Debian11为例。

先放两个Cloud-init下载地址:

CentOS7:
https://cloud.centos.org/centos/7/images/

Debian11:
https://cloud.debian.org/images/cloud/bullseye/

镜像要选择带有GenericCloud字样的,这样有了 Cloud-init 驱动,Proxmox可以更好的利用。

教程:

下载镜像:

这里以教程编写的UTC+9-9.18最新模板为例。

直接下载到root根目录即可。

wget -c "https://cloud.debian.org/images/cloud/bullseye/daily/20210917-768/debian-11-genericcloud-amd64-daily-20210917-768.qcow2" -O Debian.qcow2

镜像每天都会更新 如果想要最新版建议不要直接复制我的内容。

导入镜像:

首先创建VM:
qm create 8888 --memory 1024 --name debian11 --net0 virtio,bridge=vmbr0

然后导入下载的镜像到local存储盘中:
qm importdisk 8888 debian11.qcow2 local

将镜像磁盘以scsi方式挂载至VM:
qm set 8888 --scsihw virtio-scsi-pci --scsi0 local:8888/vm-8888-disk-0.raw

添加 Cloud-Init驱动(最重要的驱动):
qm set 8888 --ide2 local-lvm:cloudinit

启动VM:
qm set 8888 --boot c --bootdisk scsi0

镜像Cloud-init设置:

Cloud-init 驱动是Proxmox一项特色,可以在外部直接管理虚拟机,而不用在VM内部操作。

Cloud-init设置

按照途中顺序设置好用户和网络,生成映像即可。

当然如果你看了我之前的DHCP分发IP地址,那也可以不用设置第3步,让VM自动获取即可。

优化镜像:

首先开启ssh的root登录:

cat >> /etc/ssh/sshd_config <<
EOFPasswordAuthentication yes
PermitRootLogin yes
EOF
service ssh restart

然后修改Cloud-init相关配置:

nano /etc/cloud/cloud.cfg

users:

-name: root
最下面还有default_user哪一行也注释掉,关闭创建普通用户。

CentOS模板还需要额外修改一下几项
lock_passwd: False
disable_root: 0
ssh_pwauth: 1

修改时区:

timedatectl set-timezone Asia/Shanghai

剩下就是你自己需要的内容,可以内置宝塔,LNMP之类的应用程序,方便生成直接使用。
另外如果是国内网络建议设置一下镜像站,改为清华或163。

最后彻底删除所有命令以及登录信息:

echo > /var/log/syslog
echo > /var/log/messages

echo > /var/log/httpd/access_log
echo > /var/log/httpd/error_log
echo > /var/log/xferlog
echo > /var/log/secure
echo > /var/log/auth.log
echo > /var/log/user.log
echo > /var/log/wtmp
echo > /var/log/lastlog
echo > /var/log/btmp
echo > /var/run/utmp
echo > ~/.bash_history
history -c

做完这一切就在Proxmox控制台中关闭VM即可。

生成模板:

qm template 8888

模板创建至此结束。

结尾:

创建新的VM

如图选择完整克隆即可。

生成VM之后记得在Cloud-init修改一下网络用户相关信息即可。

最最后PS 制作多个模板的时候,VM ID尽量填大一些,不要与正常VM ID冲突。

原文链接:,转发请注明来源!

发表评论