一、关闭订阅提醒
#环境PVE 7.0.1
#每次打开pve页面都会提示warning的信息,实在恼人,遂搜索网上方法取消之
#备份并编辑/usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
输入 / ,搜索:No valid subscription,定位。
使用以下方法之一修改文件,保存并退出后,执行:
systemctl restart pveproxy.service
强制刷新/禁用浏览器缓存,注销后重新登录 PVE。
方法一
将上方
.data.status.toLowerCase() !== 'active') {
更改为
.data.status.toLowerCase() == 'active') {
方法二
将上方
Ext.Msg.show({
更改为:
void({ //Ext.Msg.show({
二、修改官方企业源和virtio 驱动下载
#免费,你是用不了企业源的,所以改成免费的吧
# 删除原来的企业源
# rm -f /etc/apt/sources.list.d/pve-enterprise.list
# 添加官方免费源
# echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
#升级命令,命令不可逆哦,升级请谨慎!!!
apt update -y && apt dist-upgrade -y
# 升级完成后,可以执行pveversion -v查看下最新的软件版本。然后执行reboot重启物理服务器
驱动下载地址 https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html
英文看不懂的话请在此页面搜索 Stable virtio-win iso 然后点击连接下载
也可以打开https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/ 下载不同版本的驱动
三、命令行相关
# 镜像转换
qm importdisk <vmid> <source> <storage> [OPTIONS]
#例:qm importdisk 101 vm01-disk001.vmdk local-lvm -format qcow2
#上面101是虚拟机的VM ID,vm01-disk001.vmdk是解压出来的vmdk文件,local-lvm是你的存储ID, -format qcow2 是指定导入后硬盘镜像的格式,默认是raw格式。
#创建vm
qm create 300 -ide0 local-lvm:4 -net0 e1000 -cdrom local:iso/proxmox-mailgateway_2.1.iso
#启动vm
qm start 300
#停止vm
qm stop 300
#关闭vm并等待40s超时
qm shutdown 300 && qm wait 300 -timeout 40
#定位配置文件路径/etc/pve/qemu-server
ls /etc/pve/qemu-server
#定位虚拟磁盘镜像文件 /var/lib/vz/images
ls /var/lib/vz/images
#如果是最新版本的proxmox该如何处理呢
vi 100.conf
scsi0: local-lvm:**vm-100-disk-1**,size=100G 加黑部分很重要 这是#我们虚拟磁盘镜像文件的文件名
其次: find / -name vm-100-disk-1
#使用scp 命令 将100.conf 与 vm-100-disk-1 发送到另外一台proxmox机器对应的文件上,就可以启动了
#备份镜像目录
/var/lib/vz/dump/
#扩容local分区,重建local-vm分区
#由于thin分区不支持动态缩容,所以需要在创建pve支出删除data,如果已经建了虚拟机建议备份
lvremove /dev/pve/data
lvcreate -L 100G -n data pve
lvconvert --type thin-pool pve/data
#扩容系统根分区
lvresize -L +100G /dev/pve/root
resize2fs /dev/pve/root
#安装libguestfs-tools
apt install --no-install-recommends --no-install-suggests libguestfs-tools
#修改qcow2的账户密码
virt-customize -a CentOS-7-x86_64-GenericCloud-1811.qcow2 --root-password password:123456
#导出镜像并格式化qcow2格式
qemu-img convert -p -O qcow2 -c /dev/mapper/nvme01-vm--111--disk--0 openEuler-22.03-cloudinit-LTS-SP4-x86_64.qcow2
#导入qcow2格式的镜像为系统盘
qm importdisk 111 /var/lib/vz/template/qcow/openEuler-22.03-cloudinit-LTS-SP4-x86_64.qcow2 local-lvmnvme01 --format qcow2
#编辑镜像内部文件
guestmount -a /var/lib/vz/template/qcow/openEuler-22.03-cloudinit-LTS-SP4-x86_64.qcow2 -i --rw /tmp_mount/
#添加unused磁盘
qm set 111 --scsi0 local-lvmnvme01:vm-111-disk-0,discard=on
#设置scsi0为引导盘
qm set 111 --boot order=scsi0
#创建虚拟机
qm create 111 \
--agent 1 \
--machine q35 \
--ostype l26 \
--scsihw virtio-scsi-pci \
--serial0 socket \
--cores 2 --sockets 1 --cpu host \
--bios seabios --boot cdn \
--net0 virtio,bridge=vmbr0
#网络部分
qm set/create 111 --net[n] [model] [,bridge=<bridge>] [,firewall=<1|0>] [,link_down=<1|0>] [,macaddr=<XX:XX:XX:XX:XX:XX>] [,queues=<integer>] [,rate=<number>] [,tag=<integer>] [,trunks=<vlanid[;vlanid...]>] [,<model>=<macaddr>]
qm set 100 --net0 virtio,bridge=vmbr0,firewall=0
#参数说明
--net[N]
这是一个option。N是整数,一般用序列。代表网卡序列
model
网卡类型。e1000 | e1000-82540em | e1000-82544gc | e1000-82545em | i82551 | i82557b | i82559er | ne2k_isa | ne2k_pci | pcnet | rtl8139 | virtio | vmxnet3
bridge=<bridge>
bridge=vmbr[N].N代表桥接网卡的序号。
firewall=<1|0>
防火墙是否开启。值为1则开启,0为关闭
link_down=<1|0>
是否连接网卡,1为连接,0为端口。默认值为连接,所以一般不指定此项。
macaddr=<XX:XX:XX:XX:XX:XX>
指定网卡的MAC地址
rate=<number>
限速。单位mbps。一般不指定这项
tag=<integer>]
VLAN 标签
trunks=<vlanid[;vlanid...]>
trunk选项
<model>=<macaddr>
此项是model和mac的合集。可以不用上面的两个选项。直接这样设置。
#cloudinit
在添加cloudinit之后,可以利用qm set命令指定ip
qm set 111 --ipconfig0 ip=10.0.10.123/24,gw=10.0.10.1,ip6=dhcp
或者
qm set 111 --ipconfig0 ip=dhcp,ip6=dhcp
其中 ipconig<N>。N为网卡编号
设置dns
qm set 111 --nameserver 114.114.114.114
qm set 111 --searchdomain 114.114.114.114
#带cloudinit的例子
qm create 111 \
--agent 1 \
--machine q35 \
--ostype l26 \
--scsihw virtio-scsi-pci \
--serial0 socket \
--cores 2 --sockets 1 --cpu host \
--bios seabios --boot cdn \
--net0 virtio,bridge=vmbr0 \
--ide2 nvme1:cloudinit \
--name qmcreate \
--cipassword foxi123456 --ciuser root
#分离scsi0
qm set 111 --delete scsi0
#删除分离unused0
qm set 111 --delete unused0