因为virtual box 中的centos配置host-only共享win7上网,配置失败,所以只能使用Centos的 DVD 光盘来配置yum软件源。不然就没得完了。
1. 首先要在virtual box 中的插入DVD的iso光盘,相信这一步,大家都会,不然如何在virtual box 安装centos呢?
2. 挂载 iso 光盘
第一步之后,我们发现执行 df 命令,尽然没有看到我们上面挂载的 iso 光盘,这是怎么回事呢?
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 % /
tmpfs % /dev/shm
/dev/sda2 % /tmp
我们执行:lsblk 才能看到我们第一步中挂载的iso光盘:
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 : .8G rom
sda : 30G disk
├─sda1 : 28G part /
├─sda2 : 1G part /tmp
└─sda3 : 1G part [SWAP]
上面那个 sr0 大小3.8G的就是 我们上面挂载的iso光盘。我们看到他没有挂载点,其MOUNTPOINT栏目下面的值为空,这才是我们上面用df命令查看不到iso光盘的原因。所以我们需要将 sr0 挂载到一个挂载点上:
3. 挂载iso:
[root@localhost ~]# ll /dev/cdrom
lrwxrwxrwx. root root Sep : /dev/cdrom -> sr0
[root@localhost ~]# mkdir /mnt/cdrom
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom
ll /dev/cdrom 的结果看到,其是到 sr0 的一个连接;
mkdir /mnt/cdrom 建立一个挂载点;
mount /dev/cdrom /mnt/cdrom 将光盘挂载到 /mnt/cdrom;
mount执行如果不成功,则需要加参数:mount -t iso9660 /dev/cdrom /mnt/cdrom/
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 % /
tmpfs % /dev/shm
/dev/sda2 % /tmp
/dev/sr0 % /mnt/cdrom
在查看 df 的结果,就看到 /dev/sr0 被挂载到了 /mnt/cdrom
我们去查看一下光盘的内容:
[root@localhost ~]# cd /mnt/cdrom
[root@localhost cdrom]# ll
total
-r--r--r--. root root Oct CentOS_BuildTag
-r--r--r--. root root Nov EULA
-r--r--r--. root root Nov GPL
dr-xr-xr-x. root root Oct images
dr-xr-xr-x. root root Oct isolinux
dr-xr-xr-x. root root Oct Packages
-r--r--r--. root root Oct RELEASE-NOTES-en-US.html
dr-xr-xr-x. root root Oct repodata
-r--r--r--. root root Nov RPM-GPG-KEY-CentOS-
-r--r--r--. root root Nov RPM-GPG-KEY-CentOS-Debug-
-r--r--r--. root root Nov RPM-GPG-KEY-CentOS-Security-
-r--r--r--. root root Nov RPM-GPG-KEY-CentOS-Testing-
-r--r--r--. root root Oct TRANS.TBL
为了避免每次只需挂载的操作,我们修改一下 /etc/fstab ,让系统自动帮我们挂载:
[root@localhost cdrom]# cat /etc/fstab #
# /etc/fstab
# Created by anaconda on Wed Aug ::
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(), findfs(), mount() and/or blkid() for more info
#
UUID=050bfcba-55c7---497232acca9d / ext4 defaults
UUID=35cc903b-a973-4fe8-84b5-69c1aaa9d7f2 /tmp ext4 defaults
UUID=7900da09-a872-4be0-95b7-7668eea54179 swap swap defaults
tmpfs /dev/shm tmpfs defaults
devpts /dev/pts devpts gid=,mode=
sysfs /sys sysfs defaults
proc /proc proc defaults
/dev/cdrom /mnt/cdrom iso9660 defaults
最后一行,是我们加的内容。这样系统启动时,就会执行 /etc/fstab 中的文件挂载。
4. 配置挂载的DVD光盘做yum软件源
[root@localhost cdrom]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
total
-rw-r--r--. root root Oct CentOS-Base.repo
-rw-r--r--. root root Oct CentOS-Debuginfo.repo
-rw-r--r--. root root Oct CentOS-fasttrack.repo
-rw-r--r--. root root Sep : CentOS-Media.repo
-rw-r--r--. root root Oct CentOS-Vault.repo
软件源所以的配置都在目录 /etc/yum/repso.d/ 下面
先做个备份:
[root@localhost yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.backup
[root@localhost yum.repos.d]# cp CentOS-Media.repo CentOS-Media.repo.backup
mv 掉 CentOS-Base.repo 的原因时,其中包括的都是网络上的 yum 软件源,如果不 mv 掉的话,以后每次都会先去网络上的 yum 软件源寻找,浪费时间。
备份 CentOS-Media.repo 之后,然后我们修改它,编辑 CentOS-Media.repo :
1> 将 gpgcheck 和 enabled 分别改为:gpgcheck=0 enabled=
2> 将 baseurl 参数中的第二行原来的 "file:///media/cdrom" 值 改为:file:///mnt/cdrom/
修改之后的结果如下:
[root@localhost yum.repos.d]# cat CentOS-Media.repo
# CentOS-Media.repo
#
# This repo can be used with mounted DVD media, verify the mount point for
# CentOS-. You can use this repo and yum to install items directly off the
# DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
# yum --enablerepo=c6-media [command]
#
# or for ONLY the media repo, do this:
#
# yum --disablerepo=\* --enablerepo=c6-media [command] [c6-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
file:///mnt/cdrom/
file:///media/cdrecorder/
gpgcheck=
enabled=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
3> 清理 yum cache ,更新 yum:
[root@localhost yum.repos.d]# yum clean all
Loaded plugins: fastestmirror, refresh-packagekit, security
Cleaning repos: c6-media
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]#
[root@localhost yum.repos.d]# yum update
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Update Process
Determining fastest mirrors
* c6-media:
file:///media/CentOS/repodata/repomd.xml: [Errno 14] Could not open/read file:///media/CentOS/repodata/repomd.xml
Trying other mirror.
file:///media/cdrecorder/repodata/repomd.xml: [Errno 14] Could not open/read file:///media/cdrecorder/repodata/repomd.xml
Trying other mirror.
c6-media | 4.0 kB : ...
c6-media/primary_db | 3.5 MB : ...
No Packages marked for Update
[root@localhost yum.repos.d]#
然后就可以使用 本地 iso 光盘的软件源来安装软件了。
[root@localhost yum.repos.d]# yum install pcre-devel
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
Loading mirror speeds from cached hostfile
* c6-media:
Package pcre-devel-7.8-.el6.i686 already installed and latest version
Nothing to do
[root@localhost yum.repos.d]#
显示我已经安装了 pcre-devel 。