在 VirtualBox 中安装最小化版 CentOS

在 VirtualBox 中安装最小化版 CentOS

发表于 2013-08-27 作者 Haoxian Zeng 
浏览 3,062 次

7

在刚开始接触 VPS 服务器的时候,为了测试各种程序和配置是否能用,就在本地使用 VirtualBox创建了一个与 VPS 配置差不多一样的虚拟机,也装上了 Linux 的 CentOS 发行版,内存大小、系统和软件都照着 VPS 的模式来。这是个练手的好方法。

因为只是将它当作一个 VPS 来用的,安装之前考虑这么几件事情:

  1. 操作系统。Linode VPS 上布置 Linux 系统的时候都是从 Linode 提供的优化过的 Linux 发行版直接安装的。我不知道 Linode 对 CentOS 进行了哪些优化配置,所以干脆选择 CentOS 的 minimal 版本来安装。
  2. 分配的内存大小。按照我的 Linode VPS 的大小分为 512MB。(后来 Linode 将内存免费升级到了 1G。)以后也可以根据需要来调整内存大小,非常方便,只要该虚拟机处于关机状态就行。
  3. 硬盘容量。系统分区也搞得很简单,只配置了一个硬盘分区。但是因为只是简单的测试目的,硬盘容量不需要那么大,考虑到后期还要安装一些服务器程序,3GB 是个比较好的选择。实际上,如果后期发现容量不够,还有方法给 VirtualBox 虚拟机以及里面的 CentOS 系统扩容

下面开始创建这么一个 CentOS 的 VirtualBox 虚拟机的过程。分四个部分介绍:下载 CentOS 安装光盘创建虚拟机安装 CentOS 系统设置

如果系统中还没有 VirtualBox,可以参考这里给系统下载安装 VirtualBox

1. 下载 CentOS 安装光盘?

下载最小化(minimal)版本的 CentOS 安装光盘,大约 350MB。国内有几个镜像网站(搜狐163华中科技大学),速度挺快的。打开镜像网站,看到的是目录结构的页面,逐次找到CentOS –> 6.4 [这是版本号,目前的最新版] –> isos –> i386 / x86_64 [请看下一段的解释,根据自己的情况选],然后下载 minimal.iso 结尾的那个就行了。

关于架构:操作系统的位数要与电脑的 CPU 相适应。早期的英特尔 CPU 都是 32 位的。后来出了双核,采用 EM64T 技术弄出了个等效 64 位 CPU。而 AMD 很早就是 64 位 CPU 了。现在的电脑,硬件上基本上都支持 64 位操作系统了。但是这里的情况有些特殊,因为这个是“虚拟机”。所谓虚拟机,就是利用真实电脑的硬件,通过软件来模拟出一个虚拟的电脑。你给这个虚拟机分配资源的时候,比如内存、硬盘、CPU,不能超过硬件所能提供的最大限度。然后,如果母机(安装 VirtualBox 的系统)是 64 位的系统,则其中的 VirtualBox 里可以安装 64 或 32 位的系统;母机是 32 位的话,就只能安装 32 位的虚拟机。

需要注意的是,这么个最小化的 Linux 系统,是没有可视化图形界面的,一切都从命令行来操作。

2. 创建 CentOS 虚拟机?

