Administrator systemu Linux - zarządzanie pakietami
Zarządzanie pakietami w CentOS może odbywać się na dwa sposoby: z poziomu terminala oraz z graficznego interfejsu użytkownika.
Najczęściej większość czasu administratora CentOS będzie korzystać z terminala. Aktualizowanie i instalowanie pakietów dla CentOS nie różni się. Mając to na uwadze, najpierw zbadamy zarządzanie pakietami w terminalu, a następnie dotkniemy korzystania z graficznego narzędzia do zarządzania pakietami udostępnianego przez CentOS.
Menedżer pakietów YUM
YUM to narzędzie służące do zarządzania pakietami w CentOS. Pokrótce poruszyliśmy ten temat w poprzednich rozdziałach. W tym rozdziale będziemy pracować z czystą instalacją CentOS. Najpierw całkowicie zaktualizujemy naszą instalację, a następnie zainstalujemy aplikację.
Firma YUM znacznie ułatwiła instalację i zarządzanie oprogramowaniem w systemie Linux. YUM „automagicznie” sprawdza nieaktualne zależności, oprócz nieaktualnych pakietów. To naprawdę odciążyło administratora CentOS w porównaniu do dawnych czasów kompilowania każdej aplikacji z kodu źródłowego.
mniam check-update
Sprawdza pakiety, które mogą aktualizować kandydatów. W tym samouczku założymy, że jest to system produkcyjny, który będzie miał kontakt z Internetem bez aplikacji produkcyjnych, które muszą zostać przetestowane przez DevOps przed aktualizacją pakietów. Zainstalujmy teraz zaktualizowanych kandydatów w systemie.
[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]#
mniam aktualizacja
Spowoduje to zainstalowanie wszystkich zaktualizowanych kandydatów, dzięki czemu instalacja CentOS będzie aktualna. W przypadku nowej instalacji może to zająć trochę czasu, w zależności od instalacji i szybkości połączenia internetowego.
[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]:
Zainstaluj oprogramowanie przez YUM
Oprócz aktualizacji systemu CentOS, menedżer pakietów YUM jest naszym narzędziem do instalacji oprogramowania. Wszystko, od narzędzi do monitorowania sieci, odtwarzaczy wideo, po edytory tekstu, można zainstalować z centralnego repozytorium za pomocą YUM .
Przed zainstalowaniem niektórych programów narzędziowych spójrzmy na kilka poleceń YUM . Do codziennej pracy 90% użycia YUM przez administratora CentOS będzie dotyczyło około 7 poleceń. Omówimy każdy z nich w nadziei, że zapoznamy się z obsługą YUM na biegłym poziomie do codziennego użytku. Jednak, podobnie jak większość narzędzi dla Linuksa, YUM oferuje bogactwo zaawansowanych funkcji, które zawsze są świetne do zbadania poprzez stronę man. Używanie man yum zawsze będzie pierwszym krokiem do wykonywania nieznanych operacji za pomocą dowolnego narzędzia Linux.
Najpopularniejsze polecenia YUM
Poniżej znajdują się najczęściej używane polecenia YUM.
Komenda | Akcja |
---|---|
lista zainstalowana | Wyświetla listę pakietów zainstalowanych przez YUM |
lista wszystkich | Wyświetla wszystkie aktualnie dostępne pakiety |
lista grup | Wyświetla zgrupowane pakiety |
info | Zawiera szczegółowe informacje o pakiecie |
Szukaj | Przeszukuje opisy i nazwy pakietów |
zainstalować | Instaluje pakiet |
localinstall | Instaluje lokalny pakiet rpm |
usunąć | Usuwa i instaluje pakiet |
Wyczyść wszystko | Czyści / var / cache / yum, aby zwolnić miejsce na dysku |
mniam | Podobnie jak wszystkie polecenia Linuksa, plik pomocy |
Zainstaluj oprogramowanie za pomocą YUM
Teraz zainstalujemy tekstową przeglądarkę internetową o nazwie Lynx. Przed instalacją musimy najpierw pobrać nazwę pakietu zawierającego przeglądarkę internetową Lynx. Nie jesteśmy nawet w 100% pewni, że nasze domyślne repozytorium CentOS zawiera pakiet dla przeglądarki internetowej Lynx, więc poszukajmy i zobaczmy -
[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]#
Widzimy, CentOS oferuje przeglądarkę internetową Lynx w repozytorium. Zobaczmy więcej informacji o pakiecie.
[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]#
Miły! Wersja 2.8 jest wystarczająco aktualna, więc zainstalujmy 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]#
Następnie upewnijmy się, że Lynx faktycznie zainstalował się poprawnie.
[root@localhost rdc]# yum list installed | grep -i lynx
lynx.x86_64 2.8.8-0.3.dev15.el7 @base
[root@localhost rdc]#
Świetny! Użyjmy Lynxa, aby zobaczyć, jak wygląda sieć bez „polubień” i ładnych obrazków.
[root@localhost rdc]# lynx www.tutorialpoint.in
Świetnie, teraz mamy przeglądarkę internetową dla naszego serwera produkcyjnego, której można bez większych obaw używać do zdalnych exploitów uruchamianych w sieci. To dobra rzecz dla serwerów produkcyjnych.
Prawie skończyliśmy, jednak najpierw musimy ustawić ten serwer dla programistów do testowania aplikacji. Dlatego upewnijmy się, że mają wszystkie narzędzia potrzebne do ich pracy. Moglibyśmy zainstalować wszystko indywidualnie, ale CentOS i YUM sprawiły, że jest to znacznie szybsze. Zainstalujmy Pakiet Development Group .
[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]#
To jest mniejsza lista grup pakietów udostępniana przez CentOS. Zobaczmy, co zawiera „Grupa deweloperska”.
[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
Pierwszy ekran wyjścia jest taki, jak pokazano powyżej. Ta cała lista jest dość obszerna. Jednak w miarę upływu czasu ta grupa będzie musiała zostać zainstalowana w całości. Zainstalujmy całą grupę deweloperską.
[root@localhost rdc]# yum groupinstall "Development Tools"
To będzie większa instalacja. Po zakończeniu Twój serwer będzie zawierał większość bibliotek programistycznych i kompilatorów dla języków Perl, Python, C i C ++.
Graficzne zarządzanie pakietami w CentOS
Gnome Desktop udostępnia graficzne narzędzie do zarządzania pakietami o nazwie Software. Jest dość prosty w obsłudze i nieskomplikowany. Oprogramowanie, narzędzie do zarządzania pakietami Gnome dla CentOS można znaleźć, przechodząc do: Aplikacje → Narzędzia systemowe → Oprogramowanie.
Narzędzie do zarządzania pakietami oprogramowania jest podzielone na grupy, które umożliwiają administratorowi wybieranie pakietów do instalacji. Chociaż to narzędzie jest świetne ze względu na łatwość użycia i prostotę dla użytkowników końcowych, YUM jest o wiele bardziej wydajne i prawdopodobnie będzie częściej używane przez administratorów.
Poniżej znajduje się zrzut ekranu narzędzia do zarządzania pakietami oprogramowania, który tak naprawdę nie jest przeznaczony dla administratorów systemu.