{"id":408,"date":"2017-03-30T12:31:53","date_gmt":"2017-03-30T10:31:53","guid":{"rendered":"http:\/\/miroslaw.borodziuk.eu\/?p=408"},"modified":"2017-06-03T19:12:40","modified_gmt":"2017-06-03T17:12:40","slug":"zarzadzanie-pakietami-przez-yum","status":"publish","type":"post","link":"http:\/\/miro.borodziuk.eu\/index.php\/2017\/03\/30\/zarzadzanie-pakietami-przez-yum\/","title":{"rendered":"Zarz\u0105dzanie pakietami przez yum."},"content":{"rendered":"<p><em>Yum<\/em> (<em>yellowdog updater, modified<\/em>) to frontend komendy <em>rpm<\/em> i preferowane narz\u0119dzie do zarz\u0105dzania pakietami. Narz\u0119dzie wymaga aby system mia\u0142 dost\u0119p do repozytorium pakiet\u00f3w. Repozytoria Red Hat w przeciwie\u0144stwie do CentOS dost\u0119pne s\u0105 tylko dla subskrybent\u00f3w. Mo\u017cliwe jest uruchomienie w\u0142asnego repozytorium co wymaga utworzenia pliku z jego definicj\u0105 w katalogu <em>\/etc\/yum.repos.d\/<\/em>. <!--more-->Najwa\u017cniejsz\u0105 zalet\u0105 narz\u0119dzia <em>yum<\/em> jest, \u017ce dba ono o zale\u017cno\u015bci pakiet\u00f3w instaluj\u0105c automatycznie dodatkowo wymagane pakiety.<\/p>\n<p><span style=\"color: #3366ff;\">Plik konfiguracyjny yum. <\/span><\/p>\n<p>W pliku konfiguracyjnym <em>\/etc\/yum.conf<\/em> mo\u017cna zdefiniowa\u0107 osobne sekcje dla ka\u017cdego nowego repozytorium, z kt\u00f3rego ma korzysta\u0107 system. Lepiej jednak wpisy o repozytoriach umieszcza\u0107 w katalogu <em>\/etc\/yum.repos.d<\/em>.<\/p>\n<p>Domy\u015blna zawarto\u015b\u0107 <em>yum.conf<\/em> wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<pre> # cat \/etc\/yum.conf\r\n\r\n [main]\r\n cachedir=\/var\/cache\/yum\/$basearch\/$releasever\r\n keepcache=0\r\n debuglevel=2\r\n logfile=\/var\/log\/yum.log\r\n exactarch=1\r\n obsoletes=1\r\n gpgcheck=1\r\n plugins=1\r\n installonly_limit=3<\/pre>\n<table style=\"width: 720.45px;\">\n<tbody>\n<tr style=\"height: 20.8px;\">\n<td style=\"width: 116px; height: 20.8px;\"><em><span style=\"color: #808080;\">Dyrektywa<\/span><\/em><\/td>\n<td style=\"width: 586.45px; height: 20.8px;\"><em><span style=\"color: #808080;\">Opis<\/span><\/em><\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">cachedir<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Katalog-magazyn do sk\u0142adowania pobranych plik\u00f3w. Domy\u015blnie <code>\/var\/cache\/yum\/$basearch\/$releasever<\/code> .<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">keepcache<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Okre\u015bla czy sk\u0142adowa\u0107 pakiet i nag\u0142\u00f3wek cache po pozytywnie zako\u0144czonej instalacji. Domy\u015blnie wy\u0142\u0105czone (0).<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">\u00a0debuglevel<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Poziom debugowania jakie b\u0119dzie zapisane w logu. Minimum 1 i maksimum 10, domy\u015blnie 2. Warto\u015b\u0107 0 wy\u0142\u0105cza t\u0105 opcj\u0119.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 116px; height: 26px;\"><span style=\"color: #008000;\">\u00a0logfile<\/span><\/td>\n<td style=\"width: 586.45px; height: 26px;\">Po\u0142o\u017cenie pliku z logami. Domy\u015blnie <code>\/var\/log\/yum.log<\/code> .<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">exactarch<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Okre\u015bla czy aktualizowa\u0107 tylko pakiety, kt\u00f3re pasuj\u0105 do architektury CPU. Domy\u015blnie w\u0142\u0105czone (1).<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">obsoletes<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Sprawdza i zamienia jakiekolwiek przestarza\u0142e pakiety w czasie aktualizacji. Domy\u015blnie w\u0142\u0105czone (1).<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">gpgcheck<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Okre\u015bla czy sprawdza\u0107 sygnatur\u0119 GPG pod k\u0105tem autentyczno\u015bci pakietu. Domy\u015blnie w\u0142\u0105czone (1).<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 116px; height: 53px;\"><span style=\"color: #008000;\">plugins<\/span><\/td>\n<td style=\"width: 586.45px; height: 53px;\">Okre\u015bla czy wraz z pakietami maj\u0105 by\u0107 pobierane pluginy. Domy\u015blnie w\u0142\u0105czone (1).<\/td>\n<\/tr>\n<tr style=\"height: 132px;\">\n<td style=\"width: 116px; height: 132px;\"><span style=\"color: #008000;\">\u00a0installonly_limit<\/span><\/td>\n<td style=\"width: 586.45px; height: 132px;\">Okre\u015bla liczb\u0119 wersji j\u0105dra systemu utrzymywanych w systemie. Domy\u015blna warto\u015b\u0107 3 oznacza, \u017ce zainstalowane b\u0119d\u0105 maksymalnie 3 j\u0105dra. Je\u015bli podczas aktualizacji systemu b\u0119dzie instalowane kolejne, najstarsze zostanie usuni\u0119te. Zainstalowane j\u0105dra b\u0119d\u0105 widoczne w menu <a title=\"GRUB\" href=\"http:\/\/wiki.fedora.pl\/wiki\/GRUB\">gruba<\/a>, daj\u0105c mo\u017cliwo\u015b\u0107 uruchomienia systemu na wybranym z nich.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Dodatkowe dyrektywy, kt\u00f3re mo\u017cemy umie\u015bci\u0107 w sekcji g\u0142\u00f3wnej lub w sekcji repo pliku konfiguracyjnego, mog\u0105 by\u0107 wy\u015bwietlone komend\u0105 <i>yum-config-manager.<\/i><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Repozytorium yum.<\/span><\/p>\n<p>Repozytorium <em>yum<\/em> jest cyfrow\u0105 bibliotek\u0105 s\u0142u\u017c\u0105c\u0105 do magazynowania pakiet\u00f3w. W Internecie dost\u0119pnych jest wiele repozytori\u00f3w zarz\u0105dzanych przed r\u00f3\u017cne podmioty takie jak Red Hat i CentOS. Najlepiej korzysta\u0107 z repozytori\u00f3w zarz\u0105dzanych przez zaufane podmioty, unikniemy w ten spos\u00f3b uszkodzenia systemu. Mo\u017cna tak\u017ce uruchomi\u0107 swoje w\u0142asne repozytorium co jest dobr\u0105 praktyk\u0105 dla organizacji z du\u017c\u0105 ilo\u015bci\u0105 system\u00f3w RHEL czy CentOS.<\/p>\n<p>Prosty plik z definicj\u0105 w\u0142asnego repozytorium wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<pre><code> [rhel7.0_repo]<\/code>\r\n <code>name= rhel7.0 repo<\/code>\r\n <code>baseurl=file:\/\/\/mnt<\/code>\r\n <code>enabled=1<\/code>\r\n <code>gpgcheck=0<\/code><\/pre>\n<p>Pierwsza linia definiuje unikalne ID repozytorium, druga nazw\u0119, trzecia po\u0142o\u017cenie repozytorium, czwarta okre\u015bla czy repozytorium jest aktywna a linia pi\u0105ta czy pakiety maj\u0105 by\u0107 sprawdzane pod k\u0105tem autentyczno\u015bci przez GPG. Trzy pierwsze linie s\u0105 obowi\u0105zkowe, pozosta\u0142e opcjonalne. Repozytorium lokalne wskazuje si\u0119 u\u017cywaj\u0105c trzech uko\u015bnik\u00f3w (\/). Repozytorium zdalne okre\u015bla si\u0119 u\u017cywaj\u0105c dw\u00f3ch uko\u015bnik\u00f3w np.:<\/p>\n<ul>\n<li>ftp:\/\/hostname\/network_path<\/li>\n<li>http:\/\/hostname\/network_path<\/li>\n<li>dla NFS:\u00a0 file:\/\/\/hostname\/network_path.<br \/>\n\u015acie\u017cka powinna oczywi\u015bcie by\u0107 rozwi\u0105zywalna przez resolver lub powinien by\u0107 u\u017cyty adres IP.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Polecenie yum.<\/span><\/p>\n<p>Niekt\u00f3re opcje polecenia <em>yum<\/em> znajduj\u0105 si\u0119 w tabeli poni\u017cej:<\/p>\n<table style=\"width: 722px;\">\n<tbody>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><em><span style=\"color: #808080;\">Opcja<\/span><\/em><\/td>\n<td style=\"width: 544.417px; height: 26px;\"><em><span style=\"color: #808080;\">Opis<\/span><\/em><\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">provides (<span style=\"color: #808080;\">lub<\/span> whatprovides)<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Szuka pakietu, kt\u00f3ry zawiera okre\u015blony plik.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">install<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Instaluje lub aktualizuje pakiet.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">remove \/ erase<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Usuwa pakiet.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0search<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">\u00a0Szuka pakiety, kt\u00f3ry zawiera w nazwie okre\u015blony tekst (\u0142a\u0144cuch).<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0check-update<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Sprawdza czy s\u0105 aktualizacje dla zainstalowanych pakiet\u00f3w.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0update<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Aktualizuje zainstalowane pakiety.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">upgrade<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">To samo co update ale usuwa stare pakiety. Inaczej <code>yum update --obsoletes<\/code>. Usuwanie starych pakiet\u00f3w w czasie aktualizacji nie jest bezpieeczne.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0list<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Listuje zainstalowane i dost\u0119pne pakiety.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0clean<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Usuwa skeszowane dane.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">\u00a0info<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Wy\u015bwietla informacje o pakiecie.<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 155.583px; height: 53px;\"><span style=\"color: #008000;\">history<\/span><\/td>\n<td style=\"width: 544.417px; height: 53px;\">Wy\u015bwietla histori\u0119 wykonywanych przez <em>yum<\/em> czynno\u015bci. Sk\u0142adowane w <em>\/var\/lib\/yum\/history<\/em>.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">localinstall<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Instaluje lub aktualizuje pakiet lokalny.<\/td>\n<\/tr>\n<tr style=\"height: 26.1333px;\">\n<td style=\"width: 155.583px; height: 26.1333px;\"><span style=\"color: #008000;\">repolist<\/span><\/td>\n<td style=\"width: 544.417px; height: 26.1333px;\">Wy\u015bwietla list\u0119 w\u0142\u0105czonych repozytori\u00f3w.<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 155.583px; height: 53px;\"><span style=\"color: #008000;\">repository-packages<\/span><\/td>\n<td style=\"width: 544.417px; height: 53px;\">Traktuje repozytorium jak zbi\u00f3r pakiet\u00f3w, kt\u00f3ry mo\u017ce by\u0107 zainstalowany lub odinstalowany jak jeden pakiet.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">group install<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Instaluje lub aktualizuje grup\u0119 pakiet\u00f3w.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">group info<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Wy\u015bwietla informacje o grupie pakiet\u00f3w.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">group list<\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Listuje dost\u0119pne grupy pakiet\u00f3w.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 155.583px; height: 26px;\"><span style=\"color: #008000;\">group remove <\/span><\/td>\n<td style=\"width: 544.417px; height: 26px;\">Usuwa grup\u0119 pakiet\u00f3w.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Instalacja i aktualizacja pakiet\u00f3w oraz grup pakiet\u00f3w.<\/span><\/p>\n<p>Podczas instalacji pakietu tworzone jest niezb\u0119dne drzewo katalog\u00f3w, instalowane s\u0105 niezb\u0119dne pliki i pakiety. Je\u017celi pakiet jest ju\u017c zainstalowany w systemie to jest on aktualizowany. Opcja -y przeprowadza akcj\u0119 bez potwierdzenia.<\/p>\n<p>Instalacja pakietu system-config-keyboard:<br \/>\n<code> <\/code><\/p>\n<pre># yum \u2013y install system-config-keyboard\r\n \u2026\u2026 . .\r\n Installed:\r\n zsh.x86_64 0:5.0.2-7.el7\r\n Complete!<\/pre>\n<p>Aby zainstalowa\u0107 lub zaktualizowa\u0107 pakiet <em>dcrew<\/em> umieszczony lokalnie w katalogu <i>\/var\/local <\/i>u\u017cywamy opcji\u00a0 <em>localinstall<\/em>:<\/p>\n<pre># yum \u2013y localinstall \/var\/local\/dcraw-9.19-6.el7.x86_64.rpm<\/pre>\n<p>Aby zaktualizowa\u0107 zainstalowany pakiet do najnowszej dost\u0119pnej wersji (yum poka\u017ce b\u0142\u0105d je\u017celi pakiet nie jest zainstalowany):<\/p>\n<pre># yum \u2013y update autofs<\/pre>\n<p>Aktualizacja wszystkich zainstalowanych w systemie pakiet\u00f3w do najnowszej wersji:<\/p>\n<pre># yum \u2013y update<\/pre>\n<p>Instalacja lub aktualizacja grupy pakiet\u00f3w jak np. Smart Card Support:<\/p>\n<pre># yum \u2013y group install \u201cSmart Card Support\u201d<\/pre>\n<p>Aktualizacja Smart Card Support group do najnowszej wersji:<\/p>\n<pre># yum \u2013y group update \u201cSmart Card Support\u201d\r\n<!--EndFragm--><\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Sprawdzanie czy s\u0105 aktualizacje do zainstalowanych pakiet\u00f3w.<\/span><\/p>\n<p>Yum pozwala nam sprawdzi\u0107 czy aktualizacje s\u0105 dost\u0119pne i w jakich w\u0142\u0105czonych repozytoriach si\u0119 znajduj\u0105:<br \/>\n<code> <\/code><\/p>\n<pre># yum check-update\r\n \u2026\u2026 . .\r\n dhclient.x86_64 1 2:4.2.5-27.el7_0.1 rhel-7-server-rpms\r\n dhcp-common.x86_64 1 2:4.2.5-27.el7_0.1 rhel-7-server-rpms\r\n dhcp-libs.x86_64 1 2:4.2.5-27.el7_0.1 rhel-7-server-rpms\r\n \u2026\u2026 . .<\/pre>\n<p>Powy\u017cszy wynik wskazuje na to, \u017ce nowsze wersje dost\u0119pne s\u0105 na wszystkich w\u0142\u0105czonych repozytoriach.<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Usuwania pakiet\u00f3w i grup pakiet\u00f3w.<\/span><\/p>\n<p>Podczas usuwania pakietu usuwane zostaj\u0105 tak\u017ce pakiety zale\u017cne co wymaga potwierdzenia chyba, \u017ce u\u017cyta zostanie opcja <em>-y<\/em>.<\/p>\n<p>Aby usun\u0105\u0107 pakiet <em>dcraw<\/em> i pakiety zale\u017cne:<\/p>\n<pre># yum -y remove dcraw<\/pre>\n<p>Aby usun\u0105\u0107 grup\u0119 pakiet\u00f3w:<\/p>\n<pre># yum -y group remove \"Scientific Support\"\r\n  \u2026\u2026 . .\r\n Removed:\r\n atlas.x86_64 0:3 .1 0.1 -7.el7 lapack.x86_64 0:3 .4.2-4.el7\r\n numpy.x86_64 1 :1 .7.1 -1 0.el7\r\n Dependency Removed:\r\n nfsometer.noarch 0:1 .7-0.el7 python-matplotlib.x86_64 0:1 .2.0-1 5.el7\r\n Complete!<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Wyszukiwanie pakiet\u00f3w.<\/span><\/p>\n<p>Aby wyszuka\u0107 pakiet, kt\u00f3ry zawiera konkretny\u00a0 plik np. \/bin\/bash:<\/p>\n<pre># yum provides \/bin\/bash<\/pre>\n<p>Aby wyszuka\u0107 pakiet, kt\u00f3ry zawiera pliki pasuj\u0105ce do wzorca\u00a0 np. \/bin\/bash:<br \/>\n<code> <\/code><\/p>\n<pre># yum provides \/usr\/bin\/system-config-*<\/pre>\n<p>Aby wyszuka\u0107 pakiet, kt\u00f3ry ma konkretny \u0142a\u0144cuch w nazwie:<\/p>\n<pre># yum search system-config<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Listowanie pakiet\u00f3w i grup pakiet\u00f3w.<\/span><\/p>\n<p>Listowanie pakiet\u00f3w zainstalowanych w systemie:<br \/>\n<code> <\/code><\/p>\n<pre># yum list installed\r\n Installed Packages\r\n GConf2.x86_64 3 .2.6-8.el7 @anaconda\/7.0\r\n ModemManager.x86_64 1 .1 .0-6.git201 3 091 3 .el7 @anaconda\/7.0\r\n \u2026\u2026 . .<\/pre>\n<p>Listowanie pakiet\u00f3w dost\u0119pnych ze wszystkich skonfigurowanych w systemie repozytori\u00f3w:<\/p>\n<pre># yum list available<\/pre>\n<p>Listowanie pakiet\u00f3w tych zainstalowanych w systemie i tych dost\u0119pnych ze wszystkich skonfigurowanych w systemie repozytori\u00f3w:<\/p>\n<pre># yum list<\/pre>\n<p>Listowanie pakiet\u00f3w dost\u0119pnych ze wszystkich skonfigurowanych w systemie repozytori\u00f3w, kt\u00f3re mo\u017cemy zaktualizowa\u0107:<\/p>\n<pre># yum list updates<\/pre>\n<p>Sprawdzenie czy dany pakiet (np. bc) jest zainstalowany w systemie lub czy jest dost\u0119pny ww repozytorium:<\/p>\n<pre># yum list bc<\/pre>\n<p>Listowanie wszystkich zainstalowanych pakiet\u00f3w posiadaj\u0105cych nazw\u0119 zaczynaj\u0105c\u0105 si\u0119 od \u0142a\u0144cucha &#8220;gnome&#8221;:<\/p>\n<pre># yum list installed gnome*<\/pre>\n<p>Listowanie ostatnio dodanych pakiet\u00f3w:<\/p>\n<pre># yum list recent<\/pre>\n<p>Listowanie zainstalowanych i dost\u0119pnych grup pakiet\u00f3w:<\/p>\n<pre># yum groups summary<\/pre>\n<p>Listowanie wszystkich grup pakiet\u00f3w dost\u0119pnych do instalacji:<\/p>\n<pre># yum group list\r\n Available environment groups:\r\n Minimal Install\r\n Infrastructure Server\r\n File and Print Server\r\n Basic Web Server\r\n Virtualization Host\r\n Server with GUI\r\n Available Groups:\r\n Compatibility Libraries\r\n Console Internet Tools\r\n Development Tools\r\n Graphical Administration Tools\r\n Legacy UNIX Compatibility\r\n Scientific Support\r\n Security Tools\r\n Smart Card Support\r\n System Administration Tools\r\n System Management\r\n Done<\/pre>\n<p>Listowanie konkretnej grupy pakiet\u00f3w o nazwie np. base:<\/p>\n<pre># yum group info base\r\n \u2026\u2026 . .\r\n Group: Base\r\n Group-Id: base\r\n Description: The basic installation of Red Hat Enterprise Linux.\r\n Mandatory Packages:\r\n acl\r\n at\r\n attr\r\n authconfig\r\n \u2026\u2026 . .<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Wy\u015bwietlanie informacji o pakietach\u00a0 i o grupach pakiet\u00f3w.<\/span><\/p>\n<p>Informacje o pakiecie:<br \/>\n<code> <\/code><\/p>\n<pre># yum info autofs\r\n \u2026\u2026 . .\r\n Name : autofs\r\n Arch : x86_64\r\n Epoch : 1\r\n Version : 5.0.7\r\n Release : 40.el7\r\n Size : 3 .6 M\r\n Repo : installed\r\n From repo : dvd\r\n Summary : A tool for automatically mounting and unmounting filesystems\r\n License : GPLv2+\r\n Description : autofs is a daemon which automatically mounts filesystems when you use them, and unmounts them later when you are not using them.\r\n T his can include network filesystems, CD-ROMs, floppies, and so forth.\r\n \u2026\u2026 . .<\/pre>\n<p>Informacje o grupie pakiet\u00f3w:<br \/>\n<code><\/code><\/p>\n<pre># yum group info \u201cSystem Administration Tools\u201d\r\n \u2026\u2026 . .\r\n Group: System Administration Tools\r\n Group-Id: system-admin-tools\r\n Description: Utilities useful in system administration.\r\n Optional Packages:\r\n conman\r\n crypto-utils\r\n dump\r\n expect\r\n hardlink\r\n lsscsi\r\n mc\r\n mgetty\r\n \u2026\u2026<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Pobieranie pakiet\u00f3w.<\/span><\/p>\n<p>Narz\u0119dzie <em>yumdownloader<\/em> pozwala pobiera\u0107 pakiety z dost\u0119pnych repozytori\u00f3w, np:<br \/>\n<code> <\/code><\/p>\n<pre># cd \/var\/local\r\n # yumdownloader \u2013v dhclient\r\n \u2026\u2026 . .\r\n dhclient-4.2.5-27.el7_0.1.x86_64.rpm | 276 kB 00:00<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Wy\u015bwietlanie historii tranzakcji yum.<\/span><\/p>\n<p>Domy\u015blnie yum przechowuje informacje o tranzakcjach w bazie danych w katalogu \/var\/lib\/yum\/history. Baza danych historii zawiera numeryczne ID przypisane ka\u017cdej tranzakcji, konto u\u017cytkownika u\u017cywane do tranzakcji, data i czas tranzakcjji, przeprowadzon\u0105 akcj\u0119, pakiety zawi\u0105zane z t\u0105 akcj\u0105, status uko\u0144czenia i inne.<\/p>\n<p>Aby wy\u015bwietli\u0107 ostatnie 20 tanzakcji:<\/p>\n<pre># yum history list<\/pre>\n<p>Aby wy\u015bwietli\u0107 wszystkie poprzednie tranzakcje:<\/p>\n<pre># yum history list all<\/pre>\n<p>Aby wy\u015bwietli\u0107 podsumowanie wszystkich ostatnich tranzakcji:<\/p>\n<pre># yum history summary<\/pre>\n<p>Aby wy\u015bwietli\u0107 tylko tranzakcj\u0119 od 1 do 3:<\/p>\n<pre># yum history list 1..3<\/pre>\n<p>&nbsp;<\/p>\n<p>\u0106wiczenie 1. Tworzenie lokalnego repozytorium <em>yum<\/em>.<\/p>\n<p>Tworzymy katalog <em>\/var\/local<\/em> i wchodzimy do niego:<\/p>\n<pre># mkdir \u2013p \/var\/local &amp;&amp; cd \/var\/local<\/pre>\n<p>Kopiujemy pakiet dcraw-9.19-6.el7.x86_64.rpm z katalogu <em>\/mnt\/Packages<\/em> do tego katalogu:<\/p>\n<pre># cp \/mnt\/Packages\/dcraw* .<\/pre>\n<p>Instalujemy pakiet <em>createrepo<\/em> w systemie:<\/p>\n<pre># yum \u2013y install createrepo\r\n \u2026\u2026 . .\r\n Installed:\r\n createrepo.noarch 0:0.9.9-23.el7\r\n Complete!<\/pre>\n<p>Wykonujemy polecenie\u00a0 <em>createrepo <\/em>w katalogu <em>\/var\/local<\/em> directory aby utworzy\u0107 niezb\u0119dn\u0105 struktur\u0119 katalog\u00f3w dla tego repozytorium. Tworzony zostaje podkatalog <em>repodata<\/em>, kt\u00f3ry zawiera potrzebne pliki.<\/p>\n<pre># createrepo \u2013v \/var\/local\r\n Spawning worker 0 with 1 pkgs\r\n Worker 0: reading dcraw-9.19-6.el7.x86_64.rpm\r\n Workers Finished\r\n Saving Primary metadata\r\n Saving file lists metadata\r\n Saving other metadata\r\n Generating sqlite DBs\r\n Starting other db creation: Sat Sep 20 19:16:23 2014\r\n Ending other db creation: Sat Sep 20 19:16:23 2014\r\n Starting filelists db creation: Sat Sep 20 19:16:23 2014\r\n Ending filelists db creation: Sat Sep 20 19:16:23 2014\r\n Starting primary db creation: Sat Sep 20 19:16:23 2014\r\n Ending primary db creation: Sat Sep 20 19:16:23 2014\r\n Sqlite DBs complete\r\n \r\n\r\n# ll \/var\/local\/repodata\r\n -rw-r--r--. 1 root root 405 Sep 20 20:12 14a0de541849305bd40a7018b37fd84fdd0e01f3cdec84567fa120cd6a27300efilelists.xml.gz\r\n -rw-r--r--. 1 root root 1266 Sep 20 20:12 2dd56fc065d5cbaa0bc40d37fd8beda5201fee6ab841c03837dc46471f2b6e52-\r\n other.sqlite.bz2\r\n -rw-r--r--. 1 root root 1519 Sep 20 20:12 4a9e531db6f1afd7fbd0a183b233fa7a67837b64be2081f3be9443b247a71da7-\r\n filelists.sqlite.bz2\r\n -rw-r--r--. 1 root root 857 Sep 20 20:12 bd2e6608330c3a2fa47b617f5f6bbe13fcf6d3b9b0986a792182d4fb1ece433cprimary.xml.gz\r\n -rw-r--r--. 1 root root 2090 Sep 20 20:12 d6eb83ee59b9e17930105f4f4e365e41dcd1e813eb7bd23e447b66068d33087fprimary.sqlite.bz2\r\n -rw-r--r--. 1 root root 646 Sep 20 20:12\r\n \u2026\u2026 . .<\/pre>\n<p>Tworzymy plik definicji dla repozytorium <em>\/etc\/yum.repos.d\/local.repo<\/em>. W pliku wpisujemy takie dane:<\/p>\n<pre># vi \/etc\/yum.repos.d\/local.repo\r\n [local]\r\n name=local repo\r\n baseurl=file:\/\/\/var\/local\/\r\n enabled=1\r\n gpgcheck=0<\/pre>\n<p>Czyszczenie cache yum:<\/p>\n<pre># yum clean all\r\n  Loaded plugins: langpacks, product-id, subscription-manager\r\n  Cleaning repos: local rhel-7-server-rpms\r\n  Cleaning up everything<\/pre>\n<p>Potwierdzenie, \u017ce repozytorium zosta\u0142o utworzone i jest dost\u0119pne do u\u017cytku:<\/p>\n<pre># yum \u2013v repolist\r\n  \u2026\u2026 . .\r\n  Repo-id : local\r\n  Repo-name : local repo\r\n  Repo-revision : 1 411 2583 56\r\n  Repo-updated : Sat Sep 20 20:1 2:3 7 201 4\r\n  Repo-pkgs : 1\r\n  Repo-size : 227 k\r\n  Repo-baseurl : file:\/\/\/var\/local\r\n  Repo-expire : 21 ,600 second(s) (last: Sat Sep 20 20:1 7:1 9 201 4)\r\n  Repo-filename : \/\/\/etc\/yum.repos.d\/local.repo<\/pre>\n<p>&nbsp;<\/p>\n<p>\u0106wiczenie 2. Tworzenie repozytorium <em>yum DVD<\/em>.<\/p>\n<p>Montujemy p\u0142yt\u0119 instalacyjn\u0105 DVD z RHEL7 w katalogu<em> \/mnt<\/em>:<\/p>\n<pre># mount \u2013o ro \/dev\/cdrom \/mnt<\/pre>\n<p>Tworzymy plik z definicj\u0105 repozytorium<em> \/etc\/yum.repos.d\/dvd.repo<\/em>. W pliku definicji wpisujemy:<\/p>\n<pre># vi \/etc\/yum.repos.d\/dvd.repo\r\n [dvd]\r\n name=dvd repo\r\n baseurl=file:\/\/\/mnt\r\n enabled=1\r\n gpgcheck=0<\/pre>\n<p>Potwierdzenie, \u017ce repozytorium zosta\u0142o utworzone i jest dost\u0119pne do u\u017cytku:<\/p>\n<pre># yum \u2013v repolist\r\n \u2026\u2026 . .\r\n Repo-id : dvd\r\n Repo-name : dvd repo\r\n Repo-revision : 1 3 9944873 2\r\n Repo-updated : Wed May 7 03 :45:3 4 201 4\r\n Repo-pkgs : 4,3 05\r\n Repo-size : 3 .1 G\r\n Repo-baseurl : file:\/\/\/mnt\r\n Repo-expire : 21 ,600 second(s) (last: Sat Sep 20 20:25:28 201 4)\r\n Repo-filename : \/\/\/etc\/yum.repos.d\/dvd.repo<\/pre>\n<p>&nbsp;<\/p>\n<p>\u0106wiczenie 3. Zarz\u0105dzanie pakietami przy u\u017cyciu <em>yum<\/em>.<\/p>\n<p>Usuwamy pakiet ntp:<\/p>\n<pre><code># yum \u2013y erase ntp<\/code>\r\n<code> \u2026\u2026 . .<\/code>\r\n<code> Running transaction<\/code>\r\n<code> Erasing : ntp-4.2.6p5-1 8.el7.x86_64 1 \/1<\/code>\r\n<code> Verifying : ntp-4.2.6p5-1 8.el7.x86_64 1 \/1<\/code>\r\n<code> Removed:<\/code>\r\n<code> ntp.x86_64 0:4.2.6p5-1 8.el7<\/code>\r\n<code> Complete!<\/code><\/pre>\n<p>Zmieniamy katalog na \/var\/local i pobieramy pakiet ntp:<\/p>\n<pre># cd \/var\/local ; yumdownloader ntp\r\n ntp-4.2.6p5-1 8.el7.x86_64.rpm | 53 9 kB 00:00<\/pre>\n<p>Wydajemy polecenie ll command na pliku ntp aby si\u0119 upewni\u0107, \u017ce pakiet zosta\u0142 pobrany:<\/p>\n<pre># ll ntp*\r\n -rw-r--r--. 1 root root 552196 Apr 2 12:39 ntp-4.2.6p5-18.el7.x86_64.rpm<\/pre>\n<p>Instalujemy pakiet:<\/p>\n<pre># yum \u2013y localinstall \/var\/local\/ntp-4.2.6p5-18.el7.x86_64.rpm\r\n \u2026\u2026 . .\r\n Running transaction\r\n Installing : ntp-4.2.6p5-1 8.el7.x86_64 1 \/1\r\n Verifying : ntp-4.2.6p5-1 8.el7.x86_64 1 \/1\r\n Installed:\r\n ntp.x86_64 0:4.2.6p5-1 8.el7\r\n Complete!<\/pre>\n<p>Wy\u015bwietlamy informacje o pakiecie:<\/p>\n<pre># yum info ntp\r\n \u2026\u2026 . .\r\n Installed Packages\r\n Name : ntp\r\n Arch : x86_64\r\n Version : 4.2.6p5\r\n Release : 1 8.el7\r\n Size : 1 .4 M\r\n Repo : installed\r\n From repo : \/ntp-4.2.6p5-1 8.el7.x86_64\r\n Summary : T he NT P daemon and utilities\r\n URL : http:\/\/www.ntp.org\r\n License : (MIT and BSD and BSD with advertising) and GPLv2\r\n \u2026\u2026 . .<\/pre>\n<p>Instalujemy grup\u0119 pakiet\u00f3w Smart Card Support:<\/p>\n<pre># yum \u2013y group install \u201cSmart Card Support\u201d\r\n \u2026\u2026 . .\r\n Installed:\r\n coolkey.x86_64 0:1 .1 .0-27.el7 esc.x86_64 0:1 .1 .0-27.el7\r\n pam_pkcs11 .x86_64 0:0.6.2-1 7.el7 pcsc-lite-ccid.x86_64 0:1 .4.1 0-5.el7\r\n Dependency Installed:\r\n pcsc-lite.x86_64 0:1 .8.8-4.el7 xulrunner.x86_64 0:24.8.0-1 .el7_0\r\n Complete!<\/pre>\n<p>Wy\u015bwietlamy informacje o grupie:<\/p>\n<pre># yum group info \u201cSmart Card Support\u201d\r\n \u2026\u2026 . .\r\n Group: Smart Card Support\r\n Group-Id: smart-card\r\n Description: Support for using smart card authentication.\r\n Default Packages:\r\n =coolkey\r\n =esc\r\n =pam_pkcs11\r\n =pcsc-lite-ccid\r\n Optional Packages:\r\n opencryptoki<\/pre>\n<p>Usuwamy grup\u0119 Smart Card Support:<\/p>\n<pre># yum \u2013y group remove \u201cSmart Card Support\u201d\r\n \u2026\u2026 . .\r\n Removed:\r\n coolkey.x86_64 0:1 .1 .0-27.el7 esc.x86_64 0:1 .1 .0-27.el7\r\n pam_pkcs11 .x86_64 0:0.6.2-1 7.el7 pcsc-lite-ccid.x86_64 0:1 .4.1 0-5.el7\r\n Dependency Removed:\r\n pcsc-lite.x86_64 0:1 .8.8-4.el7\r\n Complete!<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Yum (yellowdog updater, modified) to frontend komendy rpm i preferowane narz\u0119dzie do zarz\u0105dzania pakietami. Narz\u0119dzie wymaga aby system mia\u0142 dost\u0119p do repozytorium pakiet\u00f3w. Repozytoria Red Hat w przeciwie\u0144stwie do CentOS dost\u0119pne s\u0105 tylko dla subskrybent\u00f3w. Mo\u017cliwe jest uruchomienie w\u0142asnego repozytorium co wymaga utworzenia pliku z jego definicj\u0105 w katalogu \/etc\/yum.repos.d\/.<\/p>\n","protected":false},"author":1,"featured_media":1081,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32],"tags":[],"_links":{"self":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/408"}],"collection":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/comments?post=408"}],"version-history":[{"count":57,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/408\/revisions"}],"predecessor-version":[{"id":1313,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/408\/revisions\/1313"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/media\/1081"}],"wp:attachment":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/media?parent=408"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/categories?post=408"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/tags?post=408"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}