前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >麒麟系统V10 SP2 KVM virt-install 创建虚拟机

麒麟系统V10 SP2 KVM virt-install 创建虚拟机

作者头像
Kevin song
发布于 2022-11-19 01:50:20
发布于 2022-11-19 01:50:20
5K00
代码可运行
举报
运行总次数:0
代码可运行

virt-install 创建虚拟机

virt-install参数说明

--name 指定虚拟机名称

--memory 分配内存大小

--vcpus 分配CPU核心数

--disk 指定虚拟机磁盘文件,size指定分配大小单位为G

--network 网络类型

--pxe 基于PXE完成安装

--accelerate 加速

--cdrom 指定系统iso镜像

--location

从ftp,http,nfs启动,如ftp://192.168.10.7/dvd;nfs:192.168.10.7:/dvd

--graphics 图形化控制台 none 不启用

--vnc 启用VNC远程管理

--vncport 指定VNC监控端口,默认端口为5900

--vnclisten 指定VNC绑定IP,默认绑定127.0.0.1,改为0.0.0.0

--os-type 虚拟机类型 linux,windows

--os-variant [使用"osinfo-query os" 查看支持的版本]

--force 如果有yes或者no的交互式,自动yes

--noautoconsole 表示不会自动连入虚拟机的控制台

--extra-args 根据--location指定的方式安装GuestOS时,用于传递给内核的额外选项

--extra-args='console=tty0 console=ttyS0,115200n8'

表示为创建的虚拟机指定内核启动时的内核参数,此处为虚拟机内核添加的参数为console=tty0 console=ttyS0,115200n8

--console pty,target_type=serial

--boot

指定安装过程完成后的配置选项,如指定引导设备次序、使用指定的而非安装的kernel/initrd来引导系统启动等 ;例如:

--boot cdrom,hd,network 指定引导次序

指定启动系统的内核及initrd文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
--boot kernel=KERNEL,initrd=INITRD,kernel_args="console=/dev/ttyS0"

Linux 虚拟机创建

  • ISO 镜像安装虚拟机 kvm虚拟机默认使用raw格式的镜像格式,性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持快照镜像,zlib磁盘压缩,AES加密等;

创建qcow2 磁盘文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
qemu-img create -f qcow2 /kvm/img/kylin01.img 50G

创建虚拟机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
    --name=kylin001 \
    --memory=4096 \
    --vcpus=2 \
    --disk path=/kvm/img/kylin001.img,format=qcow2,bus=virtio \
    --accelerate \
    --cdrom /kvm/iso/Kylin-Server-10-SP2-x86-Release-Build09-20210524.iso \
    --vnc --vncport=5910 \
    --vnclisten=0.0.0.0 \
    --network bridge=br0,model=virtio \
    --noautoconsole
  • 从网络创建虚拟机

创建qcow2 磁盘文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
qemu-img create -f qcow2 /kvm/img/kylin002.img 50G

创建虚拟机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
    --name kylin002 \
    --memory 4096 \
    --vcpus 2 \
    --disk path=/kvm/img/kylin002.img,format=qcow2,bus=virtio \
    --accelerate \
    --location http://192.168.100.234:18080/kylin_x86/ \
    --graphics vnc,listen=0.0.0.0,passwd=password \
    --network bridge=br0,model=virtio \
    --extra-args='console=tty0 console=ttyS0,115200n8' \
    --noautoconsole
  • 导入虚拟机磁盘镜像创建虚拟机

拷贝系统磁盘文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 img]# ls  -ll  /kvm/img/kylin007.img 
-rw-r--r-- 1 qemu qemu 3993305088 Nov 12 16:05 /kvm/img/kylin007.img
[root@kylin-node03 img]# pwd
/kvm/img

创建虚拟机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
--name kylin007 \
--memory 2048 \
--vcpus 2 \
--disk /kvm/img/kylin007.img,format=qcow2,bus=virtio \
--accelerate \
--import \
--network bridge=br0,model=virtio \ 
--graphics vnc,listen=0.0.0.0,passwd=password \
--noautoconsole
  • PXE 创建虚拟机
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
  --name guest1-rhel7 \
  --memory 2048 \
  --vcpus 2 \
  --disk size=8 \
  --network bridge=br0,model=virtio \
  --pxe \
  --accelerate \
  --graphics vnc,listen=0.0.0.0,passwd=password \
  --os-variant rhel7 \
  --noautoconsole
  • Kickstart 自动化创建虚拟机

