PVE 常用命令
pve换源脚本:
wget http://share.geekxw.top/yuan.sh -O yuan.sh && chmod +x yuan.sh && ./yuan.sh
更新源:
apt update
建立PVE虚拟机,导入准备好的系统镜像,需要重启虚拟机
qm importdisk 101 /var/lib/vz/template/iso/xx.img local-lvm
其中101是虚拟机编号,/var/lib/vz/template/iso/xx.img是旁路由上传到pve的路径
确认错误信息的上下文和来源
task error: vm quit/powerdown failed - got timeout
检查虚拟机(VM)的状态和日志
/var/log/pve/tasks/z-vm-101-shutdown.log(假设VM ID为101),以获取更多错误信息。
强制停止虚拟机
# 查找虚拟机的进程ID ps -ef | grep "/usr/bin/kvm -id 101" | grep -v grep # 假设找到的进程ID为20582,则执行以下命令强制停止虚拟机 kill 20582 # 或者使用更安全的kill命令选项,如kill -9 20582(但请谨慎使用,因为这可能会导致数据丢失)
列出当前PVE平台中所有虚拟机
#qm list #qm snapshot <虚拟机编号> <快照文件名> //给指定虚拟机生成快照 #qm importdisk <虚拟机编号> <img\vmdk格式文件> local-lvm //导入系统文件到指定虚拟机 #qm shutdown <虚拟机编号> //关闭指定虚拟机 #qm start <虚拟机编号> 启动虚拟机编号
scp命令将虚拟机系统镜像文件复制进PVE平台的root目录
$scp openwrt21.02.img.gz [email protected]:/root $ssh [email protected] //进入PVE平台命令行 $gunzip openwrt21.02.img.gz //解压镜像文件为img格式
关闭虚拟机,再启动虚拟机
#qm shutdown 100 关闭100编号的PVE虚拟机 #qm start 100 //启动100编号的PVE虚拟机
修改PVE虚拟机管理IP,例如lan口IP设置为192.168.5.1 重启网络服务,使管理IP生效
#vi /etc/config/network #/etc/init.d/network restart
PVE是根据磁盘编号来识别硬盘的,访问硬盘首先要了解硬盘所在路径或其UUID。使用命令
ls -al /dev/sd* ls -al /dev/nvme*
/dev/sd*表示机械硬盘,用sd+字母+数字表示,字母表示硬盘序号,数字表示分区。例如/dev/sdb1表示第二块机械硬盘的第一个分区
/dev/nvme*...表示固态硬盘,用nvme数字+n数字+p数字表示,第一个数字代表硬盘序号,n后面的数字代表namespace插槽序号,p后面的数字表示partition分区序号。例如/dev/nvme0n1p2 表示固态硬盘0位于第1插槽的的第2分区
对照节点-磁盘界面可以看到:
/dev/sda是1T的HGST机械硬盘,它有/dev/sda1和/dev/sda2两个分区
/dev/nvme1n1 是1T的固态硬盘,它只有/dev/nvme1n1p1一个分区
/dev/nvme0n1 是512G的固态硬盘,它有p1,p2,p3三个分区
现在需要访问 /dev/sda 和 /dev/nvme1n1 这两块硬盘内的文件。
在Linux下一切都是文件,访问之前得先将其分区挂载到系统已有的目录下(注意挂载的是分区不是硬盘)
执行命令:
mount -t ext4 /dev/nvme1n1p1 /mnt #-t表示指定分区的文件系统类型,如ext4, ntfs等 #/mnt 是pve系统下的目录
如果想挂载在一个新的目录下则需要先创建目录:
mkdir -p /mnt/ssd1T #在/mnt目录下创建一个名为ssd1T的目录 #-p会检测是否已存在父级目录(parent),没有就创建一个
然后再挂载:
mount -t ext4 /dev/nvme1n1p1 /mnt/ssd1T 挂载/dev/sda 这块硬盘同理 mount -t ntfs-3g /dev/sda2 /mnt/hdd1T #pve本身不支持ntfs格式,需要先安装ntfs-3g包
现在可以通过ls命令来查看磁盘中的目录和文件列表了:
ls /mnt/ssd1T ls /mnt/hdd1T 也可以查看子目录下的文件: ls -R /mnt/ssd1T #-R表示tree,以目录树的方式浏览目录内容
不过对小白来说,PVE下命令行浏览文件始终不如图形界面直观,作为一个日常功能,
很想吐槽PVE这群UI工程师,都有WebGUI了,学学UNRAID,
磁盘那里加个挂载按钮和浏览按钮有那么难么,
点击“挂载”从系统目录中选择或创建一个目录不就好了。
pve设置IPv6
在 /etc/sysctl.conf文件当中添加如下信息:
net.ipv6.conf.all.accept_ra=2 net.ipv6.conf.default.accept_ra=2 net.ipv6.conf.vmbr0.accept_ra=2 net.ipv6.conf.all.autoconf=1 net.ipv6.conf.default.autoconf=1 net.ipv6.conf.vmbr0.autoconf=1
然后:重启pve。