软件源与本地软件包安装与卸载-Ubuntu下apt-get与dpkg命令用法

Ubuntu虽说是也是桌面操作系统,但是毕竟还是linux能够使用基本的软件包管理软件可以让你得心应手,不至于想找个软件找不到,想删个软件删不了。

       Ubuntu 是建立在 Debian 基础上的 Linux 发行版本,保留了 Debian 的优秀特性,比如 Dpkg 和 APT 机制,对于原来的 Debian 用户来说,可以无障碍的迁移到 Ubuntu,而对于 Ubuntu 新手,熟悉 APT 和 Dpgk 是很重要的一步。
      如果某个包裹被设置了 hold (停止标志,就会被搁在一边,即不会被升级):
------------apt-get----------安装软件源的软件--------------------------------
如果你想安装当天的任何软件,至少每天运行一次,而且每次修改了 /etc/apt/sources.list 后,必须执行:
Ubuntop:~$ sudo apt-get update--------------更新包列表
Ubuntop:~$ sudo apt-get upgrade [-u]-------------更新软件包
升级来自 Ubuntu/Debian 镜像的包裹列表,
升 级所有已经安装的包裹为最新可用版本,不会安装新的或移除老的包裹;如果一个包改变了倚赖关系而需要安装一个新的包裹,那么它将不会被升级,而是标志为 hold。 apt-get update 不会升级被标志为 hold 的包裹 (这个也就是 hold 的意思)。请看下文如何手动设置包裹为 hold。建议同时使用 '-u’ 选项,因为这样你就能看到哪些包裹将会被升级。
-------------------------------------------------------------------------------------
        先介绍下apt-get命令:
sudo apt-get install XXXXX ---安装软件源软件
        该命令可以从所有的软件源中搜索并安装指定的软件包,要数最常用的命令了,因为ubuntu软件中心提供的软件包可能没有你想安装的,这个命令就是必须的了。 
sudo apt-get remove XXXXX --purge  ---一移除软件园软件(--purge删除配置文件)
—purge 指明这个包裹应该被完全清除(包括配置文件),更多信息请看 dpkg -P。
        这个命令很容易看出来是执行删除卸载指定的软件包,后边的--purge参数不是必须的,但是如果不添加这个参数执行删除软件包的操作时,并不会删除该软件包的配置文件,如果想一并删除配置文件则必须添加--purge参数。
sudo apt-get update  -----更新软件源所包含软件包列表---增加源的时候使用
        该命令可以更新软件源中的软件包列表,比如说你新增加了一个软件源但是没有执行这个操作当你想安装该源下的软件包时依然会提示找不到该软件包,这时只要执行了这个命令就可以了。
sudo apt-get upgrade --更新所有已装软件
        这个命令与图形界面的更新管理器是一样的功能,执行该命令会检查所有已安装的软件包是否有新版本,如果有会提示是否去执行更新。
sudo apt-get autoremove --清除软件包--依赖的所有的包
        这个命令非常有用,是用来清除那些没用的软件包的,什么是没用的软件包呢,比如你安装A软件包,安装时系统检测到A软件包依赖于B软件包,然后A和B会同 时被安装,当你卸载A软件包时却并不会自动把B软件包一并卸载,这时就可以执行autoremov命令它会自动检查依赖关系把那些没用的软件包卸载了。
sudo apt-get autoclean  ---清理残留文件
        这个命令作用与autoremov类似,不过它是清除那些已经被删除的软件包残留的一些文件的。
----------------------------------------------------------------------------------------------------------
1、下载并安装所有包裹,同时包括升级操作,如果某个包裹被设置了 hold (停止标志,就会被搁在一边,即不会被升级):

Ubuntop:~$ sudo apt-get install

2、卸载指定包裹以及任何倚赖这个包裹的其它包裹:

Ubuntop:~$ sudo apt-get remove [--purge]
—purge 指明这个包裹应该被完全清除(包括配置文件),更多信息请看 dpkg -P。

3、升级来自 Ubuntu/Debian 镜像的包裹列表,如果你想安装当天的任何软件,至少每天运行一次,而且每次修改了 /etc/apt/sources.list 后,必须执行:

Ubuntop:~$ sudo apt-get updateUbuntop:~$ sudo apt-get upgrade [-u]Ubuntop:~$ sudo apt-get dist-upgrade [-u]
升 级所有已经安装的包裹为最新可用版本,不会安装新的或移除老的包裹;如果一个包改变了倚赖关系而需要安装一个新的包裹,那么它将不会被升级,而是标志为 hold。 apt-get update 不会升级被标志为 hold 的包裹 (这个也就是 hold 的意思)。请看下文如何手动设置包裹为 hold。建议同时使用 '-u’ 选项,因为这样你就能看到哪些包裹将会被升级。
dist-upgrade 和 upgrade 类似,除了 dist-upgrade 会安装和卸载包裹来满足倚赖关系,因此具有一定的危险性。

4、根据关键字搜索包裹:

Ubuntop:~$ sudo apt-cache search keywords

5、显示包裹的完整描述:

Ubuntop:~$ sudo apt-cache show package_name

6、显示包裹细节信息,包括和其它包裹的关系:

Ubuntop:~$ sudo apt-cache showpkg package_name
APT 有几个图形前端:dselect,console-apt,aptitude,gnome-apt(其中一些在使用前得先安装)。其中 dselect 无疑是最强大的,也是最古老,最难驾驭,具体可以参考 Debian 手册。
==---------------------------------------------------------------------------------------------------------------------

--------------------------------------dpkg--------安装本地软件包deb包----------------------------------------

如果你手动下载了一个 .deb 包,通过以下命令安装和管理 Debian 包裹文件;
---------------------------------------------------------------------------------------------------------
“dpkg ”是“Debian Package ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。  
   下面介绍dpkg命令的常用方法 :
