Mostrando postagens com marcador dica. Mostrar todas as postagens
Mostrando postagens com marcador dica. Mostrar todas as postagens

quinta-feira, 18 de abril de 2013

Alterar modo de inicialização do Linux - continuação - usando Systemd


Fala pessoal,

Resolvi fazer outro post sobre este assunto. O fedora (a partir da versão 15) vem utilizando um sistema de chamado Systemd.

Para saber mais sobre o Systemd acesse aqui. (site em inglês)

No post anterior eu havia falado sobre o arquivo "/etc/inittab". Nas versões e distribuições Linux que adotam o systemd, este arquivo não serve mais para controlar os runlevels.

Ao abrir o arquivo "/etc/inittab" vemos a seguinte texto:

# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM
#
# Ctrl-Alt-Delete is handled by /etc/systemd/system/ctrl-alt-del.target

#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets: 
#
# multi-user.target: analogous to runlevel 3 
# graphical.target: analogous to runlevel 5 #
# To set a default target, run:
#
# ln -s /lib/systemd/system/.target /etc/systemd/system/default.target
#

Em outras palavras, o texto diz que o "inittab" não é mais utilizando quando o systemd é usado. Colocar e/ou alterar configurações neste arquivo "/etc/inittab" não terá nenhum efeito no sistema.

Então como é que agente vai fazer para alterar o modo de inicialização do sistema? O próprio arquivo informa como devemos fazer isso, mas é bom, sempre bom, fazer uma pesquisa no famoso google para ter certeza.

Esta pagina explica como fazer.

Antes de tudo, parece idiota, mas você precisa abrir o arquivo "/etc/inittab" para ter certeza de que o systemd esta instalado. Outra maneira de saber é verificando se existe os pacotes do systemd instalados no seu sistema.

# rpm -qa | grep systemd
systemd-libs-195-15.fc18.i686
systemd-195-15.fc18.i686
systemd-sysv-195-15.fc18.i686

Se o arquivo "/etc/inittab" apresentar o texto parecido com o texto que eu coloquei acima, e o comando rpm apresentar estes pacotes, então provavelmente seu sistema usa do systemd.

O systemd funciona através de "targets" (ou destinos) e, segundo o site de referencia, é um substituto bem mais flexivel para runlevels no sysvinit.

O runlevel 3 (modo texto) é emulado pelo arquivo "multi-user.target" e o runlevel 5 (modo gráfico) é emulado pelo arquivo "graphical.target". Existem links simbólicos para facilitar as coisas:
  • runlevel3.target é um link simbólico para multi-user.target
  • runlevel5.target é um link simbólico para graphical.target
Se você quer apenas "alterar" o runlevel atual digite os seguintes comandos (testados no fedora 18)

Para runlevel 3 (modo texto):
# systemctl isolate multi-user.target
(ou)
# systemctl isolate runlevel3.target 
Para runlevel 5 (modo gráfico):
# systemctl isolate graphical.target
(ou)
# systemctl isolate runlevel5.target

Se você quer alterar o modo padrão de inicialização, faça assim:

systemd usa links simbólicos apontando para o runlevel padrão. É preciso apagar o links simbólico existente antes de criar um novo link.

Para apagar execute o seguinte comando:
# rm /etc/systemd/system/default.target

Para usar o runlevel 3 (modo texto) como padrão, crie o seguinte link:
# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

Para usar o runlevel 5 (modo gráfico) como padrão, o comando é este:
# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

Para verificar se tudo esta correto verifique o link criado:
# ls -la /etc/systemd/system/default.target

A saída deste comando deve mostrar para qual arquivo o link esta apontando:

...../etc/systemd/system/default.target -> ln -sf /lib/systemd/system/multi-user.target
ou
...../etc/systemd/system/default.target -> ln -sf /lib/systemd/system/graphical.target

Agora basta reiniciar o computador e pronto, o modo de inicialização padrão definido pela criação do link simbólico estará funcionando.

Qualquer duvida é só comentar,
Valeu,
Mad2ogs









Alterar modo de inicialização para texto no Linux

Bom dia pessoal,

