virtualbox中配置CentOS的本地磁盘镜像作为其软件源

        CentOS(以及红帽系列)都有yum软件源的概念,即在终端通过命令可以直接从软件源下载软件并安装。除了网络上的软件源(如网易、搜狐、中科大镜像)外,我们也可以使用下载好的CentOS镜像来作为软件源。它包含了大部分常用软件,而在我们安装CentOS系统的时候,很多时候是选择性安装的,所以并没有把所有的软件安装到系统中。

        因为很多人是在虚拟机里配置Linux的,所以这里介绍一些如何在virtualbox中配置CentOS本地磁盘镜像作为其软件源。学会了这个,即使不是虚拟机,就是在实体机上安装的CentOS,你也会配置你光驱里的磁盘作为yum软件源了。

准备工作

  1. 下载VirtualBox软件和CentOS的磁盘镜像(.iso文件)
  2. 在VirtualBox虚拟机中安装好CentOS,安装步骤不叙述。

开始配置

操作1 打开虚拟机设置

  1. 打开你的VirtualBox软件(主要先不要打开CentOS系统)。选中你的虚拟机后,点击上面的“设置”
  2. 点击左侧的“存储”

virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第1张图片     virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第2张图片


操作2 添加磁盘镜像iso

可以看到这里的存储树。有两类控制器IDE和SATA,这是模拟的主板上的两种接口。在SATA的控制器的centos.vdi就是虚拟的硬盘,我们安装好的系统就在它上面。理论上来说我们的磁盘镜像iso文件可以添加到任何一种接口上,但是因为我们已经安装好了系统,如果我们把iso文件添加到控制器IDE下面,那么当我们再次打开centos系统的时候,将会变成重新安装系统。因为这里的存储盘片的顺序也是虚拟机启动存储设备的顺序(镜像iso在硬盘centos.vdi之前),就好比我们用U盘给实体机装系统的时候,要设置U盘启动一样。所以我们要把iso文件添加到centos.vdi之后

  1. 点击控制器SATA后面的添加虚拟光驱图标
  2. 在打开的文件管理器对话框中选择你的iso文件

virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第3张图片   virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第4张图片

操作3 启动CentOS虚拟机

打开之后,登录进去。再打开终端。这里不赘述。我安装的centos是没安装图形界面的,所以我直接操作。

操作4 开始配置软件源

1. 用lsblk命令查看一下,光驱的位置

virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第5张图片

可以看到那个3.9G的就是我们的磁盘iso文件。所以它对应的sr1就是磁盘所在光驱的位置(/dev/sr1)

在实体机中配置的时候,很多时候我们不去查看lsblk的结果。就认作是/dev/cdrom,虚拟机中则会有问题。我们来用命令ll /dev/cdrom来看一下


可以看到/dev/cdrom实际上是sr0的符号链接。而我们虚拟中光驱的位置是sr1

2. 创建挂载点目录

我们要使用光驱里的镜像文件,需要被它挂载到当前系统上。这个挂载位置称为挂载点,通常是在  /mnt/ 或者 /media/ 目录下,创建一个子目录

mkdir /mnt/cdrom   #在/mnt下创建目录cdrom

3. 设置开机自动挂载

通常情况下,我们用mount命令来手动挂载光驱到/mnt/cdrom目录下,但是这样每次重新开机后,都要敲命令是比较麻烦的。我们可以编辑fstab文件来设置开机自动挂载。
用vi(或其他你顺手的编辑器)来编辑吧: vi /etc/fstab/
在最下面来加上这样一句:
/dev/sr1 /mnt/cdrom iso9660 default 0 2

设备位置 挂载点 文件系统 挂载选项 是否备份 检查文件系统的顺序
/dev/sr1 /mnt/cdrom iso9660 default 0 2
文件系统的检查顺序这个字段是不固定的,依据你当前fstab文件中已有的条目,依次递增这个字段(我的硬盘设备的该字段为1)。如果不想检查则设为0

4. 编辑yum软件源配置文件

确切的说yum的软件源叫做repository server(仓库 服务器)。其配置文件在 /etc/yum.repos.d/目录下。 
我们在这个目录下,新建一个.repo文件,打开并编辑,可以用命令: vi /etc/yum.repos.d/CentOS-Local.repo 文件名可以任意,但是后缀名一定要是repo)。
我贴出该文件内容供参考。
virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第6张图片
repo文件的格式由多个字段组成,可以使用的字段不止图中这几个,还有其他的。这里介绍这几个字段的含义
字段 解释
[ ] 方括号包裹的是仓库服务器的id,名称随意,但要保证不和已有的仓库id名重复
name 是仓库的名字,也任意
baseurl 基础路径。它支持三种协议http、ftp、file。图中的file:///mnt/cdrom分成两段来理解:file://(协议名) , /mnt/cdrom(挂载点)。若有多个baseurl则依次写出
gpgcheck  gpg密钥检查字段,值1为则检查gpg密钥,0为不检查
gpgkey gpg密钥所在路径。最后的文件名可能不同centos版本不同。提前检查一下你的/etc/pki/rpm-gpg目录中的文件
enable 是否启用该仓库服务器,值为1则启用,0为不启用

5. 检查并重启

yum repolist all命令来检查一下:
virtualbox中配置CentOS的本地磁盘镜像作为其软件源_第7张图片

重启的目的是为了让系统在开机的时候自动挂载。在重启之后,你可以用yum命令安装几个常用软件试试

yum install xinetd 
yum install openssh-server
如果能正确安装就证明你成功了

常见问题

Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY...

在用yum安装软件的时候可能会报Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY...这样类似的错误,就是说不能打开gpg密钥。解决办法有两个:
  1.  关闭gpg密钥检查。即编辑刚才的.repo文件,将其gpgcheck字段的值设置为0
  2.  导入gpg密钥。使用命令:rpmkeys --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 注意不同的系统版本最后密钥名称不同,请检查你的/etc/pki/rpm-gpg/目录

你可能感兴趣的:(Linux)