深入探索KVM虚拟化技术:全面掌握虚拟机的创建与管理

文章目录

    • 安装KVM
      • 开启cpu虚拟化
      • 安装KVM
      • 检查环境是否正常
    • KVM图形化创建虚拟机
      • 上传ISO
      • 创建虚拟机
      • 加载镜像
      • 配置内存
      • 添加磁盘
      • 能否手工指定存储路径呢?
      • 创建成功
      • 安装完成
      • 查看虚拟机
    • KVM命令行创建虚拟机
      • 创建磁盘
      • 通过命令行创建虚拟机
      • 手动安装虚拟机
    • KVM命令行创建虚拟机-kickstart全自动安装
      • 使用Centos7生成cfg文件
      • 使用Centos8自动安装
      • 测试
    • KVM基本命令总结

安装KVM

开启cpu虚拟化

注意:务必开启虚拟机CPU虚拟化,否则无法嵌套虚拟机

在这里插入图片描述

不开启后期报错

在这里插入图片描述

安装KVM

配置yum源 --》安装KVM

[root@cloud ~]# mount /dev/cdrom /mnt/
mount: /mnt: WARNING: device write-protected, mounted read-only.
[root@cloud ~]# vim /etc/yum.repos.d/
[root@cloud ~]# vim /etc/yum.repos.d/
bak/        cloud.repo  
[root@cloud ~]# vim /etc/yum.repos.d/cloud.repo 
[root@cloud ~]# yum clean all
14 files removed
[root@cloud ~]# yum repolist  all
repo id                    repo name                   status
AppStream                  AppStream                   enabled
BaseOS                     BaseOS                      enabled
[root@cloud ~]# yum grouplist 
AppStream                     316 MB/s | 5.7 MB     00:00    
BaseOS                        455 MB/s | 2.2 MB     00:00    
Available Environment Groups:ServerMinimal InstallWorkstationCustom Operating System
Installed Environment Groups:Server with GUIVirtualization Host
Installed Groups:Container ManagementHeadless Management
Available Groups:.NET Core DevelopmentRPM Development ToolsDevelopment ToolsGraphical Administration ToolsLegacy UNIX CompatibilityNetwork ServersScientific SupportSecurity ToolsSmart Card SupportSystem Tools[root@cloud ~]# yum groupinstall -y "Virtualization*"   ### 安装的软件包组
Last metadata expiration check: 0:01:01 ago on Sat 05 Aug 2023 03:08:26 PM CST.
No match for group package "insights-client"
No match for group package "centos-release-eula"
Dependencies resolved.
==============================================================Package      Arch   Version                  Repo       Size
==============================================================
Installing group/module packages:virt-install noarch 2.2.1-3.el8              AppStream  99 kvirt-top     x86_64 1.0.8-32.el8             AppStream 729 kvirt-viewer  x86_64 7.0-9.el8                AppStream 397 kvirt-who     noarch 0.27.6-1.el8             AppStream 247 k
Installing dependencies:python3-suds noarch 0.7-0.8.94664ddd46a6.el8 AppStream 242 k
Installing Environment Groups:Virtualization HostInstalling Groups:Virtualization HypervisorVirtualization PlatformVirtualization ClientVirtualization ToolsBase                                                        Core                                                        Standard                                                    Transaction Summary
==============================================================
Install  5 PackagesTotal size: 1.7 M
Installed size: 6.2 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                      1/1 Installing       : python3-suds-0.7-0.8.94664ddd46a6.   1/5 Installing       : virt-who-0.27.6-1.el8.noarch         2/5 Running scriptlet: virt-who-0.27.6-1.el8.noarch         2/5 Installing       : virt-viewer-7.0-9.el8.x86_64         3/5 Installing       : virt-top-1.0.8-32.el8.x86_64         4/5 Installing       : virt-install-2.2.1-3.el8.noarch      5/5 Running scriptlet: virt-install-2.2.1-3.el8.noarch      5/5 Verifying        : python3-suds-0.7-0.8.94664ddd46a6.   1/5 Verifying        : virt-install-2.2.1-3.el8.noarch      2/5 Verifying        : virt-top-1.0.8-32.el8.x86_64         3/5 Verifying        : virt-viewer-7.0-9.el8.x86_64         4/5 Verifying        : virt-who-0.27.6-1.el8.noarch         5/5 
Installed products updated.Installed:python3-suds-0.7-0.8.94664ddd46a6.el8.noarch                virt-install-2.2.1-3.el8.noarch                             virt-top-1.0.8-32.el8.x86_64                                virt-viewer-7.0-9.el8.x86_64                                virt-who-0.27.6-1.el8.noarch                                Complete!