打开 VM VirtualBox,按照下面的步骤创建虚拟机。如果还没有安装 VirtualBox 程序,请参考这里

  1. 在 VirtualBox 主界面上单击“新建”,如下图左上角的位置。

    VirtualBox 主程序界面

  2. 在“虚拟电脑名称和系统类型”窗口里,先输入“名称”,如 CentOS。因为 CentOS 很明确,这时候 VirtualBox 会自动填入下面的“类型”(Linux)和“版本”(Red Hat,因为CentOS 实际上是 Red Hat 的社区版本)。单击“下一步”。
  3. 分配内存。如前所述,这里移动滑块选择,或者直接输入 512。单击“下一步”。
  4. 虚拟硬盘。点选“现在创建虚拟硬盘”(这个是默认选中的),然后单击“创建”。
  5. 虚拟硬盘文件类型。看个人喜好了。建议使用默认的”VDI (VirtualBox 磁盘映像)。然后单击“下一步”。
  6. 建议选择“动态分配”。窗口界面上有介绍。动态分配是随着使用慢慢增大占用实际物理硬盘的空间,最大到分配的大小;固定则是一次性分配好。单击“下一步”。
  7. 文件位置和大小。现在要开始分配虚拟硬盘了,选择虚拟硬盘的存放位置;然后设置大小。如前所述,大小直接输入为 3.00 GB。之后单击“创建”。
  8. 现在,应该能在 VirtualBox 主界面上看到创建好的虚拟主机了(如下图所示)。但是还没有安装系统,现在它只是象一台刚组装好的电脑,还没开始装系统和软件。

创建了 CentOS 虚拟主机的 VirtualBox 主界面

3. 给虚拟主机安装 CentOS 系统?

下面开始给虚拟机 CentOS 安装我们在前面第 1 步那里下载的 CentOS minimal 系统。下面,主要使用的设备是鼠标,以及键盘上的 Tab、上、下、左、右、Enter、空格等。

  1. 在上图所示位置,单击选中 CentOS 这个虚拟机,然后点击上面的“启动”(相当于电脑“开机”)以启动虚拟机。因为是第一次开机,开头会提示虚拟机会独占鼠标。也就是说,你在这个虚拟机的界面(相当于这个小电脑的显示器)里点一下,鼠标就被限制在这个区域了。要想将光标切回到外面的系统里,可以按 Right Ctrl(也就是键盘右边那个 Ctrl 键)。为了让它以后不要再提示了,可以勾选那个小方框,然后单击“确定”。
  2. 现在就开始启动了,但是因为没有安装系统,它会提示让选择一个光盘镜像来从光盘启动。此时选择前面下载的那个 CentOS……-minimal.iso 光盘文件即可(这里没有将文件名写全,太长了)。
    如果错过了选择这个光盘来启动系统,还可以单击虚拟机界面上面的“设备”——>“分配光驱”——>“选择一个虚拟光盘…”,来选择那个光盘文件,如下图所示。

    为 VirtualBox 虚拟机中的 CentOS 分配一个光盘

  3. 重新启动该虚拟机,方法是单击上图中左上角的“控制”——>“重启”。因为默认的启动顺序是软盘-光盘-硬盘,所以重启后就会自动由光盘引导进入 CentOS 安装界面。如下图所示。

    在 VirtualBox 中开始安装 CentOS 最小化版操作系统

  4. 上图中选择第一项“Install or upgrade an existing system”,直接回车(Enter)即可。等待系统安装初始化,直到进入亮蓝色背景的安装界面。如下图所示,这里要求进行光盘完整性检查。

    安装 CentOS 之光盘检查 – Disc Check

  5. 不需要检查,按 -> (右)键切换到 Skip,然后 Enter。再等一会儿,会出现 Welcome to CentOS! 的欢迎窗口,直接 Enter 进入安装选项设置。
  6. 第一个要设置的是安装过程中使用的语言(Language),不要高兴得太早,在这种文本模式下,简体中文是不能用的,所以还是老老实实的直接 Enter 进入下一个界面吧。
  7. 下一个是键盘布局(Keyboard Selection),没什么好说的,直接按 Enter 键选择默认的 us 吧。
  8. 再等一会儿,系统开始检查存储设备(也就是看看硬盘怎么样,下面就要分区了)。嗯,不知道我这里怎么出了个需要重新初始化硬盘(当然是虚拟硬盘)的警告,如下图。

    CentOS 安装之硬盘初始化

    估计是因为这个虚拟硬盘刚分出来吧。不管它,反正是虚拟的,不怕坏。使用 Tab 键来选中 Re-initialize 并按 Enter 键确认。一会儿就好了。

  9. 然后开始设置系统时区(Time Zone),无所谓啦,按 Tab 键选中 OK 按钮后,直接 Enter 进入下一步
  10. 现在,请输入 root 用户的密码(至少 6 位长度),相当于 Windows 的超级管理员密码。输入一次后,按 Tab 键切换到下一行重新输入一次。再按 Tab 键切换到 OK 按钮并直接按 Enter 键确认。

    CentOS 安装时设置 root 密码

  11. 该分区了!这是个比较麻烦的任务。如果是一般的个人电脑桌面应用,一般分三个区就好:一个主分区,ext4 格式,大约 5~20GB,挂载到 / ;一个交换分区,在现在内存普遍较大的情况下,分区大小与内存一样就可以了,或者稍多些也无所谓,这个就只能是 swap 格式了,挂载到 swap;剩下的做为一个大的分区,可以是 ext4 或者其它文件系统,作为用户文件的存放区,挂载到 /home。
    但是这里就不同了,因为只是个简单的测试服务器,先分出一个小的 swap 分区(这个是不可少的),然后直接将所有可用磁盘分成一个大区挂载到 / 就行了。

    在 VirtualBox 中安装 CentOS 之分区

    如图所示,这里选择使用整个硬盘(虚拟的),Tab 选定 OK 按钮后直接 Enter 到下一步。

  12. 然后,需要再确认一次。Tab 到按钮“Write changes to disk”后按 Enter 键确认。一直等就是了。安装程序会对虚拟硬盘进行格式化,并自动分区。默认情况下采用的是 LVM 方案。
  13. 分区完成后程序会自动检查安装包的依赖关系,然后自动安装。因为是最小化系统(minimal),光盘上所有东西都会被安装(应该是这样吧,我没有确认)。
  14. 又是一次漫长的等待。最后,出现下面的完成提示,直接按 Enter 键回车即可重启进入虚拟机里的 CentOS 系统。

    VirtualBox 中安装 CentOS 完成需重启提示

  15. 重启后使用前面输入的 root 帐户密码即可登录 root 帐户(用户名 root,回车,密码,回车),然后就可以对这个系统为所欲为了。

    VirtualBox 中安装 CentOS 完成后登录进入系统

    比如:

    1. 输入 fdisk -l 可以查看到当前的磁盘分区情况;
    2. 输入 ifconfig 可以查看到当前的网络连接情况等。
  16. 因为是要做 VPS 的模拟器,下面进行简单的设置之后就可以开始模拟 VPS 上的各种操作了,比如安装 LAMP 服务器环境,然后装个 WordPress 玩玩……除了不能从家庭网络之外的地方访问之外,这个小服务器绝对可以满足你建网站的练习需要。

