GNU/Linux >> Znalost Linux >  >> Cent OS

Průvodce pro začátečníky ke správě streamů modulů balíčků v CentOS/RHEL 8

Úvod do aplikačních proudů

CentOS/RHEL 8.0 zavádí koncept aplikačních proudů. Více verzí komponent uživatelského prostoru dodávaných s distribucí je nyní dodáváno současně. Mohou být aktualizovány častěji než balíčky jádra operačního systému. To vám poskytuje větší flexibilitu pro přizpůsobení Red Hat Enterprise Linux, aniž by to ovlivnilo základní stabilitu platformy nebo konkrétní nasazení.

Správa alternativních verzí softwarového balíčku aplikace a souvisejících balíčků tradičně znamenala udržování různých úložišť pro každou jinou verzi. Pro vývojáře, kteří chtěli nejnovější verzi aplikace, a administrátory, kteří chtěli nejstabilnější verzi aplikace, to vytvořilo situaci, jejíž správa byla únavná. Tento proces je v Red Hat Enterprise Linux 8 zjednodušen pomocí nové technologie nazvané Modularity. Modularita umožňuje, aby jediné úložiště hostovalo více verzí balíčku aplikace a jejích závislostí.

Obsah CentOS/RHEL 8 je distribuován prostřednictvím dvou hlavních softwarových úložišť:BaseOS a Application Stream (AppStream).

Základní OS

Úložiště BaseOS poskytuje základní obsah operačního systému pro Red Hat Enterprise Linux jako balíčky RPM. Komponenty BaseOS mají životní cyklus stejný jako u obsahu v předchozích verzích CentOS/RHEL.

Proud aplikací

Repozitář Application Stream poskytuje obsah s různými životními cykly jako moduly i tradiční balíčky. Application Stream obsahuje nezbytné části systému a také širokou škálu aplikací dříve dostupných jako součást Red Hat Software Collections a dalších produktů a programů.

Poznámka :BaseOS i AppStream jsou nezbytnou součástí systému CentOS/RHEL 8.

Úložiště Application Stream obsahuje dva typy obsahu:Moduly a tradiční balíčky RPM. Modul popisuje sadu RPM balíčků, které k sobě patří. Moduly mohou obsahovat několik proudů, aby bylo možné nainstalovat více verzí aplikací. Povolení toku modulů poskytuje systému přístup k balíčkům RPM v rámci tohoto toku modulů.

Moduly

Modul je sada balíčků RPM, které jsou konzistentní sadou, která patří k sobě. Obvykle je to organizováno kolem konkrétní verze softwarové aplikace nebo programovacího jazyka. Typický modul může obsahovat balíčky s aplikací, balíčky se specifickými knihovnami závislostí aplikace, balíčky s dokumentací k aplikaci a balíčky s pomocnými utilitami.

Proudy modulu

Každý modul může mít jeden nebo více proudů modulů, které obsahují různé verze obsahu. Každý z streamů přijímá aktualizace nezávisle. Představte si proud modulů jako virtuální úložiště ve fyzickém úložišti Application Stream. Pro každý modul lze povolit pouze jeden z jeho streamů a poskytovat jeho balíčky.

Profily modulu

Každý modul může mít jeden nebo více profilů. Profil je seznam určitých balíčků, které se mají nainstalovat společně pro konkrétní případ použití, jako je server, klient, vývoj, minimální instalace nebo jiné. Instalace konkrétního profilu modulu jednoduše nainstaluje konkrétní sadu balíčků ze streamu modulů. Následně můžete balíčky normálně instalovat nebo odinstalovat. Pokud nezadáte profil, modul nainstaluje svůj výchozí profil.

Správa modulů pomocí YUM

Yum verze 4, nová v CentOS/RHEL 8, přidává podporu pro nové modulární funkce Application Stream. Pro manipulaci s modulárním obsahem byl přidán příkaz yum module. Jinak yum funguje s moduly podobně jako s běžnými balíčky.

Výpis modulů

Chcete-li zobrazit seznam dostupných modulů, použijte seznam modulů yum:

[user@host ~]$ yum module list   
Red Hat Enterprise Linux 8.0 AppStream - AppStream HTB (RPMs)  
 Name                   Stream        Profiles   Summary   
389-ds                  1.4           default    389 Directory Server (base)   
ant                     1.10 [d]      common [d] Java build tool   
container-tools         1.0 [d]       common [d] Common tools and dependencies 
for container runtimes  
...output omitted...   
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Poznámka :Použijte nápovědu na konci výstupu, abyste zjistili, které proudy a profily jsou povoleny, zakázány, instalovány a které jsou výchozí.

Chcete-li zobrazit seznam proudů modulů pro konkrétní modul a získat jejich stav:

[user@host ~]$ yum module list perl 
Red Hat Enterprise Linux 8 for x86_64 - AppStream HTB (RPMs) 
Name  Stream       Profiles             Summary 
perl  5.24         common [d], minimal  Practical Extraction and Report Language 
perl  5.26 [d]     common [d], minimal  Practical Extraction and Report Language 

Chcete-li zobrazit seznam balíčků nainstalovaných ve výchozím proudu modulu:

[user@host ~]$ yum module info perl   
Name             : perl   
Stream           : 5.26 [d][a]    
Version          : 820181219174508    
Context          : 9edba152    
Profiles         : common, minimal    
Default profiles : default    
Repo             : rhel-8-fo r-x86_64-appstream-htb-rpms    
Summary          : Practical Extraction and Report Language   
...output omitted...    
Artifacts   : perl-4:5.24.4-401.module+el8+2464+d274aed1.x86_64                
            : perl-Algorithm-Diff-0:1.1903-9.module+el8+2464+d274aed1.noarch
            : perl-Archive-Tar-0:2.30-1.module+el8+2464+d274aed1.noarch
...output omitted... 

Poznámka :Bez určení streamu modulu zobrazí informace o modulu yum podrobnosti o výchozím proudu modulu. Pro zobrazení konkrétního proudu modulu použijte formát název-modulu:stream. Přidejte volbu –profile pro zobrazení informací o balíčcích nainstalovaných jednotlivými profily modulu. Například:

[user@host ~]$ yum module info --profile perl:5.24

Povolení streamování modulů a instalace modulů

Pro instalaci modulu musí být povoleny proudy modulů. Aby se tento proces zjednodušil, když je modul nainstalován, v případě potřeby povolí jeho streamování modulů. Streamy modulů lze povolit ručně pomocí povolení modulu yum a poskytnutí názvu proudu modulu.

Poznámka :Pro daný modul může být povolen pouze jeden stream modulu. Povolením dalšího streamu modulu zakážete původní stream modulu.

Nainstalujte modul pomocí výchozího streamu a profilů:

[user@host ~]$ sudo yum module install -y perl 
Dependencies resolved. 
================================================================================ 
Package         Arch   Version      Repository                            Size 
================================================================================ 
Installing group/module packages: 
  perl            x86_64 4:5.26.3-416.el8
                                     rhel-8-for-x86_64-appstream-htb-rpms  72 k 
Installing dependencies: 
...output omitted... 
Running transaction  
  Preparing        :                                                        1/1  
  Installing       : perl-Exporter-5.72-396.el8.noarch                    1/155  
  Installing       : perl-Carp-1.42-396.el8.noarch                        2/155 
...output omitted... 
Installed:  
  perl-4:5.26.3-416.el8.x86_64  
  perl-Encode-Locale-1.05-9.el8.noarch 
...output omitted... 
Complete!
Poznámka :Stejných výsledků bylo možné dosáhnout spuštěním yum install @perl. Zápis @ informuje yum, že argument je název modulu namísto názvu balíčku.

Chcete-li ověřit stav proudu modulu a nainstalovaného profilu:

[user@host ~]$ yum module list perl 
Red Hat Enterprise Linux 8.0 AppStream - AppStream HTB (RPMs) 
Name  Stream       Profiles             Summary 
perl  5.24         common, minimal      Practical Extraction and Report Language 
perl  5.26 [d][e]  common [i], minimal  Practical Extraction and Report Language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled 

Odebrání modulů a deaktivace toků modulů

