Este tópico descreve como atualizar pacotes de software em uma instância ECS Linux para resolver problemas causados por defeitos de software conhecidos no sistema operacional.
Cenários
Se os serviços na sua instância ECS Linux apresentarem comportamento inesperado, a causa pode ser um defeito de software em um sistema operacional desatualizado. Muitas vezes, é possível resolver esses problemas atualizando os pacotes de software.
A seguir estão listados alguns defeitos de software conhecidos:
Correção de problemas mediante atualização de software
Conflito de porta no CentOS ou RHEL 7
Sintomas
Em algumas instâncias CentOS ou Red Hat Enterprise Linux (RHEL) 7, um serviço ou processo não inicia devido a um conflito de porta, tornando-o indisponível. Ao verificar o uso de portas com o comando netstat, observa-se que a porta está ocupada pelo processo dhclient, conforme mostra a saída abaixo:
[xxx@xxx ~]# netstat -lnput |grep dhc
udp 0 0 0.0.0.0:24399 0.0.0.0:* 10994/dhclient
udp 0 0 0.0.0.0:68 0.0.0.0:* 10994/dhclient
udp6 0 0 :::21027 :::* 10994/dhclient
Causa
Em condições normais, o serviço cliente ISC DHCP (dhclient) usa a porta 67/68 para DHCPv4 ou a porta 546/547 para DHCPv6. Em algumas instâncias ECS que executam versões específicas do CentOS ou RHEL 7, a versão pré-instalada do dhclient é anterior à 4.2.5-60. Essas versões mais antigas possuem um defeito de software que faz o dhclient ocupar portas não padrão. Se outro serviço ou processo na instância tentar usar uma dessas portas, ocorrerá um conflito de porta, impedindo o início do seu serviço ou processo.
Solução
Siga as instruções em Atualizar pacotes de software específicos ou Atualizar todos os pacotes de software para atualizar o pacote de software dhclient no seu sistema CentOS ou RHEL 7.
Conexões SSH lentas no CentOS ou RHEL 7
Sintomas
Você pode enfrentar conexões remotas SSH lentas em instâncias ECS de longa duração que executam CentOS ou RHEL 7. Ao verificar o uso de CPU dos processos do sistema, o processo systemd-logind pode estar consumindo 100% da CPU. O log do sistema contém entradas semelhantes às seguintes:
# journalctl -u dbus
Mar 30 17:23:19 localhost dbus[21]: [system] Activating via systemd: service name='org.freedesktop.login1' unit='dbus-org.freedesk...
Mar 30 17:23:42 localhost dbus[21]: [system] Failed to activate service 'org.freedesktop.login1': timed out...
Causa
Defeitos conhecidos nos componentes systemd-logind e D-Bus causam esse problema. Para resolvê-lo, atualize esses componentes, especialmente o componente D-Bus.
Solução
Siga as instruções em Atualizar pacotes de software específicos ou Atualizar todos os pacotes de software para atualizar o pacote de software dbus no seu sistema CentOS ou RHEL 7.
Recomendamos atualizar o componente D-Bus para a versão mais recente em todos os sistemas Linux.
Para openSUSE e SUSE Linux Enterprise Server, o pacote de software é
dbus-1.Para outras distribuições Linux, o pacote de software é
dbus.
Atualização de pacotes de software
Caso um defeito de software conhecido no sistema operacional Linux esteja causando problemas na sua instância ECS, atualize os componentes afetados para resolver a questão. Escolha entre atualizar pacotes de software específicos ou atualizar todos os pacotes de software. As instruções a seguir usam dhclient como exemplo.
Atualizar pacotes de software específicos
Conecte-se remotamente à sua instância Linux. Para mais informações, consulte Métodos de conexão.
-
Execute o comando apropriado para o seu sistema operacional para atualizar um pacote de software específico.
O comando varia conforme o sistema operacional:
-
Alibaba Cloud Linux 2.1903, AnolisOS 7, CentOS 7 e anteriores, Red Hat Enterprise Linux 7 e anteriores:
sudo yum update <package_name> -
AlmaLinux, AnolisOS 8 e posteriores, CentOS 8 e posteriores, CentOS Stream 8 e posteriores, Fedora 33 e posteriores, Red Hat Enterprise Linux 8 e posteriores, Rocky Linux:
sudo dnf update <package_name> -
Debian e Ubuntu:
# First, update local software repository metadata to get the latest package information. sudo apt update # Then, upgrade the specified software package to the latest version. sudo apt upgrade <package_name> -
openSUSE e SUSE Linux Enterprise Server:
# First, update local software repository metadata to get the latest package information. sudo zypper refresh # Then, upgrade the specified software package to the latest version. sudo zypper update <package_name>
-
Atualizar todos os pacotes de software
Conecte-se remotamente à sua instância Linux. Para mais informações, consulte Métodos de conexão.
-
Execute o comando adequado ao seu sistema operacional para atualizar todos os pacotes de software instalados.
-
Alibaba Cloud Linux 2.1903, AnolisOS 7, CentOS 7 e anteriores, Red Hat Enterprise Linux 7 e anteriores:
sudo yum update -
AlmaLinux, AnolisOS 8 e posteriores, CentOS 8 e posteriores, CentOS Stream 8 e posteriores, Fedora 33 e posteriores, Red Hat Enterprise Linux 8 e posteriores, Rocky Linux:
sudo dnf update -
Debian e Ubuntu:
# First, update local software repository metadata to get the latest package information. sudo apt update # Then, upgrade all installed software packages to their latest versions. sudo apt upgrade -
openSUSE e SUSE Linux Enterprise Server:
# First, update local software repository metadata to get the latest package information. sudo zypper refresh # Then, upgrade all installed software packages to their latest versions. sudo zypper update
-