可以通过桌面化图标打开或者命令行

[root@cloud ~]# virt-manager

在这里插入图片描述

检查环境是否正常

在这里插入图片描述

[root@cloud ~]# ifconfig 
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.129.141  netmask 255.255.255.0  broadcast 192.168.129.255inet6 fe80::4b45:520e:3195:48b4  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:9b:91:4d  txqueuelen 1000  (Ethernet)RX packets 339  bytes 60656 (59.2 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 201  bytes 23207 (22.6 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 48  bytes 4080 (3.9 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 48  bytes 4080 (3.9 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
### 有正常
virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255ether 52:54:00:bd:e4:f0  txqueuelen 1000  (Ethernet)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

KVM图形化创建虚拟机

上传ISO

在这里插入图片描述

创建虚拟机

在这里插入图片描述

加载镜像

在这里插入图片描述

配置内存

在这里插入图片描述

添加磁盘

在这里插入图片描述

在这里插入图片描述

能否手工指定存储路径呢?

在指定的路径下首先创建虚拟机所用的磁盘

添加物理磁盘 --> 分区 --> 格式化 --> 挂载 --> 创建磁盘

[root@cloud /]# fdisk /dev/nvme0n2Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.Command (m for help): n
Partition typep   primary (0 primary, 0 extended, 4 free)e   extended (container for logical partitions)
Select (default p): Using default response p.
Partition number (1-4, default 1): 
First sector (2048-41943039, default 2048): 
Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): Created a new partition 1 of type 'Linux' and of size 20 GiB.
Partition #1 contains a LVM2_member signature.Do you want to remove the signature? [Y]es/[N]o: p
Do you want to remove the signature? [Y]es/[N]o: yThe signature will be removed by a write command.Command (m for help): p
Disk /dev/nvme0n2: 20 GiB, 21474836480 bytes, 41943040 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
Disklabel type: dos
Disk identifier: 0x87cd3c01Device         Boot Start      End  Sectors Size Id Type
/dev/nvme0n2p1       2048 41943039 41940992  20G 83 LinuxFilesystem/RAID signature on partition 1 will be wiped.Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.[root@cloud /]# mkfs.xfs /dev/nvme0n2p1
meta-data=/dev/nvme0n2p1         isize=512    agcount=4, agsize=1310656 blks=                       sectsz=512   attr=2, projid32bit=1=                       crc=1        finobt=1, sparse=1, rmapbt=0=                       reflink=1
data     =                       bsize=4096   blocks=5242624, imaxpct=25=                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2=                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0[root@cloud /]# mkdir /kvm
[root@cloud /]# cd kvm/
### qcow2为磁盘格式
[root@cloud kvm]# qemu-img create -f qcow2 /kvm/centos1.qcow2 20g
Formatting '/kvm/centos1.qcow2', fmt=qcow2 size=21474836480 cluster_size=65536 lazy_refcounts=off refcount_bits=16
[root@cloud kvm]# ls
centos1.qcow2

在这里插入图片描述

在这里插入图片描述

创建成功

在这里插入图片描述

安装完成

在这里插入图片描述

在这里插入图片描述

查看虚拟机

[root@cloud ~]# virsh list Id    Name                           State
----------------------------------------------------3     centos7.0-2                    running

KVM命令行创建虚拟机

创建磁盘

[root@cloud kvm]# qemu-img create -f qcow2 /kvm/os1.qcow2 20g
Formatting '/kvm/os1.qcow2', fmt=qcow2 size=21474836480 cluster_size=65536 lazy_refcounts=off refcount_bits=16[root@cloud kvm]# ls
os1.qcow2### 之后,通过图形化创建虚拟机的时候可以选择刚才手工创建的存储磁盘 centos701.qcow2

通过命令行创建虚拟机

### 其实就是把前面图形化点击的步骤转换成了命令行操作。
[root@cloud kvm]# virt-install \
> --name centos702 \
> --memory 2048 \
> --vcpus 1 \
> --disk path=/kvm/os1.qcow2 \
> --location /data/CentOS-7-x86_64-DVD-2009.iso \
> --network network=default \
> --noautoconsoleStarting install...
Retrieving file vmlinuz...                                                                             | 6.5 MB  00:00:00     
Retrieving file initrd.img...                                                                          |  53 MB  00:00:00     
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.### 创建成功
[root@cloud kvm]# virsh listId    Name                           State
----------------------------------------------------3     centos7.0-2                    running4     centos702                      running

手动安装虚拟机

在这里插入图片描述


KVM命令行创建虚拟机-kickstart全自动安装

注意:CentOS 8 版本是没有 kickstart 工具的,可以使用 CentOS 7 版本生成配置文件给 8 版本使用。

使用Centos7生成cfg文件

  • yum install -y system-config-kickstart.noarch --安装工具
  • system-config-kickstart --启动工具,注意禁用udev命名规则 net.ifnames=0 biosdevname=0

进行配置,最后导出 xxx.cfg 文件

  • yum install -y httpd --安装apache
  • systemctl start httpd --启动apache服务,注意关闭防火墙
  • 将工具生成好的配置文件保存。
### 关闭防火墙
[root@cloud html]# systemctl stop firewalld.service        ###  临时关闭
[root@cloud html]# systemctl disable firewalld.service     ### 禁止启用
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@cloud ~]# yum install -y httpd    ### 安装httpd
[root@cloud ~]# systemctl start httpd   ### 开启服务
[root@cloud ~]# cd /var/www/html/       ### 开启服务后,会自动生成目录 /var/www/html/
[root@cloud html]# mv /data/ks01.cfg .  ### 将centos7通过工具生成的cfg文件放到html目录下
[root@cloud html]# ls
ks01.cfg### 使用虚拟机 ip + 目录文件 直接访问
# 例如 http://192.168.129.141/ks01.cfg

使用Centos8自动安装

### 创建磁盘
[root@cloud html]# qemu-img create -f qcow2 /kvm/centos703.qcow2 20g
Formatting '/kvm/centos703.qcow2', fmt=qcow2 size=21474836480 cluster_size=65536 lazy_refcounts=off refcount_bits=16[root@cloud html]# ls /kvm/
centos703.qcow2  os1.qcow2### 如果有错误,会在安装过程中卡住
[root@cloud ~]# virt-install \
> --name centos703 \                       ### 虚拟机名称
> --memory 2048 \                          ### 内存
> --vcpus 1 \                              ### cpu
> --disk path=/kvm/centos703.qcow2 \       ### 磁盘
> --location /data/CentOS-7-x86_64-DVD-2009.iso \  ### 镜像
> --network network=default \                      ### 网络
> --noautoconsole \
> -x ks=http://192.168.129.141/ks/ks01.cfg    ### 也可以使用本地文件 ks=/data/ks01.cfgStarting install...
Retrieving file vmlinuz...                                       | 6.5 MB  00:00:00     
Retrieving file initrd.img...                                    |  53 MB  00:00:00     
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.### 使用本地文件,二选其一即可
[root@cloud ~]# virt-install --name centos703 --memory 2048 --vcpus 1 --disk path=/kvm/centos703.qcow2 --location /data/CentOS-7-x86_64-DVD-2009.iso --network network=default --noautoconsole -x ks=/data/ks01.cfg####  之后即可使用图形化界面进行查看自动化安装

有个问题?虽然是通过命令行可以进行全自动安装,但是因为有图形化界面,所以便于观察虚拟机的具体信息。如果没有图形化界面呢?安装过程及安装完成后根本不知道虚拟机的ip地址,也不知道进行到哪一步了,这时候怎么办?

在kickstart文件中添加 console=ttyS0

bootloader --append=“net.ifnames=0 biosdevname=0 console=ttyS0” --location=mbr

并通过 virsh console xxx 方式连接到虚拟机里面,相当于插上了一根console线。

### 添加 console=ttyS0
[root@cloud ~]# vim /data/ks01.cfg
...
# System timezone
timezone Asia/Shanghai
# System bootloader configuration
# bootloader --append="net.ifnames=0 biosdevname=0" --location=mbr
bootloader --append="net.ifnames=0 biosdevname=0 console=ttyS0" --location=mbr
# Clear the Master Boot Record
zerombr
....[root@cloud ~]# qemu-img create -f qcow2 /kvm/os333.qcow2 20g[root@cloud ~]# virt-install --name centos705 --memory 2048 --vcpus 1 --disk path=/kvm/os333.qcow2 --location /data/CentOS-7-x86_64-DVD-2009.iso --network network=default --noautoconsole -x ks=/data/ks01.cfgStarting install...
Retrieving file vmlinuz...                                       | 6.5 MB  00:00:00     
Retrieving file initrd.img...                                    |  53 MB  00:00:00     
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.[root@cloud ~]# virsh console centos705
Connected to domain centos705
Escape character is ^]CentOS Linux 7 (Core)
Kernel 3.10.0-957.el7.x86_64 on an x86_64localhost login: root
Password: ### ctrl + ] 退出

如果安装文件中没有加入,也可在后续虚拟机中加入

[root localhost ]# cd /etc/def auu lt/
[root localhost default]# ls
grub   nss    useradd
[root localhost default]# vi grub a
GRUB TIMEOUT=5
GRUB DISTRIBUTOR="S(sed 's, release .*5, ,g'’/etc/system-re lease )"
GRUB DEFAULT-saved
GRUB DISABLE SUBMENU=true
GRUB_ TERMINAL OUTPUT="'conso le'
# GRUB CMDL INE L INUX= crashkerne l=auto rd . lum. lu=centos/root rd. lum. lu=centos/swap rhgb quiet" 
### 加入到此处 console=ttyS0
GRUB CMDL INE L INUX= crashkerne l=auto rd . lum. lu=centos/root rd. lum. lu=centos/swap rhgb quiet console=ttyS0"
GRUB_ DISABLE RECOUERY="'true"[root localhost default]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root localhost default]# reboot

