FreeBSD Handbook/Iniciando/UNIX Básico/Consoles Virtuais e Terminais


FreeBSD Handbook
Anterior Capítulo 3. UNIX Básico Próxima

3.2 Consoles Virtuais e Terminais

O FreeBSD pode ser utilizado de várias maneiras. Uma delas é através de comandos digitados em um terminal de texto. Muito da flexibilidade e do poder de um sistema operacional UNIX® é disponível de imediato ao alcance de suas mãos, quando se utiliza o FreeBSD desta maneira. Esta seção descreve o que são "terminais" e "consoles" e como utilizá-los no FreeBSD.

3.2.1 O Console

Se você não configurou o FreeBSD para iniciar um ambiente gráfico automaticamente durante sua inicialização, o sistema irá apresentar a você uma tela de login assim que for iniciado, logo depois que os scripts de inicialização forem executados. Você verá algo similar a:

Additional ABI support:.
Local package initialization:.
Additional TCP options:.

Fri Sep 20 13:01:06 EEST 2002

FreeBSD/i386 (pc3.example.org) (ttyv0)

login:

A mensagem deve ser um pouco diferente em seu sistema, mas algo similar será apresentado. As duas últimas linhas são as que nós estamos especialmente interessandos no momento. Na penúltima linha você pode ler:

FreeBSD/i386 (pc3.example.org) (ttyv0)

Essa linha oferece algumas informaçòes sobre o sistema que acabou de ser iniciado. Você está olhando para um console "FreeBSD", rodando em arquitetura Intel x86 ou compatível[1]. O nome desta máquina (toda máquina UNIX tem um nome) é pc3.example.org, e agora você está analisando seu console de sistema -- o terminal ttyv0 .

Finalmente, a última linha será sempre:

login:

Este é o local onde você deve digitar seu nome de usuário ("username") para logar-se no FreeBSD. A próxima seção descreve como fazê-lo.

3.2.2 Logando-se no FreeBSD

FreeBSD é um sistema multiusuário e de multiprocessamento. Esta é a descrição formal normalmente dada a um sistema que pode ser usado por pessoas diferentes, que simultâneamento executam uma série de programas na mesma estação.

Todo sistema multiusuário requer uma maneira para fazer distinção entre um "usuário" e os outros. No FreeBSD (e todo sistema operacional similar ou baseado em UNIX) isso é garantido com a obrigatoriedade de todo usuário "logar-se" ao sistema antes de poder executar qualquer programa. Todo usuário tem um nome único (o "username") e uma senha secreta pessoal (o "password"). O FreeBSD solicitará estas duas informações antes de permitir que um usuário execute qualquer programa.

Assim que o FreeBSD é iniciado e acaba de executar seus scripts de inicialização[2], será apresentada a você uma tela que solicitará um usuário válido:

login:

Para compreensão deste exemplo, vamos assumir que o seu nome de usuário é john. Digite john na tela de login e aperte Enter. Em seguida será apresentada a tela que solicita sua "senha" (o "password"):

login: john
Password:

Digite agora a senha do usuário john e aperte Enter. A senha não é apresentada! Não é necessário se preocupar com isso agora. É suficiente dizer que o comportamento é este por razões de segurança.

Se você digitou sua senha corretamente, você deve ter se logado no FreeBSD e está pronto para testar todos os comandos disponíveis.

