Udržování systému CentOS aktuální pomocí nejnovějších aktualizací zabezpečení je jednou z nejdůležitějších součástí celkového zabezpečení systému. Pokud neaktualizujete balíčky operačního systému nejnovějšími bezpečnostními záplatami, váš počítač bude zranitelný vůči útokům.
Doporučený přístup je automatizovat aktualizace pomocí yum-cron
. Další možností je ruční aktualizace systému.
V tomto tutoriálu vám ukážeme, jak ručně aktualizovat systémové balíčky na CentOS 7. Stejné pokyny platí pro CentOS 6.
Předpoklady #
Chcete-li nainstalovat a aktualizovat balíčky, musíte být přihlášeni jako root nebo uživatel s právy sudo.
Aktualizace balíčků v systému CentOS #
RPM je balicí systém používaný společností Red Hat a jejími deriváty, jako je CentOS.
Yum je výchozí nástroj správce balíčků v CentOS. Používá se k instalaci, odebírání, stahování, dotazování a aktualizaci balíčků z oficiálních úložišť CentOS i dalších úložišť třetích stran.
Před spuštěním aktualizace můžete zkontrolovat dostupné aktualizace pomocí následujícího příkazu:
sudo yum check-update
Výstup bude obsahovat seznam všech balíčků, které jsou k dispozici pro aktualizaci:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.s.uw.edu
* centos-sclo-rh: centos.s.uw.edu
* centos-sclo-sclo: centos.s.uw.edu
* epel: mirror.cherryservers.com
* extras: centos.s.uw.edu
* updates: centos.s.uw.edu
bind-libs-lite.x86_64 32:9.9.4-74.el7_6.2 updates
bind-license.noarch 32:9.9.4-74.el7_6.2 updates
curl.x86_64 7.29.0-51.el7_6.3 updates
device-mapper.x86_64 7:1.02.149-10.el7_6.8 updates
device-mapper-event.x86_64 7:1.02.149-10.el7_6.8 updates
device-mapper-event-libs.x86_64 7:1.02.149-10.el7_6.8 updates
device-mapper-libs.x86_64 7:1.02.149-10.el7_6.8 updates
Chcete-li aktualizovat jeden balíček, použijte yum install
následovaný názvem balíčku, který chcete aktualizovat. Chcete-li například aktualizovat pouze curl
balíček, který byste spustili:
sudo yum install curl
Yum vám poskytne souhrn balíčků, které budou aktualizovány, a vyzve vás k potvrzení. Odpovězte y
a balíčky budou aktualizovány.
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Updating:
curl x86_64 7.29.0-51.el7_6.3 updates 269 k
Updating for dependencies:
libcurl x86_64 7.29.0-51.el7_6.3 updates 222 k
Transaction Summary
================================================================================
Upgrade 1 Package (+1 Dependent package)
Total download size: 492 k
Is this ok [y/d/N]:
Chcete-li aktualizovat všechny balíčky, použijte yum update
příkaz:
sudo yum update
Příkaz aktualizuje úložiště a poskytne vám seznam všech balíčků, které lze aktualizovat. Po zobrazení výzvy zadejte y
pokračovat.
Zabránit aktualizaci balíčků #
Někdy můžete chtít omezit aktualizaci balíčku na novější verzi. Plugin Yum versionlock
umožňuje zamknout balíčky na konkrétní verzi.
Plugin není ve výchozím nastavení nainstalován, takže jej nejprve musíte nainstalovat:
sudo install yum-plugin-versionlock
Během instalace budou ve vašem systému vytvořeny dva konfigurační soubory uložené v /etc/yum/pluginconf.d
adresář. Konfigurační soubor versionlock.conf
a soubor versionlock.list
obsahující uzamčené balíčky. Ve výchozím nastavení nejsou v tomto souboru uvedeny žádné balíčky.
Chcete-li zamknout verzi balíčku, můžete buď ručně přidat název balíčku do souboru, nebo použít yum versionlock
příkaz následovaný názvem balíčku. Chcete-li například zabránit aktualizaci všech balíčků PHP (všechny balíčky začínající na „php-“), spustili byste:
sudo yum versionlock php-*
Tím uzamknete balíčky PHP na aktuální verzi.
Zobrazení protokolů Yum #
Historie balíčků nainstalovaných a aktualizovaných pomocí yum
je přihlášen do /var/log/yum
soubor. Nejnovější záznamy můžete zobrazit pomocí cat
nebo tail
příkaz:
sudo tail /var/log/yum.log
Výstup bude obsahovat záznamy o instalacích a aktualizacích balíčků:
Jul 23 16:00:04 Installed: 7:squid-3.5.20-12.el7_6.1.x86_64
Jul 31 22:27:16 Updated: libcurl-7.29.0-51.el7_6.3.x86_64
Jul 31 22:27:16 Updated: curl-7.29.0-51.el7_6.3.x86_64