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管理员使用YUM的90%将使用大约7个命令.我们将逐一介绍,以便熟悉日常使用的熟练操作YUM.但是,与大多数Linux实用程序一样,YUM提供了丰富的高级功能,这些功能总是很适合通过手册页进行探索.使用 man yum 将始终是对任何Linux实用程序执行不熟悉操作的第一步.

最常见的YUM命令

以下是常用的YUM命令.

CommandAction
已安装列表列出通过YUM安装的软件包
全部列出列出所有当前可用的包
组列表列出分组包
info提供详细信息关于包
搜索搜索包描述和名称s
install安装包
localinstall安装本地rpm包
remove删除并安装包
清除所有清除/var/cache/yum以释放磁盘空间
男人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


安装带有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软件包管理工具可以通过导航到:Applications → 系统工具 → 软件.

软件包管理工具分为几组,允许管理员选择要安装的软件包.虽然这个工具非常适合最终用户的易用性和简单性,但YUM功能更强大,管理员可能会更多地使用它.

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

软件包管理工具