测试

[root@cloud ~]# virsh console centos7.0 
Connected to domain centos7.0
Escape character is ^]CentOS Linux 7 (Core)
Kernel 3.10.0-1160.el7.x86_64 on an x86_64localhost login: root
Password: 
Last login: Sat Aug  5 06:42:12 on tty1
[root@localhost ~]# 

KVM基本命令总结

[root@cloud ~]# virsh --help              查看帮助
[root@cloud ~]# virsh list --all          列出所有虚拟机(包括正在运行的和关闭的)
[root@cloud ~]# virsh list                列出所有虚拟机(仅运行中的)
[root@cloud ~]# virsh start centos705     --启动虚拟机
[root@cloud ~]# virsh shutdown centos705  -- 关闭虚拟机
[root@cloud ~]# virsh reboot centos705    --重启虚拟机### 如果虚拟机关不了,强制关闭,非正常关闭
[root@cloud ~]# virsh destroy centos705
### 清除配置
[root@cloud ~]# virsh undefine centos705# 移除软件包
[root@localhost ~]# yum groupremove -y "Virtualization*"
[root@localhost ~]# rpm -qa | grep virtualization
[root@localhost ~]# systemctl list-units | grep virtualization
[root@localhost ~]# lsmod | grep virtualization

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/124801.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