Você deve ver a MOTD (message of the day ), a mensagem do dia, seguida do terminal de comandos (um caracter #, $, ou %). Isso indica que você se logou com sucesso no FreeBSD.

3.2.3 Multiplos Consoles

É legal utilizar um console para executar comandos UNIX, mas o FreeBSD pode executar vários programas de uma vez. Ter apenas um console onde os comandos são digitados pode ser considerado um leve desperdício, quando um sistema operacional como o FreeBSD pode rodar dezenas de programas ao mesmo tempo. É aí que os "consoles virtuais" podem se mostrar muito úteis.

O FreeBSD pode ser configurado para oferecer vários consoles virtuais diferentes. Você pode alternar de um para outro apertando um conjunto de teclas em seu teclado. Cada console tem seu próprio canal de saída, e o FreeBSD cuida de redirecionar as entradas do console para cada console virtual e monitor, e também a saída padrão quando você alterna de um para o próximo console virtual.

Combinações especiais de teclas foram reservada pelo FreeBSD para controlar a alternância de consoles[3]. Você pode usar Alt-F1, Alt-F2, até Alt-F8 para alternar entre diferentes consoles virtuais no FreeBSD.

Conforme você estiver alternando entre um console e outro, o FreeBSD se responsabiliza por salvar e restaurar o conteúdo de de cada tela. O resultado é uma "ilusão" de múltiplas telas e teclados "virtuais" disponíveis, de forma que você possa digitar qualquer comando para o FreeBSD executar. Os programas que são iniciados por você em um console virtual não param de ser executados quando o console não está visível. Eles continuam a ser processados quando acontece alternância de console virtual.

3.2.4 O arquivo /etc/ttys

A configuração padrão do FreeBSD iniciará oito consoles virtuais. Contudo, esta configuração não é imutável e pode ser fácilmente customizada de forma a possibilitar que o sistema seja iniciado com mais ou menos consoles virtuais. O número e definições para os consoles virtuais estão configuradas no arquivo /etc/ttys.

Você pode usar o arquivo /etc/ttys para configurar consoles virtuais do FreeBSD. Cada linha descomentada neste arquivo (linhas que não começam com o caracter #) contém ajustes para um único terminal ou console virtual. A versão padrão deste arquivo oferece com o FreeBSD nove consoles virtuais, e habilita oito deles. São as linhas que começam com ttyv:

# name getty              type    status     comments
#
ttyv0   "/usr/libexec/getty Pc"  cons25 on secure
# Virtual terminals
ttyv1   "/usr/libexec/getty Pc"  cons25 on secure
ttyv2   "/usr/libexec/getty Pc"  cons25 on secure
ttyv3   "/usr/libexec/getty Pc"  cons25 on secure
ttyv4   "/usr/libexec/getty Pc"  cons25 on secure
ttyv5   "/usr/libexec/getty Pc"  cons25 on secure
ttyv6   "/usr/libexec/getty Pc"  cons25 on secure
ttyv7   "/usr/libexec/getty Pc"  cons25 on secure
ttyv8   "/usr/X11R6/bin/xdm -nodaemon"  xterm   off secure

Para obter uma descrição detalhada do significado de cada coluna deste arquivo e todas opções disponíveis para os consoles virtuais, consulte a página de manual ttys(5).

3.2.5 Console em Modo Mono-Usuário

Uma descrição detalhada sobre o que é o "modo mono-usuário" pode ser encontrada em Seção 12.6.2. Vale a pena notar que existe apenas um console disponível quando se está operando o sistema em modo mono-usuário. Não existem consoles virtuais disponíveis. As configurações do console em modo mono-usuário também podem ser definidas no arquivo /etc/ttys. Olha na linha que começa com console:

# name  getty                           type    status          comments
#
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none                            unknown off secure
Nota: Como indicam os comentários acima da linha console, você pode editar esta linha e modificar a entrada secure para insecure. Se você o fizer, quando o FreeBSD iniciar em modo mono-usuário, ele continuará pedindo a senha do usuário root.

Seja cuidadoso ao modificar esta opção para insecure. Se você esquecer um dia a senha de root, entrar em modo mono-usuário vai ser um pouco complicado. Ainda é possível, mas será um pouco difícil para os usuários ainda não muito confortáveis com o processo de inicialização do FreeBSD e os programas envolvidos.

3.2.6 Alterando os Modos de Video do Console

O modo de video padrão do console do FreeBSD pode ser ajustado para 1024x768, 1280x1024, ou qualquer outro tamanho suportado pela placa de video e monitor. Para usar um modo de video diferente, você precisa primeiramente recompilar seu kernel e incluir duas opções adicionais:

options VESA 
options SC_PIXEL_MODE 

Uma vez que o kernel tenha sido recompilado com estas duas opções, você pode depois determinar quais modos de video são suportados pelo seu hardware usando o comando vidcontrol(1). Para pegar uma lista com os modos de video suportados, digite o seguinte:

# vidcontrol -i mode

A saída deste comando é a lista com os modos de video suportados pelo seu hardware. Você pode depois escolher para usar um novo modo de video passando ele para o vidcontrol(1) através de um console root:

# vidcontrol MODE_279

Se o novo mode de video for aceitável, ele poderá ser permanentemente configurado no boot bastando setar no arquivo /etc/rc.conf:

allscreens_flags="MODE_279"

Notas

1

É isso que i386 significa. Note que mesmo se você não estiver executando o FreeBSD em um processador Intel 386, esta informação ainda será apresentada como i386. Não trata-se do tipo de seu processador, mas sim a "arquitetura" do processador, que é apresentada aqui.

2

Scripts de inicialização são programas executados automaticamente quando o FreeBSD é iniciado. Sua principal função é configurar tudo que for necessário para o resto do sistema funcionar, e iniciar todos os serviços que você configurou para serem executados em instância de fundo, (em background realizado tarefas úteis).

3

Uma descrição técnica e considerávelmente acurada de todos detalhes sobre o console FreeBSD e dispositivos de teclado pode ser encontrada nas páginas de manuais do syscons(4), atkbd(4), vidcontrol(1) e kbdcontrol(1). Não vamos entrar nestes detalhes aqui, mas o leitor interessado pode sempre consultar as páginas de manual para obter explicações mais detalhadas de como as coisas funcionam.



Anterior Índice Próxima
UNIX Básico Topo Permissões
Última edição desta página: 24/01/2011 (20110124215225)