按Linux系统分类

  1. Redhat系列:Redhat(本身就是Centos)、Centos、Fedora等,采用Dpkg包管理器
  2. Debian系列:Debian、Ubuntu等,使用RPM包管理器

RedHat系列

  • 常见的安装包:.rpm安装包,安装rpm包的命令是“rpm -ivh(--install--verbose--hash) ”
  • 包管理工具 yum,e.g. yum install unzip
  • 支持tar包

1.rpm常用命令:

# rpm -qa 显示所有已安装的套件名称
# rpm -ql softwarename 显示软件包含的所有档案
# rpm -qf /path/to/file 显示特定档案所属套件名称
# rpm -qip pkgfile.rpm (显示软件资讯) 查询套件档案资讯
# rpm -qlp pkgfile.rpm 查询软件档案资讯
# rpm -q softwarename (只显示软件名称) 显示指定套件是否安装
# rpm -qi softwarename (显示软件资讯) 显示指定套件是否安装
# rpm -e softwarename 移除软件
  1. yum常用命令:
# yum install <package> 安装套件
# yum update 全部更新
# yum update <package> 更新指定程序包package e.g. yum update dhcp
# yum check-update 检查可更新的程序
# yum info <package> 显示安装包信息 e.g. yum info dhcp
# yum list 显示所有已经安装和可以安装的程序包
# yum list <package> 显示指定程序包安装情况
# yum search <keyword>查找软件包
# yum remove or erase package 删除程序包
# yum clean headers 清除header
# yum clean packages 清除下载的rpm包
# yum clean all 清除header与rpm包

3.tips:

  1. 加快你的yum的速度.使用yum的扩展插件yum-fastestmirror,个人认为这个插件非常有效,速度真的是明显提高
  2. 软件组安装有时我们安装完系统,管理有一类软件没有安装,比如用于开发的开发包,我们可以用软件包来安装
列出所有的软件包
# yum grouplist 比如我们要安装开发有关的包
# yum groupinstall "Development Libraries"
# yum groupinstall "Development Tools" 比如我们要安装中方支持
# yum groupinstall "Chinese Support" 查看程序package1依赖情况
# yum deplist package1

Debian系列

  • 常见的安装包:.deb安装包,安装deb包的命令是“dpkg -i ”
  • 包管理工具 apt-get e.g. apt-get install unzip
  • 支持 tar 包
  1. dpkg常用命令:
# dpkg -l 显示所有已安装的套件名称
# dpkg -L softwarename 显示套件包含的所有档案
# dpkg -S /path/to/file 显示特定档案所属套件名称
# dpkg -I pkgfile.deb 查询套件档案资讯
# dpkg -c pkgfile.deb 查询套件档案资讯
# dpkg -l softwarename (小写L,只列出简洁资讯) 显示指定套件是否安装
# dpkg -s softwarename (显示详细资讯) 显示指定套件是否安装
# dpkg -p softwarename (显示详细资讯) 显示指定套件是否安装
# dpkg -r softwarename (会留下套件设定档) 移除指定套件
# dpkg -P softwarename (完全移除) 移除指定套件
  1. apt-get常用命令:
# apt-cache search <package> 搜索软件包
# apt-cache show <package> 获取包的相关信息,如说明、大小、版本等
# apt-get install <package> 安装包
# apt-get install <package> --reinstall 重新安装包
# apt-get -f install 修复安装
# apt-get remove <package> 删除包
# apt-get remove <package> --purge 删除包,包括配置文件等
# apt-get update 更新源
# apt-get upgrade 更新已安装的包
# apt-get dist-upgrade 升级系统
# apt-cache depends <package> 了解使用该包依赖那些包
# apt-cache rdepends <package> 查看该包被哪些包依赖
# apt-get build-dep <package> 安装相关的编译环境
# apt-get source <package> 下载该包的源代码
# apt-get check 检查是否有损坏的依赖
# apt-get clean(autoclean) 删除系统暂存的deb(autoclean只会将比目前系统旧版的套件删除)
  1. tips

    Debian下可以使用alien处理RPM包,alien 可处理.deb、.rpm、.slp、.tgz 等档案格式, 进行转档或安装。在Debian下安装非Debian包时,可使用alien进行安装
# apt-get install alien 安装alien套件
# alien -i quota-3.12-7.i386.rpm 在Debian下安装RPM套件
# alien -d quota-3.12-7.i386.rpm 制作成deb包
# alien -r quota_3.12-6_i386.deb 制作成rpm包:

补充

mac下的包管理工具homebrew,安装命令:

$ sudo ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

常用命令:

$ brew install <package> 安装软件包

