环境:VMware-Workstation-12-Pro,Windows-10,CentOS-6.9-x86_64,Xshell5

概况

vmware自带的快照,克隆功能,都可以实现备份虚拟机的功能,以备日后出故障后恢复。但现在

我们希望实现这样一种需求:全新安装CentOS6.9系统,并做好各种优化,然后把该系统压缩成一

压缩包,以后任何时刻虚拟机有故障时,只需解压此压缩包,双击里面的.vmx文件,即可打开

我们曾经备份好的虚拟机,当然此压缩包也可以放到U盘,移动到其它电脑中使用。

总体来说非常简单,只要进入到虚拟机的安装目录,把所有文件打包压缩一下即可,只是后续使用

时,有些网络上的配置,需要重新设置一下。

全新安装Linux虚拟机常用优化

在vmware中安装虚拟机基本就两个地方需要着重设置,分区和网络。

分区配置

分区采用如下方案即可

swap   768M
/boot 200M
/ 剩余所有

网络配置

网络设置部分是重中之重,设置有误,很容易出现,移植后的虚拟机,无法访问互联网,无法连

接Xshell等故障,那么移植也就失败了,这里我们选择静态IP地址+NAT的上网方案。

vmware虚拟网络编辑器中的设置如下

NAT设置里的内容如下

简单解释下上述设置什么意思。我们可以这样想象,假如我们现在刚组好一套房子,墙壁上提供

一个网口,大致分为如下几个步骤:

  1. 交钱给房东,把墙上的网口激活。
  2. 买2根网线,1个路由器,用一根网线把路由器和墙壁上的网口相连。
  3. 用另一根网线,把笔记本和路由器相连。
  4. 开始访问互联网。

以上步骤有所简化,不用细究。

现在如果我们打开windows命令行输入ipconfig就可以看到我们的网络参数,其中比较重要

的几项内容如下:

  1. 默认网关,这就是我们路由器的IP地址,别人和我们通信时,先找到我们的路由器,然后再

    进一步找到,我们的计算机。
  2. IP地址,就是我们自己机器的本地编号。
  3. 子网掩码,这是用来识别哪些机器与我们时同一个局域网,在家庭网络情况中,就是插在同

    一个路由器上的机器,比如子网掩码是255.255.255.0,就代表只要是前3段地址和我们

    的IP一样,就是一个局域网内的。

由以上分析可见,物理机要想上网,需要一台物理路由器,那么虚拟机需要上网,也需要一台虚

拟路由器,没错NAT就是这个虚拟路由器,在虚拟网络编辑器中,我们为这个虚拟路由器配置了

如下参数:

子网IP: 10.0.0.0

子网掩码: 255.255.255.0

网关: 10.0.0.254

这三个参数表示什么含义呢,首先网关就是路由器的IP地址,为什么是254呢,这是一个习惯用

法,网关不能是10.0.0.255也不能是10.0.0.0,这两个地址都有特殊用途,因此1~254

之间的任意一个地址都可以用来作为网关,通常为了方便管理会选择254,子网和子网掩码配合

告诉我们Linux虚拟机里的IP地址只能配置成10.0.0.1~10.0.0.253,为什么是这样,把子

网掩码转成二进制,前面是24个1,后面是8个0,因此表示子网前24位不能动,作为网络地址,

在去掉两个特殊地址和一个用作路由器的地址。

详细内容需可进一步了解,子网,子网掩码,网关,网络号,主机号,广播地址,网络地址

分析了这么多,主要就是为了告诉读者,上述配置不是一成不变,切勿当成定律一样照搬照抄,

比如网关还可以配置成192.168.1.254,子网掩码255.255.255.0,这样我们虚拟机里

静态IP地址就可以配置成192.168.1.1~192.168.1.253

如果反复高频率改动虚拟网络编辑器里的设置,可能会出现确实配置正确但就是无法访问互联网

的情况,此时可以使用虚拟网络编辑器>>还原默认设置,重置网络配置。

在安装CentOS6.9系统时,建议在如下界面就配置好相应网络参数

注意IP地址不要和其它虚拟机重复了,否则就会出现如下错误

最后配置以下DNS,然后/etc/init.d/network restart重启网卡,ping测试下网络是否连通,

参考配置如下

配置标准yum源和epel

cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.backup
wget http://mirrors.aliyun.com/repo/Centos-6.repo
wget http://mirrors.aliyun.com/repo/epel-6.repo

阿里云镜像 https://opsx.alibaba.com/mirror

