linux 自学笔记 (八) linux软件包管理

13 linux软件包管理

二进制软件包管理(RPM,YUM)
源代码包安装
脚本安装(Shell/Java)
Debian系linux软件包管理简介

13.1  RPM 包管理

RPM软件包的一个例子:
            sudo- 1.7.2pl- 5.el5. i386.rpm
其中包括软件名( sudo),版本号( 1.7.2pl),发行号( 5.el5),和硬件平台( i386)。
(1)卸载
    # rpm -e sudo                %注意:如果其他软件包有依赖关系,卸载时会产生提示信息,可以使用 --nodeps 强行卸载。
(2)安装
  # rpm -ivh  sudo-1.7.2pl-5.el5.i386.rpm
挂载光盘:
 mkdir /mnt/cdrom
 mount /dev/cdrom  /mnt/cdrom
查询软件包是否被安装:
 rpm -q sudo
 rpm -qa | grep 【软件包的名称的关键字】  % 查找所有-qa【软件包的名称的关键字】的软件包安装信息
其他安装命令:
--excludedocs    % 不安装软件包中的文档软件
--prefix  PATH     %将软件包安装到有PATH指定的路径下
--test                    %只对安装进行测试,并不实际安装
范例:  
   rpm -ivh --test sudo-1.7.2pl-5.el5.i386.rpm

其它常见情况:
A.软件包已经安装。  如果想覆盖安装该软件包,可以使用命令:--replacepkgs
B.文件冲突。            如果要安装的软件包中有一个文件已在安装其他软件时安装,会出现错误信息。要想忽略该信息。使用:-replacefiles。
C.未解决依赖关系。RPM软件包可能依赖于其他软件包,在安装特定软件包之后才能安装该软件包。你必须安装所依赖的软件包才能解决。如要强行安装,使用--nodeps。

(3)升级
 # rpm -Uvh   sudo-1.7.2pl-5.el5.i386.rpm     % -U  (-update)
(4) 查询
选项:
-a 查询所有已经安装的软件包  (all)
-f  查询文件所属软件包
-p 查询软件包
-i  显示询软件包信息
-l  显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置文件的文件列表

案例: 
1.查询文件隶属的软件包: rpm -qf
2.查询软件包信息:             rpm -qi  、rpm -qip   
3.查询软件包安装信息:    rpm -ql  、 rpm -qlp
4.查询软件包帮助文档        rpm -qd
5.查询软件包配置文档        rpm -qc

(5)校验   (用于 查看软件包是否被修改过,修改了什么)
# rpm -V 【软件名称】
输出信息解释: 5  文件的md5校验值
                             S 文件大小
                             L 连接数
                            T 文件的创建时间
                            D 设备文件
                            U 文件用户
                            G 文件的用户组
                            M 文件的权限
 
(6)软件包文件提取
解压所有文件到指定目录: # rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv
解压指定文件到指定目录: # rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv   ./etc/inittab


13.2  YUM包管理

应用YUM的好处:自动解决软件包的依赖问题
                                方便软件包升级


(1) 安装:            yum install [软件包名称]             例如:# yum install sudo
(2) 检查升级:    yum check-update                      例如:# yum check-update sudo
(3) 升级:            yum update                                  例如:# yum update sudo
(4) 软件包查询:yum list                                         例如:# yum list  | grep  sudo     % 列出sudo的软件包的查询信息
(5) 软件包信息:yum info                                        例如:# yum info sudo
(6) 卸载:            yum remove                                 例如:# yum remove sudo
(7) 帮助:            yum -help、 man yum


13.3 源代码包安装

应用举例(proftpd):

# tar -xzvf proftpd-1.3.3d.tar.gz                         %解压文件包,在当前目录下会有proftpd-1.3.3d文件夹
# cd proftpd-1.3.3d                                            %进入proftpd-1.3.3d文件夹
# ./configure --prefix=/usr/local/proftpd         % 配置,在文件夹proftpd-1.3.3d文件夹下进行配置,指定安装目录: --prefix=/usr/local/proftpd。如果出错,注意提示信息。
# make                                                               %编译,调用GCC等编译器将源代码编译成可执行文件
# make install                                                   % 安装,将编译的文件拷贝到指定目录里。
%软件下载地址:http://www.proftpd.org

13.4 脚本安装

应用举例(webmin一种功能强大的远程管理软件)
# tar -xzfv webmin-1.530.tar.gz                         %解压文件包,在当前目录下会有webmin-1.530文件夹
# cd webmin-1.530                                            %在该文件夹里,你会发现没有configure文件,这说明这不是源代码包,这是找找有没有README,看看可是脚本文件
# vi README                                                       %阅读README,根据说明的安装方法进行安装。
# ./setup.sh                                                         %运行脚本,期间可能会要回答一些简单的设置问题。  
软件下载地址:http://www.webmin.com


13.5 APT包管理

搜索软件包      apt-cache search
软件包信息      apt-cache show
安装                  apt-get install (reinstall, -f)
删除                  apt-get remove (autoremove, --pruge)
更新软件源      apt-get update
更新已安装包  apt-get upgrade











你可能感兴趣的:(linux 自学笔记 (八) linux软件包管理)