Selecionando Runlevel no Slackware
O Slackware e seus derivados, como o Slamd64, são ótimos opções de distribuições, principalmente para aqueles que não se canção de investigar seu hardware e se divertem com isto, como vem sendo o meu caso a quase 14 anos.
No entanto, algumas tarefas, quando muito solicitadas, podem se tornar extremamente tediosas, como tem ocorrido no caso da configuraćão de meu novo notebook. A simples tarefa de alterar o runlevel do boot da máquina, em meio a diversos teste que tenho feito, extrapolaram minha tolerância.
A ferramenta que vou apresentar aqui, é o setrunlevel. Um aplicativo que fiz para alterar o runlevel, editando o /etc/inittab e/ou executando o comando telinit. O setrunlevel é um aplicativo em bash shell, que pode operar tanto no modo interativo, quanto não interativo.
O Aplicativo
A sintaxe do setrunlevel é:
set-runlevel [option] [runlevel]
Onde as opções são:
- help mensagem de ajuda;
- install instala setrunlevel em /usr/local/sbin/;
- boot [runlevel] edita o /etc/inittab com o runlevel passado;
- all [runlevel] alterar o runlevel atual e edita o/etc/inittab para futuras reinicializaćões do sistema. Na prática, edita o /etc/inittab e executa o comando telinit com o runlevel passado;
- [runlevel], altera o runlevel atual, sem editar o /etc/inittab;
- show apresenta o runlevel atual.
Observe que [runlevel] é opcional. Se nenhum runlevel for passado, quando necessário o programa entrará no modo interativo e um dialogo para seleção será apresentado.
Somente uma opção pode ser passada por vez. Demais opções serão ignoradas.
Os runlevels configurados no Slackware são apresentados abaixo:
- 0 halt system
- 1 modo single user
- 2 não usado (configurado para o runlevel 3)
- 3 modo multiusuário (runlevel padrão do Slackware)
- 4 modo gráfico, X11, com o KDM/GDM/XDM
- 5 não usado (configurado para o runlevel 3)
- 6 reboot
OBS:Para testar o aplicativo, execute o setrunlevel iniciando a variável ISTEST com qualquer coisa. Com isto as alterações não serão realizadas, apenas mensagens dos comandos a serem executados serão apresentados:
# ISTEST=2 setrunlevel 1 Current runlevel set to 1
Exemplos
A seguir vou apresentar alguns exemplos do uso deste programa.
Modo interativo
Para chamar o runlevel no modo interativo, basta omitir o runlevel:
# set-runlevel
Isto irá alterar o runlevel atual para o modo selecionado. Se for usado com a opção all, além de mudar o runlevel atual, o arquivo /etc/inittab será escrito para mudança do runlevel em iniciações futuras.
# setrunlevel all
Modo não Interativo
A linha abaixo configura o runlevel para 4 no próxima inicialização do sistema e muda para o runlevel 4 o estado atual do sistema:
# setrunlevel all 4
Para conhecer o runlevel atual use a opção show:
# setrunlevel show Current runlevel: 4 Inittab runlevel: 4
Para instalar o comando runlevel no sistema, use a opção install. Com esta opção, o aplicativo irá se copiar em /usr/local/sbin, para uso pelo root:
# setrunlevel install
Considerações finais
O setrunlevel é um script bem simples que usa um menu dialog para o modo interativo. Por se tratar de um programa em bash script, ele é muito flexível, podendo ser facilmente adaptado a outras distribuições. Neste caso se deve editar a variável RUNLVL_STR, no início do programa e o texto de help.
O programa esta disponível em setrunlevel, baixe-o, estude-o e divirta-se.
Deixe uma resposta