Odstranění modulu odstraní všechny balíčky nainstalované podle profilů aktuálně povoleného proudu modulů a všechny další balíčky a moduly, které na nich závisí. Balíčky nainstalované z tohoto proudu modulů, které nejsou uvedeny v žádném z jeho profilů, zůstávají nainstalovány v systému a lze je ručně odstranit.

Poznámka :Odebírání modulů a přepínání toků modulů může být trochu složité. Přepnutí streamu povoleného pro modul je ekvivalentní resetování aktuálního streamu a povolení nového streamu. Nemění automaticky žádné nainstalované balíčky. Musíte to udělat ručně. Přímá instalace proudu modulů, který je jiný než ten, který je aktuálně nainstalovaný, se nedoporučuje, protože během instalace se mohou spustit skripty upgradu, které by narušily původní proud modulů. To by mohlo vést ke ztrátě dat nebo jiným problémům s konfigurací. Postupujte obezřetně

Odebrání nainstalovaného modulu:

[user@host ~]$ sudo yum module remove -y perl  
Dependencies resolved. 
=====================================================================================================   
Package                        ArchVersion            Repository                                 Size  
=====================================================================================================  
Removing:   
  perl                           x86_644:5.26.3-416.el8   @rhel-8-for-x86_64-appstream-htb-rpms   0  
Removing unused dependencies:
  ...output omitted... 
Running transaction  
  Preparing        :                                                        1/1  
  Erasing          : perl-4:5.26.3-416.el8.x86_64                         1/155  
  Erasing          : perl-CPAN-2.18-397.el8.noarch                        2/155  
...output omitted...  
Removed:  
perl-4:5.26.3-416.el8.x86_64  
dwz-0.12-9.el8.x86_64  
...output omitted... 
Complete! 

Po odebrání modulu je proud modulu stále povolen. Chcete-li ověřit, zda je stream modulu stále povolen:

[user@host ~]$ yum module list perl 
Red Hat Enterprise Linux 8.0 AppStream - AppStream HTB (RPMs) 
Name  Stream        Profiles             Summary 
perl  5.24          common [d], minimal  Practical Extraction and Report Language 
perl  5.26 [d][e]   common [d], minimal  Practical Extraction and Report Language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
[user@host ~]$ sudo yum module disable perl 
 ...output omitted... 
Dependencies resolved. 
================================================================================= 
Package           Arch             Version              Repository         Size 
================================================================================= 
Disabling module streams: perl                               5.26 
Is this ok [y/N]: y 
Complete! 

Přepínání modulových toků

Přepínání toků modulů obecně vyžaduje upgrade nebo downgrade obsahu na jinou verzi. Chcete-li zajistit čistý přepínač, měli byste nejprve odstranit moduly poskytované proudem modulů. Tím se odstraní všechny balíčky nainstalované profily modulu a všechny moduly a balíčky, na kterých jsou tyto balíčky závislé.

Chcete-li povolit jiný stream modulu a nainstalovat modul:

[user@host ~]$ sudo yum module install perl:5.24

Nový stream modulu bude povolen a aktuální stream deaktivován. Může být nutné aktualizovat nebo downgradovat balíčky z předchozího proudu modulů, které nejsou uvedeny v novém profilu. V případě potřeby použijte k provedení tohoto úkolu distro-synchronizaci yum. Mohou také existovat balíčky, které zůstanou nainstalovány z předchozího proudu modulů. Odeberte ty pomocí yum remove.


Cent OS
  1. 3 způsoby, jak zobrazit seznam všech nainstalovaných balíčků v RHEL, CentOS a Fedora

  2. Jak extrahovat balíček 7z v CentOS/RHEL/Fedora?

  3. CentOS / RHEL 7:Průvodce pro začátečníky systemd

  1. Průvodce pro začátečníky laděním profilů v CentOS/RHEL

  2. Jak přepínat modulové streamy v CentOS/RHEL 8

  3. CentOS / RHEL:Průvodce cronem pro začátečníky

  1. Jak odstranit osiřelé balíčky na CentOS Linux

  2. CentOS / RHEL 7:Průvodce firewallem pro začátečníky

  3. CentOS / RHEL 7 :Nelze spustit/povolit iptables