————————————————

Linux软件包管理

软件包管理

定义

  • PMS(包管理系统)提供一系列的命令行工具来安装,管理和卸载软件包,其中包括基础的包管理工具dpkg和rpm及其他高级的包管理工具

文件

  • aptitude和apt工具仓库

    • /etc/apt/sources.list
  • yum 仓库文件

    • /etc/yum.repos.d

基于debian包管理

  • 工具

    • dpkg
    • apt-get
    • aptitude(可解决包依赖)
  • 命令

    • 查找软件包仓库的相关包信息

      aptitude show package_name

    • 查看软件包包含的文件

      aptitude -L package_name

    • 查看某个文件属于哪个软件

      dpkg --search absolute_file_name

    • 查看本地软件包

      aptitude search package_name(如果为i u 说明已安装,如果为p v说明可用但未安装)

    • 安装本地软件包

      aptitude install package_naem

    • 更新本地软件包

      aptitude safe-upgrade(妥善处理包依赖)
      aptitude full-upgrade(直接更新到最新)
      aptitude dist-upgrade(直接更新到最新)

    • 卸载本地软件包

      aptitude remove package_name(只卸载软件包,不删数据和配置文件)
      aptitude purge package_name(既卸载软件包也删除数据和配置文件)

    • 仓库文件内容

      deb(deb-src) address distribution_name package_type_list

基于redhat包管理

  • 工具

    • yum(在Red Hat和Fedora中使用)
    • urpm(Mandriva中使用)
    • zypper(在openSUSE中使用)
  • 命令

    • 查看本地已安装软件包

      yum list installed
      rpm -qa |grep package_name

    • 查看某个已安装软件包的详细信息

      yum list package_name

    • 查看某个软件包是否已安装

      yum list installed package_name

    • 查看某个文件属于哪个软件包

      yum provides file_name

    • 安装软件包

      yum install package_name

    • 列出软件包可用更新

      yum list updates

    • 更新某个软件包

      yum update package_name

    • 更新所有在可更新列表的软件包

      yum update

    • 卸载软件包

      yum remove package_name(只擅长软件包,不删除数据和配置文件)
      yum erase package_name(删除软件及所有数据和配置文件)

    • 解决包依赖损坏

      • 清除缓存

        yum clean all

      • 尝试更新可用更新列表的软件包

        yum update

      • 列出软件包所依赖的库

        yum deplist package_name

      • 安装软件包所依赖的库

        yum install lib_name

      • 跳过包依赖损坏处理(最后的选择)

        yum update --skip-broken

    • 查看软件仓库

      yum repolist

基于源码安装

  • 解压

    tar -zxvf package_name.gz

  • 进入目录

    cd package_name

  • 配置

    ./configure

  • 编译

    make

  • 安装到系统

    make install

注意事项

  • aptitude是基于apt和dpkg的前端界面
  • /etc/apt/sources.list的文件的deb-src代表是源码包,deb是已经编译好的软件包
  • yum是基于rpm的前端界面
  • 包依赖损坏指在多个软件同时安装的手,某个包的依赖关系被另外一个包的安装所覆盖
  • yum==aptitude,rpm==dpkg
posted @ 2022-10-15 23:43  Tjane'Blogs  阅读(89)  评论(0)    收藏  举报