• 区分一下dpkg,rpm和yum以及apt-get


    一般来说著名的 Linux 系统基本上分两大类:

    1. RedHat 系列:Redhat、Centos、Fedora 等
    2. Debian 系列:Debian、Ubuntu 等

    Dpkg (Debian系):Ubuntu 
    RPM (Red Hat系):CentOS、Fedora

    RedHat 系列

    • 常见的安装包格式 rpm 包,安装rpm包的命令是“rpm -参数”
    • 包管理工具 yum
    • 支持 tar 包

    Debian系列

    • 常见的安装包格式 deb 包,安装 deb 包的命令是“dpkg -参数”
    • 包管理工具 apt-get
    • 支持 tar 包

    tar 只是一种压缩文件格式,所以,它只是把文件压缩打包而已。

    rpm 相当于windows中的安装文件,它会自动处理软件包之间的依赖关系。优缺点来说,rpm一般都是预先编译好的文件,它可能已经绑定到某种CPU或者发行版上面了。

    列出系统中已安装的所有套件:

    下面是其他博客的摘录

    以下整理列表来自Jamyy's Weblog :

    安装

    目的 rpm 用法 dpkg 用法
    安装指定套件 rpm -i pkgfile.rpm dpkg -i pkgfile.deb

    查询

    目的 rpm 用法 dpkg 用法
    显示所有已安装的套件名称 rpm -qa dpkg -l (小写L)
    显示套件包含的所有档案 rpm -ql softwarename (小写L) dpkg -L softwarename
    显示特定档案所属套件名称 rpm -qf /path/to/file dpkg -S /path/to/file
    查询套件档案资讯 rpm -qip pkgfile.rpm (显示套件资讯) 
    rpm -qlp pkgfile.rpm (小写L,显示套件内所有档案)
    dpkg -I pkgfile.deb (大写I ) 
    dpkg -c pkgfile.deb
    显示指定套件是否安装 rpm -q softwarename (只显示套件名称)
    rpm -qi softwarename (显示套件资讯)
    dpkg -l softwarename (小写L,只列出简洁资讯) 
    dpkg -s softwarename (显示详细资讯)
    dpkg -p softwarename (显示详细资讯)

    移除

    目的 rpm 用法 dpkg 用法
    移除指定套件 rpm -e softwarename dpkg -r softwarename (会留下套件设定档) 
    dpkg -P softwarename (完全移除)

    在Debian使用alien处理RPM套件

    alien 可处理.deb、.rpm、.slp、.tgz 等档案格式, 进行转档或安装. 
    于Debian安装非Debian套件时,可使用alien进行安装. 
    安装alien套件: apt-get install alien

    • 在Debian安装RPM套件: alien -i quota-3.12-7.i386.rpm
    • 制作成deb的套件格式: alien -d quota-3.12-7.i386.rpm
    • 制作成rpm的套件格式: alien -r quota_3.12-6_i386.deb

    APT与YUM

    虽然RPM与DPKG有效的解决的软体的安装,移除与查询的需求,但是在Linux上的套件管理还有一个很大的问题必须解决,就是各软体间的相依性(dependency)。 RPM与DPKG只能做到检查相依性,在安装或移除时告知相依性的不满足,皆下来就需要使用者自行去找出所需的套件来安装。 这样的确是有点不方便,因此产生了前端工具软体- APT及YUM。

    APT

    Debian开发,目前也有porting到其他版本,要在Red Hat系的Fedora或CentOS使用也是可以的。

    使用方法:

    • 编辑/etc/apt/sources.list ,设定所选用的版本,如stable,testing,unstable及套件来源站台或装置。 档案详细设定请参考: 了解Debian系统的哲学
    • 基本指令:
    apt-setup 设定/etc/apt/souces.list
    apt-get update 软体资料库同步
    apt-get install softwarename1 [softwarename2.....] 安装软体
    apt-get remove softwarename 1 [softwarename 2...] 移除软体(保留设定档)
    apt-get --purge remove softwarename 1 [softwarename 2...] 移除软体(不保留设定档)
    apt-cache search softwarename 列出所有sofrwarename的套件
    apt-upgrade [softwarename 1 softwarename2...] 更新套件,不指定套件名则更新所有可更新的套件
    apt-get clean(autoclean) 删除系统暂存的deb(autoclean只会将比目前系统旧版的套件删除)
    apt-get dist-upgrade 转换系统的版本(需在/etc/apt/sources.list指定stable,testing或unstable)

    YUM

    YUM(Yellow dog Updater, Modified )是Yellow Dog Linux开发的。 Yellow Dog Linux原本是一套完全源于Red Hat但运作于先前使用IBM PPC平台的MAC机器,原本以为这个版本已经消失,没想到最新消息是他们推出了在Sony PS3上面运作的版本。 CentOS及Fedora的基本预设安装中即将YUM列入其内。 如果没记错,要在Debian上使用YUM也是可以的。

    使用方法:

    • 编辑/etc/yum.conf档案详细设定请参考: 简易APT/YUM伺服器设定注1
    • 基本指令: (如果yum在工作过程中需要使用者回应,可加上-y参数直接回答yes )
    yum install softwarename1 [softwarename2.....] 安装套件
    yum update [softwarename 1 softwarename2...] 更新套件,不指定套件名则更新所有可更新的套件
    yum list 列出目前在yum server 上面有的套件
    yum info 类似rpm -qi
    yum clean 移除下载到本机的packages 或headers
    yum remove softwarename1 [softwarename2.....] 移除已经安装的套件

    注1:Red Hat近年来致力于将一个设定档切割成很多小设定档。 以yum.conf为例,Red Hat将其分割成xxx.repo档放置在/etc/yum.repos.d这个目录下。 并在yum.conf档里增加一行注解: PUT YOUR REPOS HERE OR IN separate files named file.repo in /etc/yum.repos.d。 个人可视喜好决定。

  • 相关阅读:
    判断广播是否已注册
    Android 之使用LocalBroadcastManager解决BroadcastReceiver安全问题
    Android BroadcastReceiver 注册和反注册
    关于Android TaskAffinity的那些事儿
    文件读取方法(FileHelpers) z
    FileHelpers 用法 z
    tdf sample
    打开文件
    async/await 异步编程
    使用Topshelf创建Windows服务
  • 原文地址:https://www.cnblogs.com/fps2tao/p/7530691.html
Copyright © 2020-2023  润新知