Вы находитесь на странице: 1из 4

TLA I

Autor: Eduardo de Oliveira Hernandes

CAPTULO 8
8.1 Utilizando o modo texto
A interface texto do Linux indispensvel para o uso do sistema. nesta interface que encontra-se uma quantidade enorme de utilitrios e comandos que ajudam na administrao do dia a dia. Se a tela de login for no modo texto, o usurio se logar e logo aps ser apresentado ao interpretador de comandos, onde o usurio poder realmente utilizar o sistema. A interface texto no to amigvel como a grfica, mas certamente tem suas utilidades, e recomendado que todos os usurios no fiquem s presos a interfaces grficas ou ferramentas, pois o usurio pode deparar-se com uma distribuio que no possui as ferramentas que ele est acostumado a usar, e se ao contrrio disso o mesmo souber utilizar o modo texto ou console como chamado, ficar independente da distribuio. O modo texto dividido inicialmente em 6 telas, em cada tela poder se logar um usurio. Apertar a combinao de teclas ALT+F1, ALT+F2, ..., ALT+F6, far com que o Linux alterne entre os consoles de 1 at 6. A partir do 7, o Linux reserva especialmente para as interfaces grficas funcionarem. Como o Linux um sistema multitarefa e multiusurio, o usurio pode se logar em todos ao mesmo tempo, com quaisquer usurios. A interface texto o diferencial do Linux. um grande erro fazer uma comparao direta da linha de comando do Linux com o DOS, a interface texto do Linux ao contrrio do DOS muito poderosa. Muita gente no entende quando ouve dizer que o verdadeiro poder do Linux est na linha de comando, isso de se esperar j que o conceito de modo texto est muito ultrapassado na cabea da maioria das pessoas.

8.2 Prompt O aviso de comando


O prompt ou aviso de comando um caracter que situa-se no incio da linha de comando e que indica que o shell (o interpretador de comandos) est pronto para receber os comandos do usurio do sistema. A posio onde o comando ser digitado marcado um "trao" que fica piscando na tela, chamado de cursor, necessrio para o usurio saber onde iniciar a digitao de textos e se orientar quanto a posio na tela. O aviso de comando do superusurio (root) identificado pelo caracter # e o aviso de comando dos usurios identificado pelo smbolo $. Geralmente estes caracteres so padres em muitas distribuies Linux e BSD's, mas dependendo do shell utilizado podem ser diferentes.

8.3 Shell O interpretador de comandos


O shell o primeiro programa que o usurio recebe ao se "logar" no Linux. ele que vai resolver muitas tarefas de forma a no onerar o kernel com tarefas repetitivas, aliviando-o para tratar assuntos mais complexos. Como cada usurio possui seu prprio shell colocando-se entre ele e o Linux, o shell que interpreta os comandos que so teclados e examina suas sintaxes, passando-os para execuo. Na verdade o shell um interpretador que traz consigo uma poderosa linguagem com comandos de alto nvel, que permitem a construo de loops, de tomadas de deciso e de armazenamento de valores em variveis. Podemos citar algumas tarefas que o shell cumpre em uma ordem de execuo:

Exame de linhas de comando


O shell identifica primeiro os caracteres especiais (reservados) que tm significado para interpretao da linha, logo em seguida verifica se a linha um comando ou uma atribuio.

Tux Linux Administration I

38

TLA I

Autor: Eduardo de Oliveira Hernandes

Comando
Quando uma linha digitada no prompt do Linux, ela dividida em pedaos separados por espaos em branco: o primeiro pedao o nome do programa que ter sua existncia verificada, identificam-se em seguida, nesta ordem, opes/parmetros, redirecionamentos e variveis. Quando o programa identificado existe, o shell verifica as permisses dos arquivos envolvidos (inclusive o prprio programa), informando um erro caso voc no esteja credenciado a executar essa tarefa.

Atribuio
Se o shell encontra dois campos separados por um sinal de igual (=) sem espaos em branco entre eles, identifica essa seqncia como uma atribuio. Ex.: ls linux Nesse exemplo o shell identificou o ls como um programa e o Linux como um parmetro passado para o programa ls. Ex.: valor=1000 Nesse caso, por no haver espaos em branco (j d para notar que o branco um dos caracteres reservados), o shell identificou uma atribuio e colocou 1000 na varivel valor. E no pode ser colocado: Ex.: valor = 1000 Nesse caso, o Bash achou a palavra valor isolada por brancos e interpretou que o usurio estivesse mandando executar um programa chamado valor, para o qual estaria passando dois parmetros: = e 1000.

