Lesson 11 Linux的虚拟机安装与配置
文章目录
- 1. 虚拟机的安装步骤
- 1.1 图形方式创建虚拟机
- 1.2 命令方式创建虚拟机
- 2. 虚拟机的管理
- 2.1 虚拟机的复制
- 2.2 虚拟机的管理命令
- 3. 虚拟机的快照
- 3.1 命令方式生成快照
- 3.2 脚本方式生成快照
- 4. 配置本地yum源
- 4.1 什么是yum源
- 5. 共享型yum源的部署
- 6. 永久性挂载
- 6. yum的管理命令
1. 虚拟机的安装步骤
1.1 图形方式创建虚拟机
实验准备:在内网中下载虚拟机的安装镜像到真实主机,下载完毕之后需要明确此镜像文件存放的路径
安装图形化虚拟机具体步骤如下:
- 在真机的shell里输入
virt-manager
,可能需要等待几秒的时间,会弹出下方所示界面,从该界面上,我们可以看到我们的真机此时有两个虚拟机,分别是desktop和server- 点击左上角小电视,在弹出的界面选择
Local install media ISO image or CDROM
- 选择虚拟机镜像在真机中的存放路径
- 为虚拟机分配内存(1024MiB)和cpu个数(1)
- 选择分配硬盘大小(最小6.0GiB)
- 填写虚拟机名称,默认为generic
- 在填写虚拟机下方勾选
Customize configuration before install
- .将westos虚拟机的硬盘和网卡均设置为虚拟io(virtio)
- 点击右下角“Apply”,再点击左上角Begin Installation
- 进入选择redhat版本界面,选择7.3版本,可以看到在虚拟控台成功添加了名为westos的虚拟机
- 选择安装过程的语言——英语
12.设置此虚拟机的相关参数
日期时间:Asia/Shanghai
语言选择英语
在Base Environment 中选择 server with GUI
自定义虚拟块设备分区 :点击左下角加号添加 /root 大小为200MB
swap交换分区为500MB/ 为系统定义的,选择完毕后,开始安装`
设置root用户的密码,等待安装完毕
当进度条完全变成蓝色,表示安装完毕,勾选同意协议,再添加一个普通用户,设置密码即可登录虚拟机
整个过程耗时长,进度慢,操作繁琐,如果使用命令的方式来创建虚拟机,就可以实现快速安装虚拟机了
1.2 命令方式创建虚拟机
在真机中使用命令的方式创建虚拟机时,一定要注意,所有操作均是在root用户下操作的
1.在真机root用户下,输入vim vm_create.sh
2. 进入该文件,编辑shell脚本,换行符的后边没有空格,前边有一个空格,否则换行符会变成 黑色,失去换行的作用
3.在真机的shell中输入
sh vm_create.sh 虚拟机名称
,就可以在虚拟控台看到自己定义的虚拟机出现在界面中‘并且虚拟机打开了选择版本的界面,打开这个界面,第一次登陆的图形化界面还有一些参数需要手动进行配置
2. 虚拟机的管理
2.1 虚拟机的复制
为什么要复制虚拟机
通过手动或上述提到的命令方式安装的虚拟机,还有很多文件没有安装进来,为了方便起见,可以将其他主机安装完成的虚拟机直接拷贝到自己主机的虚拟控台里,在拷贝的过程中,需要拷贝虚拟机的硬盘信息和硬件信息,相当于从别人的主机下载到我的主机
具体步骤:
- 在真机切换到root用户,复制对方虚拟机硬盘信息
scp root@172.25.254.18:/var/lib/libvirt/images/zxyos.qcow2 /mnt/
’- 复制虚拟机的硬件信息
scp root@172.25.254.18:/etc/libvirt/qemu/zxyos.xml /mnt/
>将硬盘信息和硬件信息放在同一个目录下 mv /mnt/zxyos.qcow2 /var/lib/libvirt/images/.因为硬盘信息是默认在var下的,应该移动,也可以直接在文件里面改,但是容易出错
virsh create /mnt/zxyos.xml
一次性使用复制的虚拟机 ,关掉就没有了
virsh define /mnt/zxyos
永久性使用虚拟机 ,关掉依然存在
virsh undefine /mnt/zxyos
永久性关掉虚拟机
virsh list --all
列出所有的虚拟机信息和状态
2.2 虚拟机的管理命令
virsh list
#列出所有正在开启的虚拟机virsh start westos
#开启虚拟机virsh shut down westos
#正常关闭虚拟机virsh destory westos
#立即关闭虚拟机(相当于power off)
3. 虚拟机的快照
虚拟机的快照原理
就像生活中我们拍照片然后修图,操作的是图片,实际上看到的是我们自己,如果修图没成功,则直接舍弃掉,重新拍一张。同理,虚拟机被弄坏非常容易,又很难恢复,是不可逆的,如果用一个文件放到真实文件前面,使用的是快照,看到的是真实文件,不对的时候直接舍弃快照,重新做一张新的快照,就可以保护虚拟机不收到伤害。怎样产生虚拟机的快照
3.1 命令方式生成快照
实验准备:真机里安装好的一个虚拟机
实验步骤:
- 真机切到root用户下,
cd /var/lib/libvirt/images/
,后面可以使用相对路径,比较方便- ls 查看该路径下的虚拟机的硬盘信息,是否有westos.qcow2文件,使用命令 qemu-img,建立westos这个虚拟机的快照
qemu-img create -f qcow2 -b /var/lib/libvirt/images/westos.qcow2 /var/lib/libvirt/imag /node1.qcow2
- 其中, -f #表示要建立快照的虚拟机的硬盘格式,
-b #表示备份虚拟机的硬件信息
/var/lib/libvirt/images/westos.qcow2 #真实虚拟机硬件信息的存放路径
/var/lib/libvirt/images /node1.qcow2 #虚拟机快照硬件信息存放路径- ls 查看node.qcow2是否生成(虚拟机的快照硬盘格式)
du -sh node.qcow2
查看快照文件的大小(当这个快照被打开后,快照文件会变大)- 进入虚拟控台,点击电视,选择
Import existing disk image
导入快照‘’的路径- 给快照分配内存和CPU资源
- 给快照修改名称
- 选择硬盘的总线为virtio,
- 网卡的设备模型为virtio
- 一个虚拟机的快照就配置完成了,对快照进行操作,相当于对虚拟机进行操作,如果不小心坏了,删掉这个快照重新建立快照即可
3.2 脚本方式生成快照
- 在真机的root下cd /mnt/,在该目录下建立脚本设置快照;ls
2.vim vm_create_snopshot.sh
#建立生成快照虚拟机的脚本
3.编写脚本
4.:wq退出保存,点击虚拟控台的小电视,按照提示给虚拟机快照选择和填写相关参数(同命令方式生成快照的步骤5以后的操作)
4. 配置本地yum源
4.1 什么是yum源
yum源是Linux系统自带的软件的集合。在系统中配置过yum源就可以通过搜索并通过yum install 命令来安装系统中存在的软件,yum可以智能的帮你解决大部分的软件依赖性问题
本地yum源:yum源的镜像文件里会自带一些软件,这些软件就可以把光盘当做本地源来安装
网络yum源:比如aliyun的镜像网站,这就属于网络源,可以通过互联网把软件下载然后安装,能够从指定的服务器下载RPM包并安装,并且可以自动处理依赖性关系。yum可以智能的一次性安装所有依赖的包软件包,无需一次次频繁安装
使用网络安装源安装软件
vim /etc/yum.repos.d/yum.repo #文件名称必须以repo结尾
[rhel7.3]
name=rhel7.3 #仓库名称
baseurl=http://172.25.254.14/rhel7.3/x86_64/dvd #yum的网络安装源
gpgcheck=0 #不检测gpgkey,允许安装第三方软件
实验准备:
- 真机ip为172.25.254.14,并且在该主机上存在yum源的dvd镜像
##配置虚拟机的镜像ip为172.25.254.114,我们先使用yum remove dhcp -y
命令,尝试不提示的卸载dhcp软件
可以看到,执行该命令时报错
再使用yum install dhcp
来尝试安装dhcp软件
可以看到,也是无法使用,出现报错,出现这两个问题的原因就是我们的虚拟机里没有安装yum源,所以,接下来我们就要进行yum源的配置 - 首先,查看yum源镜像文件的存放位置
- 这里建议将yum源的镜像文件存放到根目录下,比较安全,创建一个目录/iso,用来存放yum的镜像文件
mkdir /iso
- 再建立一个目录,用来挂载镜像文件
mkdir /rhel7.3
挂载后会提示只读,这个不是报错
挂载后查看该目录,出现isolinux文件表示挂载成功,有Packages表示有了yum的仓库,Packages下有很多rpm包,即系统官方软件的安装库
repodata是官方软件安装的依赖性关系数据,此时直接利用yum命令安装存在yum仓库里的官方软件不需要处理依赖性关系
其中各个部分的含义如下:
abrt-cli | 软件名称 |
2.1.11-45 | 版本 |
el7 适用系统 | el7 |
x86_64 | 架构 |
rpm | 适用rpm体系软件 |
设定系统的安装源指向:安装源指向是一个命名以repo结尾的文件,里面放的是本地yum源软件仓库的一些信息,必须切换到该路径下编辑以repo结尾文件,yum源才可以生效
将yum.repos.d中存放的文件移动到/mnt/
编写安装源指向文件vim westos.repo
[rhel7.3] | 软件库名称,可以任意写 |
name=rhel7.3 | 软件库描述信息,可以任意写 |
baseurl=file:///rhel7.3 | 软件安装访问地址,网络安装源 |
gpgcheck=0 | 不让红帽公司检测这台主机要下载的第三方软件是否授权,不检测gpgkey |
yum clean all
#清空系统中原有的yum信息
重新使用yum install dhcp
安装dhcp软件
可以看到,系统可以正常使用yum源来安装软件
5. 共享型yum源的部署
当企业需要一次性加入多台新的服务器时,此时每一台主机上都没有yum源,不能安装软件。如果每台服务器都一个个去配置本地yum源的话会非常麻烦,所以就需要先配置好一台主机的yum源,再共享给其他主机
共享的前提是http(超文本传输)协议,则在共享前需要在系统中安装这个软件,通过这个协议来共享yum源
将yum源共享,让企业当中多个服务器使用同一个yum源,否则一个一个安装yum源会浪费时间
补充:http是超文本协议,协议是数据传输方式的规则,程序就是由进程开启的,进程由软件来提供
文件传输协议包括http和file,http为超文本传输协议
实验步骤:
测试:在虚拟机浏览器中输入网址:
http://172.25.254.14/rhel7.3
1.在一台已经配置好本地yum源的主机上安装httpd(httpd属于系统官方软件,有本地yum源就可以直接安装yum install httpd
安装这个软件的目的:提供超文本传输协议来实现yum源文件共享,通过这个协议使yum源共享)
安装成功
2.配置网络yum源
开启httpd服务后,将主机的本地yum源挂载在/var/www/html/下才能实现yum源共享
当真机共享文件给其它主机时,必须关闭防火墙,关闭开机自启动
- 将镜像挂载在/var/www/html/下才能共享yum源,在/var/www/html下创建/rhel7.3文件夹为挂载文件夹
挂载成功后,在虚拟机镜像中输入172.25.254.14/rhel7.3看到真机共享的yum源的安装目录说明共享yum源成功
- 在虚拟机镜像里面 /etc/yum.repo.d下设置一个系统安装源导向
6. 永久性挂载
上述挂载方法在主机重启之后挂载就会失效。如何实现永久挂载,使主机在重启之后挂载依然生效?
首先切换到超级用户,在真机中df查看是否挂载了yum源的镜像可以看到已挂载,输入reboot重启真机,重启之后再次df查看挂载不存在
在真机里输入:vim /etc.rc.d/rc.local
,进入配置文件
输入挂载命令,将挂载命令写入这个本地永久挂载的配置文件
在真机中输入chmod +x /etc/rc.d/rc.local
给它一个可执行权限,系统在开机时就会自动执行此脚本,这样就实现了永久挂载
在真机中reboot重新启动联代码片,然后输入df
来查看挂载列表,存放yum源目录存在说明永久挂载成功
6. yum的管理命令
注:yum命令的使用前提是在配置好yum源的主机上执行
yum clean all
#清除所有的yum缓存,重新加载yum源的两个文件
yum repolist
#列出软件仓库信息
yum install software
#安装一个系统自带软件
yum update software
#更新
yum list software
#查看软件列表
yum list all
#查看所有软件
yum list installed
#列出所有已安装的软件yum list available
#列出可安装软件
yum reinstall software
#重新安装软件
yum remove software
#删除软件
yum info software
#查看软件信息
yum search software
#根据软件信息查找软件
yum whatprovides file
#根据文件信息查找包含此文件信息的软件
yum history
#查看系统中软件管理信息
!6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzNjg3NzU1,size_16,color_FFFFFF,t_70)
yum history info
#对数字为id的信息进行显示
yum groups list
#l列出软件组
yum groups info
#查看软件组的信息
yum groups install sfggroup
#安装软件组
yum groups remove sfggroup
#卸载软件组