Linux软件包管理

Linux软件包管理

内容:

  • 二进制软件包管理(RPM、YUM)
  • 源代码包安装
  • 脚本安装
  • Debian系Linux软件包管理简介

RPM包管理

全称为 Yellow dog Updater, Modified

  • 示例:
  
  
  
  
  1. sudo-1.7.2p-5.e15.i386.rpm

sudo是Linux默认的一个安装包。

解释:

软件名:sudo  
版本号:1.7.2pl
发行号:5.e15
硬件平台:i386  (注:64位可能写为686)  
  • 安装:
  
  
  
  
  1. rpm -ivh sudo-1.7.2p-5.e15.i386.rpm

这里不需指定安装目录,可以用--prefix=/usr/local/sudo指定安装目录(rpm -ivh --prefix=/usr/local/sudo sudo-1.7.2p-5.e15.i386.rpm),但通常rpm不允许指定安装目录。因为rpm包的制作者早已定义了包的安装路径,可以用命令查找安装路径。

解释:

i:  install   安装
v: view 显示详细信息
h: hash 用#显示进度
  • 查看是否安装成功
  
  
  
  
  1. rpm -q sudo

如果显示版本号则表明安装成功。

q:检验是否安装成功
a:all
  • 覆盖安装 
    常用在误删其中的一些文件的情况。
  
  
  
  
  1. rpm -ivh --replacepacekgs sudo-1.7.2p-5.e15.i386.rpm
  • 文件冲突 
    常发生在老软件替换新软件时。
  
  
  
  
  1. rpm -ivh --replacefile sudo-1.7.2p-5.e15.i386.rpm
  • 未解决依赖关系(属于麻烦情况) 
    发生在要安装的文件需要另一个没有安装的文件的支持的情况。 
    可以强行安装(–nodeps),但十有八九安装后不能使用。

RPM不好解决依赖关系的问题,这也导致了YUM的诞生。

  • 升级软件包
  
  
  
  
  1. rpm -U[vh] sudo-18.0p1-5.e15.i386.rpm
  • 卸载:
  
  
  
  
  1. rpm -e sudo
  • 强行卸载(不考虑依赖关系,不建议)
  
  
  
  
  1. rpm -e --nodeps sudo
  • 查询

    • 选项: 
      -a 查询所有已安装的软件包 
      -f 查询文件所属软件包 
      -p 查询软件包 
      -i 显示软件包信息 
      -l 显示被标注为文档的文件列表 
      -d 显示被标注为文档的文件列表 
      -c 显示被标注为配置文件的文件列表

    • RPM查询应用案例: 
      查询文件隶属的软件包:rpm -qf 
      查询文件包信息: rpm -qi 、 rpm -qip 
      查询软件包安装文件: rpm -ql、rpm -qlp 
      查询文件包帮助文档:rpm -qd 
      查询软件包配置文件: rpm -qc

YUM包管理(更方便)

  • 应用yum的好处

    • 自动解决软件包的依赖关系 
      如果存在依赖关系的包,则它会自动安装需要的包,然后在开始安装。
    • 方便的软件包升级 
      如果有新版本,则会从源中寻找安装,一般使用系统提供的源就挺好,也可以修改源。
  • 安装yum软件包

  
  
  
  
  1. yum install sudo
  • 检测升级
  
  
  
  
  1. yum check-update [sudo]

如果不写sudo说明检测所有更新,不要这样做。

  • 升级
  
  
  
  
  1. yum update [sudo]
  • 查询软件包信息
  
  
  
  
  1. yum info sudo
  • 卸载
  
  
  
  
  1. yum remove sudo
  • 帮助
  
  
  
  
  1. yum -help
  2. man yum
  
  
  
  

你可能感兴趣的:(Linux软件包管理)