zoukankan      html  css  js  c++  java
  • 包管理介绍(DPKG,APT,RPM,YUM,DNF)

    linux操作系统下载软件的方式与Windows有很大不同。软件通常都是存放在存储库中,并通过包的形式进行分发。处理包的工作被称为包管理。
    比较常见的包管理工具有DPKG,APT,RPM,YUM,DNF等。熟悉Linux包管理操作可以让你更方便的使用linux系统。

    首先说一下debian一系的。
    debian 及其衍生版,如 Ubuntu的包格式是 .deb。在本地系统中可以使用 DPKG程序来安装单个的 deb 文件,还可以通过一些命令直接从软件仓库中下载。但是需要手工解决软件包的依赖关系。很多时候安装一个软件需要安装1个或者多个其他软件,手动解决时,很复杂。APT个是一个 dpkg 包管理系统的前端工具,它是一个非常受欢迎的、自由而强大的,有用的命令行包管理器系统。不需要自己解决安装包之间的依赖关系,比dpkg更方便。在基于 Debian 的 Linux 发行版中,有各种工具可以与 APT 进行交互,以方便用户安装、删除和管理的软件包。apt-get 便是其中一款广受欢迎的命令行工具,然而在Ubuntu16发布后又引入了新的命令行工具apt(和上面的APT包管理系统不一样)apt可以看作是apt-get的加强版,是apt-get,apt-cache,apt-config三种的集合,除此之外apt还具有其他的优点如显示进度条等。

    dpkg常用的命令有

    dpkg -i package.deb     #安装包
    dpkg -r package         #删除包
    dpkg -l package         #显示该包的版本
    dpkg -l                 #列出当前已安装的

    apt常用的命令有

    apt install     package          #安装包      
    apt remove      package          #卸载安装包
    apt autoremove                   #检测并清除无用的安装包
    apt update&upgrade    package    #更新所有安装包
    

    另外就是Red Hat一系的,CentOS、Fedora 和其它 Red Hat 家族成员使用 rpm文件。rpm软件包形式的管理虽然方便但仍需要自己解决依赖关系。YUM是rpm的前端程序,主要目的是设计用来自动解决rpm的依赖关系, yum仓库用来存放所有的现有的.rpm包,当使用yum安装一个rpm包时,需要依赖关系,会自动在仓库中查找依赖软件并安装。仓库可以是本地的,也可以是HTTP、FTP、nfs形式使用的集中地、统一的网络仓库。

    常用的rpm命令有

    rpm -ivh    package.rpm      #安装软件包
    rpm -Uvh    package.rpm      #升级软件包
    rpm -e      package.rpm      #卸载软件包
    rpm -qpi    package.rpm      #查询软件包的信息

    常用的YUM命令

    yum info        package     #查看软件包信息
    yum install     package     #安装软件
    yum remove      package     #卸载软件
    yum check-update            #检查是否有可更新的软件包

    在Fedora中又开始采用一种新的DNF包管理,是新一代的yum,欲以代替yum。DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。DNF使用 RPM, libsolv 和 hawkey 库进行包管理操作。在Fedora22中代替了yum。 DNF 并未默认安装在 RHEL 或 CentOS 7系统中,.要想安装 DNF ,您必须先安装并启用 epel-release 依赖。
    在系统中执行以下命令:

    yum install epel-release

    yum install dnf

    常用的DNF命令:

    dnf info            package     #查看软件包信息
    dnf install         package     #安装软件
    dnf remove/erase    package     #卸载软件
    dnf check-update                #检查是否有可更新的软件包
    dnf autoremove                  #删除无用的软件包
    dnf history                     #显示输入历史
    
    
    
  • 相关阅读:
    iOS-25个小技巧
    iOS-UITableView的使用
    iOS-UIPickerView
    iOS-UIStoryboard和UIResponder
    javascript弹出层-DEMO001
    jQuery源码分析-02正则表达式-RegExp-常用正则表达式
    JSON动态生成树
    回顾码农历程总结2013 期待2014
    大数据量分页存储过程效率测试附代码
    关于对象序列化json 说说
  • 原文地址:https://www.cnblogs.com/fjw3214/p/10705155.html
Copyright © 2011-2022 走看看