攻防世界-WEB-ics-05

打开靶机 只有设备维护中心可以点开 点标签得到新的url pageindex 想到文件包含漏洞&#xff08;URL中出现path、dir、file、pag、page、archive、p、eng、语言文件等相关关键字眼 利用php伪协议查看源码 出现一段base64源码&#xff0c;进行转码得出源码 ?pagephp://filter…

驱动开发--day2

实现三盏灯的控制&#xff0c;编写应用程序测试 head.h #ifndef __HEAD_H__ #define __HEAD_H__#define LED1_MODER 0X50006000 #define LED1_ODR 0X50006014 #define LED1_RCC 0X50000A28#define LED2_MODER 0X50007000 #define LED2_ODR 0X50007014#endif mychrdev.c #inc…

LeetCode刷题笔记【30】:动态规划专题-2(不同路径、不同路径 II)

文章目录 前置知识62.不同路径题目描述解题思路代码 63. 不同路径 II题目描述障碍信息传递法(比较复杂)被障碍物阻挡后直接清空计数法(更简洁) 总结 前置知识 参考前文 参考文章&#xff1a; LeetCode刷题笔记【29】&#xff1a;动态规划专题-1&#xff08;斐波那契数、爬楼梯…

【深入理解Linux内核锁】七、互斥体

