Este tópico descreve como visualizar ou modifique parâmetros de sistema e kernel, ative ou desativar o kdump e instale pacotes Debuginfo, pacotes de código-fonte e pacotes de software experimentais em sistemas operacionais Alibaba Cloud Linux 2.
Visualize ou modifique parâmetros
-
Visualize ou modifique parâmetros do sistema
Execute o comando sysctl para visualize ou modifique os parâmetros de sistema em tempo de execução do Alibaba Cloud Linux 2. O Alibaba Cloud Linux 2 tem os seguintes parâmetros de sistema relacionados à configuração do kernel atualizados no arquivo /etc/sysctl.d/50-aliyun.conf.
Parâmetro do sistema
Descrição
kernel.hung_task_timeout_secs = 240Aumenta o tempo limite do hung_task do kernel em segundos para evitar avisos frequentes de hung_task.
kernel.panic_on_oops = 1Gera a exceção kernel panic quando ocorre um erro Oops no kernel. Os detalhes da falha do sistema são capturados automaticamente se o kdump estiver ativado.
kernel.watchdog_thresh = 50Define os limiares para eventos como temporizador de alta resolução (hrtimer), interrupção não mascarável (NMI), soft lockup e hard lockup para evitar possíveis falsos positivos do kernel.
kernel.hardlockup_panic = 1Gera a exceção kernel panic quando ocorre um erro de hard lockup no kernel. Os detalhes da falha do sistema são capturados automaticamente se o kdump estiver ativado.
-
Visualize parâmetros do kernel
Execute o comando
cat /proc/cmdlinepara visualize os parâmetros do kernel em tempo de execução do Alibaba Cloud Linux 2. O Alibaba Cloud Linux 2 apresenta os seguintes parâmetros do kernel atualizados.Parâmetro do kernel
Descrição
crashkernel=0M-2G:0M,2G-8G:192M,8G-:256MReserva espaço de memória para o kdump.
cryptomgr.notestsDesativa a verificação automática de criptografia durante a inicialização do kernel para acelerar a inicialização do sistema.
cgroup.memory=nokmemDesativa o recurso de estatísticas de memória do kernel no memory cgroup para evitar possível instabilidade do kernel.
rcupdate.rcu_cpu_stall_timeout=300Eleva o tempo limite do RCU CPU Stall Detector para 300 segundos para evitar falsos positivos do kernel.
Ative ou desativar o kdump
O Alibaba Cloud Linux 2 fornece o service kdump. Com esse service ativado, é possível capturar erros do kernel para auxiliar na análise de falhas.
Se a memória do tipo de instância selecionado não ultrapassar 2 GiB, não será possível usar o service kdump.
-
Execute os comandos a seguir em sequência para ative o service kdump:
# Enable the kdump service. sudo systemctl enable kdump.service # Restart the kdump service. sudo systemctl restart kdump.service -
Execute os comandos a seguir em sequência para devolver ao sistema operacional o espaço de endereçamento de memória reservado pelo service kdump e desativar o service:
# Change the configurations in the /sys/kernel/kexec_crash_size file. sudo sh -c 'echo 0 > /sys/kernel/kexec_crash_size' # Disable the kdump service. sudo systemctl disable kdump.service # Stop the kdump service. sudo systemctl stop kdump.serviceNotaApós devolver o espaço de endereçamento de memória reservado pelo service kdump ao sistema operacional, reinicie o sistema antes de reativar o service kdump.
Instale o pacote Debuginfo e o pacote de código-fonte
-
Execute os comandos a seguir em sequência para instale o pacote Debuginfo:
# Install yum-utils. sudo yum install -y yum-utils # Install the Debuginfo package. In the command, packageName specifies the name of the package that you want to install. sudo debuginfo-install -y <packageName> -
Execute os comandos a seguir em sequência para instale o pacote de código-fonte:
# Install the source code. sudo yum install -y alinux-release-source # Install yum-utils. sudo yum install -y yum-utils # Install the source code package. In the command, sourcePackageName specifies the name of the package that you want to install. sudo yumdownloader --source <sourcePackageName>
Usar pacotes de software experimental
A Alibaba Cloud fornece pacotes de software experimental, mas eles não passam por testes completos. A Alibaba Cloud não garante a qualidade desses pacotes. O Alibaba Cloud Linux 2 oferece os seguintes tipos de pacotes experimentais:
-
Pacotes de software experimental para uso geral
Golang 1.12Golang 1.13
Execute os comandos a seguir em sequência para instale um pacote de software experimental:
# Enable support for Yellowdog Updater Modified (YUM) repositories. sudo yum install -y alinux-release-experimentals # Install an experimental software package that serves regular purposes. In the command, packageName specifies the name of the software package that you want to install. sudo yum install -y <packageName> -
Kits de desenvolvimento com suporte a plug-ins SCL
Kit de desenvolvimento baseado em
GCC-7.3.1: devtoolset-7Kit de desenvolvimento baseado em
GCC-8.2.1: devtoolset-8Kit de desenvolvimento baseado em
GCC-9.1.1: devtoolset-9
Execute os comandos a seguir em sequência para instale um pacote de software experimental:
# Install scl-utils. sudo yum install -y scl-utils # Enable support for the YUM repository. sudo yum install -y alinux-release-experimentals # Install the software packages that you require from the YUM repository. The following sample commands are run to install all development kits that support SCL plug-ins: sudo yum install -y devtoolset-7-gcc devtoolset-7-gdb devtoolset-7-binutils devtoolset-7-make sudo yum install -y devtoolset-8-gcc devtoolset-8-gdb devtoolset-8-binutils devtoolset-8-make sudo yum install -y devtoolset-9-gcc devtoolset-9-gdb devtoolset-9-binutils devtoolset-9-makeApós instale os pacotes de software, use as versões mais recentes do GNU Compiler Collection (GCC) e das ferramentas relacionadas. Exemplos de comandos:
# Specify a repository name to view an existing SCL. In this example, the devtoolset-7 repository is used. scl -l devtoolset-7 # Run the related SCL software. scl enable devtoolset-7 'gcc --version'
FAQ
O que fazer se a instalação do pacote Debuginfo falhar?
Caso não consiga instale o pacote Debuginfo executando o comando sudo debuginfo-install -y <packageName> conforme descrito na seção Install the Debuginfo package and the source code package deste tópico, execute o comando a seguir para instale o pacote Debuginfo.
Substitua <packageName> pelo nome do pacote desejado. Exemplo: kernel-debuginfo.
sudo yum install --enablerepo=*-debug <packageName>