Estou preparando um novo servidor de domínio e como já é costume meu, antes de mexer no servidor, faço um passo a passo (tutorial) a fim de saber exatamente o que instalar e como configurar e mais importante, se vai funcionar ou não. hehehe

Faço sempre meus testes usando uma maquina virtual usando o VirtualBOX.

A instalação do Virtualbox é muito simples. Se alguém tive alguma dificuldade me avisa que eu coloco aqui como é que eu fiz.

As vezes as distribuições Linux insistem em instalar o modo gráfico (X11), mas isso não é problema, a final, este ainda é um teste em uma maquina virtual. De qualquer forma o modo gráfico deixa a estação pesada e lenta.

Para alterar o modo de inicialização do linux para modo texto é muito fácil. Já fiz isso um monte de vezes.

Basta editar o arquivo "/etc/inittab" e fazer uma pequena alteração. O próprio arquivo mostrar uma lista de Runlevels disponíveis:

# Default runlevel. The runlevels used are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
#  
id:5:initdefault:
A ultima linha (normalmente) é a linha a ser alterada. Como podemos ver, o sistema esta configurado para usar o runlevel numero 5, que corresponde ao X11, ou seja o modo gráfico do Linux.

Se você quer que seu sistema inicie sempre em modo texto, edite o arquivo e altere a ultima linha para:

id:3:initdefault:

Assim, da próxima vez que você iniciar o sistema ele irá "cair" direto no modo texto.

Qualquer duvida é só comentar...

abração a todos,
Mad2ogs

segunda-feira, 23 de abril de 2012

Dica: Busca e substituição utilizando o editor de texto "VIM"

Bom dia,

Vai uma dica para que utiliza o editor "VIM" no terminal Linux.

Trabalho diariamente via linha de comando e utilizo bastando o "vim". Não é tão intuitivo quanto ao "nano" mas gosto dele mesmo assim.

Precisei editar um arquivo para substituir uma seria de entradas de um texto especifico. Tarefa fácil para o Word, mas no editor "vim" nunca tinha feito.

Pesquisei um pouco e encontrei no blog do Vinicius Cordeiro o que eu precisava.

Ao abrir o arquivo:

vim arquivo.txt

Basta digitar o seguinte comando:

:%s/PalavraAntiga/PalavraNova/gc

Ele vai substituir todas as PalavraAntiga por PalavraNova, lhe perguntando o que fazer a cada referência encontrada, se quiser desabilita isso basta remover o c após a / e ele vai substituir todas. (texto original do Vinícius)


Pesquisei mais um pouco e encontrei no site WIKI do VIM algumas variações e explicações.

:s/PalavraAntiga/PalavraNova/g
          Substitui 'PalavraAntiga' pela 'PalavraNova' na linha atual

:%s/PalavraAntiga/PalavraNova/g
          Substitui 'PalavraAntiga' pela 'PalavraNova' em todas as linhas

:%s/PalavraAntiga/PalavraNova/gc
          Substitui 'PalavraAntiga' pela 'PalavraNova' em todas as linhas e solicita confirmação

:%s/PalavraAntiga/PalavraNova/gcI
          Mesmo da anterior mas é Case Sensitive (palavra exata)


A opção g significa global, ou seja, todas as ocorrências na linha são substituídas (ou verificadas) e não apenas a primeira.

-----------------------------------------------------------------------------------------------

Exemplo:
O arquivo texto1.txt contém o seguinte texto:

O João gosta da Maria. Mas a Maria gosta do Zé.


Ao editar o arquivo com o 'vim' e executar o seguinte comando:


:s/Maria/Ana

Ele altera apenas a primeira entrada de Maria, ficando assim:

O João gosta da Ana. Mas a Maria gosta do Zé.

Se utilizarmos o 'g' (no arquivo com o texto original):

:s/Maria/Ana/g


O resultado seria este:
O João gosta da Ana. Mas a Ana gosta do Zé.

-----------------------------------------------------------------------------------------------

Bom o resto é intuitivo. Qualquer duvida basta comentar...
Valeus...
Mad2ogs (Thiago Morais)