我的圈子: 高级工程师聚集地 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强企业! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! 文章目录 1、互斥体API2、API实现2.1 mutex2.2 mutex_init2.3 mutex_lock2.4 mutex_un…

2023外贸SEO推广怎么做?

答案是&#xff1a;2023外贸SEO推广可以选择谷歌SEO谷歌Ads双向运营。 外贸SEO的核心要素 外贸SEO不仅仅是关于关键词排名&#xff0c;它更多的是关于品牌建设和目标受众的吸引。 要想成功&#xff0c;必须认识到几个关键要素。 了解目标市场 首先&#xff0c;要深入了解目…

vue3+ts+vite项目引入echarts,vue3项目echarts组件封装

概述 技术栈&#xff1a;Vue3 Ts Vite Echarts 简介&#xff1a; 图文详解&#xff0c;教你如何在Vue3项目中引入Echarts&#xff0c;封装Echarts组件&#xff0c;并实现常用Echarts图例 文章目录 概述一、先看效果1.1 静态效果1.2 动态效果 二、话不多数&#xff0c;引入 …

redis持久化

Redis高可用 在web服务器中&#xff0c;高可用是指服务器可以正常访问的时间&#xff0c;衡量的标准是在多长时间内可以提供正常服务&#xff08;99.9%、99.99%、99.999%等等&#xff09;。 但是在Redis语境中&#xff0c;高可用的含义似乎要宽泛一些&#xff0c;除了保证提供…

ARM的异常处理

概念 处理器在正常执行程序的过程中可能会遇到一些不正常的事件发生 这时处理器就要将当前的程序暂停下来转而去处理这个异常的事件 异常事件处理完成之后再返回到被异常打断的点继续执行程序 异常处理机制 不同的处理器对异常的处理的流程大体相似&#xff0c;但是不同的处理器…

面试如何回答弹性盒子布局这个问题呢?

在我们面试中如果被问道css方面的面试题 那么极有可能被问到的一道面试题就是弹性盒子&#xff0c;本篇文章通过一张图带你拿捏这道面试题。 1、首先需要说一说弹性盒子的基本概念&#xff1a;弹性盒子是一种用于网页布局中创建灵活和响应式设计的CSS布局模型。 2、其次需要说…

IDEA找不到Maven窗口

有时候导入项目或者创建项目时候Maven窗口找不到了 然后指定项目的pom.xml文件

