Arquivos de inicialização do Linux

omentei no post de Dispositivos de Bloco, sobre o comando dmesg, que é responsável por guardar as mensagens de inicialização do Linux.

Neste post, quero falar um pouco sobre o processo de inicialização do Linux, mais especificadamente sobre os arquivos que são lidos quando a máquina é ligada.

Vejam o desenho abaixo:

Processo de Inicialização

Nesse desenho, temos o GRUB (GRand Unified Bootloader), que é o boot loader, ou melhor, é o gerenciador de boot, onde você pode escolher qual sistema irá iniciar.

Imagine que você tenha dois Sistemas Operacionais instalados na máquina; o GRUB irá listar os sistemas instalados e você decide qual sistema irá iniciar.

Após escolher o sistema, o kernel é descompactado e em seguida, é exibida na tela uma série de mensagens enviadas pelo kernel. Essas mensagens indicam a quantidade de memória existente na máquina, detecção e configuração do hardware entre outras. Após concluir a configuração do hardware, o kernel monta o root filesystem (também conhecido como diretório / – lembra dele?) e carrega o getty.

O getty, nada mais é do que um terminal console que exibe o programa login que espera a autenticação de usuário tanto em modo texto, como em modo gráfico. Se a autenticação for realizada com sucesso, o usuário recebe um shell para começar a executar suas tarefas.

O shell, é a interface entre o usuário e o kernel, a camada responsável por executar as ações solicitadas pelos usuários.

O que falei acima, é uma ilustração macro de como funciona a inicialização do Linux; agora, vou comentar sobre alguns arquivos que são lidos durante a inicialização do mesmo.

/etc/issue – neste arquivo, está armazenado a mensagem de boas vindas ao sistema, ou outras informações que você pode editar para que os usuários vejam antes do login no modo texto.

O issue é um arquivo texto; podemos visualizá-lo com o comando cat:

# cat /etc/issue
Debian GNU/Linux 4.0 \n \l

Vejam que esse arquivo, por padrão traz o nome e a versão do Linux instalado, além do nome da máquina e o terminal que irei logar. Bem, você deve estar seperguntando: “Onde foi que a Nix viu o nome da máquina e o terminal?”

E eu digo que, apesar de ser um arquivo texto, o issue aceita variáveis tais como nome da máquina, arquitetura, e etc, que são interpretadas pelo getty.

Vejam que, ao executar o cat no arquivo, ele trouxe o nome do sistema e a versão; trouxe também os caracteres \n e \l, que são o nome da máquina e o terminal.
Abaixo, um exemplo da mensagem que o /etc/issue mostra antes do usuário autenticar (não reparem o desenho… descobri que não sei desenhar!😦 )

arquivo issue
Eu comentei que o issue aceita variáveis; para saber quais variáveis o getty poderá interpretar dentro do arquivo, basta consultar o man:

# man getty

Bem, vamos editar agora o arquivo /etc/issue e modificar o conteúdo dele…. afinal de contas, como falei, o conteúdo do issue fica disponível para qualquer um que tenha acesso a máquina; então, por medida de segurança, o ideal é retirar a mensagem padrão que mostra o sistema utilizado, e colocar uma mensagem que não divulgue alguma coisa sobre a máquina.

Por exemplo, podemos pedir para o issue exibir a data e a hora.

Vamos editar o arquivo…. mas antes, vamos criar um diretório para guardarmos uma cópia dos arquivos que vamos mexer… afinal de contas, depois você pode querer o original novamente, daí, é só copiar o arquivo guardado!

Criando o diretório:

# mkdir /root/bekapi

Copiando o arquivo /etc/issue para o diretório de backup que criamos:

# cp /etc/issue /root/bekapi/

Editando o arquivo:

# vi /etc/issue

Vamos apagar o conteúdo do arquivo e colocar as variáveis de data (variável d) e hora (variável t), lembrando que, para inserir uma variável no issue, é preciso colocar a barra invertida (\) para que a letra deixe de ser uma letra e passe a ser uma variável. Veja no exemplo:

Tux diz que hoje e: \d e agora sao: \t

Aí, antes do login, no modo texto, irá aparecer a seguinte mensagem: Tux diz que hoje e: Thu Dec 4  2008 e agora sao: 16:50:37

E, para que o getty entenda que se trata de uma variável, não podemos esquecer de colocar a \ (barra invertida) antes!

Só para encerrar o arquivo issue, é interessante falar que esse arquivo tem um irmão com a mesma função que ele e ainda tem praticamente o mesmo nome! É o arquivo /etc/issue.net.

A diferença entre esses dois arquivos é que, o issue.net, é visto por quem faz um acesso remoto. Por exemplo, imagine que você acesse sua máquina via ssh; quem vai mostrar a mensagem antes do login, é o issue.net.

Bom, ainda não falei em nenhum post sobre o ssh… prá você não ficar boiando até eu falar sobre ssh, nada mais é do que um serviço que permite acessar uma máquina remotamente!

Assim como o issue, o issue.net também aceita as variáveis do getty, e, podemos deixar uma mensagem diferente para ser vista por quem tenta entrar na máquina por acesso remoto😉 !

/etc/motd – Esse arquivo é quase igual o issue, mas sua grande diferença é que sua mensagem aparece apenas depois do login!

Isso quer dizer que, todos usuários que se conectam na máquina, após o login, irão ver a mensagem do motd.

E, diferente do issue, o motd é um arquivo de texto simples, que não aceita variáveis!

Ele é útil para deixar recados como: “Esse servidor estará fora do ar depois das 18h para manutenção” ou então “Todas as ações executadas nesse servidor estão sendo logadas“.

Mas também pode ser qualquer outra mensagem que você queira deixar!

Bem, hoje vamos ficar somente nesses arquivos, mas nos próximos posts pretendo falar sobre o /etc/inittab e o /etc/fstab que também são lidos na inicialização do sistema.

Até lá!

1 Response to “Arquivos de inicialização do Linux”



Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s




Follow Nix on WordPress.com
dezembro 2008
S T Q Q S S D
« nov   jan »
1234567
891011121314
15161718192021
22232425262728
293031  

Flickr Photos

Fast-flying Falcon

Mais fotos

%d blogueiros gostam disto: