
一、查看分区情况并对磁盘进行分区
[root@server10 ~]# fdisk -l 查看分区情况
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x60d290e1
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 6143 4096 2M 83 Linux
/dev/sda2 * 6144 1030143 1024000 500M 83 Linux
/dev/sda3 1030144 209715199 208685056 99.5G 8e Linux LVM
Disk /dev/sdb: 100 GiB, 107374182400 bytes, 209715200 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/rl-root: 95.51 GiB, 102550732800 bytes, 200294400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/rl-swap: 4 GiB, 4294967296 bytes, 8388608 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
[root@server10 ~]#
[root@server10 ~]# gdisk /dev/sdb 对sdb硬盘进行分区
GPT fdisk (gdisk) version 1.0.7
Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries in memory.
Command (? for help): n 新建分区
Partition number (1-128, default 1): 1 创建第一个主导分区
First sector (34-209715166, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-209715166, default = 209715166) or {+-}size{KMGTP}:
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
Command (? for help): w 保存并退出
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y 写入进程吗 是的
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.
二、格式化sdb1的磁盘
[root@server10 ~]# mkfs.xfs /dev/sdb1 格式化sdb1的磁盘
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=6553535 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1 bigtime=1 inobtcount=1 nrext64=0
data = bsize=4096 blocks=26214139, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
三、创建data目录及查看磁盘的UUID号
[root@server10 ~]# mkdir /data 创建data目录
[root@server10 ~]# blkid 查看磁盘的UUID号
/dev/sdb1: UUID="d85b412a-ae5f-4915-ab8b-08d6b6151dfb" TYPE="xfs" PARTLABEL="Linux filesystem" PARTUUID="ecad97c6-ce0a-4ac3-b087-897395160395"
四、编辑开机启动配置文件
[root@server10 ~]# vim /etc/fstab 编辑开机启动配置文件
UUID=d85b412a-ae5f-4915-ab8b-08d6b6151dfb /data xfs defaults 0 0
UUID=d85b412a-ae5f-4915-ab8b-08d6b6151dfb 表示sdb1的磁盘挂载到data目录下 xfs文件系统xfs 默认参数 不备份 不检查磁盘
五、重新加载系统进程、重新加载挂载项、查看磁盘容量、关机做快照
[root@server10 ~]# systemctl daemon-reload 重新加载系统进程
[root@server10 ~]#
[root@server10 ~]# mount -a 重新加载挂载项
[root@server10 ~]#
[root@server10 ~]# df -hT 查看磁盘容量
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs tmpfs 1.5G 9.1M 1.5G 1% /run
/dev/mapper/rl-root xfs 96G 3.9G 92G 4% /
/dev/sda2 xfs 436M 297M 140M 69% /boot
tmpfs tmpfs 766M 4.0K 766M 1% /run/user/0
/dev/sdb1 xfs 100G 746M 100G 1% /data 看这个
[root@server10 ~]# init 0
六、添加一块新的硬盘,并开启虚拟化Intel VT-x/EPT

要是虚拟化Intel VT-x/EPT勾选不了,需要打开本地电脑的windows功能,取消掉勾选虚拟机平台,后重启电脑生效。



七、安装kvm及其插件
[root@server10 ~]# dnf -y install qemu-kvm libvirt virt-install 安装kvm及其插件
八、查看系统CPU是否支持kvm
[root@server10 ~]# lsmod | grep kvm 查看系统CPU是否支持kvm
kvm_intel 446464 0
kvm 1400832 1 kvm_intel kvm_intel看这个
九、启动KVM并设置开机启动
[root@server10 ~]# systemctl enable --now libvirtd 启动KVM并设置开机启动
十、设置网络连接
[root@server10 ~]# nmcli connection add type bridge autoconnect yes con-name br0 ifname br0 网络连接添加类型为桥接网卡,设置为自动连接
Connection 'br0' (8f6c7259-e9a0-441b-8bce-ede6a5f15ac2) successfully added. br0 设定的名称为bro
[root@server10 ~]#
[root@server10 ~]# nmcli connection modify br0 ipv4.addresses 192.168.7.10/24 ipv4.method manual 网络连接手动修改br0 网卡的ipv4的IP地址为:192.168.7.10,子网掩码是24
[root@server10 ~]#
[root@server10 ~]# nmcli connection modify br0 ipv4.gateway 192.168.7.2 网络连接修改br0的网关地址为192.168.7.2
[root@server10 ~]#
[root@server10 ~]# nmcli connection modify br0 ipv4.dns 114.114.114.114 网络连接修改br0网卡的dns地址为114.114.114.114
[root@server10 ~]#
[root@server10 ~]# nmcli connection del ens160 网络连接删除ens160网卡 在vmware虚拟机里设置






十一、创建kvm虚拟机的镜像目录及创建kvm虚拟机rocky9
[root@server10 ~]# mkdir -p /data/kvm/images 创建kvm虚拟机的镜像目录
[root@server10 ~]# virt-install \ 创建kvm虚拟机rock9
--name rocky9 \
--ram 2048 \ 内存2G
--vcpus 2 \ cpu双核
--disk path=/data/kvm/images/rocky9.img,size=40,format=qcow2,bus=virtio \ 指定硬盘镜像文件的位置rocky9.img;大小为40G;磁盘镜像格式为qcow2;设置总线类型为virtio
--accelerate \ 加速
--cdrom /home/Rocky-9.5-x86_64-dvd.iso \ 指定光盘镜像文件的位置(注意:光盘镜像文件不要放在rootm目录下)
--graphics vnc,listen=0.0.0.0,port=5900 \ 设置图形界面,启用vnc远程控制;监听所有网络接口的5900端口
--network bridge=br0,model=virtio \ 通过bro网桥连接虚拟机,virtio模型优化网络性能
--force --autostart \ 强制执行命令,跳过交互式确认,虚拟机启动时自动开机
--noautoconsole 安装完成后无自动打开控制台(安装完成后,自动关机)
Starting install...
Allocating 'rocky9.img' | 40 GB 00:00:00
Creating domain... | 00:00:00
Domain is still running. Installation may be in progress.
You can reconnect to the console to complete the installation process.
开机
十二、安装VNC软件到实体机下并安装




十三、用VNC连接rocky9




Continue继续








[root@server10 ~]# virsh list –all 查看所有的虚拟机
Id Name State
————————
1 rocky9 running
开机
这里拍快照是叫kvm第一部分,不是新系统


十四、在rocky9里关闭Selinux和防火墙


另一界面关机

[root@server10 ~]# virsh list --all 查看所有的虚拟机
Id Name State
-------------------------
- rocky9 shut off 关机
十五、虚拟机克隆成rocky9-1
[root@server10 ~]# virt-clone -o rocky9 -n rocky9-1 -f /data/kvm/images/rocky9-1.img --connect=qemu:///system 将rocky9d的虚拟机克隆成rocky9-1,并指向克隆的镜像位置,然后连接宿主机的控制台rocky9-1,并指向克隆的镜像位置,然后连接宿主机系统的控制台(批量部署)
WARNING Setting the graphics device port to autoport, in order to avoid conflicting.
Allocating 'rocky9-1.img' | 40 GB 00:00:29
Clone 'rocky9-1' created successfully.
十六、编辑rocky9-1的虚拟机
[root@server10 ~]# virsh edit rocky9-1 编辑rocky9-1的虚拟机
150 <graphics type='vnc' port='5901' autoport='no' listen='0.0.0.0'> 端口设置为:5901,自动端口设置为No(端口不允许自动更改)
十七、查看所有的虚拟机
[root@server10 ~]# virsh list --all 查看所有的虚拟机
Id Name State
---------------------------
- rocky9 shut off
- rocky9-1 shut off
十八、启动rocky9-1的虚拟机及查看虚拟机列表
[root@server10 ~]# virsh start rocky9-1 启动rocky9-1的虚拟机
Domain 'rocky9-1' started
[root@server10 ~]# virsh list --all
Id Name State
---------------------------
1 rocky9-1 running
- rocky9 shut off
十九、关机做快照
虚拟机做快照,必须关机做快照。它和wmware不一样,vmware可以开机做
二十、用VNC连接Rocky-1



勾选dont’t warn me about this again并继续

二十一、修改Rocky-1的主机名为server101


二十二、关闭server101的Selinux、防火墙及网卡的UUID号及IP



