📜  Linux管理员-软件包管理

📅  最后修改于: 2020-10-31 13:41:17             🧑  作者: Mango


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

CentOS管理员大部分时间都不会使用终端。为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安装成为最新版本。对于新安装,这可能需要一些时间,具体取决于您的安装和Internet连接速度。

[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管理员使用YUM的90%将使用大约7条命令。我们将逐一详细介绍,以期熟练掌握日常使用的YUM。但是,与大多数Linux实用程序一样,YUM提供了许多高级功能,这些功能始终可以通过手册页进行探索。使用man yum永远是使用任何Linux实用程序执行不熟悉的操作的第一步。

最常见的YUM命令

以下是常用的YUM命令。

Command Action
list installed Lists packages installed via YUM
list all Lists all currently available packages
group list Lists grouped packages
info Provides detailed information about a package
search Searches package descriptions and names
install Installs a package
localinstall Installs a local rpm package
remove Removes and installs package
clean all Cleans /var/cache/yum to free disk-space
man yum Like all linux commands, the help file

用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

用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 Desktop提供了一个名为Software的图形化软件包管理工具。它相当简单易用。可通过导航至:应用程序→系统工具→软件,找到用于CentOS的Gnome软件包管理工具软件。

软件包管理工具分为几组,管理员可以选择要安装的软件包。虽然此工具非常适合最终用户易于使用和简化,但YUM的功能要强大得多,并且管理员可能会更多地使用它。

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

软件包管理工具