添加一个普通用户oldboy

useradd oldboy

echo '123456' | passwd --stdin oldboy

关闭SELinux

setenforce 0
sed -i '/^SELINUX=/ s#enforcing#disabled#g' /etc/selinux/config

关闭iptables

/etc/init.d/iptables stop
chkconfig iptables off

安装常用软件

lrzsz - 这个软件可以实现虚拟机与主机互相交换文件。

tree - 树形显示文件

yum install lrzsz tree -y

关闭不需要的开启自启项

只保留crond,sshd,network,rsyslog,sysstat其余服务都关闭

for name in `chkconfig | awk '{print $1}' | \
egrep -v 'crond|sshd|network|rsyslog|sysstat'`; \
do chkconfig $name off; done

配置常用的环境变量

[root@oldboy-50 ~]# tail /etc/profile
# export PS1='[\u@\h \W]\$ '
export PS1='\e[32m[\u@\h \W]\$ \e[0m'
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
alias mydate='date +%F\ %T'
alias ntp-aliyun='ntpdate ntp1.aliyun.com'
alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth0'
[root@oldboy-50 ~]# source /etc/profile

历史命令记录改为1万条

sed -i '/^HISTSIZE=1000$/ s#1000#10000#g' /etc/profile

配置主机名和解析

# hostname as4k
# vim /etc/sysconfig/network
# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=as4k
# vim /etc/hosts
# tail -1 /etc/hosts
10.0.0.66 as4k

可以断开Xshell重连,ping as4k测试。

添加vim配置文件

[root@as4k ~]# cat ~/.vimrc
set tabstop=4
set shiftwidth=4
set expandtab " 使用空格替换TAB set nocompatible " 关闭兼容模式(无需兼容vi)
set showcmd " 输入的命令显示出来,看的清楚些 hi MatchParen ctermbg=Black guibg=lightblue " Must Exists

把虚拟机文件打包压缩

全部按照自己的想法优化完毕之后,建议重启确下是否一切OK,然后关机,打开虚拟机配置文件

夹,开始压缩。

配置文件路径

上面是我的配置,实际安装路径按照自己的来,确认虚拟机关机后,压缩整个std目录。

使用压缩好的虚拟机包

在使用时解压,并使用vmware软件打开std.vmx文件,vmware软件版本最好对应进入虚拟机

之后还需要再配置一下网络参数,否则很容易出现网卡无法重启的故障,自然Xshell更无法连

接了。

打开虚拟机时出下如下界面,点击我已复制该虚拟机。

第1次进入虚拟机会发现,找不到eth0网卡,不要慌,往下看。

编辑/etc/sysconfig/network-scripts/ifcfg-eth0,把下图中白线的部分删除,即UUID

和HWADDR,这两个都和硬件地址相关,删除后重启机器系统会自动建立,这里也可把IP地址顺手

修改成自己想要的。

接下来清空/etc/udev/rules.d/70-persistent-net.rules这个文件,这里面的内容也是和

硬件地址相关的,重启及机器后也会自动重新创建。

> /etc/udev/rules.d/70-persistent-net.rules

重启机器shutdown -r now,移植操作到此完毕,此后即可正常使用。

有时可能需要删除\rm /etc/udev/rules.d/70-persistent-net.rules

