Linux Admin 包管理
CentOS 中的软件包管理可以通过两种方式进行:从终端和图形用户界面。
CentOS 管理员的大部分时间通常都会使用 te终端。为 CentOS 更新和安装软件包也不例外。考虑到这一点,我们将首先探索终端中的包管理,然后接触使用 CentOS 提供的图形包管理工具。
YUM 包管理器
YUM 是 CentOS 提供的包管理工具。我们在前面的章节中已经简要地谈到了这个话题。在本章中,我们将从干净的 CentOS 安装开始工作。我们将首先完全更新我们的安装,然后安装一个应用程序。
YUM 为 Linux 中的软件安装和管理带来了很大的帮助。
YUM 除了过时的软件包之外,"自动"检查过时的依赖项。与过去编译每个应用程序的日子相比,这确实减轻了 CentOS 管理员的负担源代码。
百胜检查更新
检查可以更新候选的包。在本教程中,我们将假设这是一个面向 Internet 的生产系统,在升级包之前没有需要 DevOps 测试的生产应用程序。现在让我们将更新的候选项安装到系统上。
[root@localhost rdc]# yum check-update
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
NetworkManager.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-adsl.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-glib.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-libnm.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-team.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-tui.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-wifi.x86_64 1:1.4.0-19.el7_3 updates
audit.x86_64 2.6.5-3.el7_3.1 updates
vim-common.x86_64 2:7.4.160-1.el7_3.1 updates
vim-enhanced.x86_64 2:7.4.160-1.el7_3.1 updates
vim-filesystem.x86_64 2:7.4.160-1.el7_3.1 updates
vim-minimal.x86_64 2:7.4.160-1.el7_3.1 updates
wpa_supplicant.x86_64 1:2.0-21.el7_3 updates
xfsprogs.x86_64 4.5.0-9.el7_3 updates
[root@localhost rdc]#
百胜更新
这将安装所有更新的候选项,使您的 CentOS 安装成为最新版本。对于全新安装,这可能需要一些时间,具体取决于您的安装和互联网连接速度。
[root@localhost rdc]# yum update
vim-minimal x86_64 2:7.4.160-1.el7_3.1 updates 436 k
wpa_supplicant x86_64 1:2.0-21.el7_3 updates 788 k
xfsprogs x86_64 4.5.0-9.el7_3 updates 895 k
Transaction Summary
======================================================================================
Install 2 Packages
Upgrade 156 Packages
Total download size: 371 M
Is this ok [y/d/N]:
通过 YUM 安装软件
除了更新 CentOS 系统外,YUM 包管理器是我们安装软件的首选工具。从网络监控工具、视频播放器到文本编辑器,一切都可以通过
YUM 从中央存储库安装。
在安装一些软件实用程序之前,让我们看看几个
YUM 命令。对于日常工作,CentOS 管理员 90% 的 YUM 使用将使用大约 7 个命令。我们将逐一介绍,希望能够在日常使用中熟练掌握 YUM 的操作。然而,与大多数 Linux 实用程序一样,YUM 提供了丰富的高级功能,通过手册页可以很好地探索这些功能。使用
man yum 永远是使用任何 Linux 实用程序执行不熟悉的操作的第一步。
最常用的 YUM 命令
以下是常用的 YUM 命令。
命令 |
动作 |
list installed |
列出通过 YUM 安装的软件包 |
list all |
列出所有当前可用的包 |
group list |
列出分组的包 |
info |
提供有关包的详细信息 |
search |
搜索包描述和名称 |
install |
安装包 |
localinstall |
安装本地rpm包 |
remove |
删除和安装包 |
clean all |
清理/var/cache/yum 以释放磁盘空间 |
man yum |
像所有 linux 命令一样,帮助文件 |
使用 YUM 安装软件
我们现在将安装一个名为
Lynx 的基于文本的网络浏览器。在安装之前,我们必须首先获取包含 Lynx 网络浏览器的包名。我们甚至不能 100% 确定我们的默认 CentOS 存储库为 Lynx 网络浏览器提供了一个包,所以让我们搜索并查看-
[root@localhost rdc]# yum search web browser
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
=================================================================
N/S matched: web, browser
==================================================================
icedtea-web.x86_64 : Additional Java components for OpenJDK-Java browser
plug-in and Web Start implementation
elinks.x86_64 : A text-mode Web browser
firefox.i686 : Mozilla Firefox Web browser
firefox.x86_64 : Mozilla Firefox Web browser
lynx.x86_64 : A text-based Web browser
Full name and summary matches only, use "search all" for everything.
[root@localhost rdc]#
我们看到,CentOS 确实在存储库中提供了 Lynx 网络浏览器。让我们看看有关该包的更多信息。
[root@localhost rdc]# lynx.x86_64
bash: lynx.x86_64: command not found...
[root@localhost rdc]# yum info lynx.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Packages
Name : lynx
Arch : x86_64
Version : 2.8.8
Release : 0.3.dev15.el7
Size : 1.4 M
Repo : base/7/x86_64
Summary : A text-based Web browser
URL : http://lynx.isc.org/
License : GPLv2
Description : Lynx is a text-based Web browser. Lynx does not display any images,
: but it does support frames, tables, and most other HTML tags. One
: advantage Lynx has over graphical browsers is speed; Lynx starts and
: exits quickly and swiftly displays web pages.
[root@localhost rdc]#
不错! 2.8 版本已经足够了,所以让我们安装 Lynx。
[root@localhost rdc]# yum install lynx
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Resolving Dependencies
--> Running transaction check
---> package lynx.x86_64 0:2.8.8-0.3.dev15.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================
===============================================================================
package Arch
Version Repository Size
===============================================================================
===============================================================================
Installing:
lynx x86_64
2.8.80.3.dev15.el7 base 1.4 M
Transaction Summary
===============================================================================
===============================================================================
Install 1 Package
Total download size: 1.4 M
Installed size: 5.4 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
| 1.4 MB 00:00:10
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Verifying : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Installed:
lynx.x86_64 0:2.8.8-0.3.dev15.el7
Complete!
[root@localhost rdc]#
接下来,让我们确保 Lynx 确实安装正确。
[root@localhost rdc]# yum list installed | grep-i lynx
lynx.x86_64 2.8.8-0.3.dev15.el7 @base
[root@localhost rdc]#
太好了!让我们使用 Lynx 来看看没有"喜欢"和漂亮图片的网络是什么样子。
[root@localhost rdc]# lynx www.tutorialpoint.in
太好了,现在我们的生产服务器有了一个 Web 浏览器,可以使用它而不必担心通过 Web 启动的远程攻击。这对生产服务器来说是件好事。
我们快完成了,但是首先我们需要设置这个服务器以供开发人员测试应用程序。因此,让我们确保他们拥有工作所需的所有工具。我们可以单独安装所有东西,但 CentOS 和 YUM 使安装速度更快。让我们安装
Development Group Package。
[root@localhost rdc]# yum groups list
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Groups:
Compatibility Libraries
Console Internet Tools
Development Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
[root@localhost rdc]#
这是 CentOS 提供的一个较小的软件包组列表。让我们看看"开发组"包含哪些内容。
[root@localhost rdc]# yum group info "Development Tools"
Loaded plugins: fastestmirror, langpacks
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Group: Development Tools
Group-Id: development
Description: A basic development environment.
Mandatory Packages:
autoconf
automake
binutils
bison
输出的第一个屏幕如上所示。整个列表相当全面。但是,随着时间的推移,通常需要完整安装该组。让我们安装整个开发组。
[root@localhost rdc]# yum groupinstall "Development Tools"
这将是一个更大的安装。完成后,您的服务器将拥有大多数用于 Perl、Python、C 和 C++ 的开发库和编译器。
CentOS 中的图形化包管理
Gnome Desktop 提供了一个名为
软件的图形包管理工具。它使用起来相当简单且直接。软件,CentOS 的 Gnome 包管理工具可以通过导航到:应用程序 → 系统工具 → 软件找到。
软件包管理工具分为多个组,允许管理员选择要安装的软件包。虽然此工具非常适合最终用户使用和简单,但 YUM 的功能要强大得多,管理员可能会更多地使用它。
以下是软件包管理工具的屏幕截图,并非真正为系统管理员设计。
