共计 3967 个字符,预计需要花费 10 分钟才能阅读完成。
本文介绍如何使用 virtual box 虚拟机安装 cenos-7,并进行网络配置,使虚拟机可以连外网,使宿主机可以连虚拟机。
- 宿主机:windows 10 (2019.06.02 更新,版本号 1809,操作系统版本号 17763.503。在设置 – 系统 – 关于中查看)
- 虚拟机: virtual box 5.2.30
- CentOS: CentOS-7-x86_64-DVD-1810.iso
- 工具: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 - 具体问题具体分析,一般来说不用执行
- 如果增强功能安装失败,比如报“找不到 header”,执行
-
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
正文完
发表至:无分类
2019-10-08