VMware跨电脑移动Linux虚拟机的更多相关文章

  1. 如何在VMware workstation上创建Linux虚拟机

    由于需要使用Linux虚拟机部署Hadoop集群,故在win10系统上安装了VMware workstation 14,现将介绍如何在VMware workstation上创建Linux虚拟机.下面以 ...

  2. VMware Workstation 安装以及Linux虚拟机安装 指北

    最近有挺多小伙伴跟我说起虚拟机这个东西,所以,今天就给大家写一篇虚拟机安装使用指北吧. 虚拟机(英语:virtual machine),在计算机科学中的体系结构里,是指一种特殊的软件,可以在计算机平台 ...

  3. 【原创】VMWare克隆或复制Linux虚拟机后无法上网的解决

    如果选择桥接,需要设置网卡通过哪个物理网卡桥接,桥接代表当前虚拟机通过本机的网卡直接连到网络中,本机网卡作为一个交换机直连.因此需要确定使用哪个网卡桥接,一般在单网卡的时候选择自动即可,多网卡时需要指 ...

  4. 电脑本机ping通Linux虚拟机的方法

    一.安装VMware: 二.创建Linux虚拟机(centOS7): 三.开启虚拟机,在Linux桌面右键打开终端,输入查看虚拟机ip地址的命令:ifconfig -a    四.打开本机cmd窗口, ...

  5. 在 Linux 虚拟机中手动安装或升级 VMware Tools

    对于 Linux 虚拟机,您可以使用命令行工具手动安装或升级 VMware Tools. 本次Linux 虚拟机为CentOS6.5 先决条件开启虚拟机.确认客户机操作系统正在运行.由于 VMware ...

  6. 利用 Vmware 安装 Linux 虚拟机

    之前写过一篇利用MS系的 Hyper-v 安装 Ubuntu 的教程,这里给出使用 Vmware 安装 Linux 的教程.(ps:Hyper-v 的体验感不太好,而且不够大众化) 1.准备工作 1. ...

  7. VMWare中Linux虚拟机设置静态IP上网的设置方法

    VMWare中Linux虚拟机设置静态IP上网的设置方法 标签: vmwareLinux虚拟机securecrt静态IP上网 2016-05-18 02:30 702人阅读 评论(0) 收藏 举报   ...

  8. Vmware 下安装linux虚拟机

    由于想自己玩玩linux系统,就想着装一个linux的虚拟机,虚拟机vmware很好找,也很好用,但是linux镜像安装老是出问题,然后就找了很多版本的,最后实验成功一种,在这里分享给大家. 一.安装 ...

  9. Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT、桥接和Host-only]

    Windows和linux虚拟机之间联网实现SSH远程连接以及VMware的3种网络模式[NAT.桥接和Host-only] 作者:天齐 一.Windows和linux虚拟机之间联网实现SSH远程连接 ...

随机推荐

  1. 【转】VS2008快速将代码中字符串改为_T(“”)风格的方法

    用VC在修改一些老程序的时候,经常面临“UNICODE化”的工作.就是将一些传统C语言风格的字符串,如“string”,改为既能够通过多字节编码工程编译,又能通过UNICODE工程编译的代码,即形如_ ...

  2. VC++ 操作Windows快捷方式

    声明:本文是参考网友博文,然后自己实践整理所得,转载请注明出处! Windows的快捷方式实际上是一个带有扩展名LNK的数据文件,其中包含有用于访问Windows某一对象(即在资源管理器中所能浏览的所 ...

  3. 总结一下前端面试题之Html和CSS

    总结一下关于前端的面试题,今天我们分享关于Html和CSS部分的 面试 (1) 1. 常用那几种浏览器测试?有哪些内核(Layout Engine)? 2. 说下行内元素和块级元素的区别?行内块元素的 ...

  4. 使用 MVVMLight 消息通知

    欢迎阅读我的MVVMLight教程系列文章<关于 MVVMLight 设计模式系列> 在文章的其实我们就说了,MVVMLight的精华就是消息通知机制,设计的非常不错.这个东西在MVVML ...

  5. 超全面的JavaWeb笔记day15<mysql数据库>

    1.数据库的概述 2.SQL 3.DDL 4.DML 5.DCL 6.DQL MySQL 数据库 1 数据库概念(了解) 1.1 什么是数据库 数据库就是用来存储和管理数据的仓库! 数据库存储数据的优 ...

  6. swift学习笔记之--类的计算属性

    1,Swift中类可以使用计算属性,即使用get和set来间接获取/改变其他属性的值,代码如下 class Calcuator{ ; ; var sum:Int{ get{ return a + b ...

  7. HTTP 代理

    HTTP 代理: (1) 如果我们一直用同一个IP去爬取同一个网站上的网页,久了之后可能会被该网站服务器屏蔽,因此我们可以使用代理IP来爬取,代理实际上指的就是代理服务器(2) 当我们使用代理IP爬取 ...

  8. java运行显示“找不到或无法加载主类”的解决办法(linux)

    要是配置文件的路径问题.打开终端,输入vi ~/.bashrc添加如下代码即可. # set Java environmentJAVA_HOME=/usr/local/java/jdk1.8.0PAT ...

  9. 判断页面中的js方法是否存在,存在就调用它,不存在则忽略

    if(typeof queryResource != 'undefined' && queryResource instanceof Function) queryResource(a ...

  10. 初学hadoop,windows下安装

    先bb一下,woc开始使用Cygwin来模拟linux配置hadoop,然后各种错误,找着找着发现原来2.0+的hadoop可以直接在windows下配置.当时真是1w头神兽飞过. 下载hadoop ...