力扣(LeetCode)算法_C++——有效的数独

请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 &#xff0c;验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。&#xff08;请参考示例图&#xff09; …

JMeter压力测试 5分钟让你学会如何并发压测接口

文章目录 地址下载启动 使用 地址 JMeter官网下载&#xff1a;https://jmeter.apache.org/download_jmeter.cgi 下载 最新款的jmeter需要java8的支持&#xff0c;请自行安装jdk8或以上的版本 根据系统不同系统下载zip或者是tgz格式的压缩包&#xff0c;并解压&#xff0c;博…

错误: 找不到或无法加载主类 Main

在用git回退到上个版本后发现&#xff0c;无法运行项目并提示 错误: 找不到或无法加载主类 Main 可以看到Main前面的图标也是号。 查了半天没有解决&#xff0c;问了个大佬&#xff0c;大佬一下就解决掉了&#xff0c;本文记录下解决过程。 错误原因是编辑器无法找到代码位置&…

D361周赛复盘:模拟分割整数⭐+变为整除的最小次数⭐

文章目录 2843.统计对称整数的数目&#xff08;模拟&#xff0c;分割整数为两部分&#xff09;思路1.整数换成字符串版本2.直接用整数的版本 2844.生成特殊数字的最小操作(模拟&#xff0c;x能被Num整除的条件)思路完整版 2843.统计对称整数的数目&#xff08;模拟&#xff0c;…

能直接运营的发接任务平台小程序搭建开发演示

有个项目估计做过互联网的小伙伴都听说过——发接任务平台。 基本每年都有发接任务平台关站&#xff0c;但又有新的平台出来&#xff0c;往复循环&#xff0c;无比热闹。这在互联网圈不常见&#xff0c;互联网项目很多都是风头过去了就结束了&#xff0c;但发接任务年年似乎都…

【django】Forbidden (CSRF cookie not set.)

CSRF 表示django全局发送post请求均需要字符串验证 功能&#xff1a; 防止跨站请求伪造的功能 工作原理&#xff1a; 客户端访问服务器端&#xff0c;在服务器端正常返回给客户端数据的时候&#xff0c;而外返回给客户端一段字符串&#xff0c;等到客户端下次访问服务器端时…

云计算在智能制造中的应用与前景

文章目录 云计算的基本概念智能制造的基本概念云计算在智能制造中的应用1. 数据存储和管理2. 大数据分析3. 机器学习和预测维护4. 跨地理分布的协作5. 资源弹性和成本优化 未来前景1. 智能工厂2. 预测性维护3. 定制化生产4. 绿色生产5. 全球制造协作 结论 &#x1f389;欢迎来到…

JavaWeb | 常用的HTML(JavaWeb)标签

目录&#xff1a; HTML简介HTML的基本结构HTML的常用标签&#xff1a;“标题” 标签“换行” 标签“段落” 标签“水平线” 标签“文字” 标签“粗体” 标签“下划线” 标签“斜体” 标签“上标” 标签“下标” 标签“闪烁” 标签表示 “空格”“列表” 标签&#xff1a;无序列…

mojo初体验

目录标题 mojo初体验试用地址变量定义参数可变性和所有权Structures后续 mojo初体验 试用地址 https://www.modular.com/get-started 与python基础语法很相似。 变量定义 let定义不可变变量var定义可变变量 参数可变性和所有权 下面是一个基本的函数&#xff1a; fn add…

软考:中级软件设计师:程序语言基础:表达式,标准分类,法律法规,程序语言特点,函数传值传址

软考&#xff1a;中级软件设计师:程序语言基础&#xff1a;表达式 提示&#xff1a;系列被面试官问的问题&#xff0c;我自己当时不会&#xff0c;所以下来自己复盘一下&#xff0c;认真学习和总结&#xff0c;以应对未来更多的可能性 关于互联网大厂的笔试面试&#xff0c;都…