Jedním z důležitých úkolů správce systému Linux jeaktualizace balíčků na serverech. Mohou nastat některé scénáře, kdy administrátor Linuxu aplikuje aktualizace na servery, ale po aplikaci aktualizací nemusí aplikace hostovaná na serveru správně fungovat kvůli nekompatibilitě nových aktualizací. V tom případě nemáme jinou možnost než vrátit aktualizace.
Jak víme, že na serverech Linux (RHEL a CentOS ) aktualizace se aplikují pomocí příkazu yum a aktualizace lze vrátit zpět pomocí „příkaz historie yum “.
Předpokládejme, že mám webový server Apache běžící na CentOS 6.x/7.x nebo RHEL 6.x/7.x. Od vývoje jsem dostal požadavek aktualizovat stávající balíček „httpd“ na nejnovější.
Aktualizace balíčku na serverech RHEL / CentOS
Nejprve ověřte stávající verzi balíčku http pomocí příkazu beneath
[[email protected] ~]# rpm -q httpd httpd-2.4.6-40.el7.centos.x86_64 [[email protected] ~]#
Pomocí níže uvedeného příkazu zobrazíte nejnovější dostupný balíček httpd
[[email protected] ~]# yum list httpd
Spuštěním příkazu beneath aktualizujte balíček httpd z2.4.6-40 do 2.4.6–45
[[email protected] ~]# yum update httpd
Ověřte novou verzi balíčku httpd
[[email protected] ~]# rpm -q httpd httpd-2.4.6-45.el7.centos.x86_64 [[email protected] ~]#
Obnovení aktualizací na serverech CentOS 6.x/7.xa RHEL 6.x/7.x
Ve výše uvedených krocích jsme aktualizovali balíček httpd, ale kvůli problému s kompatibilitou musíme vrátit httpd na předchozí verzi. Toho lze dosáhnout pomocí příkazu yum history.
Pojďme získat ID transakce, které bylo použito pro aktualizaci balíčku httpd
[[email protected] ~]# yum history list all
Podle výše uvedeného výstupu získáme podrobnosti, jako například kdy byla akce aktualizace provedena podél id transakce.
Pomocí níže uvedeného příkazu yum vyhledejte, co bylo skutečně aktualizováno podle ID transakce
[[email protected] ~]# yum history info 3
Nyní Vraťte balíček httpd na předchozí verzi pomocí následujícího příkazu
[[email protected] ~]# yum history undo 3
Po úspěšném provedení výše uvedeného příkazu yum ověřte verzi balíčku httpd
[[email protected] ~]# rpm -q httpd httpd-2.4.6-40.el7.centos.x86_64 [[email protected] ~]#
Poznámka: V případě RHEL 5.x a CentOS 5.x můžeme downgradovat a vrátit balíčky pomocí možnosti downgrade v příkazu yum, příklad je uveden níže
[[email protected] ~]# yum downgrade httpd-2.2.3-91.el5 httpd-manual-2.2.3-91.el5 mod_ssl-2.2.3-91.el5
To je pro tento tutoriál vše. Podělte se prosím o své názory a komentáře.