4. 设置?

按照上面的方法安装之后,还需要一些简单的设置,比如网络访问。然后既然是做网页服务器,还需要让它可以使用域名来访问。

但是因为各家的上网情况可能有所不同,这里预设一种情景:使用路由器在家里的各台设备之间共享网络连接。目前,这应该是一种很常见的方式吧?!这里假设无线路由器的 IP(网关的 IP)是 192.168.0.1,那么家里各台电脑就是 192.168.0.2 等等。假设当前使用的电脑的 IP 就是 192.168.0.2,而 192.168.0.10 这个 IP 目前还没有设备使用。

下面的命令行直接输入界面里的 # 号后面并回车即可。

A. 设置网络

  1. 修改网络配置文件 ifcfg-eth0,

    vi /etc/sysconfig/network-scripts/ifcfg-eth0
  2. 这会打开一个文本编辑区域。按 i 键开始编辑,用上下左右键将光标移动到 ONBOOT=no 那里,删除 no,输入 yes
  3. 然后按 Ctrl+c 键退出编辑状态,再按 shift+; 组合键输入 : ,紧接着输入 wq 保存并退出文本编辑器。
  4. 关闭虚拟机:
    poweroff
  5. 在 VirtualBox 主界面(如前第 2 节最后一个图所示),选中 CentOS 这个虚拟机,然后单击上面的“设置”按钮打开虚拟机设置界面,并从左侧栏切换到“网络”条目。如下图所示。

    VirtualBox 虚拟机的网络设置界面

    其中“网卡 1”已经默认设置为“网络地址转换(NAT)”模式,可以让虚拟机通过母机的网络来访问互联网。点击“网卡 2”,勾选“启用网络连接”,将“连接方式”更改为“桥接网卡”,其它不需要修改,但是需要点开“高级”然后记下 “MAC 地址”后面的字符(我这里是 080027f26be7)。下面的“界面名称”实际是虚拟机内部的网卡需要桥接到的母机的网卡的名称。然后单击窗口下部的“确定”保存设置。

  6. 再次启动该虚拟机并登录。然后执行下面的操作。先将 ifcfg-eth0 复制一份保存为 ifcfg-eth1:
     cp -rf /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1

    然后编辑 ifcfg-eth1(编辑方法同前述编辑 ifcfg-eth0 的方法):

    vi /etc/sysconfig/network-scripts/ifcfg-eth1

    将其中的内容改为其中 HWADDR 就是刚才记下的那一串字符,只不过用 : 分割开了):

    DEVICE="eth1"
    HWADDR=08:00:27:F2:6B:2E
    NM_CONTROLLED=no
    ONBOOT=yes
    IPADDR=192.168.0.10
    NETMAK=255.255.255.0
    GATEWAY=192.168.0.1

    注:ONBOOT的值修改为“yes”;NM_CONTROLLED这个属性值,根据RedHat公司的文档是必须设置为“no”的(这个值为“yes”表示可以由服务NetworkManager来管理。NetworkManager服务不支持桥接,所以要设置为“no”)。然后保存退出编辑器,接着执行下面的指令:

    service network restart
  7. 如果没什么意外的话,现在,从母机(也就是安装了 VirtualBox 的系统)里应该可以 ping 到这个虚拟机了:
    ping 192.168.0.10
    1. 修改网络配置文件 ifcfg-eth0,

      vi /etc/sysconfig/network-scripts/ifcfg-eth0
    2. 这会打开一个文本编辑区域。按 i 键开始编辑,用上下左右键将光标移动到 ONBOOT=no 那里,删除 no,输入 yes
    3. 然后按 Ctrl+c 键退出编辑状态,再按 shift+; 组合键输入 : ,紧接着输入 wq 保存并退出文本编辑器。
    4. 关闭虚拟机:
      poweroff
    5. 在 VirtualBox 主界面(如前第 2 节最后一个图所示),选中 CentOS 这个虚拟机,然后单击上面的“设置”按钮打开虚拟机设置界面,并从左侧栏切换到“网络”条目。如下图所示。

      VirtualBox 虚拟机的网络设置界面

      其中“网卡 1”已经默认设置为“网络地址转换(NAT)”模式,可以让虚拟机通过母机的网络来访问互联网。点击“网卡 2”,勾选“启用网络连接”,将“连接方式”更改为“桥接网卡”,其它不需要修改,但是需要点开“高级”然后记下 “MAC 地址”后面的字符(我这里是 080027f26be7)。下面的“界面名称”实际是虚拟机内部的网卡需要桥接到的母机的网卡的名称。然后单击窗口下部的“确定”保存设置。

    6. 再次启动该虚拟机并登录。然后执行下面的操作。先将 ifcfg-eth0 复制一份保存为 ifcfg-eth1:
       cp -rf /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1

      然后编辑 ifcfg-eth1(编辑方法同前述编辑 ifcfg-eth0 的方法):

      vi /etc/sysconfig/network-scripts/ifcfg-eth1

      将其中的内容改为其中 HWADDR 就是刚才记下的那一串字符,只不过用 : 分割开了):

      DEVICE="eth1"
      HWADDR=08:00:27:F2:6B:2E
      NM_CONTROLLED=no
      ONBOOT=yes
      IPADDR=192.168.0.10
      NETMAK=255.255.255.0
      GATEWAY=192.168.0.1

      注:ONBOOT的值修改为“yes”;NM_CONTROLLED这个属性值,根据RedHat公司的文档是必须设置为“no”的(这个值为“yes”表示可以由服务NetworkManager来管理。NetworkManager服务不支持桥接,所以要设置为“no”)。然后保存退出编辑器,接着执行下面的指令:

      service network restart
    7. 如果没什么意外的话,现在,从母机(也就是安装了 VirtualBox 的系统)里应该可以 ping 到这个虚拟机了:
      ping 192.168.0.10

