使用VirtalBox最小化安装CentOS-7

本文介绍如何使用virtual box虚拟机安装cenos-7,并进行网络配置,使虚拟机可以连外网,使宿主机可以连虚拟机。

  1. 宿主机:windows 10 (2019.06.02更新,版本号1809,操作系统版本号17763.503。在设置--系统--关于中查看)
  2. 虚拟机: virtual box 5.2.30
  3. CentOS: CentOS-7-x86_64-DVD-1810.iso
  4. 工具:XShell 5. xshell在Linux下配色选择BlackPoppingCandy.xcs

virtual box默认安装即可,本文不再赘述。

1. 设置virtual box

  • 打开virtual box,点击新建按钮

  • 在新打开的窗口中,类型选择Linux,版本选择Red Hat 64bit,名称写自己喜欢的名称
  • 设置内存,添加硬盘(现在创建虚拟硬盘),VDI,动态分配,然后为虚拟硬盘选择一个位置,并设置大小

  • 点击创建
  • 点击新创建好的虚拟机,然后点击设置

  • 系统设置中,反选“软驱”。这一步不做也可以
  • 存储设置中,为光驱(IDE控制器下的圆盘)加载CentOS的镜像文件:

  • 网络设置中,网卡1是“网络地址转换(NAT)”,这个默认应该已经启动。然后再把网卡2启动,选择“仅主机(Host-Only)网络”,此时应该会自动选择一个界面名称,每个机器可能不一样

  • 共享文件夹界面,点击右侧的添加按钮,设置一个共享文件夹,可以在windows和linux之间传文件。不需要自动挂载:

  • 配置完之后,点击确定
  • 可以通过设置CPU数量为4,CPU使用率降低到50%,降低VirtualBox的CPU使用率

2. 安装CentOS-7

  • virtual box的主界面上,点击启动,启动刚才的虚拟机。在新界面中,会提示安装CentOS。通过按上下键选择不同的选项。这里我们直接选择“install CentOS 7”来安装

  • 语言选择界面,我们选择English>English(United States)。如果鼠标在虚拟机中出不来,按键盘右侧的ctl键即可让鼠标跳出虚拟机
  • INSTALLATION SUMMARY界面: 设置Data&Time为中国地界,设置完后点击左上角的“Done”按钮。设置INSTALLATION DESTINATION,进去后选择分配的磁盘(需要点它两次),使用默认分区(Automatic partition)即可。SOFTWARE SELECTION中默认选择的就是Minamal Install,如果需要安装其他功能,可以进入这个选择其它功能进行安装。

  • 然后就开始安装了,此时我们可以设置root密码,并新建一个用户。如果密码设置过于简单,需要点击两次Done按钮,强制设置简单的密码。在新建的用户中,最好选择上“设置为管理员”,这样新用户就可以执行sudo操作。安装完后点击reboot重启

3. 设置网络

  • 使用root用户登陆重启后的虚拟机
  • 执行ip a命令查看现有的网络地址
  • cd /etc/sysconfig/network-scripts
  • vi ifcfg-enp0s3,把最后的ONBOOT设置为yes。enp0s3就是virtual box中设置的NAT网络。这个网络是为了让虚拟机可以上网

  • vi ifcfg-enp0s8,修改BOOTPROTO=staic, ONBOOT=yes,添加IPADDR=192.186.56.103,103可以换成其它的。enp0s8就是virtual box中设置的host-only网络。这个网络是为了让宿主机和虚拟机之间互联(IP地址需要先使用ip a命令查看现有地址,再修改最后一位)

  • service network restart重启网络
  • ip addr查看网络状态:

  • 使用XShell 5,用ssh命令连接192.168.56.103地址,可以连接通,说明宿主机和虚拟机通了。ping www.baidu.com也通,则说明外网通了

至此在Windows10下使用virtual box安装centos-7就成功了

4. 安装增强功能并设置共享目录

