linux软件包管理工具

1

最早的软件包 deb

deb软件包,debian 首先提出软件包的概念,他的管理机制是将二进制文件、配置文档、man、info等帮助文档合并打包在文件中。

2

RPM redhat package manager

rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。

3

源码包

使用tar程序归档文件进行打包,gzip、bunzip2进行压缩的

源码安装有三个步骤:

1、执行./configure 执行文件

2、用make命令配置生成makefile文件

3、用make install安装

不同的软件有不同的安装方法,看下readme和install.txt之类的文件就行了。

4

软件虚拟包

虚拟软件包 是ubuntu中一个独特的概念,它是一个统称,指的是一组相近功能软件包的其中一个。

exim、exim4这样的包都是右键传输代理的功能,他们可以组成,mail-transport-agent (邮件传输代理)的虚拟包。

如果你同时安装了同一个虚拟软件包的多个软件包,你要选择一下首选的打开方式。

这个其实很好理解,在windows中,我们的test.py、hack.php、jspspy.jsp都是可以用文本文档打开的。但是我们要选择一个默认的打开方式。

5

字符界面软件包管理工具

1

dpkg

var/lib/dbkg

-i:安装软件包;

-r:删除软件包;

-P:删除软件包的同时删除其配置文件;

-L:显示于软件包关联的文件;

-l:显示已安装软件包列表;

--unpack:解开软件包;

-c:显示软件包内文件列表;

--confiugre:配置软件包。

2

apt-get 软件包管理工具

以一组apt开头的命令

使用apt-get命令的第一步就是引入必需的软件库,Debian的软件库也就是所有Debian软件包的集合,它们存在互联网上的一些公共站点上。把它们的地址加入,apt-get就能搜索到我们想要的软件。/etc/apt/sources.list是存放这些地址列表的配置文件,其格式如下: deb [web或ftp地址] [发行版名字] [main/contrib/non-free]

关于一些源的话:可以看这里,http://www.linuxidc.com/Linux/2017-01/139458.htm

我还是喜欢用阿里云的源,官方的源慢...阿里云如果被屏蔽了,比如你做了扫描之类的事情,那么就用edu。

apt-get update

在修改/etc/apt/sources.list或者/etc/apt/preferences之后运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的。

更新所有已安装的软件包: apt-get upgrade

很多朋友一直不明白这两个的区别,update和upgrade怎么看都是更新,但是update是更新列表,upgrade是更新本机已安装的软件。

还有一个命令是apt-get dist-upgrade。这个命令会将系统升级到新版本。

apt-cache search packagename 搜索包

apt-cache show packagename 获取包的相关信息,如说明、大小、版本等

安装一个新软件包: apt-get install packagename

如果出现如下的错误:

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

那么则是需要用apt-get -f install 修复安装,”-f = –fix-missing”。因为可能缺少依赖库。

如果所使用的软件出问题了,那么可以使用apt-get install packages --reinstall

卸载一个已安装的软件包(保留配置文件): apt-get remove packagename

卸载一个已安装的软件包(删除配置文件): apt-get –purge remove packagename

apt-get 软件包管理工具会apt-get 软件包管理工具把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件: apt-get autoclean apt

这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的: apt-get clean

定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,您可以释放大量的磁盘空间。如果您的需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。大多数情况下您不会再用到这些.debs文件,因此如果您为磁盘空间不足 而感到焦头烂额,这个办法也许值得一试: apt-get autoclean

3

yum命令

Yum(全称为 Yellow dog Updater, Modified)在centos和RedHat最为常用。基于RPM包管理

安装软件(以foo-x.x.x.rpm为例):yum install foo-x.x.x.rpm

删除软件:yum remove foo-x.x.x.rpm或者yum erase foo-x.x.x.rpm

升级软件:yum upgrade foo或者yum update foo

查询信息:yum info foo

搜索软件(以包含foo字段为例):yum search foo

显示软件包依赖关系:yum deplist foo

原文发布于微信公众号 - 晨星先生(MoXuanIT)

原文发表时间:2017-12-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏容器化

一个典型的kubernetes工作流程 - kubernetes

2432
来自专栏编程坑太多

Maven学习笔记四(坐标和依赖)

1344
来自专栏北京马哥教育

Python之包管理工具快速入门

学Python最简单的方法是什么?推荐阅读:30万年薪Python开发工程师成长魔法 在Python环境中已经有很多成熟的包,可以通过安装这些包来扩展我们的程序...

2885
来自专栏杨建荣的学习笔记

Linux命令ping,nc的学习(r10笔记第20天)

今天看了下《Linux大棚命令百篇》网络和系统篇,发现了几个很不错的命令,我是看着目录然后根据自己的需要选了3个命令,没想到3个命令都让人眼前一亮,刷新了我原本...

3986
来自专栏北京马哥教育

这些git技能够你用一年了

用git有一年了,下面是我这一年来的git使用总结,覆盖了日常使用中绝大多数的场景。嗯,至少是够用一年了,整理出来分享给大家,不明白的地方可以回复交流。 ---...

2877
来自专栏梦里茶室

【Chromium中文文档】OS X 沙箱设计

背景 沙箱将进程视为一种恶劣的环境,因为进程任何时候都可能被一个恶意攻击者借由缓冲区溢出或者其他这样的攻击方式所影响。一旦进程被影响,我们的目标就变成了,让这个...

2210
来自专栏用户2442861的专栏

高性能服务器程序框架

http://blog.csdn.net/zs634134578/article/details/19806429

4742
来自专栏小狼的世界

利用Apache ab以及GNUPlot来进行Web测试

最近写了几个测试脚本,希望要观察使用PUT方式上传文件和使用POST方式上传文件,两者效率的差别。

892
来自专栏高性能服务器开发

(一)主线程与工作线程的分工

服务器端为了能流畅处理多个客户端链接,一般在某个线程A里面accept新的客户端连接并生成新连接的socket fd,然后将这些新连接的socketfd给另外开...

3459
来自专栏Java技术分享

关于RBAC(Role-Base Access Control)的理解

有两种正在实践中使用的RBAC访问控制方式:隐式(模糊)的方式和显示(明确)的方式。

2308

扫码关注云+社区