Como alterar o valor "padrão" do sysctl?

1

No Linux, parece que quando você altera / define valores em sysctl, o sysctl aplica essas configurações a cada inicialização dinâmica, mas as configurações permanecerão padrão até que o sysctl inicie e aplique os valores definidos pelo usuário.

Como alterar o valor padrão para que eles sejam constantemente os definidos pelo usuário, eliminando assim a janela de tempo deles sendo padrão?

Ou estou errado em primeiro lugar (o sysctl realmente altera o valor permanentemente)?

    
por Sam 16.06.2017 / 15:53

1 resposta

3

Resposta atualizada

O valor "default" de muitos parâmetros do kernel sysctl é compilado no próprio kernel.

Exemplo: kernel.numa_balancing_scan_delay_ms está definido como 1000 por padrão em ./kernel/sched/fair.c , que é carregado em ./kernel/sysctl.c .

Você pode alterá-los no tempo de execução com sysctl 3 . O systemd faz isso na inicialização com systemd-sysctl.service no início do processo de inicialização. / p>

Por alguma razão, parece que você está inicializando algo muito cedo que um parâmetro do kernel não pode ser definido posteriormente e deve ser configurado na inicialização. Se o serviço de inicialização antecipada ainda estiver muito atrasado e você não puder tolerar sysctl parâmetros de configuração tão tarde, talvez você possa defina os parâmetros na inicialização 2 na linha do kernel do seu bootloader.

Se você não puder fazer isso, talvez seja necessário compilar um kernel personalizado 1 com os valores padrão desejados.

Do wiki do Arch Linux :

There are three ways to pass options to the kernel and thus control its behaviour:

  1. When building the kernel. See Kernel Compilation for details.
  2. When starting the kernel (usually, when invoked from a boot loader).
  3. At runtime (through the files in /proc and /sys). See sysctl for details.

Resposta original

Defina os valores em /etc/sysctl.conf ou em um arquivo *.conf em /etc/sysctl.d/ .

Quando eles estiverem definidos, você poderá recarregar a configuração executando sudo sysctl --system .

Recursos adicionais

por 16.06.2017 / 16:28

Tags