- Linux 管理員教程
- 首頁
- CentOS概述
- 基本的 CentOS Linux 命令
- 檔案/資料夾管理
- 使用者管理
- 配額管理
- Systemd 服務啟動和停止
- 使用 systemctl 進行資源管理
- 使用 cgroups 進行資源管理
- 程序管理
- 防火牆設定
- 在 CentOS Linux 中配置 PHP
- 在 CentOS Linux 中設定 Python
- 在 CentOS Linux 中配置 Ruby
- 為 CentOS Linux 設定 Perl
- 安裝和配置 OpenLDAP
- 建立 SSL 證書
- 安裝 Apache Web 伺服器 CentOS 7
- 在 CentOS 7 上設定 MySQL
- 設定 Postfix MTA 和 IMAP/POP3
- 安裝匿名 FTP
- 遠端管理
- CentOS 中的流量監控
- 日誌管理
- 備份和恢復
- 系統更新
- Shell 指令碼
- 包管理
- 卷管理
- Linux 管理員有用資源
- Linux 管理員 - 快速指南
- Linux 管理員 - 有用資源
- Linux 管理員 - 討論
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
太好了,現在我們的生產伺服器上有一個 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 更加強大,管理員可能會更多地使用它。
以下是軟體包管理工具的螢幕截圖,並非真正為系統管理員設計。