mirror of
https://github.com/LCTT/TranslateProject.git
synced 2024-12-26 21:30:55 +08:00
translated
This commit is contained in:
parent
b111fedfe3
commit
94648b67f6
@ -14,9 +14,9 @@ Linux 包管理器: dnf 和 apt
|
||||
|
||||
有多种方式 [在Linux系统上获取一个应用][2]。例如,最新的Flatpak 和容器,另外,还有 DEB 和 RPM,是一直以来经受住了考验的方式。
|
||||
|
||||
对于所有的操作系统来说,目前并不存在一种通用的应用安装程序。今天,因为有无数的开发者发布软件,这导致了大部分的操作系统使用混合的应用商店(包括第一方和第三方),拖拽式的安装方式,还有向导安装。不同的开发者对于他们发布的代码有不同的需求,这直接导致了他们所选择的安装方式的不同。
|
||||
对于所有的操作系统来说,目前并不存在一种通用的应用安装程序。今天,因为有无数的开发者发布软件,这导致了大部分的操作系统使用了应用商店(包括第一方和第三方),拖拽式的安装方式,还有安装向导。不同的开发者对于他们发布的代码有不同的需求,这直接导致了他们所选择的安装方式的不同。
|
||||
|
||||
Linux 开创了一种通过命令行安装,管理,卸载应用的包管理器理念。`apt` 和 `dnf` 就是两种较为常见的包管理器。`apt` 命令是用来管理 DEB 格式的包,`dnf` 命令是用来管理 RPM 格式的包。这两种包管理器在理论上并不是完全互斥的,尽管在实际的实践中,Linux 发行版通常只会使用到其中的一种。理论上,这两种命令可以运行在同一个系统上,但是会造成安装包的重叠,版本控制也会更加困难,命令彼此之间是冗余的。然而,如果您是在一个混合的 Linux 环境下工作,比如您的工作站运行的是一个发行版,同时需要与运行另外一种发行版的服务器进行交互,那么您最好掌握这两种包管理器。
|
||||
Linux 开创了一种通过命令行安装,管理,卸载应用的包管理器理念。`apt` 和 `dnf` 就是两种较为常见的包管理器。`apt` 命令是用来管理 DEB 格式的包,`dnf` 命令是用来管理 RPM 格式的包。这两种包管理器在理论上并不是完全互斥的,尽管在实际的实践中,Linux 发行版通常只会使用到其中的一种。理论上,这两种命令可以运行在同一个系统上,但是会造成安装包的重叠,版本控制也会更加困难,命令彼此之间是冗余的。然而,如果您是在一个复杂的 Linux 环境下工作,比如您的工作站运行的是一个发行版,同时需要与运行另外一种发行版的服务器进行交互,那么您最好掌握这两种包管理器。
|
||||
|
||||
### 搜索应用
|
||||
|
||||
@ -92,7 +92,7 @@ $ sudo apt-file update
|
||||
[...]
|
||||
```
|
||||
|
||||
您可以使用 `apt-file` 搜索一个命令。您可以使用此命令进行广泛的全局搜索,但假如您碰巧知道命令的执行路径,它会更准确:
|
||||
您可以通过 `apt-file` 搜索命令。您可以使用此命令进行广泛的全局搜索,但假如您知道命令的执行路径,它会更准确:
|
||||
|
||||
```
|
||||
$ sudo apt-file search /usr/bin/pgrep
|
||||
@ -102,7 +102,7 @@ procps: /usr/bin/pgrep
|
||||
|
||||
### 安装应用程序
|
||||
|
||||
使用`apt` 和 `dnf` 安装应用程序本质上是相同的:
|
||||
使用`apt` 和 `dnf` 安装应用程序基本上是相同的:
|
||||
|
||||
```
|
||||
$ sudo apt install zsh
|
||||
@ -114,7 +114,7 @@ $ sudo apt install zsh
|
||||
$ sudo dnf install zsh
|
||||
```
|
||||
|
||||
许多基于RPM的发行版都具有组包安装的特性,这些特性会将具有相关性的应用程序收集到一个易于安装的目标中。例如,Fedora 中的 [Design Suite][4] 组包就包含目前流行的创建应用程序。那些想要一个创造性应用程序的艺术家可能也想要一个类似的应用程序,安装一整个组包是建立一个数据工厂简单而快速的方法。您可以通过 `group list` 来查看可用的组(使用 `-v` 来过滤空格):
|
||||
许多基于RPM的发行版都具有组包安装的特性,这些特性会将具有相关性的应用程序收集到一个易于安装的目标中。例如,Fedora 中的 [Design Suite][4] 组包就包含流行的创意应用程序。那些想要一个创造性应用程序的“艺术家”可能也想要一个类似的应用程序,安装一整个组包是建立一个数据工厂简单而快速的方法。您可以通过 `group list` 来查看可用的组(使用 `-v` 来过滤空格):
|
||||
|
||||
```
|
||||
$ sudo dnf group list -v
|
||||
@ -141,7 +141,7 @@ $ sudo dnf install @design-suite
|
||||
|
||||
### 更新应用程序
|
||||
|
||||
使用包管理器的一个优点是,它知道所有已经安装的应用。这意味着,您不必去寻找应用程序的更新版本。相反,您可以告诉包管理器去寻找更新。
|
||||
使用包管理器的一个优点是,它知道所有已经安装的应用。这样您不必去寻找应用程序的更新版本。相反,您可以通过包管理器去获取更新的版本。
|
||||
|
||||
`dnf` 和 `apt` 使用的子命令略有不同。因为 `apt` 保存了需要定期更新的缓存信息,它使用 `upgrade` 子命令来更新应用程序:
|
||||
|
||||
@ -163,7 +163,7 @@ $ sudo dnf update
|
||||
|
||||
### 删除应用程序
|
||||
|
||||
如果您曾经尝试在任何一个平台上手动删除一个应用程序,您就会知道,应用程序删除后,在硬盘上会残留各种文件,比如首选项文件、数据或图标。所以包管理器的另一个优点是,包管理器知道包中安装的每一个文件:
|
||||
如果您曾经尝试在任何一个平台上手动删除一个应用程序,您就会知道,应用程序删除后,在硬盘上会残留各种文件,比如首选项文件、数据或图标。所以包管理器的另一个优点是,包管理器管理着包中安装的每一个文件,可以很方便的删除:
|
||||
|
||||
```
|
||||
$ sudo dnf remove zsh
|
||||
@ -189,7 +189,7 @@ $ sudo apt purge zsh
|
||||
|
||||
`apt` 和 `dnf` 还有一些高级功能,例如仓库管理,这些功能并不像您使用 `search` 和 `install` 那样频繁。
|
||||
|
||||
无论您使用哪种包管理器更频繁,您都可以下载我们的 [apt 备忘单][5] 和 [dnf 备忘单][6],以便您在最需要的时候可以查询使用语法。
|
||||
无论您更多的使用哪种包管理器,您都可以下载我们的 [apt 备忘单][5] 和 [dnf 备忘单][6],以便您在最需要的时候可以查询使用语法。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user