Linux包管理器的更多相关文章

  1. Linux 包管理器

    RPM: rpm(Red-Hat Package Manager) 为 Redhat 提出的包管理器, 用于在 Redhat 及其衍生版本中安装 rpm 格式的软件包 rpm 的优点: 1.简化了源码 ...

  2. linux 各种发行版及包管理器的关系

    linux 各种发行版及包管理器的关系 Linux发行版列表 基于Kpkg(Debian 系) Debian GNU / Linux 及其派生发行版使用deb软件包格式,并使用dpkg及其前端作为包管 ...

  3. Linux新手的最佳包管理器

    一个 Linux 新用户应该知道他或她的进步源自于对 Linux 发行版的使用,而 Linux 发行版有好几种,并以不同的方式管理软件包. 在 Linux开发 中,包管理器非常重要,知道如何使用多种包 ...

  4. 把玩Alpine linux(二):APK包管理器

    导读 Alpine Linux非常精简,开机内存占用也在二三十兆大,没有拆箱即用,就需要我们自己去做一些了解和配置 Alpine Linux的优劣 优势 Alpine Linux的Docker镜像特点 ...

  5. Arch Linux 独特的包管理器相关名词解释及用法对照

    https://wiki.archlinux.org/index.php/PacmanPacman包管理器是Arch Linux的主要特色之一.它结合了简单的二进制包格式和易于使用的构建系统.pacm ...

  6. 在linux中使用包管理器安装node.js

    网上文章中,在linux下安装node.js都是使用源码编译,其实node的github上已经提供了各个系统下使用各自的包管理器(package manager)安装node.js的方法. 1. 在U ...

  7. Linux系统-----包管理器的演变

    每个电脑设备都使用某种形式的软件来执行其预定任务.在软件开发的早期,对产品进行了严格的bug和其他缺陷测试.在过去的十多年里,软件通过互联网发布,目的是通过应用新版本的软件来修复任何错误.在某些情况下 ...

  8. Node.js包管理器Yarn的入门介绍与安装

    FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT. 就在昨天, Facebook 发布了新的 node.js 包管理器 Yarn 用以替代 npm .咱 ...

  9. 你需要知道的包管理器(Package Manager)

    最近我花了一点时间关注了在不同系统之中所用到的包管理器(Package Manager) .最开始的时候,我是在使用Linux操作系统时,对这种工具以及它背后的想法深深迷恋住了:这真是自由的软件世界. ...

随机推荐

  1. python net-snmp 的使用

    这一年一直在做一个综合管控平台的项目,用python写的,项目春节前可能就要进行实际部署了和测试,趁着这个空闲期,回顾一下项目中用到的一些技术,第一个就是SNMP协议. 项目结构主要是实现对ipran ...

  2. 在QLabel上同时显示文字和图片的方法

    有两种方法. 1.打开UI文件,在界面右键单击QLabel对象,选改变多信息文本 选择图片再确定,左侧问号就是图片. 2.直接在QLabel写富文本 <html><head/> ...

  3. SQL重复记录查询的几种方法

    http://www.jb51.net/article/34820.htm \ 1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 复制代码 代码如下: select * f ...

  4. Head First设计模式之组合模式

    一.定义 将对象组合成树形结构来表现"整体-部分"层次结构. 组合能让客户以一致的方法处理个别对象以及组合对象. 主要部分可以被一致对待问题. 在使用组合模式中需要注意一点也是组合 ...

  5. Python新式类与经典类的区别

    1.新式类与经典类 在Python 2及以前的版本中,由任意内置类型派生出的类(只要一个内置类型位于类树的某个位置),都属于“新式类”,都会获得所有“新式类”的特性:反之,即不由任意内置类型派生出的类 ...

  6. Micropython实例之TPYBoard来电显示功能演示

    一.TPYBoardV702介绍 TPYBoardV702是目前市面上唯一支持通信通信功能的MicroPython开发板:支持Python3.0及以上版本直接运行.支持GPS+北斗双模通信.GPRS通 ...

  7. 我的Python学习笔记(四):动态添加属性和方法

    一.动态语言与静态语言 1.1 动态语言 在运行时代码可以根据某些条件改变自身结构 可以在运行时引进新的函数.对象.甚至代码,可以删除已有的函数等其他结构上的变化 常见的动态语言:Object-C.C ...

  8. 【埃氏筛】洛谷P3383埃氏筛模板

    思路: 如果我们要筛出 [1, n] 内的所有素数,使用 [1, √n] 内的素数去筛就可以了 设bool型数组 a,a[i] 表示 i 是否被某个素数筛过 从 2 开始枚举每个数 i: 若 a[i] ...

  9. 【KMP模板】简单写个KMP~

    本来easy的KMP 却一直过不了洛谷的模板题... 仔细一看原来在输出next数组时打的回车而不是空格... 身败名裂... 话说有个sunday貌似一般状况下比KMP快呢...去看看2333 #i ...

  10. Java关于BufferedWriter.newline()换行的注意事项

    最近项目中需要导出文件,其实导出文件是一个挺简单的事情.但是却遇到了很奇怪的问题. 首先导出到文件需要用到 BufferedWriter.而换行则是通过 bw.newline() 方法,问题将出在 n ...