话说N久没写东东了,生命在于运动,博客在于更新,更新下吧。
平台还是Redhat 5里,要准备的东西很简单,只要一张DVD光盘就可以了。
当然,还是老话,这里用的是VMware虚拟机,不是物理机,只是大部分相同,不是完全一样!
YUM服务器干什么用的?简单的说就是安装软件用的,不是有一句话叫做用电脑就等于用软件么?虽然我不知道这句话到底是不是百分百正确,至少我没有理由反驳。。。毕竟操作也是软件的一种。。
前面的文章说了,在linux里面安装软件不像windows里这么简单,大致可以分为3种,一种是源码包,这种要自己编译,一种是rpm安装,只要一条命令就可以了,源码包要好几条。最后一种安装方法就是YUM安装了。
Linux的软件安装是有各种关联的,比如说安装a软件的前置条件是必须先安装b软件,那么只有安装了b软件才能安装a软件,而安装b软件的前置条件又是必须先安装c软件。。。一次类推,所以,经常出现这样的情况:为了安装一个软件,却安装了一大堆软件。。而且这种关系很复杂,要人工理清要花费大量时间。
而YUM服务器就可以很好的解决这个问题,它已经设定好了各种软件的先决条件,比如我们要安装上面的a软件,只要在终端里输入“yum install a”,后面的b、c。。。等一大堆软件都会自动安装,这样就省了很多麻烦,也省了很多时间。
我这里先介绍最简单的一种方法,不过这种方法虽然简单,但实际上很多情况下都不适用,所以咯,只能是在用其他方法前先测试下这种方法,如果可以,那就2分钟搞定,如果不可以,那就用其他方法继续做吧,不过那就时间长了~~
第一步:先加载光盘,并挂载光盘到一个目录,比如我这里用的是/cdyum。
加载光盘这步我就不说了,前面介绍过了,是在虚拟机软件里设置的,下面说说挂载:用到的命令是“mount”,关于这个命令,我不多说(其实我自己也不知道怎么说,只是会用),反正就是可以用来查看系统挂载情况,和进行挂载操作的。
先看看挂载情况吧:
[root@localhost ~]# mount /dev/sda1 on / type ext3 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) none on /proc/fs/vmblock/mountPoint type vmblock (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) /dev/hdc on /media/RHEL_5.4 i386 DVD type iso9660 (ro,noexec,nosuid,nodev,uid=0) 这个就是光盘的挂载点了 |
知道挂载信息,我们就把它挂载了吧,虽然默认的挂载点也可以,不过。。这个名字真的太长太了,咱自己给他改个比较顺手比较好记的名字吧
[root@localhost ~]# mkdir /cdyum==》新建文件夹,用于挂载 [root@localhost ~]# mount /dev/hdc /cdyum/==》挂载到刚刚建好的文件夹里 mount: block device /dev/hdc is write-protected, mounting read-only [root@localhost ~]# mount==》查看挂载信息 /dev/sda1 on / type ext3 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) none on /proc/fs/vmblock/mountPoint type vmblock (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) /dev/hdc on /media/RHEL_5.4 i386 DVD type iso9660 (ro,noexec,nosuid,nodev,uid=0) /dev/hdc on /cdyum type iso9660 (ro) ==》这个就是我们手动挂载的目录 |
好了,挂载完毕,下面直接修改YUM服务器的配置文件,此文件是”/etc/yum.repos.d/rhel-debuginfo.repo “为了防止改错后产生各种问题,我们在修改前下面备份源文件,一旦出现错误,我们也可以覆盖还原。
[root@localhost ~]# cp -a /etc/yum.repos.d/rhel-debuginfo.repo /etc/yum.repos.d/rhel-debuginfo.repo.bak |
原来的设置内容如下:
[rhel-debuginfo] name=Red Hat Enterprise Linux $releasever – $basearch – Debug baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release |
我们这里修改下
name=Red Hat Enterprise Linux $releasever – $basearch – Debug baseurl=file:///cdyum/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release |
好了,改完后就可以用了,下面试试效果,我们这里以安置dns服务器的必须软件bind为例:
先查看下有没有这个软件的信息:
Loaded plugins: rhnplugin, security Available Packages Name : bind Arch : i386 Epoch : 30 Version : 9.3.6 Release : 4.P1.el5 Size : 978 k Repo : rhel-debuginfo Summary : Berkeley 互联网域名(BIND)DNS(域名系统)服务器。 URL : http://www.isc.org/products/BIND/ License : BSD-like Description: BIND (伯克利互联网域名) 是 DNS(域名系统)协议的一种实现。 : BIND 包括一个 DNS 服务器(named),它把主机名解析为 IP 地址; : 一个解析器库(在与 DNS 通讯时应用程序所使用的例程);以及检 : 验 DNS 服务器是否被正确操作的工具。 |
有,好了,我们可以安装了~~
[root@localhost ~]# yum install bind Loaded plugins: rhnplugin, security This system is not registered with RHN. RHN support will be disabled. Setting up Install Process Resolving Dependencies –> Running transaction check —> Package bind.i386 30:9.3.6-4.P1.el5 set to be updated –> Finished Dependency Resolution
Dependencies Resolved
================================================================================ Package Arch Version Repository Size ================================================================================ Installing: bind i386 30:9.3.6-4.P1.el5 rhel-debuginfo 978 k
Transaction Summary ================================================================================ Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s)
Total download size: 978 k Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : bind 1/1
Installed: bind.i386 30:9.3.6-4.P1.el5
Complete! [root@localhost ~]# |
好了,可以安装,说明YUM服务器正常运行,当然,如果说两台电脑之间是互通的,只要配置一台就可以了,只要修改下配置文件就OK了。
我前面说了,这是最简单的一种方法,很多情况不适用,我现在的感觉就是只适用于DVD版的,如果是vcd版的。。你也不好指定文件目录了。。。。所以得用其他方法,其他方法我会在后面的时间写出来,因为分为好几种。。我得整理下思路才行。。。
注意,
1.若使用本地源安装软件时,出现安装失败,这时因该考虑DVD盘是否已加载(mount 命令查看),没加载就重新加载一次。。。
关机或重启电脑后,相应的挂载信息会不见的,用的时候又得重新挂载(mount)。
2.更改了上述yum源后,还得清空yum配置缓存(yum clean all),否则的话到时还是以老配置的路径去找东西
[root@localhost ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning up Everything
Cleaning up list of fastest mirrors