初识yum本地安装源
在公司这么长时间还没有在公司服务器(centos5.4)上装过什么软件,系统管理员一直是由别人来做,我也只是在家里虚拟机上按着一本教材上的指示敲过yum install,最重要的是虚拟机也能连上互联网,安装很顺利。所以一直以来觉得linux上安装软件是很简单的。
随着一任任的系统管理员的离开,系统管理的部分工作开始由我来做,当有需求在一台服务器上安装gdb和htop时,问题暴露了:
我在windows环境下下载了htop的软件:htop-0.9.tar.gz
上传到服务器上后进行如下安装操作:
1)解压:
# tar -zvx -f htop-0.9.tar.gz -C ./
2)进入目录:
#cd htop-0.9
3)然后执行./configure; make; sudo make install./configure
当执行./configure时发现需要依赖gcc、gawk等诸多软件和库文件,因为公司有信息安全策略,服务器一律不能访问互联网,而安装gcc又与cpp、libgcc有依赖关系。
因为依赖关系之多,使我放弃了将这些依赖文件在windows环境下下载后上传至服务器进行安装。
后来请教了一位同事,他告诉我可以用系统盘进行gdb环境的安装,于是我从信息部搞到了centos5.4的系统盘文件:CentOS-5.4-i386-bin-DVD.iso,以下操作基本由这位同事指导完成,在此感谢这位同事放弃午休时间给我这些指导。
1)将iso文件上传至linux服务器,并挂载到服务器上(假设挂载到/mnt/cdrom,且cdrom目录存在,iso文件在当前目录下):
#mount -t iso9660 CentOS-5.4-i386-bin-DVD.iso /mnt/cdrom -o loop
2)查看yum的更新源:
#cd /etc/yum.repos.d
#ls -l
总计 12
-rw-r--r-- 1 root root 2257 2011-02-28 CentOS-Base.repo
-rw-r--r-- 1 root root 626 2009-10-01 CentOS-Media.repo
3)对现有更新源文件进行改名:
#mv CentOS-Base.repo CentOS-Base.repo.bak
#mv CentOS-Media.repo CentOS-Media.repo.bak
4)添加yum的本地更新源文件:local.repo
内容如下:
[local]
name=centos 5.4 iso
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
5)测试更新源修改的效果:
#yum list
运行结果为:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Installed Packages
Deployment_Guide-zh-CN.noarch 5.2-11.el5.centos installed
…
zsh-html.i386 4.2.6-3.el5 local
而如果可以连通互联网,yum list的结果如下:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.bit.edu.cn
* extras: mirror.bit.edu.cn
* updates: mirror.bit.edu.cn
Installed Packages
Deployment_Guide-zh-CN.noarch 5.2-11.el5.centos installed
…
zsh-html.i386 4.2.6-6.el5 base
6)通过yum install安装gdb:
#yum -y install gdb
运行结果为:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package gdb.i386 0:6.8-37.el5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
…(省略)
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 3.4 M
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: gdb 1/1
Installed:gdb.i386 0:6.8-37.el5
Complete!
7)以上说明安装成功了,运行gdb:
# gdb
运行结果为:
GNU gdb Fedora (6.8-37.el5)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu".
(gdb)
到此,gdb需求完成。
8)htop由于依赖的软件或库太多,直接从网络上下载了rpm包(网站为:http://rpm.pbone.net/ ——这是一个给力的rpm包网站。
我下载的rpm包为:ftp://ftp.univie.ac.at/systems/linux/dag/redhat/el5/en/i386/dag/RPMS/htop-1.0.1-2.el5.rf.i386.rpm)
9)使用rpm安装:
#rpm -vih *.rpm
运行结果为:
rpm -ihv htop-1.0.1-2.el5.rf.i386.rpm
warning: htop-1.0.1-2.el5.rf.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing... ########################################### [100%]
1:htop ########################################### [100%]
10)运行htop(注:图是在虚拟机上截取的,不是公司的服务器):
#htop
运行结果为:
到此,htop需求也满足了。
虽然满足了,但应该不是最优的解决方法,在这方面我还需要更多的学习和成长。
再次对那位同事表示感谢!