apt-get 使用详解

[举例]

目前常用的

==========

*更新本机中的数据库缓存:

sudo apt-get update


*查找包含部分关键字的软件包:

sudo apt-cache search <你要查找的name>


*安装指定的软件:

sudo apt-get install <你要安装的软件包>


*下载软件包源代码(如果有的话):

apt-get source <你要下载的源代码包名>



详细的资料

=========

http://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html

apt-get:


安装和卸载------

*更新本机中的数据库缓存:

sudo apt-get update

最好定期更新一下使你自己机器上面的数据和服务器(/etc/apt/sources.list列出)上面的信息保持一致,在安装软件之前可以运行一下这个命令保证成功性。


*安装软件:

#apt-get install packagename

这里将安装你需要的在sources.lists中的最新的软件包,如果有其他依赖则自动安装相应的依赖软件包。packagename可以是多个软件包。

一些有用的选项:

-h  This help text.

-d  Download only - do NOT install or unpack archives

-f  Attempt to continue if the integrity check fails

-s  No-act. Perform ordering simulation

-y  Assume Yes to all queries and do not prompt

-u  Show a list of upgraded packages as well


*卸载软件(install)

#apt-get install packagename-

在需要卸载的包后面加上一个'-'(我没有实验过),当然可以apt-get install p1 p2-这样多个命令合并了,p1p2


*卸载软件2

#apt-get remove packagename

这会卸载相应的软件,同时也会卸载依赖的部分,没办法指定不卸载依赖的。但是软件的配置文件还是会留在系统中。


*完全卸载软件包括删除配置:

#apt-get --purge remove packagename

这样配置文件也会被删除。


