`
writeboard
  • 浏览: 535 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

apt-get 使用详解

阅读更多
转:http://blog.csdn.net/wyabc1986/article/details/6989532

[举例]

目前常用的

==========

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

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-这样多个命令合并了,装p1卸p2。


*卸载软件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-cdrom把cd中的软件添加到/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是一样的。


[其他]

问题:

如何查看已经安装的软件?

如何确定一个软件是否已经安装?
分享到:
评论

相关推荐

    Ubuntu Linux系统下apt-get命令详解 .txt

    Ubuntu Linux系统下apt-get命令详解 .txt

    apt-get命令的使用

    linux系统 , apt-get命令的使用详解。wozon

    Ubuntu下apt-get命令详解

    在Ubuntu下,apt-get近乎是最常用的shell命令之一了,因为他是Ubuntu通过新立得安装软件的常用工具命令,本文列举了常用的APT命令参数。

    Ubuntu Linux系统下Apt-get命令参数详解

    NULL 博文链接:https://yingxiong.iteye.com/blog/460307

    Ubuntu下apt-get/apt命令的介绍与使用

    本文主要给大家介绍了关于Ubuntu下apt-get/apt命令的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 命令详解: 用法:apt-get [选项] 命令   apt-get [选项] install|remove pkg1...

    Ubuntu apt-get指令autoclean,clean,autoremove的区别

    主要介绍了Ubuntu apt-get指令autoclean,clean,autoremove的区别的相关资料,需要的朋友可以参考下

    ubuntu下apt-get安装和彻底卸载mysql详解

    udo apt-get install mysql-server udo apt-get install mysql-client udo apt-get install php5-mysql(用于连接php和mysql) 查看mysql是否运行 aux | grep mysql 启动命令 /etc/init.d/mysql start 2.删除mysql ...

    [14本经典Android开发教程]-11-Android系统移植技术详解

    sudo apt-get install git-core sudo apt-get install gnupg sudo apt-get install sun-java5-jdk sudo apt-get install flex sudo apt-get install bison sudo apt-get install gperf sudo apt-get install libsdl...

    详解Ubuntu下安装mysql和简单操作

    sudo apt-get install mysql-server apt-get isntall mysql-client sudo apt-get install libmysqlclient-dev 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装...

    详解从 0 开始使用 Docker 快速搭建 Hadoop 集群环境

    Linux ...apt-get update 更新完成。 安装 Docker sudo apt-get install docker.io 当遇到输入是否继续时,输入「Y/y」继续。 安装完成 输入「docker」测试是否安装成功。 拉取镜像 镜像

    ubuntu10.04配置 nginx+php-fpm模式的详解

    ppa安装php-fpm安装工具包复制代码 代码如下:$ sudo apt-get install python-software-properties 添加ppa源复制代码 代码如下:$ sudo add-apt-repository ppa:yola/php5安装php5-fpm复制代码 代码如下:sudo apt-...

    结合 Nginx 将 DoNetCore 部署到 阿里云的安装配置方法

    sudo apt-get update sudp apt-get upgrade sudo apt-get autoremove sudo apt-get clean 安装并配置 Nginx sudo apt-get install nginx sudo service nginx start sudo gedit /etc/nginx/sites-a

    Ubuntu下安装opencv-python(详解)

    sudo apt-get install python3 安装成功后可以使用相应的名称进入相应的版本,会详细的显示版本信息。 pip3安装opencv-python 先把ubuntu 中 python版本默认设置为:python3 分别执行两行命令即可 echo alias python...

    Ubuntu系统下安装Reviewboard详解

    sudo apt-get update /* sudo第一次或超时后使用需要密码,就是登录用户的密码 */ 安装open-ssh /* 习惯用ssh的安装这个,不用的直接忽略 */ sudo apt-get install openssh-server 安装vim /* 习惯用vim的安装这个...

    Ubuntu16.04安装Jenkins的方法图文详解

    sudo apt-get remove jenkins sudo apt-get purge jenkins sudo apt-get purge --auto-remove jenkins 2.通过如下命令完成安装 wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key

    手动安装python3.6的操作过程详解

    sudo apt-get update 然后安装一些前置的依赖 sudo apt-get install -y software-properties-common 添加ppa源 sudo add-apt-repository -y ppa:fkrull/deadsnakes 更新源(如果此前添加了其他源,请用 sudo add-...

    利用Python破解验证码实例详解

    一、前言 本实验将通过一个简单的例子来讲解破解验证码的原理,...$ sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev \ libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk $ sudo

    Ubuntu 16.04下安装PHP 7过程详解

    由于全部编译太过于繁琐,而且很多依赖会有问题,所以我们选择另外一种方案,能使用apt-get安装都使用apt-get安装。不能使用apt-get才自己编译,这样可以节省大量的时间。因为有的依赖真的是很头疼。 由于在Ubuntu...

    在Ubuntu系统上安装Nginx服务器的简单方法

    sudo apt-get install nginx  如果你安装了 Apache ,并且此时 Apache 在运行,那么请先修改一下配置文件(没有的同学直接跳过): #打开配置文件 sudo vim /etc/nginx/sites-available/default  然后按以下两...

Global site tag (gtag.js) - Google Analytics