B. 配置防火墙

默认情况下Linux系统不允许外部访问80与8080端口, 我们要访问虚拟机里的Web服务器的话,  方法一 : 关闭防火墙(不推荐)

  1. service iptables stop

    或者修改防火墙配置开放8080端口:

  2. vi /etc/sysconfig/iptables

    复制添加红色两行, 表示接收80与8080商品的请求:

  3. # Firewall configuration written by system-config-firewall
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    COMMIT

    如果没什么意外的话,现在,从母机(也就是安装了 VirtualBox 的系统)里应该可以 ping 到这个虚拟机了:

    ping 192.168.0.10

C. 使用域名

VPS 上的服务器是可以用域名来访问的,而且测试网站程序(比如 WordPress)的时候也需要使用域名。下面就耍些花招来欺骗系统,让虚拟机可以小范围的拥有某个域名(实际上是任意域名),母机也可以使用域名来访问虚拟机。

现在修改母机的 HOSTS 文件(即文件%systemdrive%/windows/system32/drivers/etc/hosts,在后面添加下面的内容:

  1. 192.168.0.10 domain.com
    192.168.0.10 www.domain.com

    保存。现在就可以直接通过域名 domain.com 和 www.domain.com 访问虚拟机了:

  2. ping domain.com

    复制添加红色两行, 表示接收80与8080商品的请求:

  3. # Firewall configuration written by system-config-firewall

    如果没什么意外的话,现在可以开始使用你的专属Linux了:

    yum install -y wget           #安装wget
    yum install -y install gcc    #安装gcc
    yum install gcc-c++           #安装g++

这是我的 VPS 学习之路系列总结文章中的一篇,是我创建自己的网站的经验。?

本文转至水景一页。永久链接:<http://cnzhx.net/blog/minimal-centos-in-virtualbox/>。转载请保留此信息及相应链接。

时间: 2024-10-15 00:17:51

在 VirtualBox 中安装最小化版 CentOS的相关文章

VMware Workstation安装最小化CentOS 6.5

VMware Workstation安装最小化CentOS-6.5 Email(QQ): [email protected] 目录大纲 需要准备的文件 安装VMware Workstation 12 VMware Workstation 12使用前设置 VMware Workstation添加虚拟机 最小化安装CentOS 6.5 需要准备的文件: VMware Workstation:本文使用VMware Workstation 12(界面变好看了很多.体积变小了很多) 下载地址:请自行百度;

01-01 VMware Workstation安装最小化linux

VMware Workstation安装最小化CentOS-6.5 本文章适用各种想学linux的人员,也是自己的一个整理笔记(基于马哥linux的课程笔记总结). 需要准备的文件: VMware Workstation:推荐使用VMware Workstation 11(界面变好看了很多.体积变小了很多) 下载地址:百度 CentOS-6.5-x86_64 下载地址:http://www.centoscn.com/CentosSoft/iso/2013/1205/2196.html http:

开发人员学Linux(2):VirtualBox中安装CentOS7系统设置

上一篇<VirtualBox中安装CentOS7过程记录>中讲述了如何安装VirtualBox和在VirtualBox中安装CentOS7,但是限于篇幅有很多问题没有展开,在本篇将展开介绍VirtualBox和CentOS的设置问题.VirtualBox支持的虚拟机文件类型VDI: Virtual Disk Image,这是VirtualBox默认使用的虚拟机文件类型.VMDK:这是VMware默认使用的虚拟机文件类型.VHD:这是微软出品虚拟机软件默认使用的虚拟机文件类型.在创建虚拟机时选择

VirtualBox中安装CentOS7过程记录

在开发过程中常常需要进行一些预研,而有些操作对操作系统可能具有破坏性且是不可恢复的,或者需要在不同的操作系统中去观察结果,虽然在某些场合下Ghost可以解决一部分问题,但是有时候很繁琐,因此在虚拟机中进行测试不失为一种不错的选择.自2011年以来,一直在学习一些有关Linux下的知识,包括Mono+XSP运行ASP.NET程序,搭建Hadoop学习环境.Nginx测试环境等.在虚拟机软件方面先后尝试过VMware.Hyper-V及VirtualBox,最终选择了VirtualBox,理由是开源免

在不同的系统中的virtualbox中安装Ubuntu SDK

对很多的开发者来说,你们可能使用的不是Ubuntu操作系统.在这种情况下,开发者需要在自己的操作系统中(OS X及Windows)安装virtualbox,并在VirtualBox中安装Ubuntu及Ubuntu SDK.为了方便大家的安装,我们已经制定好了一个Image.这个Image中包含Ubuntu Utopic (14.10)及Ubuntu SDK.大家可以一次性地下载并安装SDK.下面介绍其安装步骤. 1)从https://www.virtualbox.org/wiki/Downloa