*安装软件2(用remove:

#apt-get remove packagename+

这个和用install来卸载软件的意义类似,在包名称后面添加一个+,表示安装。


*修复或者只安装最新版本:

#apt-get --reinstall install packagename

这里,如果你的软件包被破坏了,或者你想要安装一个最新的软件,运行这个。


升级软件包------

*升级软件包1

#apt-get -u upgrade

这里加上-u选项列出将要升级的软件,可能会提示有些软件不会升级,因为可能会破坏依赖关系,更好的方法是利用apt-get dist-upgrade

你可以通过cd或者添加源地址来更新,如果你想从cd来升级,首先运行apt-cdromcd中的软件添加到/etc/apt/sources源中,然后运行apt-get dist-upgrade来升级,但是因为apt-get总是使用最新版本,如果cd中的不是最新的版本,那么也不会用到cd


*升级软件包2

#apt-get -u dist-upgrade

这样安装的软件前面apt-get -u upgrade安不了的也会安装了,但个别的仍然不能安装,例如:升级会导致需要卸载一些包,卸载这些包会导致另外的软件不能用,所以就不升级了。


*升级软件包3

#apt-get -u install packagename

假设前面升级的时候packagename无法升级,那么这个命令会升级packagename如果需要卸载默写模块而卸载这些模块导致一些软件无法使用,那么干脆把这些软件都卸载了,然后升级,这个命令会导致packagename最终升级了。


清理没用的包文件------

apt-get 安装软件包的时候,apt会从/etc/apt/sources.list里面将相应的软件包恢复出来,把它们存放在一个本地的文档库中(/var/cache/apt/archives/)然后才开始安装,随着时间的增长,这将不断地消耗硬盘的空间。


*清理所有的缓存文件:

#apt-get clean

这会清理所/var/cache/apt/archives/ /var/cache/apt/archives/partial/中没有被锁定的文件。当然你再次安装软件的时候,这个软件又被恢复到本地文档库中了。


*仅仅清理旧的缓存文件:

#apt-get autoclean

这会清理旧版本的/var/cache/apt/archives/ /var/cache/apt/archives/partial/中的文件。旧版本是指已经有更新的版本的软件了,再下载的话应下载最新的而不是这个旧版本的了。根据apt-show-versions -p可以知道哪些是旧的。


*安装指定版本的软件包:

# apt-get install package=version


查找信息--------


*查找一个含有packagename字符串的包:

#apt-cache search packagename

这样将输出所包含packagename字符串的包。


*显示软件包的详细信息:

# apt-cache show stella

这包含了软件包许多的信息,例如如果你已经安装了这个软件包,信息里面也会显示。


*显示软件包的大致信息:

apt-cache showpkg packagename

这会显示大致的信息。


*查看那些包可以升级的信息:

$ apt-show-versions -u

这个apt-show-versions工具需要安装一下的。


*查看当前特定软件版本:

apt-show-versions -p packagename


*检查packagename依赖的包:

#apt-cache depends packagename


工作相关--------


*安装编译源代码需要的库()

# apt-get build-dep packagename

所的源代码包一个'Build-Depends'域,指明了从源代码编译这个包需要安装的软件。上面的命令可以下载这些包,其中'packagename'是包名。



*查看编译一个包需要哪些其他的库(包):

#apt-cache show packagename

如果你只是想要检查编译一个包需要哪些其他的包,那么可以利用上面的命令,其中'packagename'是包名。



*下载包packagename的源代码:

$ apt-get source packagename

这将在当前目录下载个文件:*.orig.tar.gz,*.dsc,*.diff.gz。如果这个包是debian的,那么最后一个文件没有,并且第一个文件名里面不包括"orig"字符串。

.dsc文件被dpkg-source使用,把源代码包解压到目录 packagename-version.每一个下载的源代码包里面都有一个debian/目录,这个目录包含了用于创建.deb包的文件。



*下载的时候自动把源代码包编译:

$ apt-get -b source packagename

可能是编译成.deb包,我没有试过。


*根据下载的源代码创建deb:

$ dpkg-buildpackage -rfakeroot -uc -b

如果你决定在下载的时候不创建deb包,你可以以后通过在下载的包之后创建的目录里面运行这个命令来创建。


*直接利用包管理器安装包:

# dpkg -i file.deb

需要直接使用包管理器,运行这个命令来安装包。


-------dpkg查找


*已知软件包中有一个文件,根据文件查找软件包:

# dpkg -S stdio.h

输入之后,输出如下:

libc6-dev: /usr/include/stdio.h

libc6-dev: /usr/include/bits/stdio.h

perl: /usr/lib/perl/5.6.0/CORE/nostdio.h

这在知道包中某些文件的时候,来根据文件查找软件包这种情况下非常用。


*查找安装在你的机器上面的软件包:

dpkg -l


*自动安装缺失的软件:

# auto-apt run command

这里,command是你要运行的命令。例如 auto-apt run ./configure .当缺失依赖软件的时候,它会询问你安装,方便了编译。安装之后会继续运行。auto-apt需要保持一个最新的数据库,利用这个命令进行更新:auto-apt update, auto-apt updatedb and auto-apt update-local


--------apt-get查找


*利用apt-file根据文件名查找相应的软件包:

$ apt-file search filename

如果你只知道程序名字filename,那么你可以运行这个命令,它的工作方式和 dpkg -S差不多,就是根据某个软件包里可能包含的文件来查找这个软件包的名字。另外,它也会显示包含这个文件的没有安装的软件包。当你编译的时候,提示缺了什么头文件的时候,利用这个很方便地确定需要装哪些软件包(当然利用audo-apt更方便).


*列出一个软件包中包含的文件:

$apt-file list packagename

这里,apt-file是根据一个数据库来读取信息的,所以需要保持数据库是最新的。


*更新apt-file的数据库:

# apt-file update

默认情况下,apt-file的数据库和auto-apt是一样的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/383484.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Buildroot用户指南

第一章 关于Buildroot Buildroot是一个包含Makefile和修补程序【patch】的集合&#xff0c;这个集合可以使你很容易的为你的目标构建交叉工具链【cross-compilationtoolchain】&#xff0c;根文件系统【root filesystem】以及Linux内核映像【kernelimage】。Buildroot可…

【jenkins】jenkins按分支build和email

jenkins按分支build git上传分支到远程jenkins打开参数设置更改SCM pipeline代码&#xff0c;加入branch读取项 build完发送email 1.安装插件email extension templates 2.开通发件邮箱smtp服务&#xff0c;配置发件邮箱jenkins&#xff0c;发送测试邮件 3. 项目根目录添加em…

【c】‘声明’和malloc不要重复开辟空间

声明&#xff1a;在内存里开辟一块连续空间&#xff0c;属于栈。 malloc&#xff1a;在内存里开辟一块不连续空间&#xff0c;属于堆。 //linkedlist.h文件 typedef struct Linkedlist {int data;struct Linkedlist* next&#xff1b; }lnode;//linkedlist.c 比如里边已经定义…

Buildroot文章翻译

OpenWRT文章翻译之&#xff08;一&#xff09;----OpenWRT Buildroot简介 原文地址&#xff1a;http://wiki.openwrt.org/about/toolchain Buildroot简介 话说OpenWRT Buildroot 之前&#xff0c;先说一下Buildroot是什么东西吧。Buildroot实际上是一个编译的脚本&#xff0c…

Buildroot简介

Buildroot的用法和文档由Thomas Petazzoni提供&#xff0c;文稿由Karsten Kruse、Ned Ludd、Martin Herren等整理。 最后修改时间&#xff1a;2007-09-19 02:08:10 -0700 (Wed, 19 Sep 2007) l 关于Buildroot l 获取Buildroot l 使用Buildroot l 定制目标文…

【kali】文件尺寸不符,您使用的镜像正在同步中

换源时候报错&#xff1a; vim /etc/apt/sources.list 进去后刚开始添加的阿里源 deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib执行后报错 文件尺寸不符&#xff0c…

【kali】kali环境下安装dvwa

STEP1&#xff1a;从github下载dvwa git clone https://github.com/ethicalhack3r/DVWA Q&#xff1a;我要自己安装git吗&#xff1f; A&#xff1a;kali不用啦&#xff0c;一般都自带有&#xff0c;但是普通的ubuntu和debian上是没有的哦。 Q&#xff1a;可以换个github网址…

Linux下的C编程实战之文件系统编程

在Linux平台下对文件编程可以使用两类函数&#xff1a;&#xff08;1&#xff09;Linux操作系统文件API&#xff1b;&#xff08;2&#xff09;C语言I/O库函数。前者依赖于Linux系统调用&#xff0c;后者实际上与操作系统是独立的&#xff0c;因为在任何操作系统下&#xff0c;…

【kali】kali设置burpsuite抓包dvwa

kali自带burpsuite 配置代理 burpsuite是通过代理来抓包dvwa的 burpsuite&#xff1a;proxy—> options 里边监听的应该是127.0.0.1:8080 &#xff08;端口ip如果撞车了都可以自己改&#xff09; 火狐&#xff1a; preferences–>最下边的network settings点击settings —…

fopen函数简介

函数简介 函数功能&#xff1a;打开一个文件 函数原型&#xff1a;FILE * fopen(const char * path,const char * mode); 相关函数&#xff1a;open&#xff0c;fclose&#xff0c;fopen_s[1]&#xff0c;_wfopen 所需库&#xff1a;<stdio.h> 返回值&#xff1a;文件顺利…

【kali】kali换了root权限后无法打开firefox浏览器

从普通权限换成root权限后发现火狐进不去鸟&#xff01;&#xff01; 终端报错&#xff1a; Running firefox as root in a regular user’s sessin is not supported.($HOME is /home/miehahaha which is owned by uid 1000) 分析&#xff1a; 是的&#xff0c;原来普通权限m…

【win10】局域网内两台win10共享文件夹

https://jingyan.baidu.com/article/93f9803f3e9788e0e46f55c8.html

CentOS 7关闭firewalld启用iptables

在CentOS7中&#xff0c;有很多CentOS 6中的常用服务发生了变化。 其中iptables是其中比较大的一个。防火墙iptables被firewalld取代。 本文将介绍&#xff0c;如果采用systemctl关闭firewalld&#xff0c;开启iptables。 1.关闭firewalld [roothwcentos70-01 system]# systemc…

wpa_supplicant wifi密码错误检测

system("/usr/sbin/wpa_supplicant -Dnl80211 -iwlan0 -f /tmp/wpa_log -c/tmp/wpa_supplicant.conf -d -t -B &"); 在/tmp/wpa_log中查看是否有如下的字符串&#xff1a; 1. 针对WPA&#xff0f;WPA2加密方式 //1473218403.305655: wlan0: WPA: 4-Way Handsh…

CentOS 7 安装nginx

1.安装pcre pcre-devel yum install pcre pcre-devel -y rpm -qa pcre pcre-devel 2.安装openssl-devel yum install -y openssl-devel rpm -qa openssl-devel openssl 3.下载nginx cd /home/testuser/mkdir toolscd tools/wget -q http://nginx.org/download/nginx-1.9.9.…

MPEG4与.mp4

流媒体应用中TS和MP4格式分析应该是封包格式。不能简单理解成MPEG4的简称。要详细解释这个问题&#xff0c;需要提一下MPEG4和.mp4在概念上的区别。 一般来说&#xff0c;仅提“MPEG4”&#xff0c;是指一种视频压缩算法。可以把原始画面通过数学运算变换成一组二进制数据&…

MP4文件格式的解析,以及MP4文件的分割算法

mp4应该算是一种比较复杂的媒体格式了&#xff0c;起源于QuickTime。以前研究的时候就花了一番的功夫&#xff0c;尤其是如何把它完美的融入到视频点播应用中&#xff0c;更是费尽了心思&#xff0c;主要问题是处理mp4文件庞大的“媒体头”。当然&#xff0c;流媒体点播也可以采…

MP4文件格式详解

一、基本概念 1.mp4概述 MP4文件中的所有数据都装在box&#xff08;QuickTime中为atom&#xff09;中&#xff0c;也就是说MP4文件由若干个box组成&#xff0c;每个box有类型和长度&#xff0c;可以将box理解为一个数据对象块。box中可以包含另一个box&#xff0c;这种box称为c…

H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流

SkySeraph Apr 1st 2012 Email&#xff1a;skyseraph00163.com 一、MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二、MP4封装格式核心概念 1 MP4封装格式对应标准为 ISO/IEC 14496-12&#xff08;信息技术 视听对象编码的第12部分: ISO 基本媒体文件格式/Info…

AAC音频格式分析

关于AAC音频格式基本情况&#xff0c;可参考维基百科http://en.wikipedia.org/wiki/Advanced_Audio_Coding AAC音频格式分析 AAC音频格式有ADIF和ADTS&#xff1a; ADIF&#xff1a;Audio Data Interchange Format 音频数据交换格式。这种格式的特征是可以确定的找到这个音频数…