二十三、rocky9-1创建虚拟机快照
[root@server10 ~]# virsh snapshot-create-as rocky9-1 new_os 将rocky9-1创建虚拟机快照,名称为rocky9-1 new_os
Domain snapshot new_os created
[root@server10 ~]#
[root@server10 ~]# virsh snapshot-list rocky9-1 查看rocky9-1大的快照列表
Name Creation Time State
-----------------------------------------------
new_os 2025-03-21 09:35:42 +0800 shutoff
二十四、查看rocky9-1的镜像信息
[root@server10 ~]# qemu-img info /data/kvm/images/rocky9-1.img 查看rocky9-1的镜像信息
image: /data/kvm/images/rocky9-1.img 镜像信息
file format: qcow2
virtual size: 40 GiB (42949672960 bytes)
disk size: 4.02 GiB
cluster_size: 65536
Snapshot list:
ID TAG VM_SIZE DATE VM_CLOCK ICOUNT
1 new_os 0 B 2025-03-21 09:35:42 0000:00:00.000 0
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: true
refcount bits: 16
corrupt: false
extended l2: false
Child node '/file':
filename: /data/kvm/images/rocky9-1.img
protocol type: file
file length: 4.02 GiB (4312072704 bytes)
disk size: 4.02 GiB
Format specific information:
extent size hint: 1048576
二十五、查看rocky9-1的目前信息
[root@server10 ~]# virsh snapshot-current rocky9-1 查看rocky9-1的目前信息

二十六、查看所有虚拟机
[root@server10 ~]# virsh list --all 查看所有虚拟机
Id Name State
---------------------------
- rocky9 shut off
- rocky9-1 shut off
二十七、启动rocky9-1的虚拟机
[root@server10 ~]# virsh start rocky9-1 启动rocky9-1的虚拟机
Domain 'rocky9-1' started
[root@server10 ~]# virsh list --all
Id Name State
---------------------------
1 rocky9-1 running
- rocky9 shut off
二十八、做快照
虚拟机做快照,必须关机做快照。它和wmware不一样,vmware可以开机做
二十九、ping 192.168.7.10


三十、Finallshell连接Rocky9-1


三十一、将rocky9的快照系统还原到rocky9-1 new_os
[root@server10 ~]# virsh snapshot-revert rocky9-1 new_os 将rocky9的快照系统还原到rocky9-1 new_os
Domain snapshot new_os reverted
三十二、查看所有虚拟机及启动rocky9-1虚拟机
[root@server10 ~]# virsh list --all 查看所有虚拟机
Id Name State
---------------------------
- rocky9 shut off
- rocky9-1 shut off
[root@server10 ~]# virsh start rocky9-1 启动rocky9-1虚拟机
Domain 'rocky9-1' started
三十三、连接Rocky9-1及关闭selinux、firewall



三十四、关闭rocky9-1虚拟机
[root@server10 ~]# virsh shutdown rocky9-1 关闭rocky9-1虚拟机
Domain 'rocky9-1' is being shutdown
[root@server10 ~]# virsh list --all 查看所有虚拟机
Id Name State
---------------------------
- rocky9 shut off
- rocky9-1 shut off
三十五、删除rocky9-1 new_os的快照(删除快照)
[root@server10 ~]# virsh snapshot-delete rocky9-1 new_os 删除rocky9-1 new_os的快照(删除快照)
Domain snapshot new_os deleted
[root@server10 ~]# virsh undefine rocky9-1 1.不定义rocky9-1的虚拟机
Domain 'rocky9-1' has been undefined
[root@server10 ~]# rm -rf /etc/libvirt/qemu/autostart/rocky9-1.xml
[root@server10 ~]#
[root@server10 ~]# rm -rf /etc/libvirt/qemu/rocky9-1.xml 2.删除rocky9-1的虚拟机的配置文件
[root@server10 ~]#
[root@server10 ~]# rm -rf /data/kvm/images/rocky9-1.img 3.删除rocky9-1的镜像信息 1 2 3点都是删除虚拟机
三十六、查看所有虚拟机
[root@server10 ~]# virsh list --all 查看所有虚拟机
Id Name State
-------------------------
- rocky9 shut off 关机