KVM常用命令¶
虚拟机管理¶
显示运行的虚拟机¶
| Bash | |
|---|---|
显示所有的虚拟机¶
| Bash | |
|---|---|
创建虚拟机¶
| Bash | |
|---|---|
使用现有硬盘启动虚拟机¶
连接虚拟机¶
| Bash | |
|---|---|
退出:Ctrl + ]
虚拟机状态控制¶
挂起虚拟机¶
| Bash | |
|---|---|
恢复被挂起的虚机¶
| Bash | |
|---|---|
虚机随宿主机启动而自启¶
| Bash | |
|---|---|
关闭自动启动¶
| Bash | |
|---|---|
虚拟机启停操作¶
| Bash | |
|---|---|
虚拟机克隆¶
克隆虚机(需要暂停或关闭)¶
| Bash | |
|---|---|
参数说明:
-o test:被克隆的主机名-n test1:新克隆的主机名--file:新克隆主机的镜像存放地址
虚拟机删除¶
删除虚拟机¶
| Bash | |
|---|---|
VNC管理¶
显示虚拟机VNC端口¶
| Bash | |
|---|---|
说明:
- 显示结果为
:1表示端口为 5901 - 显示结果为
:2表示端口为 5902 - 以此类推,端口 = 5900 + 显示编号
磁盘管理¶
给虚拟机添加磁盘¶
1. 创建新的虚拟磁盘¶
| Bash | |
|---|---|
2. 添加虚拟磁盘到指定的虚拟机¶
| Bash | |
|---|---|
注意事项:
- 这里的
--source后面必须跟绝对路径
参数说明:
| 参数 | 说明 |
|---|---|
--persistent |
会让此操作同时对运行的虚拟机以及虚拟机的 XML 文件都会生效 |
--target |
设定在虚拟机中此设备的设备文件名称,最好在添加硬盘之前到虚拟机中先查看确认一下磁盘设备名称;然后此处设置名称顺延,比如我的虚拟机中原来只有一块盘,其设备文件名为 vda,所以我这里设定为 vdb |
--targetbus |
用来设定客户机磁盘的总线类型 |
--driver |
根据模拟器决定,如果模拟器是 qemu 则此处的值只能是 qemu |
--subdriver |
磁盘源的类型 |
--sourcefile |
磁盘源的大类,这里用的是 file,也可以使用 block |
查看配置 XML¶
| Bash | |
|---|---|
移除磁盘¶
| Bash | |
|---|---|
参数说明:
--domain:指定虚拟机名称--target:指定要移除的磁盘设备名称--persistent:持久化操作,同时修改运行配置和 XML 配置文件--config:修改配置文件--live:对正在运行的虚拟机生效
常用技巧¶
查看虚拟机详细信息¶
| Bash | |
|---|---|
查看虚拟机网络信息¶
| Bash | |
|---|---|
查看虚拟机CPU使用情况¶
| Bash | |
|---|---|
查看虚拟机内存使用情况¶
| Bash | |
|---|---|
查看虚拟机磁盘信息¶
| Bash | |
|---|---|
编辑虚拟机配置¶
| Bash | |
|---|---|
修改虚拟机配置后重载¶
| Bash | |
|---|---|
设置虚拟机开机自启动¶
| Bash | |
|---|---|
取消虚拟机开机自启动¶
| Bash | |
|---|---|
快照管理¶
创建快照¶
| Bash | |
|---|---|
创建带名称的快照¶
| Bash | |
|---|---|
列出快照¶
| Bash | |
|---|---|
查看快照信息¶
| Bash | |
|---|---|
恢复快照¶
| Bash | |
|---|---|
删除快照¶
| Bash | |
|---|---|
网络管理¶
列出网络¶
| Bash | |
|---|---|
查看网络详情¶
| Bash | |
|---|---|
启动网络¶
| Bash | |
|---|---|
停止网络¶
| Bash | |
|---|---|
设置网络开机自启动¶
| Bash | |
|---|---|
存储池管理¶
列出存储池¶
| Bash | |
|---|---|
查看存储池详情¶
| Bash | |
|---|---|
启动存储池¶
| Bash | |
|---|---|
停止存储池¶
| Bash | |
|---|---|
设置存储池开机自启动¶
| Bash | |
|---|---|
故障排查¶
查看虚拟机日志¶
| Bash | |
|---|---|
查看虚拟机运行状态¶
| Bash | |
|---|---|
调试模式启动虚拟机¶
| Bash | |
|---|---|
查看虚拟机事件¶
| Bash | |
|---|---|
性能优化¶
设置虚拟机CPU亲和性¶
| Bash | |
|---|---|
设置虚拟机内存大小¶
| Bash | |
|---|---|
设置虚拟机CPU数量¶
| Bash | |
|---|---|
调整虚拟机内存(动态调整)¶
| Bash | |
|---|---|
迁移管理¶
迁移虚拟机(实时迁移)¶
| Bash | |
|---|---|
迁移虚拟机(离线迁移)¶
| Bash | |
|---|---|
备份与恢复¶
导出虚拟机配置¶
| Bash | |
|---|---|
导入虚拟机配置¶
| Bash | |
|---|---|
备份虚拟机磁盘¶
| Bash | |
|---|---|
恢复虚拟机¶
注意事项¶
- 磁盘操作前务必备份
- 在添加或删除磁盘前,建议先对虚拟机进行快照或备份
- 使用绝对路径
- 在添加磁盘时,
--source参数必须使用绝对路径
- 设备名称规划
- 添加磁盘前先查看现有磁盘设备名称,按顺序分配(vda, vdb, vdc...)
- 持久化操作
- 使用
--persistent参数确保配置永久生效 - 同时修改运行配置和 XML 文件
- 克隆虚拟机
- 克隆前需要暂停或关闭虚拟机
- 确保有足够的磁盘空间存放新镜像
- VNC端口
- VNC显示编号从1开始
- 实际端口号 = 5900 + 显示编号
- 确保防火墙允许相应的端口访问
- 权限管理
- 执行 virsh 命令通常需要 root 权限
- 使用 sudo 或切换到 root 用户