CentOS6软件包管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS6软件包管理相关的知识,希望对你有一定的参考价值。
一、软件包管理
1.常见软件包格式
(1).exe Windows系统软件格式
(2).tar.gz | .tar.bz2 | .tar.xz 软件开发人员编写的软件源代码;所有发行版都可安装
(3)绿色免安装版 与Windows绿色软件一样,解压到对应目录即可运行
(4).rpm Red Hat系列(RHEL、Centos)发行版使用的封装类型
(5).deb Debian系列(Debian、Ubuntu)发行版使用的封装类型;apt-get install 软件名
2.软件开发流程:开发人员 --> 源代码 --> 编译 --> 二进制文件(.exe)
注:默认Linux不能安装Windows系统软件,如需安装可通过wine解决方案
3.软件包名称详解
bash-4.1.2-15.el6_4.x86_64.rpm
bash:软件名
4.1.2:版本号;主版本号.次版本号.修订版本号
15:发布次数
el6_4:硬件平台;Red Hat Enterprise Linux 6.4发行版
x86_64:适用系统位数;x86_64可64位系统使用、i386可32位系统使用
RPM包下载地址:www.rpmfind.net
二、RPM包管理工具
1.查询(已安装的)
(1)rpm -qa //显示所有系统已安装的RPM包
(2)rpm -qa | grep <软件名> //搜索指定软件包是否安装
(3)rpm -ql <软件名> //显示指定软件包所有提供文件位置
(4)rpm -qi <软件名> //显示指定软件包的详细信息
(5)rpm -qc <软件名> //显示指定软件包的配置文件位置
(6)rpm -qf $(which 命令) //查看指定命令所提供软件包名
(7)rpm -qd <软件名> //显示指定软件包文档文件位置
2.查询(未安装的)
(1)rpm -qpl <RPM软件包路径> //查询未安装RPM软件包安装之后存放文件的路径
(2)rpm -qpi <RPM软件包路径> //查询未安装RPM软件包详细信息
例:
mount /dev/cdrom /mnt //挂载光盘/mnt目录
rpm -qpi /mnt/Packages/apr-utils-1* //查询未安装apr-utils软件包的详细信息
rpm -qpl /mnt/Packages/apr-utils-1* //查询未安装apr-utils软件包安装后所存在路径
3.安装
rpm -ivh RPM软件包位置 //安装指定软件包
选项:
-i:install安装
-v:verbose安装信息
-h:以#显示安装进度
-U:升级RPM软件包,如果系统未安装该软件包旧版本,则安装指定的新版本软件
-F:更新RPM软件包,如果系统未安装该软件包旧版本,则放弃安装
--nodeps:忽略依赖关系强制安装指定安装软件包;一般不用
--force:强制
例:
mount /dev/cdrom /mnt //挂载光盘/mnt目录
①rpm -ivh /mnt/Packages/portreserve //安装portreserve软件包
②rpm -ivh --force --nodeps /mnt/Packages/firefox //强制安装firefox软件,但有可能软件不能正常使用
4.卸载
(1)rpm -e 软件包名 //卸载指定软件包
(2)rpm -e 软件包 --nodeps //强制卸载指定软件包;建议替换为yum -y erase 软件包名
例:
①rpm -e portreserve //卸载portreserve软件包
②rpm -e --nodeps net-tools //忽略依赖关系,强制卸载该软件
重建数据库文件与导入
(1)rpm --rebuilddb 或 rpm --initdb 重建数据库文件(/var/lib/rpm/_db)
(2)rpm --import /mnt/RPM-GPG-KEY-CentOS-6 导入光盘中公钥文件
三、源代码安装
可定制性强
1.下载软件包
2.解压(tar) /解压源码包到/usr/src/目录
3.配置(./configure) /启用、禁用对应功能,并指定安装路径
4.编译(make) /生成可执行二进制文件、命令
5.安装(make install) /移动生成文件、命令到安装路径
6.验证(ls)
例:
①下载源代码软件包,通过Xshell传输(Ctrl+Alt+F)到Centos系统(/root)
②md5sum httpd-2.2.17.tar.gz /校验文件和是否与官网相同
66d8e107f85acc039fd5e624e85728a9 httpd-2.2.17.tar.gz
③tar -zxvf httpd-2.2.17.tar.gz -C /usr/src/ /将源代码包解压到/usr/src/目录
④yum -y install gcc* /安装编译必要环境
⑤cd /usr/src/httpd-2.2.17/ /进入httpd源码包目录
⑥./configure --prefix=/usr/local/httpd /配置源码软件需要的功能,--prefix指定软件安装的路径
⑦make && make install /编译生成二进制文件并移动文件到软件指定安装路径(/usr/local/httpd)
⑧ls -l /usr/local/httpd /查看是否生成对应目录
⑨cd /usr/local/httpd/bin/apachectl start /启动httpd服务,提供网页访问
⑩浏览器使用 http://ip地址 访问
四、YUM
作用:自动解决依赖关系;自动安装依赖的.rpm软件包
1.本地源(速度快、版本旧、只有光盘内的软件包)
rm -rf /etc/yum.repos.d/*
vim /etc/yum.repos.d/local.repo
[local] 仓库名
name=local 名字
baseurl=file:///mnt 光盘挂载位置
enabled=1 启动该仓库
gpgcheck=0 不检测公钥文件
mount /dev/cdrom /mnt //挂载光盘
2.在线源(速度慢、版本新、软件包多)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo //下载在线源YUM文件另存为到/etc/yum.repos.d/目录下
vim /etc/yum.repos.d/CentOS6-Base-163.repo
:% s/$releasever/6.7/g //将下载系统版本位置改为6.7版本
mount /dev/cdrom /mnt //挂载光盘
yum clean all //清除YUM所有缓存
yum repolist //重建YUM缓存
3.YUM命令用法
yum -y install 软件包名 //安装指定软件
yum search 软件包名 //搜索YUM源中是否存在指定软件
yum erase 软件包名 //卸载指定软件
yum -y update //更新系统所有已安装软件包
yum info 软件包名 //查看指定软件包的详细信息
yum provides */命令 //搜索指定命令提供的软件包名
例:
yum -y install dhcp //安装dhcp软件
yum search firefox //搜索YUM源中是否有firefox软件
yum erase firefox //卸载firefox软件
以上是关于CentOS6软件包管理的主要内容,如果未能解决你的问题,请参考以下文章
CentOS6.9安装daemontools工具管理服务进程
Centos6 软件包管理rpm,yum以及外部源不可用案例处理