[ARCH] 1、virtualbox中安装archlinux+i3桌面,并做简单美化

星期六, 28. 七月 2018 02:42上午 - beautifulzzzz 1.安装ArchLinux系统 安装Arch主要看其wiki,比较详细- 中文的我主要参考:一步步教你如何安装 Arch Linux,具体细的流程倒是忘了,大致操作如下: 我是在virtualbox中安装的,因此只要下载IOS,不用制作U盘了- 1)从IOS启动: 2)磁盘分区,参考[#1-磁盘分区]: 3)创建文件系统,参考[#1-创建文件系统]: 4)安装,参考[#1-安装]: 5)配置系统,参考[#1-配置系

导数中的最小化日志记录:背景和理论

什么是最小化日志(Minimal Logging) 当数据库的恢复模式为SIMPLE或者BULK_LOGGED时,对于最小化日志类型的操作,事务日志不记录单独每个数据行的日志,而是记录对应页和区结构的修改日志.这样显著减少了操作产生的事务日志数量.例如,向某个数据页上插入200行数据,在最小化日志记录的情况下,只会记录一条此数据页变化的日志,而不是200条Insert日志. 最小化日志类型的操作 SELECT INTO Bulk导数操作,包括 BULK INSERT和BCP INSERT INT

安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一)转载自码农网

CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程序等操作. 这篇文章介绍了 “安装完 RHEL/CentOS 7 后需要做的 30 件事情”.阅读帖子的时候请先完成 RHEL/CentOS 最小化安装,这是首选的企业和生产环境.如果还没有,你可以按照下面的指南,它会告诉你两者的最小化安装方法. 最小化安装 CentOS 7 最小化安装 RHEL

安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(二)转载自码农网

7. 安装 PHP PHP 是用于 web 基础服务的服务器端脚本语言.它也经常被用作通用编程语言.在最小化安装的 CentOS 中安装 PHP: # yum install php 安装完 php 之后,确认重启 Apache 服务以便在 Web 浏览器中渲染 PHP. # systemctl restart httpd.service 下一步,通过在 Apache 文档根目录下创建下面的 php 脚本验证 PHP. # echo -e "<?php/nphpinfo();/n?>