Linux 基础篇-VM 和 Linux 的安装
Linux 基础篇-VM 和 Linux 的安装
安装 vm 和 Centos
基本说明
安装 virtualmachine15.5 和 CentOS7.6/centOS8.1,CentOS7.6 是现在主流的生产环境安装的版本,centOS8.1 是未来的主流,这两个版本都要讲。
VMWare 下载
具体步骤看《VMware 小技巧》
VM 安装的步骤
具体步骤看《VMware 小技巧》
Centos 下载地址
直接在CentOS Mirrors List中下载指定版本即可
CentOS 安装的步骤
请看《VMware 在安装 Centos7 时的注意点》
网络连接是一个难点:具体的三种模式的区别查看《Vmware 虚拟机三种网络模式详解》
网段:举个例子,IP 地址为四段,如果三个电脑的 IP 都是 192.168.0.XXX,那么这三个电脑就处在同一网段,可以相互通信。
网络连接的三种模式
桥接:
优点:虚拟机可直接去宿主机所在网段的机器通信,可以直接上网,方便,缺点:虚拟机占用宿主机所在网段的 IP,容易造成 IP 冲突。
NAT:
网络地址转换模式,虚拟机可与宿主机所在网段的机器通信,并且不造成 IP 冲突,这也是虚拟机安装的默认网络模式。但是注意,宿主机同网段的机器无法访问到虚拟机,这样很安全。
仅主机:
主机模式,独立系统,不和外部通信,(在图里没解释)
Linux 的分区:
一般把 Linux 分为三个区:boot 分区(引导分区,1G 就够了)、swap 分区(交换分区,跟系统内存大小一致即可,比如说内存 2G,swap 分区也是 2G)、/分区(根分区,除 boot 分区和 swap 分区之外的所有的磁盘空间都给根分区,因为 home 目录,opt 目录都在根分区下面)。
swap 分区是干什么的?程序要运行,首先就要加载到内存中,当内存不够的时候,swap 分区的磁盘空间可以充当临时的内存空间,最好跟实际内存差不多大即可,当真实内存出现剩余空间的时候,程序会从交换分区进入真实的内存空间,所以 swap 分区作为虚拟内存的速度肯定还是不如真实内存的,这只是内存不足的时候的临时方案。
密码:
实际工作中,root 用户和其他用户的密码,一定要复杂一点。
安装虚拟机和 CentOS 的练习
虚拟机克隆
直接把虚拟机文件拷贝一份,然后再用 VMware 打开就可以了。
或者使用克隆功能。
选中要操作的虚拟机 -> 右键 -> 管理-> 克隆
克隆之后会发生 IP 冲突吗?如果是自动分配 IP 就不会,固定 IP 就会,当不冲突的时候,两台虚拟机是可以相互通信的,所以克隆的功能很好用。
有了这个功能,多台服务器部署的时候就会很方便。比如集群。
虚拟机快照
应用实例
选中要操作的虚拟机 -> 右键 -> 快照-> …
快照的保存很像 Git 的版本管理只要提交了,就不会删除。比如一开始有一个 default 版本,然后我添加了一个 test-snapshot 文件夹,然后再保存一个快照,快照 2,然后快照管理图就会如图一
然后我回退到 default,快照管理图为图二
这个时候如果我继续修改然后拍快照,这个新的快照就会从快照 default 连过来。
然后我再切换到快照 2,快照管理图又变为图一
所以真的很像 Git,当然了,这样管理起来就很方便,方便在多个节点之间切换。
快照就像一个备份,研究如何定时自动创建快照,这样就相当于定时备份系统。TODO,当然了快照也是占用系统空间的,要考虑空间的分配。
虚拟机迁移和删除
虚拟系统安装好了,它的本质就是文件 (放在文件夹的)。因此虚拟系统的迁移很方便,你可以把安装好的虚拟系统这个文件夹整体拷贝或者剪切到另外位置使用。删除也很简单,用 vmware 进行移除(这只是移除一个对文件的指向,跟 IDEA 中一样,如果你想彻底删除,得自己去文件管理器中删除文件夹),再点击菜单->从磁盘删除即可,或者直接手动删除虚拟系统对应的文件夹即可。
安装 vmtools
介绍
可以让我们在 windows 下更好的管理 vm 虚拟机,可以设置 windows 和 centos 的共享文件夹(这一点比较重要)
安装 vmtools 的步骤
首先,将桌面上的 Linux 的 ISO 的光盘右键->弹出,然后再在 VMware 的顶部菜单选择虚拟机->安装/重新安装 VMware Tools,接下来就按照 PDF 中的过程安装即可。
注意要用 root 权限登录,否则权限会不够。权限对于常年使用 Windows 的人来说确实是个新的概念。
vmtools 依赖 gcc,可以通过 gcc -v 来查看本地是否安装了 gcc。
设置共享文件夹
选中要操作的虚拟机 -> 右键 -> 设置-> 选项-> 共享文件夹 -> 选则总是启动,同时添加文件夹即可
在虚拟机的/mnt/hgfs/
下可以看到刚刚共享的文件夹。
在实际的开发过程中,虚拟机不在本地,无法通过共享文件夹传文件,只能通过远程的方式。