Reinicie o serviço após a atualização do yum?

5

Hoje atualizei vários de nossos servidores usando o yum.

4 package(s) needed for security, out of 4 available
Run "sudo yum update" to apply all updates.

Três foram openssh updates, um java. Preciso reiniciar o servidor openssh após a atualização?

Quando vejo que o Apache está atualizado, reinicio-o manualmente. Eu faço o mesmo para atualizações do PHP, mas não sei se isso é realmente necessário.

No Debian, quando uso o apt-get, vejo mensagens que um serviço está sendo reiniciado. O yum faz o mesmo?

Quais serviços eu preciso reiniciar manualmente após uma atualização? Ou o yum cuida do reinício?

    
por SPRBRN 31.03.2016 / 09:42

2 respostas

3

Depois de executar a atualização do yum para atualizar as bibliotecas, pode haver serviços em execução que ainda estejam usando as cópias antigas das bibliotecas. Esses serviços ainda podem estar vulneráveis a bugs de segurança nas bibliotecas antigas.

É relativamente fácil descobrir quais processos são afetados usando lsof para listar processos usando arquivos excluídos:

# lsof | awk '$5 == "DEL" { print }'
auditd     1001  1001 root DEL REG /usr/lib64/libnss_files-2.18.so;53bd9626
libvirtd   1468  1509 root DEL REG /usr/lib64/libnss_files-2.18.so;53bd9626
[lots more output]

Se você realmente executar esse comando depois de atualizar (digamos) o glibc, você verá páginas e páginas de saída difíceis de filtrar.

No entanto, com systemd , podemos mapear os IDs do processo para serviços e sessões de usuários.

Isso é o que o script a seguir faz:

link

A saída típica é assim:

Para concluir a instalação do glibc-2.18-11.fc20.x86_64, você deve reiniciar os seguintes serviços:

    - accounts-daemon.service - Accounts Service   
    - console-kit-daemon.service - Console Manager
    - udisks2.service - Disk Manager
    - auditd.service - Security Auditing Service
    - dbus.service - D-Bus System Message Bus
    - rtkit-daemon.service - RealtimeKit Scheduling Policy Service
    - upower.service - Daemon for power management
    - colord.service - Manage, Install and Generate Color Profiles
    - firewalld.service - firewalld - dynamic firewall daemon
    - polkit.service - Authorization Manager
    - rsyslog.service - System Logging Service 
    - NetworkManager.service - Network Manager   
    - libvirtd.service - Virtualization daemon
    - gdm.service - GNOME Display Manager

In order to complete the installation of glibc-2.18-11.fc20.x86_64,
you should tell the following users to log out and log in:

    - session-1.scope - Session 1 of user rjones
    
por 01.04.2016 / 14:37
1

Você também pode instalar o pacote yum-utils que contém o binário needs-restarting . Depois que sua atualização do yum for executada, você emitirá o comando

needs-restarting

que apontará para processos que dependem de bibliotecas que foram atualizadas e, portanto, devem ser reiniciadas, por exemplo:

/root » needs-restarting
458 : /usr/lib/systemd/systemd-journald
1161 : /usr/sbin/named -u named -t /var/named/chroot -c /etc/named.conf -u named -n 2
665 : /usr/sbin/abrtd -d -s
661 : /usr/lib/systemd/systemd-logind
660 : /usr/lib/polkit-1/polkitd --no-debug
493 : /usr/lib/systemd/systemd-udevd
1052 : /usr/local/patchman/patchmand
1943 : /usr/libexec/postfix/master -w
698 : /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
1 : /usr/lib/systemd/systemd --switched-root --system --deserialize 22
717 : /usr/sbin/NetworkManager --no-daemon
1019 : /usr/bin/python -Es /usr/sbin/tuned -l -P
1652 : /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
1010 : /usr/bin/python /usr/bin/salt-minion
678 : /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
16299 : /sbin/rpcbind -w
638 : /sbin/auditd
675 : /usr/sbin/smartd -n -q never
672 : /usr/sbin/irqbalance --foreground
1021 : php-fpm: master process (/etc/php-fpm.conf)
480 : /usr/sbin/lvmetad -f
1024 : /usr/bin/dockerd
1047 : /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
1020 : /usr/sbin/sshd -D
1972 : qmgr -l -t fifo -u
1537 : /usr/bin/python /usr/bin/salt-minion
2026 : /usr/bin/python /usr/bin/salt-minion
1009 : php-fpm: master process (/opt/plesk/php/7.0/etc/php-fpm.conf)
1249 : sw-engine-kv
2028 : tlsmgr -l -t unix -u
682 : /usr/sbin/chronyd

Também é possível determinar se a máquina deve ser reinicializada adicionando o sinalizador -r (CentOS / RHEL 7+ somente!), assim:

/root » needs-restarting -r
Core libraries or services have been updated:
  kernel -> 3.10.0-862.3.2.el7
  linux-firmware  20180220-62.1.git6d51311.el7_5
Reboot is required to ensure that your system benefits from these updates.
    
por 09.06.2018 / 09:10