Mudar runlevels boot targets e desligar ou reiniciar o sistema (Peso 3)
- Definir o
runlevel
padrão ou otarget
doboot
- Mudar entre
runlevels
eboot targets
incluindo osingle user mode
- Desligar e reiniciar a maquina pela linha de comando
- Alertar usuários antes de mudar de
runlevels
ouboot target
ou ate mesmo em outros eventos considerados importantes. - Finalizar processos de modo correto
shutdown
Esse comando realiza o desligamento e até mesmo a reiniclização da máquina. Vale lembrar que usando o init 0
para desligar, e o init 6
para reiniciar.
Podemos ainda usar o telinit
para isso, mas esses comandos não realizam operações assessorias como enviar mensagens para os outros usuários que o sistema sera desligado.
Uma dica para memorizar os parametros é que ao contrario de alguns comandos eles são bem intuitivos. As letras correspondem as inciais de cada ação com excessão para o -k
.
O comando pode ser utilizado sem argumentos. Ele desliga a máquina em 1 minuto.
shutdown
Shutdown scheduled for Thu 2018-05-10 09:45:47 -03, use 'shutdown -c' to cancel.
O comando abaixo desliga a máquina imediatamente.
shutdown now
O comando abaixo reinicia a máquina imediatamente.
shutdown now -r
O comando abaixo desliga a máquina às 13:20
shutdown 13:20
O comando abaixo desliga a máquina em 60 minutos
shutdown +60
Executa o halt
shutdown -H
-H, –halt
Esse comando desliga o linux mas não a máquina.
-P, –poweroff
Power-off the machine (the default).
-r, –reboot
Reinicia a máquina
-h
Equivalent to –poweroff, unless –halt is specified.
-k
Com esse parametro o sistema não realiza o halt, power-off ou reboo, apenas escreve as mensagens wall.
–no-wall
Não envia mensagens wall.
-c
Cancela um shutdown pendente. Esse comando evita que que um comando de desligamento seja executado caso claro ele não seja invocado com os agrumantos “now” ou “+0”
shutdown +2
Shutdown scheduled for Mon 2018-04-16 16:13:27 -03, use 'shutdown -c' to cancel.shutdown -c
Poweroff
Poweroff envia um sinal ACPI com instruções para desligar o sistema. Vejamos alguns exemplos:
poweroff #poweroff
poweroff --halt #executa um halt
poweroff --reboot #reinicia a máquina
halt
O halt instrui o hardware a parar todas as funções de CPU, mais sem desligar. Você pode usá-lo para deixar o sistema em um estado onde você pode executar manutenção de baixo nível.
halt # para a máquina
halt -p # executa um poweroff
halt --reboot # reinicia a máquina
wall
Esse comando realiza o envio de mensagem para todos os usuários logados no sistema. Segundo o man:
wall - escreve mensagens para todos os usuários
wall
Oi, eu sou o Goku
\< CTRL+D\>
Essa mensagem é enviada para todos os usuarios logados na máquina
/etc/inittab
Esse arquivo contem informações sobre o runlevel padrão do sistema
runlevel
“Runlevels” são uma forma obsoleta de iniciar e parar grupos de serviços utilizados n SysV init. Systemd disponibiliza uma camada de compatibilidade que mapeia os runlevels para os targets.
Mapeamento entre runlevels e targets do systemd
Runlevel Target
RUNLEVEL | TARGET |
0 | poweroff.target |
1 | rescue.target |
2,3,4 | multi-user-.target |
5 | graphical.target |
6 | reboot.target |
O comando runlevel exibe o runlevel anterior e o atual. Os dois caracteres são separados por um espaço. Se um desses runlevel não pode ser determinado letra N é exibida, se os dois não podem ser determinados a palavra “unknown” é exibida.
Na execução do comando abaixo, o runlevel anterior não foi determinado e por isso o N foi exibido. Mas sabemos que o runlevel atual é o 5.
runlevel
N 5
init
Esse comando realiza a alteração de run level
telinit
Esse comando realiza a alteração de run level
/etc/init.d/
systemd
Systemd é um gerenciador de sistema e de serviços para o Linux, compativel com o SysV. Systemmd utiliza sockets e D-BUS para inicialização de serviços, oferece a iniciação por demanda de daemons
, rastreia processos utilizando o controle de grupos do Linux, suporta snaphotting
e o restoring
de um determinado estado do sistema.