参考VirtualBox使用Centos7与主机共享文件夹

  • 这里我们切换到了具有sudo权限的普通用户,不再直接使用root用户操作
  • lsscsi 查看设备。其中的/dev/sr0就是虚拟机的虚拟光驱

  • 在虚拟机界面,点击设备--分配光驱-->然后选择virtual box安装目录中的VBoxGuestAddition.iso文件
  • sudo mkdir /media/cdrom
  • sudo mount /dev/sr0 /media/cdrom,把光盘挂在到/media/cdrom目录
  • cd /media/cdrom后,能看到很多文件,说明挂载成功
  • sudo yum install gcc kernel-devel kernel-headers dkms make bzip2 安装依赖软件
  • sudo yum update更新软件
  • sudo sh ./VBoxLinuxAdditons.run,安装增强功能

    • 如果增强功能安装失败,比如报“找不到header”,执行cat /var/log/VBoxGuestAdditions.log查看具体报错信息
    • sudo yum install -y "kernel-devel-uname-r == $(uname -r)",这个命令安装一个和Linux内核版本匹配的kernel-devel
    • 具体问题具体分析,一般来说不用执行
  • sudo mkdir /media/sf_share,设置共享目录在Linux中的位置
  • sudo chmod 777 /media/sf_share,设置其为777。不必做
  • sudo reboot,重启虚拟机中的CentOS系统,很重要
  • sudo mount -t vboxsf TmpShareFolder /media/sf_share,其中TmpShareFolder就是第1节中设置共享文件夹时指定的“共享文件夹名称”

5. 安装一些常用软件

5.1 vim

  • sudo yum install vim*,安装vim,可以彩色显示

    • 新建文件~/.vimrc,设置其内容为:

      set nu
      set showmode
      set ruler
      set autoindent
      syntax on
    • :set nonu可以取消显示行号
    • :set paste可以在粘贴时不自动添加缩进

5.2 openjdk

  • 使用sudo yum search openjdk查看有哪些可以安装的jdk版本。从中我们选择1.8版本的jdk.
  • sudo yum install java-1.8.0-openjdk
  • 使用java -version查看安装结果

6. 一些设置

6.1 设置hostname和hosts

  • 设置hostname: hostnamectl set-hostname you-new-host-name
  • 设置hosts: vi /etc/hosts,在每个条目后面添加上you-new-host-name
[eric@vmwmin1 ~]$ cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 vmwmin1
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 vmwmin1
  • 重启: sudo reboot

6.2. 关闭tab的铃声

vi /etc/inputrc,去掉set bell-style none前面的#号,重启系统。

6.3 使用阿里源

  • sudo yum install -y wget
  • sudo mkdir /etc/yum.repos.d/bak
  • cd /etc/yum.repos.d/; sudo mv CentOS-Base.repo bak/
  • sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  • sudo yum makecache

6.4 设置防火墙

  • 防火墙命令帮助:firewall-cmd --help | less
  • 查看现在开放的端口:sudo firewall-cmd --list-ports
  • 临时打开端口,防火墙重启后失效:sudo firewall-cmd --add-port=80/tcp
  • 永久打开端口,防火墙重启后不失效:sudo firewall-cmd --add-port=80/tcp --perminent
  • 关闭端口:sudo firewall-cmd --remove-port=80/tcp
  • 永久关闭端口:sudo firewall-cmd --remove-port=80/tcp --perminent
  • 开启端口转发: sudo firewall-cmd --add-masquerade
  • 设置端口转发: sudo firewall-cmd --add-forward-port=port=8080:proto=tcp:toport=80:toadddr=192.168.22.11
  • 查看端口转发: sudo firewall-cmd --query-forward-port
  • 删除端口转发: sudo firewall-cmd --remove-forward-port=port=8080:proto=tcp:toport=80:toadddr=192.168.22.11

参考文档

  • VirtualBox 下centos7 网络配置
  • VirtualBox使用Centos7与主机共享文件夹
  • VirtualBox虚拟机CentOS安装增强功能Guest Additions
  • Oracle Database 12c Installation on CentOS 7
  • 将Centos7的yum配置为阿里云的镜像
  • How to install kernel headers on Linux

你可能感兴趣的:(virtualbox,centos7)