Linux 管理员 - 包管理



CentOS 中的包管理可以通过两种方式进行:终端和图形用户界面。

CentOS 管理员的大部分时间都用于使用终端。更新和安装 CentOS 包也不例外。考虑到这一点,我们将首先探讨终端中的包管理,然后触及 CentOS 提供的图形包管理工具的使用。

YUM 包管理器

YUM 是 CentOS 提供的包管理工具。我们在前面的章节中简要介绍了这个主题。在本节中,我们将从干净的 CentOS 安装开始。我们将首先完全更新我们的安装,然后安装一个应用程序。

YUM 极大地促进了 Linux 中的软件安装和管理。YUM 会“自动”检查过期的依赖项以及过期的软件包。与过去从源代码编译每个应用程序相比,这确实减轻了 CentOS 管理员的工作负担。

yum check-update

检查可以更新的软件包。在本教程中,我们假设这是一个面向互联网的生产系统,没有需要在升级软件包之前由 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]#

yum update

这将安装所有更新的候选软件包,使您的 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 的基于文本的 Web 浏览器。在安装之前,我们必须首先获取包含 Lynx Web 浏览器的软件包名称。我们甚至不能 100% 确定我们的默认 CentOS 存储库是否提供 Lynx Web 浏览器的软件包,所以让我们搜索看看 -

[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 Web 浏览器。让我们看看有关该软件包的更多信息。

[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

Install Software with YUM

太好了,现在我们的生产服务器上有一个 Web 浏览器,可以在不担心通过 Web 发起的远程攻击的情况下使用。这对生产服务器来说是一件好事。

我们快完成了,但是首先我们需要为开发人员设置此服务器以测试应用程序。因此,让我们确保他们拥有完成工作所需的所有工具。我们可以单独安装所有内容,但 CentOS 和 YUM 使这变得更快。让我们安装开发组软件包

[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 桌面提供了一个名为 Software 的图形包管理工具。它非常易于使用且简单明了。CentOS 的 Gnome 包管理工具 Software 可以通过导航到以下位置找到:应用程序 → 系统工具 → 软件。

软件包管理工具分为几组,允许管理员选择要安装的软件包。虽然此工具对于最终用户的易用性和简单性非常有用,但 YUM 更加强大,管理员可能会更多地使用它。

以下是软件包管理工具的屏幕截图,并非真正为系统管理员设计。

Software Package Management Tool
广告