创建qcow2 磁盘文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
qemu-img create -f qcow2 /kvm/img/kylin002.img 50G

创建虚拟机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install -v \
        --arch x86_64 --virt-type kvm \
        --name kylin008 \
        --memory 4096 \
        --vcpus  2 \
        --disk /kvm/img/kylin008.img,cache=writeback,io=threads,bus=virtio \
        --os-type linux \
        --location http://192.168.100.234:18080/kylin_x86/ \
        --network bridge=br0,model=virtio \
        --graphics vnc,listen=0.0.0.0 --noautoconsole \
        --initrd-inject  "/mnt/ks/ks.cfg" \
        --extra-args     "ks=file:/ks.cfg  \
        console=tty0 console=ttyS0,115200n8 \
        hostname=kylin008" \

Windows 虚拟机

  • ISO 镜像安装虚拟机

创建磁盘镜像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
qemu-img create -f qcow2 /kvm/img/win10.img 80G

创建虚拟机cdrom

--disk 需要创建磁盘镜像

--disk path 指定size磁盘则直接创建磁盘镜像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
--name win10 \
--memory 4096 --vcpus=2 \
--disk path=/kvm/img/win10.img,format=qcow2,size=80,bus=virtio  \
--accelerate --network bridge=br0 \
--os-type=windows\
--cdrom /kvm/iso/cn_windows_10_1809.iso \
--graphics vnc,listen=0.0.0.0,port=5920 \
--disk /kvm/iso/virtio-win-0.1.215.iso,device=cdrom,bus=ide,perms=ro \
--noautoconsole
  • 导入虚拟机磁盘镜像创建虚拟机
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-install \
--name win10_01 \
--memory 4096 \
--vcpus 2 \
--disk /kvm/img/win10.img,format=qcow2,bus=virtio \
--accelerate \
--import \
--network bridge=br0,model=virtio \ 
--graphics vnc,listen=0.0.0.0,passwd=password \
--noautoconsole

通过vnc来控制台访问

查看虚拟机vnc 端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh vncdisplay win10_01

virsh 命令介绍

查看所有虚拟机

virsh list --all

虚拟机开机

virsh start kylin001

虚拟机关机或断电

默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务,在安装KVM linux虚拟机必须配置此服务。

yum install acpid

systemctl enable acpid && systemctl restart acpid

虚拟机关机

virsh shutdown kylin001

强制关闭电源

virsh destroy kylin001

配置文件启动虚拟机(虚拟机默认的配置文件路径 /etc/libvirt/qemu/)

virsh create /etc/libvirt/qemu/kylin001.xml

虚拟机开机自启动

virsh autostart kylin001

virsh autostart --disable kylin001

导出KVM虚拟机配置文件(备份虚拟机文件)

virsh dumpxml kylin001 > /etc/libvirt/qemu/kylin002.xml

xml文件注册虚拟机

virsh define /etc/libvirt/qemu/kylin002.xml

删除kvm虚拟机

virsh undefine kylin001

说明:该命令只是删除kylin001的xml配置文件,并不删除虚拟磁盘文件

挂起服务器

virsh suspend kylin001

恢复服务器

virsh resume kylin001

查看虚拟机vnc端口

virsh vncdisplay kylin001

查看虚拟机挂载磁盘信息

virsh domblklist kylin001

修改虚拟机名称

virsh domrename kylin001 --new-name kylin002

查看虚拟机网卡

virsh domiflist kylin001

virsh --help 查看帮助

虚拟机快照备份恢复

默认快照的名称为随机指定分配,可使用snapshot-create-as命令指定快照名称

virsh snapshot-create-as 【虚拟机名】 【快照名】

对win10虚拟机创建快照,指定快照名称

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh  snapshot-create-as win10_01  win10_01_20221113
Domain snapshot win10_01_20221113 created

默认随机生成快照名

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh snapshot-create win10_01

查看虚拟机快照

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh snapshot-list win10_01

查看当前虚拟机镜像快照

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh snapshot-current win10_01

查看虚拟机镜像文件,文件路径/var/lib/libvirt/qemu/snapshot/

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 ~]# ll /var/lib/libvirt/qemu/snapshot/win10_01/win10_01_20221113.xml 
-rw------- 1 root root 8667 Nov 13 11:28 /var/lib/libvirt/qemu/snapshot/win10_01/win10_01_20221113.xml