Resoluo de redirecionamentos
Aps identificar os componentes da linha que voc teclou, o Shell parte para a resoluo de redirecionamentos. O Shell tem incorporado em seu elenco de vantagens o que chamamos de redirecionamentos, que pode ser de entrada (stdin), de sada (stdout) ou dos erros (stderr), conforme ser visto nos captulos posteriores.

Substituio de variveis
Neste ponto, o Shell verifica se as eventuais variveis (parmetros comeados por $), encontradas no escopo do comando, esto definidas e as substitui por seus valores atuais.

Substituio de metacaracteres
Se algum metacaractere (*, ?, [], {}) encontrado na linha de comando, neste ponto ele substitudo por seus possveis valores. Supondo que o nico arquivo no seu diretrio corrente comea pela letra "l" seja um diretrio chamado "linux", se o usurio executar: Ex.: cd l* O shell transforma o l* em linux e o comando cd ser executado com sucesso, porque at aqui quem est trabalhando com a linha de comando o shell e o comando (programa) cd ainda no foi executado.

Tux Linux Administration I

39

TLA I

Autor: Eduardo de Oliveira Hernandes

Passar linha de comando para o kernel


Completadas as tarefas anteriores, o shell monta a linha de comandos, j com todas as substituies feitas, chama o kernel para execut-la em um novo shell (shell filho), ganhando um nmero de processo (PID ou Process Identification) e permanece inativo, durante a execuo do programa. Uma vez encerrado esse processo (juntamente com o shell filho), o shell recebe novamente o controle e, exibindo um prompt, mostra que est pronto para executar outros comandos. O shell nada mais do que um dos programas do sistema GNU/Linux. Os shells mais conhecidos so: sh, csh, tcsh, ksh e bash. O linux utiliza o bash como shell padro. Os demais podem ser instalados.

8.4 Terminais virtuais


Um terminal virtual ou console representa o teclado e a tela conectados ao computador do usurio. O GNU/Linux faz uso desta caracterstica tpica de sistemas operacionais multiusurio usando os "terminais virtuais". Um terminal virtual uma segunda seo de trabalho completamente independente das outras sees e que pode ser acessado tanto pelo usurio local ou pelo usurio remoto. A maioria das distribuies GNU/Linux como o Debian, possuem 6 terminais virtuais disponveis por padro, na verdade existem mais de 63, mas nem todos esto disponveis por questo de economia de memria RAM. Para acess-los, o usurio deve pressionar a tecla ALT esquerdo e umas das teclas de funo (F1 a F6) simultaneamente. Cada terminal, por ser independente, permite o usurio efetuar mais de um login no sistema, facilitando muito a tarefa de administrao do sistema. Ex.: <Alt>+<Fn> (n=1 at 6) Um comando que poderia ser usado no shell o chvt n, chvt possui o significado de change virtual terminal ou mudar terminal virtual, onde n substituido pelo nmero do terminal o qual usurio quer mudar. Se o usurio estiver utilizando o modo grfico e desejar acessar um terminal virtual, o mesmo deve pressionar a tecla CTRL + ALT esquerdo + (F1 a F6) simultaneamente. Ex.: <CTRL>+<Alt>+<F1> Se o usurio est utilizando um terminal virtual e deseja voltar ao ambiente grfico deve pressionar a tecla ALT + F7. Geralmente a tecla de funo F7 representa o primeiro terminal em modo grfico, mas isso pode ser diferente dependendo da distribuio usada ou de algumas configuraes realizadas pelo administrador do sistema. Ex.: <ALT>+<F7> Como visto acima, a primeira instncia de um servidor X roda no terminal 7 e as demais instncias de um servidor X so alocadas nos terminais de 8 a 12. Ento para altenar entre os terminais grficos, o usurio deve pressionar a tecla CTRL + ALT esquerdo + (F7 a F12) simultaneamente. Ex.: <CTRL>+<Alt>+<F8>

Tux Linux Administration I

40

TLA I

Autor: Eduardo de Oliveira Hernandes

Caso o usurio esteja em um terminal modo texto deseja alternar para outros terminais grficos, o usurio deve pressionar a tecla ALT esquerdo mais uma das teclas de funo (F7-F12). Ex.: <Alt>+<F7> Caso o usurio esteja no modo grfico e abra um emulador de terminal, como o xterm, rxvt, konsole ou gnome-terminal, este terminal conhecido como pseudo-terminal porque um terminal modo texto que esta dentro do modo grfico. Tanto os terminais virtuais como os pseudo-terminais so classificados como dispositivos tty (TTY TeleType Devices). O comando tty mostra o nome do terminal no qual o usurio est conectado, j o comando fgconsole mostra o nmero do terminal ativo.

Tux Linux Administration I

41

Вам также может понравиться