注:由枫梓林本人整理
是由 Debian Linux 所开发出来的包管理机制,通过 DPKG 包,Debian Linux就可以进行软件包管理。主要应用在 Debian和unbuntu中。
RPM包:是由 Red Hat公司所开发的包管理系统。功能强大,安装、升级、查询和卸载都非常简单和方便。目前很多 Linux都在使用这种包管理方式,包括 Fedora、CentOS、SuSE等。我们学习的是 CentOS 6.3,所以我们将要学习 RPM包管理系统
1)树形依赖
2)环形依赖
3)函数库依赖
a---->b---->c
a---->b---->c---->a
www.rpmfind.net (查询包含某一个软件包中的。没有的那个包函数库中没有单独成包)
httpd-2.2.15-15.el6.centos.1.i686.rpm
httpd | 软件包名 |
---|---|
2.2.15 | 软件版本 |
15 | 软件发布的次数 |
el6 | 软件发行商。el6是 RedHat公司发布,适合 RHEL6.(x Red Hat Enterprise Linux)和 CentOS6.x下使用 |
i686 | 适合的硬件平台。RPM包可以在不同的硬件平台安装,选择适合不同 CPU的软件版本,可以最大化的发挥 CPU性能,所以出现了所谓的 i386(386以上计算机都可以安装)、i586(586以上的计算机都可以安装)、i686(奔腾 II 以上计算机都可以安装,目前所有的 CPU 都是奔腾 II以上,所以这个软件版本居多)、x86_64(64位 CPU可以安装)和 noarch(没有硬件限制)等文件名了。 |
rpm | rpm包的扩展名。我们说过 Linux下文件不是靠扩展名区分文件类型,也就是 Linux中扩展名没有任何含义。可是这里怎么又出现了扩展名呢?原因很简单,如果我不把 RPM的扩展名叫做“.rpm”,管理员很难知道这是一个 RPM包,当然也就无法正确安装了。也就是说如果RPM 包不用“.rpm”作为扩展名,系统可以正确识别没有问题,可是管理员很难识别这是个什么样的软件。 |
包全名 | 如果操作的是未安装软件包,则使用包全名,而且需要注意绝对路径 |
包名 | 如果操作的是已经安装的软件包,则使用包名即可,系统会生产 RPM 包的数据库 |
/etc/ | 配置文件安装目录 |
---|---|
/usr/bin/ | 可执行的命令安装目录 |
/usr/lib | 程序所使用的函数库保存位置 |
/usr/share/doc | 基本的软件使用手册保存位置 |
/usr/share/man | 帮助文件保存位置 |
格式 rpm –ivh 包全名
选项:
-I install安装(install)
-v 显示更详细的信息(verbose)
-h 打印#显示安装进度(hash)
注意一定是包全名。如果跟包全名的命令要注意路径,因为软件包在光盘当中
[root@localhost ~]# rpm –Uvh 包全名
选项
# -U(大写) 升级安装,如果没有安装过,系统直接安装。如果安装过的版本较旧,则升级到新版本(upgrade)
[root@localhost ~]# rpm –Fvh 包全名
选项
# -F(大写) 升级安装,如果没有安装过,则不会安装。必须安装有较旧版本,才能升级(freshen)
[root@localhost ~]# rpm -e 包名
选项
# --nodeps 不检查依赖性
# -e 卸载
rpm -q 包名 查询(query)
rpm -qa 包名 查询系统中已安装的软件包
rpm -qa | grep httpd 查询包含httpd的包全部列出来
rpm -qi 包名 查询软件信息(information)
rpm -qip 包全名 查询没有安装的软件包(package)
rpm -ql 包名 列出软件包中所有文件列表和软件所在安装目录(list)
rpm -qlp 包全名 查询没有安装的软件包信息(package)
rpm -qf 系统文件名 查询系统文件属于哪个软件包(file)
rpm -qR 包名 查询软件包的依赖性(requires)
[root@localhost ~]# rpm -Va
选项
-Va 校验本机已经安装的所有软件包
-V 校验指定 RPM包中的文件(verify)
数字证书
[root@localhost yum.repos.d]# yum list #查询所有已安装和可安装的软件包
[root@localhost yum.repos.d]# yum -y install 包名
选项
install:表示安装软件包。
-y:自动回答 yes。如果不加 -y,那么每个安装的软件都需要手工回答 yes;
例如使用此 yum 命令安装 gcc:
[root@localhost yum jepos.d]#yum -y install gcc
使用yum自动安装gcc
gcc 是 C 语言的编译器,鉴于该软件包涉及到的依赖包较多,建议使用 yum 命令安装。
-yum 升级软件包常用命令如下:
选项
-y update: # 升级所有软件包。不过考虑到服务器强调稳定性,因此该命令并不常用。
-y update 包名: # 升级特定的软件包。
yum 卸载命令的基本格式如下:
[root@localhost yum.repos.d]# yum remove 包名 #卸载指定的软件包
软件包组,是一个打包好的一个组
[root@localhost yum.repos.d]# yum groupinstall 软件组名 #安装指定软件组, 查询组名可以用grouplist查询
注:安装 如:Web Server 要加"Wed Server"
[root@localhost yum.repos.d]# yum groupremove 软件组名 #卸载指定软件组
检查命令如下:rpm -q gcc //如下是未安装gcc编译器
"/usr/src"
用来
保存内核源代码,"/usr/local/src"
用来保存用户下载的源代码。
用xshell上传文件 rz是xshell上传的命令
安装方法:yum install lrzsz
[root@localhost httpd-2.4.43]# tar -zxvf httpd-2.4.43.tar.gz -C /usr/local/src/
./configure --prefix=PREFIX //运行相关软件并指定路径
make //编译
make install //安装
PREFIX/bin/apachectl start //启动
注:
本文首发于枫梓林的博客,欢迎转载,但是必须保留本文的署名枫梓林(包含链接)
转发请给我留言:[email protected]