Como achar o script de runlevel no ubuntu para edita - lo?

Iniciado por bugged, 17 de Setembro de 2017, 00:42

tópico anterior - próximo tópico

bugged

vi algumas fontes ensinado como mudar o runlevel no debian por exemplo , editando " inittab " mas nao tem no ubuntu e em outras fontes dizia q o ubuntu nao ultiliza mais o inittab

druidaobelix

#1
Citação de: bugged online 17 de Setembro de 2017, 00:42
vi algumas fontes ensinado como mudar o runlevel no debian por exemplo , editando " inittab " mas nao tem no ubuntu e em outras fontes dizia q o ubuntu nao ultiliza mais o inittab

De fato, editar env DEFAULT_RUNLEVEL= no arquivo /etc/init/rc-sysinit.conf não funciona mais, isso valia para o upstart, não mais para o systemd

Mostrar runlevel atual ainda basta fazer no terminal:

runlevel

Igualmente ainda vai funcionar se fizer:

telinit N

onde N é o runlevel que se queira:

telinit 1 irá levar ao prompt que nada mais é que o prompt do Recovery Mode.

Também ainda funciona se editar:

gksudo gedit /etc/default/grub

alterando a linha:

CitarGRUB_CMDLINE_LINUX=""

colocando entre as aspas o suposto runlevel que se queira, como exemplo:

GRUB_CMDLINE_LINUX="1"

em seguida atualizando o grub fazendo:

sudo update-grub

novamente irá levar ao prompt do Recovery Mode.

Porém de uma forma mais atual runlevel é exposto através de "targets units', pelo que deverá ser feito:

sudo systemctl isolate runlevelN.target

one o N novamente é o runlevel desejado, como no exemplo:

sudo systemctl isolate runlevel1.target

Note, entretanto, que essa ideia de runlevel está obsoleta, não faz mais sentido no império do systemd, além do que é absolutamente inútil para qualquer finalidade realmente prática.

Num desktop comum não faz sentido levar o sistema para um runlevel 1 ou 3.
Qual a finalidade disso? Qual a razão para fazer uma coisa dessa?

Por outro lado, num servidor faz menos sentido ainda.
O modo seguro de fazer se não quer que determinado serviço seja oferecido é não habilitar o serviço, pois serviço inexistente não pode ser vazado.

Em todo caso, no systemd quando se quer atingir:

sudo systemctl isolate runlevel5.target

então se faz na nova concepção:

sudo systemctl isolate graphical.target

Veja uma lista fazendo:

systemctl list-units --type=target
www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.