Linux包管理器
按Linux系统分类
- Redhat系列:Redhat(本身就是Centos)、Centos、Fedora等,采用Dpkg包管理器
- 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 移除软件
- 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:
- 加快你的yum的速度.使用yum的扩展插件yum-fastestmirror,个人认为这个插件非常有效,速度真的是明显提高
- 软件组安装有时我们安装完系统,管理有一类软件没有安装,比如用于开发的开发包,我们可以用软件包来安装
列出所有的软件包
# 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 包
- 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 (完全移除) 移除指定套件
- 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只会将比目前系统旧版的套件删除)
- 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包管理器的更多相关文章
- Linux 包管理器
RPM: rpm(Red-Hat Package Manager) 为 Redhat 提出的包管理器, 用于在 Redhat 及其衍生版本中安装 rpm 格式的软件包 rpm 的优点: 1.简化了源码 ...
- linux 各种发行版及包管理器的关系
linux 各种发行版及包管理器的关系 Linux发行版列表 基于Kpkg(Debian 系) Debian GNU / Linux 及其派生发行版使用deb软件包格式,并使用dpkg及其前端作为包管 ...
- Linux新手的最佳包管理器
一个 Linux 新用户应该知道他或她的进步源自于对 Linux 发行版的使用,而 Linux 发行版有好几种,并以不同的方式管理软件包. 在 Linux开发 中,包管理器非常重要,知道如何使用多种包 ...
- 把玩Alpine linux(二):APK包管理器
导读 Alpine Linux非常精简,开机内存占用也在二三十兆大,没有拆箱即用,就需要我们自己去做一些了解和配置 Alpine Linux的优劣 优势 Alpine Linux的Docker镜像特点 ...
- Arch Linux 独特的包管理器相关名词解释及用法对照
https://wiki.archlinux.org/index.php/PacmanPacman包管理器是Arch Linux的主要特色之一.它结合了简单的二进制包格式和易于使用的构建系统.pacm ...
- 在linux中使用包管理器安装node.js
网上文章中,在linux下安装node.js都是使用源码编译,其实node的github上已经提供了各个系统下使用各自的包管理器(package manager)安装node.js的方法. 1. 在U ...
- Linux系统-----包管理器的演变
每个电脑设备都使用某种形式的软件来执行其预定任务.在软件开发的早期,对产品进行了严格的bug和其他缺陷测试.在过去的十多年里,软件通过互联网发布,目的是通过应用新版本的软件来修复任何错误.在某些情况下 ...
- Node.js包管理器Yarn的入门介绍与安装
FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT. 就在昨天, Facebook 发布了新的 node.js 包管理器 Yarn 用以替代 npm .咱 ...
- 你需要知道的包管理器(Package Manager)
最近我花了一点时间关注了在不同系统之中所用到的包管理器(Package Manager) .最开始的时候,我是在使用Linux操作系统时,对这种工具以及它背后的想法深深迷恋住了:这真是自由的软件世界. ...
随机推荐
- 如何减轻ajax定时触发对服务器造成的压力和带宽的压力?ajax-长轮训
AJAX长轮询的方法来解决频繁对后台的请求,进一步减小压力 在实现过程发现AJAX的多次请求会出现多线程并发的问题又使用线程同步来解决该问题 个人对ajax长轮询的一点愚见 ajax请示后台时,后台程 ...
- 阿里云的oss使用技巧
1初始化: 使用阿里云sdk包(php) 方法一:使用composer 加载sdk包 composer require aliyuncs/oss-sdk-php 或 "require&quo ...
- 树上操作[HAOI 2015]
树链剖分裸题: 树剖点这里:传送门 代码: #include<bits/stdc++.h> #define sight(c) ('0'<=c&&c<='9') ...
- IO流之字符流知识总结
字符流:读写字符的 顶级父类是Reader和Writer 操作流程 在Java中IO操作也是有相应步骤的,以文件操作为例,主要的操作流程如下: 使用File类打开一个文件 通过字节流或字符流的子类,指 ...
- mysql目录迁移 更改mysql的存储目录
元旦节刚过完回来,忙了一天,现在的时间剩余不是很充足,所以更新简短的文章一篇! 正文: 正常情况下mysql的存储目录都是在/var/lib/mysql/下的,那么怎么将存储位置改到/data_mys ...
- Python 学习笔记大纲
Python Basic 第一章:Python基础の快速认识基本语法 (点击进入博客)我的第一个HelloPython程序.如何实现用户输入.Python的自带电池(模块).变量.格式化.条件判断.循 ...
- @EnableAsync annotation metadata was not injected
[问题描述] @EnableAsync annotation metadata was not injected spring配置初始化时候报错 nested exception is java.la ...
- Android 中adb 命令(实用)
1. 用命令的方式打开关闭mtklog adb shell am broadcast -a com.mediatek.mtklogger.ADB_CMD -e cmd_name start/stop ...
- python函数,模块及eclipse使用
一.eclipse的使用 1.作用 (1)最好用的IDE (2)可调式debug (3)查看可执行过程 (4)可查看源代码 2.安装eclipse及配置 目录安装Pythonpython for ec ...
- 简易 (I/O)版本通讯录
#include <stdio.h> #include<assert.h> //#include<malloc.h> #include<string.h> ...