sudo dpkg -i XXXXX --安装deb包,后边是文件的路径--软件中心太慢了 -
      这个命令非常常用,是用来安装你自己下载的软件包的,当然你可以说你以前不知道这个命令双击下载的软件包就可以使用ubuntu软件中心安装了,但是如果 你这样安装过你就会发现安装的速度极慢,光是ubuntu软件中心打开就得好一会儿,试过这个命令你就知道什么叫高效率了。
sudo dpkg -l | grep XXXXX --列出所有已安装文件--|grep 查询是否安装某软件包
例如:~$ sudo dpkg -l | grep  XX(XX为你知道的一部份软件名)
grep (global search regular expression_r(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本。
      单独使用sudo pdkg -l 命令可以列出系统上安装的所有软件,使用 | 加grep命令可以用来查询是否安装了某个软件包,grep支持模糊查询也就是说即使只记得软件包名字的几个字母也可以查询的,另外它还支持正则表达式, 如果想了接正则表达式和grep用法可以查看本人的另外一篇博客,点击这里查看。
sudo dpkg -L XXXXX --某软件包安装后的所有文件的安装位置
        这个命令可以用来显示系统上已安装的某个软件包生成的所有文件的位置,也就是看看这个软件包就安装哪些文件。
sudo dpkg -c XXXXX --未安装的某软件包的所有文件的安装位置
       这个命令与sudo dpkg -L 类似,也是查看软件包生成文件的安装位置,但它是查看未安装的软件包的。

--------------------------------------------------------------------------------------------------------
7.如果你手动下载了一个 .deb 包,通过以下命令安装 Debian 包裹文件:

Ubuntop:~$ sudo dpkg -i debfilename

8、列出包裹包含的内容:

Ubuntop:~$ sudo dpkg -c debfilename

9、从 .deb 文件中提取包裹信息:

Ubuntop:~$ sudo dpkg -I debfilename

10、卸载一个已安装的包裹:

Ubuntop:~$ sudo dpkg -r packagename

11、完全清除一个已安装的包裹。和 remove 不同的是,remove 只是删掉数据和可执行文件,purge 另外还删除所有的配制文件:

Ubuntop:~$ sudo dpkg -P packagename

12、列出包裹安装的所有文件清单。(同时请看 dpkg -c 来检查一个 .deb 文件的内容):

Ubuntop:~$ sudo dpkg -L packagename

13、显示已安装包裹的信息:

Ubuntop:~$ sudo dpkg -s

14、重新配制一个已经安装的包裹,如果它使用的是 debconf (debconf 为包裹安装提供了一个统一的配制界面),你能够重新配制 debconf 它本身:

Ubuntop:~$ sudo dpkg-reconfigure packagename

15、获取软件包裹状态:

Ubuntop:~$ sudo dpkg --get-selections | grep keyname

16、设置软件包裹状态,比如 HOLD 某个包裹不允许升级:

Ubuntop:~$ echo "packagename hold" | sudo dpkg --set-selections

17、从 HOLD 状态恢复软件包裹标志位:

Ubuntop:~$ echo "packagename install" | sudo dpkg --set-selections

18、修正依赖关系损坏的包裹:

Ubuntop:~$ sudo apt-get -f install
更多相关帮助可以参考 Debian 文档,或者包含中文版的 Debian 参考手册。

==================================================================

Ubuntu安装的很多应用程序有自己的PPA,易于升级,这给应用的使用带来了很大的便利。可能我们同学对PPA并不很了解。下面给大家介绍下,希望给大家以后的软件安装带来便利。

PPA,也就是“Personal Package Archives(个人软件包档案)”是Ubuntu Launchpad网站提供的一项服务,允许个人用户上传软件源代码,通过Launchpad进行编译并发布为2进制软件包,作为apt/新立得源供其他用户下载和更新。在Launchpad网站上的每一个用户和团队都可以拥有一个或多个PPA。【百科】

 

有些PPA是非官方的,则可能存在损坏的危险。最好使用官方PPA。

#1 添加PPA
sudo add-apt-repository ppa_name

比如,Audacious 2.4.4 发布。我们来使用上述命令安装最新版Audacious 2.4.4

添加Audacious PPA

sudo add-apt-repository ppa:nilarimogard/webupd8

这是设置PPA,获取密钥验证软件是否损坏

#2

接下来就是更新,获取软件的最新列表

sudo apt-get update

想要升级软件包仓库,则执行命令

sudo apt-get upgrade
#3

最后就是安装软件啦

sudo apt-get install package_name

如上述例子,则安装命令为

sudo apt-get install audacious audacious-plugins

综上,这样,当我们有了一个软件的PPA后,就可以轻松的添加PPA,安装该软件啦:

sudo add-apt-repository   PPA名称
sudo apt-get update
sudo apt-get install  软件名称
【特殊案例】

当然,在有的时候,我们会遇到下面的内容,比如

deb http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main

这时,我们打开终端,输入命令:

sudo gedit /etc/apt/sources.list

将上述内容复制到文本文件的末尾,保存文件,退出即可。

然后,寻找“Signing key”(一般在上述内容的下方)。你会看到诸如下面文字,

1024R/72D340A3 (What is this?)

复制斜杠后面的内容,如 72D340A3

接下来,添加密钥到系统,并加以验证。比如,

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 72D340A3

这样就将PPA密钥添加到系统中来了。

然后,同样执行

sudo apt-get update
sudo apt-get install 软件包名称

结合本身经验写作,同时参考了Ubuntuwiki。如果有什么问题的话,各位同学可以留言指出。我会核对后进行修改,更好的给同学们建议。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值