恢复虚拟机快照

确认恢复快照节点,恢复到 win10_01_20221113

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 ~]# virsh snapshot-list  win10_01
 Name                Creation Time               State
----------------------------------------------------------
 win10_01_20221113   2022-11-13 11:25:51 +0800   running

执行恢复,并确认恢复版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 ~]# virsh snapshot-revert  win10_01 win10_01_20221113

删除虚拟机快照,查看虚拟机快照

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 ~]# qemu-img info /kvm/img/win10.img

删除快照

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@kylin-node03 ~]# virsh snapshot-delete win10_01  win10_01_20221113

虚拟机克隆

克隆设备必须暂停或关闭虚拟机,virt-clone命令本地克隆主机名、uuid、mac地址等信息已经自动进行了修改。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virt-clone -o kylin002 -n kylin003 -f /kvm/img/kylin003.qcow2

-o 被克隆虚拟机

-n 克隆后新的虚拟机

-f 克隆后新虚拟机的磁盘

启动虚拟机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh  start kylin003

对比两个主机配置文件的差别

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vimdiff  kylin002.xml  kylin003.xml

获取虚拟机vnc 端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
virsh vncdisplay kylin003
:1
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-11-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源搬运工宋师傅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
KVM--虚拟机Windows10系统安装(三)
KVM安装Windows默认使用的是qemu虚拟化IDE硬盘模式,在这种情况下,IO性能比较低,使用virtio 模式可以提高虚拟机IO性能。提升网卡性能推荐网卡使用virtio驱动。
Kevin song
2022/06/07
15.2K0
KVM--虚拟机Windows10系统安装(三)
centos中KVM虚拟化
1.确认 CPU 已经支持虚拟化,intel 的 CPU 虚拟化技术叫 vmx,AMD 的 CPU 叫 svm
@凌晨
2020/05/28
7730
KVM 虚拟机UEFI启动(欧拉系统)
针对不同的架构,系统引导的方式有所差异。x86支持UEFI(Unified Extensible Firmware Interface)和BIOS方式启动,AArch64仅支持UEFI方式启动。openEuler默认已安装BIOS启动对应的引导文件,不需要用户额外操作。
Kevin song
2023/12/11
1.6K0
KVM 虚拟机UEFI启动(欧拉系统)
KVM 简介
KVM(Kernel-based Virtual Machine) ,基于内核的虚拟机,配合QEMU(处理器虚拟软件),需要CPU支持虚拟化技术(并且在BIOS里打开虚拟化选项),效率可达到物理机的80%以上。此外,它对SMP的支持很好。
为为为什么
2022/08/06
1.8K0
Cent os 7之KVM虚拟化基础管理
至此,命令行创建虚拟机就完成了,接下来使用手动更改配置文件的方式,克隆test1,生成新的虚拟机test2(在我博文前面的那个博文链接中有专用于克隆的命令工具的使用方法,这里只是为了来了解虚拟机的配置文件) 二、手动更改配置文件的方式,克隆web01,生成新的虚拟机web02
小手冰凉
2020/07/29
7610
Cent os 7之KVM虚拟化基础管理
kvm 安装 windows 虚拟机
将 /etc/sysconfig/selinux 中的 SELinux=enforcing 修改为 SELinux=disabled
用户8824291
2022/02/25
2.5K0
统信服务器操作系统V20 1060e【KVM 虚拟化】
KVM(Kernel-based Virtual Machine)是一个基于Linux内核的开源虚拟化解决方案,它允许在单个物理服务器上运行多个虚拟机。每个虚拟机都可以运行自己的操作系统和应用程序。KVM利用了Linux内核的虚拟化功能,通过将物理主机的资源(如CPU、内存和网络接口)动态分配给虚拟机,实现了对虚拟机的隔离和资源管理。
Kevin song
2024/04/28
1K0
统信服务器操作系统V20 1060e【KVM 虚拟化】
kvm-创建虚拟机
作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
运维小路
2024/11/01
1010
kvm-创建虚拟机
快速创建KVM虚拟机
以前写到一篇文章制作CentOS6基础镜像,今天在工作中突然要临时创建很多虚拟机,于是结合那篇文章得到的基础镜像,写了个简单的脚本快速创建KVM虚拟机。 快速创建一个虚拟机的脚本 这里假设创建的基础镜像为centos6.7-sys.img,而且是qcow2格式的。 create_vm.sh #!/bin/bash domain_name=$1 ip_fetch_method=$2 static_ip=$3 static_netmask=$4 static_gateway=$5 static_dns1=$6
jeremyxu
2018/05/10
2.1K0
麒麟系统V10 SP2 KVM 虚拟化
内核模块导出了一个名为/dev/kvm的设备,该设备将虚拟机的的地址空间独立于内核或者任何应用程序的地址空间
Kevin song
2022/11/19
4.1K0
麒麟系统V10 SP2  KVM 虚拟化
KVM 虚拟化技术
1.1 前言 1.1.1 什么是虚拟化? 在计算机技术中,虚拟化(技术)或虚拟技术(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器
惨绿少年
2018/03/30
6.1K0
KVM+Qemu+Libvirt实战
上一篇的文章是为了给这一篇文件提供理论的基础,在这篇文章中我将带大家一起来实现在linux中虚拟出ubuntu的server版来 我们需要用KVM+Qemu+Libvirt来进行kvm全虚拟化,创建虚拟机并管理。 kvm是用来虚拟化或者说模拟CPU、内存等硬件的。 QEMU只是用来虚拟化硬盘的 libvirt提供了整个虚拟机的管理,比如说虚拟机的启动,停止,创建,删除等等。 其实KVM+Qemu+Libvirt就是模拟了一个VMWare软件 环境:     宿主机:ubuntu16.04的server版  
用户1195962
2018/01/18
3.6K0
KVM+Qemu+Libvirt实战
virsh查看虚拟网络信息_kvm创建虚拟机
1.virsh查看/管理虚拟机 问题 本案例要求熟悉KVM虚拟化的virsh管理工具的的基本使用,从命令行来操作虚拟机,完成以下基本任务: 1)查看KVM服务器信息 2)列出有哪些虚拟机、指定虚拟机的状态 3)基本的开关机操作 4)将虚拟机设置为自动运行 方案 virsh命令行管理的常见用法: 1)virsh:直接进交互模式 2)virsh nodeinfo:查看KVM节点(服务器)信息 3)virsh list:列出正在运行的虚拟机 4)virsh list –all:列出所有虚拟机(包括未启动的) 5)virsh dominfo 虚拟机名称:查看指定虚拟机的信息 6)virsh start 虚拟机名称:将指定的虚拟机开机 7)virsh reboot 虚拟机名称:将指定的虚拟机重启 8)virsh shutdown 虚拟机名称:将指定的虚拟机正常关机 9)virsh destroy 虚拟机名称:将指定的虚拟机强制关机(相当于拔电源) 10)virsh autostart 虚拟机名称:将指定的虚拟机设置随KVM自动开机 11)virsh autostart –disable 虚拟机名称:禁止自动开机 步骤 实现此案例需要按照如下步骤进行。 步骤一:直接使用virsh交互模式 执行不带任何参数的virsh命令,即可进入交互模式。在virsh交互模式下,可以快速、连续地执行多条虚拟机管理指令,不用每次都指定virsh,最后再exit退出;这种方式与在Shell命令行执行virsh时后面跟上虚拟机管理指令的作用是等效的。 [root@kvmsvr ~]# virsh //进入virsh交互模式 欢迎使用 virsh,虚拟化的交互式终端。
全栈程序员站长
2022/09/21
1.8K0
virsh查看虚拟网络信息_kvm创建虚拟机
003.KVM虚拟机部署-CentOS6.8
CentOS 7的KVM虚拟机推荐使用qcow2磁盘格式,本实验在KVM中安装CentOS 6.8 64虚拟机。
木二
2019/07/26
7950
003.KVM虚拟机部署-CentOS6.8
Linux系统下KVM虚拟机的基本管理和操作
一、检查本地环境1.检查系统版本[root@serer1 ~]# cat /etc/os-release NAME="CentOS Linux"VERSION="7 (Core)"ID="centos"ID\_LIKE="rhel fedora"VERSION\_ID="7"PRETTY\_NAME="CentOS Linux 7 (Core)"ANSI\_COLOR="0;31"CPE\_NAME="cpe:/o:centos:centos:7"HOME\_URL="https://www.centos.
江湖有缘
2023/01/19
2K0
Linux系统下KVM虚拟机的基本管理和操作
KVM--Install Ubuntu20.04(十二)
virt-install --name dcoker01 --memory 2048 --vcpus 2 --disk /kvm/img/docker01.img,format=qcow2,bus=virtio --accelerate --cdrom /kvm/iso/ubuntu-20.04.3-live-server-amd64.iso --network bridge=br0,model=virtio --graphics vnc,listen=0.0.0.0,port=5950 --noautoconsole
Kevin song
2022/11/19
4940
kvm命令行安装
qemu-img创建磁盘文件 通过文件管理可以直接查看、修改、复制虚拟机的内部文件。例如,当系统因为配置文件无法启动 时,可以直接修改虚拟机的文件。虚拟机磁盘文件主要有raw和qcow2格式。raw格式性能最好,速度最 快,它的缺点就是不支持一些新的功能,如支持镜像,zlib磁盘压缩,AES加密等。要使用镜像功能,磁 盘格式必须为qcow2。 raw格式的话,速度稍微快点,在高版本的qemu-kvm中,几乎不比qcow2的格式快,而qcow2格式节 省空间,可动态增长,在
L宝宝聊IT
2018/06/27
3.5K0
Centos6.3安装KVM
一、安装kvm 1 在安装CentOS6.3时可以选择安装好kvm 2 如果未安装好kvm,请按照下列方式安装 [创建本地yum源] 挂载iso文件 mount -o loop -t iso9660 CentOS-6.3-x86_64-bin-DVD1.iso /mnt 设置本地yum源 在/etc/yum.repos.d/创建   “任意文件名.repo"    文件   vi 刚才新建的文件名编辑 【localyum】任意名称 ,不能有空格。 name= local yum  任意名称 baseurl=file:////mnt/Packages      这个路径是自定的。Server为光盘中的Server目录 ,Packages与Server放在同一目录下。即/software目录下 enabled=1   代表   生效     0为不生效 gpgcheck=1   检查gpgkey  1 生效   0不生效 gpgkey=file:///software    安装光盘里有这个文件        不指定  安装时,可能提示没有注册 保存退出 执行命令 yum clean all (1) kvm需要有 CPU 的支持(Intel VT 或 AMD SVM) [root@moniter ~]#egrep '^flags.*(vmx|svm)' /proc/cpuinfo 如果有返回值说明cpu支持虚拟化 (2) 安装kvm libvirted yum install kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager libvirt libvirt-python python-virtinst (3) 启动libvirted service messagebus start service haldaemon start service libvirtd start chkconfig messagebus on chkconfig haldaemon on chkconfig libvirtd on (4)检查kvm是否安装成功 [root@jiayuan ~]# virsh -c qemu:///system list  Id    名称                         状态 ----------------------------------------------------  1     redhat6.3                      running (5)kvm模块 [root@myKVM ~]# lsmod | grep kvm kvm_intel              52570  0 kvm                  314739  1 kvm_intel 二、配置网桥 vi /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 TYPE=Bridge BOOTPROTO=static BROADCAST=10.207.20.255 IPADDR=10.207.20.200 NETMASK=255.255.255.0 NETWORK=10.207.20.0 ONBOOT=yes b、 vi /etc/sysconfig/network-scripts/ifcfg-eth0 # Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet DEVICE=eth0 BOOTPROTO=none ONBOOT=yes BRIDGE=br0 c、 重起网络服务生效 service network restart d、 echo 1 > /proc/sys/net/ipv4/ip_forward  #虚拟机上网 e、 检查桥接网络 [root@moniter ~]# brctl show bridge name     bridge id               STP enabled     interfaces br0             8000.842b2b74e1b6       no              eth0 virbr0          8000.000000000000       yes br0是我们配置的桥接网卡,virbr0是系统脚本自动配置的NAT网卡 三、安装vnc 注意:CentOS6.3 VNC的命名rpm为tiggervnc-server (1) yum install tiggervnc-server (2) vi /etc/sysconfig/vncservers #加一行     VNCSERVERS="
DevinGeng
2019/04/09
1.2K0
KVM虚拟机热扩容
注意,此时添加的磁盘默认的是raw磁盘,我们创建的是qcow2磁盘,所以容量不对。
星哥玩云
2022/09/15
9340
KVM虚拟机热扩容
KVM管理虚拟机
在上一篇中,我们介绍了如何在 CentOS7上安装并配置KVM,以及通过KVM安装CentOS系统。本篇则是介绍在KVM里安装完虚拟机后,如何使用KVM来管理虚拟机。
端碗吹水
2020/09/23
2K0
相关推荐
KVM--虚拟机Windows10系统安装(三)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验