软件安装包管理器在Linux上的工作原理

mos86

软件安装包管理器在Linux上的工作原理

在Linux上安装软件涉及软件包管理器和软件存储库,而不是下载并运行。exe文件从Windows上的网站。如果你刚开始使用Linux,这似乎是一个戏剧性的文化转变。

您可以在Linux上自行编译和安装所有内容,包管理器旨在为您做所有的工作。使用软件包管理器使安装和更新软件比在Windows上更容易。

Linux vs.视窗

有各种各样的Linux发行版和各种包管理器。Linux是由开源软件构建的,这意味着每个Linux发行版都会编译自己的软件及其所需的库版本和编译选项。编译Linux应用程序通常不会在每个发行版上运行 - 即使可以,安装也会受到竞争包格式的阻碍。如果您找到一个Linux应用程序的网站,您可能会看到不同的包格式和Linux发行版的各种下载链接,假设应用程序的网站根本没有提供预编译的版本。应用程序可能会告诉您下载源代码并自行编译。

软件安装包管理器在Linux上的工作原理

软件仓库

Linux用户通常不会像Windows用户那样从应用程序的网站下载和安装应用程序。相反,每个Linux发行版都会托管自己的软件仓库。这些存储库包含为每个Linux发行版和版本专门编译的软件包。例如,如果你使用Ubuntu 12.04,您使用的存储库包含专门为Ubuntu 12编译的包。04.Fedora用户使用一个完整的版本的Fedora专门编译的存储库。

软件安装包管理器在Linux上的工作原理

包裹经理

像一个移动应用商店一样的软件包管理器,除了它们在应用商店之前很久。告诉软件包管理器来安装软件,它将自动从配置的软件库中下载相应的软件包,安装它,并进行设置,无需点击向导或追踪。exe文件在网站上。发布更新时,您的软件包管理器会注意并下载适当的更新。与Windows不同,每个应用程序必须拥有自己的更新程序才能接收自动更新,程序包管理器可以处理所有已安装软件的更新

软件安装包管理器在Linux上的工作原理

什么是套餐?

在Windows上,应用程序进来。exe安装程序文件,可以做任何他们喜欢的系统,Linux使用特殊的包格式。有各种各样的软件包类型 - 最显着的是Debian上的DEB和Ubuntu以及Fedora,Red Hat等的RPM。这些软件包本质上是包含文件列表的存档。软件包管理器打开存档并将文件安装到软件包指定的位置。软件包管理器会保留哪些文件属于哪个软件包 - 卸载软件包时,软件包管理器会确切知道系统中的哪些文件属于它。Windows不知道什么文件属于已安装的应用程序 - 它允许应用程序安装程序自己管理安装和卸载。

包装还可以包含在安装和删除软件包时运行的脚本,尽管这些脚本通常用于系统设置,而不是将文件移动到任意位置。

软件安装包管理器在Linux上的工作原理

在Linux上安装软件

要在Linux上安装软件,打开软件包管理器,搜索软件,并告知软件包管理器进行安装。您的包裹经理将休息。Linux发行版通常为包管理器提供各种前端。例如,在Ubuntu上,Ubuntu软件中心,Update Manager,Synaptic应用程序和apt-get命令都使用apt-get和dpkg来下载和安装DEB软件包。您可以使用任何您喜欢的实用程序 - 它们只提供不同的界面。您通常会在Linux发行版中找到一个简单的图形包管理器

软件安装包管理器在Linux上的工作原理

更新延迟

新的Linux用户常常注意到,软件包管理器和存储库是新软件到达其系统之前的延迟。例如,当Mozilla Firefox新版本发布时,Windows和Mac用户将从Mozilla获取。在Linux上,您的Linux发行版必须打包新版本,并将其作为更新推出。如果您在Linux上打开Firefox的首选项窗口,您将注意到,Firefox无法自动更新(假设您正在使用Linux发行版的存储库中的Firefox版本)。

软件安装包管理器在Linux上的工作原理

您也可以自己下载并安装应用程序 - 例如直接从Mozilla下载Firefox

W新版本的Firefox是一个优先级,因为它们包含安全更新,其他应用程序可能无法快速传递。例如,LibreOffice办公套件的主要新版本可能不会作为当前版本的Linux发行版的更新发布。为避免潜在的不稳定性并允许测试时间,此版本可能在下一个主要版本的Linux发行版(例如Ubuntu 12)之前不可用。10 - 当它成为发行版软件仓库中的默认版本。

为了解决这个问题,一些Linux发行版(如Arch Linux)提供了“滚动发布周期”,其中新版本的软件被推入主软件库。这可能会导致问题 - 虽然您可能需要新版本的桌面应用程序,但您可能不关心新版本的低级系统实用程序,这可能会导致不稳定。

Ubuntu提供了backports存储库,可以将较新版本的重要软件包带入较旧的发行版,尽管并非所有新版本都将其导入到backports存储库中。

其他存储库

在Linux发行版附带预先配置的自己的存储库的同时,还可以将其他存储库添加到系统中。一旦有了,您可以从该存储库安装软件仓库,并使用您的软件包管理器从其中接收更新。您添加的存储库必须设计用于您的Linux发行版和软件包管理器。

例如,Ubuntu提供各种各样的个人包档案(PPA),其中包含由个人和团队编译的软件。Ubuntu不保证这些存储库中的软件包的稳定性或安全性,但是您可以从受信任的个人添加PPA以下载尚未在Ubuntu存储库中的软件包 - 或下载较新版本的现有软件包。

一些第三方应用程序也使用自己的软件仓库。例如,当您在Ubuntu上安装Google Chrome时,它会将自己的apt存储库添加到您的系统中。这可以确保您通过Ubuntu的Update Manager和标准软件安装工具接收Google Chrome的更新。

软件安装包管理器在Linux上的工作原理

."

管理员

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: