« 上一篇下一篇 »

apt包管理器使用简介,更好的管理这些要安装在机器上的软件包

   任何系统安装后自然都需要进行应用的安装、卸载、再安装的过程。在Linux系统中,无论使用Debian的还是Ubuntu、Linux Mint或其他基于Debian和Ubuntu的发行版都,现在需要用到apt命令。在apt出现之前,只有.tar.gz的打包文件,用户需要变异每一个他现在GNU协议Linux上运行的软件,这样很麻烦,所以用户希望系统可以提供一个办法来管理这些要安装在机器上的软件包。

“package”的概念随之出现,而后Debian率先推出了帮助用户实现快速、实用、高效的安装软件包的方法,APT(Advanced Packaging Tool)作为dpkg的前端诞生。从目前比较流行的Ubuntu16.04中可以看到,apt正在越来越受欢迎。 

  APT, 是 Advanced Package Tool 的缩写,是基于 Debian 的系统的默认包管理器。我们可以使用 APT 安装、更新、升级和删除应用程序。最近,我一直遇到一个奇怪的错误。每当我尝试更新我的 Ubuntu 16.04 时,我都会收到此错误 - “0% [Connecting to in.archive.ubuntu.com (2001:67c:1560:8001::14)]” ,同时更新流程会卡住很长时间。我的网络连接没问题,我可以 ping 通所有网站,包括 Ubuntu 官方网站。在搜索了一番谷歌后,我意识到 Ubuntu 镜像站点有时无法通过 IPv6 访问。在我强制将 APT 包管理器在更新系统时使用 IPv4 代替 IPv6 访问 Ubuntu 镜像站点后,此问题得以解决。如果你遇到过此错误,可以按照以下说明解决。

  apt命令提供了一种用APT与包管理交互的方法。可以说apt-get是APT重最受欢迎的工具。毕竟Debian系统有一个名为sources.list资源列表,apt-get能够从这个软件库中安装各种软件包。p.s:sources.list文件位于/etc/apt目录下。

如何安装:
接下来我们就一起看看如何安装应用apt。需要注意的是这里使用的是Ubuntu16.04,你也可以在任何其他基于Debian和Ubuntu的Linux发行版中应用

强制 APT 包管理器在 Ubuntu 16.04 中使用 IPv4
要在更新和升级 Ubuntu 16.04 LTS 系统时强制 APT 使用 IPv4 代替 IPv6,只需使用以下命令:

$ sudo apt-get -o Acquire::ForceIPv4=true update
$ sudo apt-get -o Acquire::ForceIPv4=true upgrade
瞧!这次更新很快就完成了。

你还可以使用以下命令在 /etc/apt/apt.conf.d/99force-ipv4 中添加以下行,以便将来对所有 apt-get 事务保持持久性:

$ echo 'Acquire::ForceIPv4 "true";' | sudo tee /etc/apt/apt.conf.d/99force-ipv4

如何使用:

  大多数开源软件、应用和工具在安装之后都会先执行“更新”操作。如果数据库没有自动升级,那么系统不会知道是不是有一个新的可替换package。所以在任何Linux系统中,更新现有的库都是首先要做的。
更新数据库需要超级用户权限,所以你需要运行“sudo”。

如果运行“sudo apt update”的命令行,会看到从服务器端传送回来的package信息。
运行这个命令一般会有三种不同的结果:Hit, Get 和 Ign
Hit:package版本与原来的版本没有任何改变。
Get:找到一个新的可替换版本。它将下载这个全新的版本信息(非版本本身),然后你会看到屏幕上的“获得(get)”键。
Ign:这个package被忽略。可能现有的package已经是最新的,或者在检索文件是出了一些差错,不过不用担心,这不算是一个错误。
sudo apt upgrade:升级安装package
在更新数据包之后,就可以升级已经安装的package了,而最近方便的方法就是升级所有能更新的软件包。可以输入这个命令sudo apt upgrade。你会接下来在屏幕上看到所有升级的package数量和状态。

当然,还有另一种直接升级所有package的方法:sudo apt full-upgrade。
第3页:sudo apt install:安装新的package
sudo apt install <package_name>:安装新的package
如果你已经知道了自己需要安装的package的名字,那么就可以直接执行命令sudo apt install <package_name>。当然,你只需要将<package_name>替换成你真正需要的名字就好,比如你想安装mplayer就可以输入命令:sudo apt install mplayer。

如果你不是十分确定你想要安装的package名字,那么你可以输入名字中的一部分,然后系统会给你提示和选项,给出所有符合你要求的安装包名字,然后你就可以准确安装了。

另外,补充几个常用的安装新package的命令。
sudo apt install <package_1> <package_2> <package_3>:该命令可以同时安装多个package。
sudo apt install <package_name> --no-upgrade:安装该package但是不升级。
sudo apt install <package_name> --only-upgrade:升级该package。
sudo apt install <package_name>=<version_number>:安装该package的固定版本。
sudo apt remove <package_name>:移除该package。
sudo apt purge <package_name>:彻底删除该package(包含配置文件)。
apt search <seach name>:寻找package
可能很多人并没有用过这个功能,但是如果你想要找一个特殊的lib,就需要用写个命令行了,它将帮你找到你要找的所有package。

第4页:apt show:查看package内容
apt show <package_name>:查看package内容
如果你在安装或是移除某个package之前需要查看他的具体信息,可以使用apt show<package_name>这个命令。

这个命令将显示有关给定package的相关信息,如其依赖性,安装状态和下载大小等信息。
sudo apt autoremove:自动移除package
很多时候我们会遇到各种各样的问题,比如空间不够,容量不足。这时候总希望删除一些没用的软件包,而这个命令会自动删除部分libs和package,为你的磁盘腾出空间。

表单展示系列
apt list --upgradeable:展示可升级表单。
apt list --installed:展示已安装表单。
apt list --all -versions:展示系统中所有能找到的package。

本文来自 QiuCaYu 的CSDN 博客 ,全文地址请点击:http s://blog.csdn.net/sinat_29330337/article/details/76019689?utm_source

总结:

如今apt已经成为一种很实用软件包工具,这篇文章为大家介绍了一些常用的apt的命令与概念,希望能帮助大家找到合适的命令,学会apt的运用,更加顺手的管理服务器。