Linux常用软件包管理工具集合(DPKG,APT(APT-GET),RPM,YUM,DNF)

Linux软件包管理工具是一组命令的集合,其作用是提供在操作系统中安装,升级,卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询,简言之包管理器(package manager)是一种让用户安装,卸载,更改,配置的软件包管理工具。不同的Linux发行版会有不同的包管理器,比较常见的包管理工具有DPKG,APT(APT-GET),RPM,YUM,DNF等。

  1. DPKG

Debian包管理系统,是Debian Linux家族的基础包管理系统,它用于安装、删除、存储和提供deb包的信息。

  • 选项

    -i:安装软件包
    -r:删除软件包
    -P:删除软件包的同时删除其配置文件
    -L:显示于软件包关联的文件
    -l:显示已安装软件包列表
    –unpack:解开软件包
    -c:显示软件包内文件列表
    –confiugre:配置软件包

  • 常用命令示例

    • 安装包

      dpkg -i package.deb

    • 删除包

      dpkg -r package

    • 删除包(包括配置文件)

      dpkg -P package

    • 列出与该包关联的文件

      dpkg -L package

    • 显示该包的版本

      dpkg -l package

    • 解开deb包的内容

      dpkg --unpack package.deb

    • 搜索所属的包内容

      dpkg -S keyword

    • 列出当前已安装的包

      dpkg -l

    • 列出deb包的内容

      dpkg -c package.deb

    • 配置包

      dpkg --configure package

    • 列出已安装软件包

      dpkg-query -l

      dpkg-query -l | less

      dpkg-query -l | grep package

  1. APT (高级打包工具)

一个dpkg包管理系统的前端工具,它是一个非常受欢迎的、自由而强大的,有用的命令行包管理器系统。Debian及其衍生版,例如Ubuntu、Linux Mint。apt-get命令是Debian Linux发行版中的APT软件包管理工具。所有基于Debian的发行都使用这个包管理系统。

  • 常用命令示例

    • 安装包

      apt install package

    • 卸载安装包

      apt remove package

    • 检测并清除无用的安装包

      apt autoremove

    • 更新所有安装包

      apt update&upgrade package

    • 更新所有已安装的软件包

      apt-get upgrade

    • 将系统升级到新版本(解决依赖关系并升级)

      apt-get dist-upgrade

    • 更新

      apt-get update

    • 安装一个新软件包

      apt-get install package

    • 卸载一个已安装的软件包(保留配置文件)

      apt-get remove package

    • 卸载一个已安装的软件包(删除配置文件)

      apt-get –purge remove package

    • 移除已安装的软件的旧版本软件包(删除为了满足其他软件包的依赖而安装的,但现在不再需要的软件包。)

      apt-get autoclean package

    • 移除下载到本地的已经安装的软件包

      apt-get clean

    • 列出已安装软件包

      sudo apt list --installed
      sudo apt list --installed | less

      sudo apt list --installed | grep package

  1. RPM

红帽包管理器是红帽创建的Linux基本标准(LSB)打包格式和基础包管理系统。基于这个底层系统,有多个前端包管理工具可供使用

  • 选项

    -a:查询所有套件
    -c:只列出组态配置文件,本参数需配合"-l"参数使用
    -d:只列出文本文件,本参数需配合"-l"参数使用
    -e<套件档>或–erase<套件档>:删除指定的套件
    -f<文件>+:查询拥有指定文件的套件
    -h或–hash:套件安装时列出标记
    -i:显示套件的相关信息
    -i<套件档>或–install<套件档>:安装指定的套件档
    -l:显示套件的文件列表
    -p<套件档>+:查询指定的RPM套件档
    -q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户
    -R:显示套件的关联性信息
    -s:显示文件状态,本参数需配合"-l"参数使用
    -U<套件档>或–upgrade<套件档>:升级指定的套件档
    -v:显示指令执行过程
    -vv:详细显示指令执行过程,便于排错

  • 常用命令示例

    • 安装软件包

      rpm -ivh package.rpm

    • 强制安装

      rpm --force -ivh package.rpm

    • 卸载软件包

      rpm -e package

    • 列出所有安装过的包

      rpm -qa或者 rpm -qa | grep package

    • 升级软件包

      rpm -Uvh package.rpm

    • 查询软件包的信息

      rpm -qpi package.rpm

  1. YUM

YUM是一个开源、流行的命令行包管理器,它是用户使用 RPM 的界面(之一)。YUM命令是在Fedora和RedHat以及SUSE中基于RPM的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

  • 参数

    install:安装rpm软件包
    update:更新rpm软件包
    check-update:检查是否有可用的更新rpm软件包
    remove:删除指定的rpm软件包
    list:显示软件包的信息
    search:检查软件包的信息
    info:显示指定的rpm软件包的描述信息和概要信息
    clean:清理yum过期的缓存
    shell:进入yum的shell提示符
    resolvedep:显示rpm软件包的依赖关系
    localinstall:安装本地的rpm软件包
    localupdate:显示本地rpm软件包进行更新
    deplist:显示rpm软件包的所有依赖关系

  • 选项

    -h:显示帮助信息
    -y:对所有的提问都回答“yes”
    -c:指定配置文件
    -q:安静模式
    -v:详细模式
    -d:设置调试等级(0-10)
    -e:设置错误等级(0-10)
    -R:设置yum处理一个命令的最大等待时间
    -C:完全从缓存中运行,而不去下载或者更新任何头文件

  • 常用命令示例

    • yum install

      全部安装

    • yum install package

      安装制定的安装包package

    • yum groupinsall group

      安装程序组group

    • yum update

      全部更新

    • yum update package

      更新指定程序包package

    • yum check-update

      检查可更新的程序

    • yum upgrade package

      升级指定程序包package

    • yum groupupdate group

      升级程序组group

  1. DNF是一个用于基于RPM的发行版的包管理器,Fedora 18引入了它,它是下一代 YUM.它是Fedora 22及更新版本的默认包管理器,Rhel 8和CentOS 8也在应用。
  • 常用命令示例

    • 安装软件包

      dnf install package

    • 升级软件包

      dnf update package

    • 升级所有系统软件

      dnf update && dnf upgrade

    • 检查系统软件包的更新

      dnf check-update

    • 删除软件包

      dnf remove package
      dnf erase package

    • 删除无用孤立的软件包

      dnf autoremove

    • 删除缓存的无用软件包

      dnf clean all

    • 查看系统中可用的DNF软件库

      dnf repolist

    • 查看系统中可用和不可用的所有的DNF软件库

      dnf repolist all

    • 列出所有RPM包

      dnf list

    • 列出所有安装了的RPM包

      dnf list installed

    • 列出所有可供安装的RPM包

      dnf list available

    • 搜索软件库中的RPM包

      dnf search package

    • 查找某一文件的提供者(查找bash的提供者)

      dnf provides /bin/bash

    • 查看软件包详情

      dnf info package

    • 查看所有的软件包组

      dnf grouplist

    • 安装一个软件包组(安装’Educational Software’这个软件包组)

      dnf groupinstall ‘Educational Software’

    • 升级一个软件包组中的软件包(升级’Educational Software’这个软件包组)

      dnf groupupdate ‘Educational Software’

    • 删除一个软件包组(删除’Educational Software’这个软件包组)

      dnf groupremove ‘Educational Software’

    • 重新安装特定软件包

      dnf reinstall package

    • 回滚某个特定软件的版本

      dnf downgrade package

    • 查看DNF命令的执行历史

      dnf history

    • 查看所有的DNF命令及其用途

      dnf help

    • 获取有关某条命令的使用帮助

      dnf help clean

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值