Sugestões para fazer parâmetros sysfs persistem através de reinicializações

9

Estou fazendo experiências com grandes alterações no Linux Parâmetros de tempo de execução do sistema expostos através do sistema de arquivos virtual sysfs.

Qual é a maneira mais eficiente de manter esses parâmetros para que eles persistam em reinicializações em um sistema no estilo RHEL / CentOS?

É simplesmente um caso de dumping de comandos em /etc/rc.local? Existe um script de inicialização que seja adequado para isso? Também estou pensando em padronização de uma perspectiva de gerenciamento de configuração. Existe um sysfs limpo equivalente a sysctl ?

    
por ewwhite 26.03.2012 / 23:19

4 respostas

4

Se fosse eu, provavelmente criaria um script /etc/sysfs.conf e um /etc/init.d/sysfsutils init. Então eu poderia manter todas as minhas configurações e opções relacionadas ao sysfs separadas de todo o resto. Com um script de inicialização, ele poderia ser gerenciado e manipulado usando os idiomas padrão para gerenciar serviços e configurações através de scripts de init do SysV (incluindo service sysfsutils [start|stop|reload|restart|status] no RHEL / CentOS (com um pequeno trabalho extra)).

Mesmo que eu não tenha me incomodado com o script /etc/init.d/sysfsutils , ainda colocaria as opções em /etc/sysfs.conf e, em seguida, chamaria / processaria o conteúdo desse arquivo a partir de um script separado ( /etc/rc.local , como último / opção preguiçosa).

Nota: As distribuições baseadas em Debian e Debian (Ubuntu, etc.) já fazem isso, e enviam um arquivo /etc/sysfs.conf config e script init com seu pacote sysfsutils. Agarrar esses dois arquivos de uma caixa Debian / Ubuntu (ou o pacote fonte Debian para sysfsutils) provavelmente seria uma boa maneira de começar a replicar você mesmo.

    
por 27.03.2012 / 00:33
5

Você também pode tentar as regras do udev dependendo do que deseja definir. Por exemplo, no meu sistema, eu configurei meus SSDs para usar o deadline scheduler via /etc/udev/rules.d/60-ssd-scheduler.rules contendo:

# set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"

Você deve conseguir associar quaisquer atributos sysfs por meio do mecanismo ATTR.

    
por 14.10.2014 / 01:21
3

Experimente o pacote sysfsutils . Em particular, /etc/sysfs.conf deve ajudar com isso.

    
por 26.03.2012 / 23:45
3

Para o Fedora / RHEL / CentOS - o método padrão para configurar o sysfs e mantê-lo durante as reinicializações é usar tuned. tuned é uma infra-estrutura geral de ajuste do sistema. Para os parâmetros sysfs , crie uma sub-rotina [sysfs] no seu arquivo de configuração e forneça uma linha por variável que você deseja definir e que tenha persistência nas reinicializações.

Também como apontado por Lennart Poettering - o systemd tem uma capacidade nativa de fornecer configurações sysfs através da eliminação de um fragmento em /etc/tmpfiles.d/

    
por 15.05.2015 / 03:48