![]() |
![]() |
![]() |
![]() |
![]() |
Comandos Básicos |
Benvindo ao sistema Linux 2.0.35
login:
Evidentemente, esta mensagem pode ser diferente, pois tudo no Linux é configurável. Esta mensagem se encontra no arquivo /etc/issue. Após introduzido o nome do usuário e em seguida a senha (password), o programa login testa se os dados introduzidos são corretos e o shell [7] destinado a este usuário é carregado. Normalmente o shell é o bash, mas pode ser modificado em /etc/passwd. Toda a sessão deste usuário consiste neste processo shell e os sub-processos criados a partir deste. O usuário pode trocar este shell executando o comand chsh. Por exemplo, suponha que o usuário ricardo quer trocar seu shell default (bash) por csh. Ele executaria o seguinte comando:
chsh ricardo -s /bin/csh
e no próximo login o seu shell seria o csh. Para trocar
sua senha (password) ele executaria o comando passwd.
O superusuário (usuário de nome root) pode fazer o mesmo
com todos os usuários, e opcionalmente pode editar o arquivo
/etc/passwd, que contém somente texto para realizar a mesma
tarefa. O superusuário pode também desativar
temporariamente a conta de um usuário trocando o seu shell por um
simples script como este:
#!/usr/bin/tail +2
Esta conta está temporariamente inativa devido a problemas de
segurança.
Queira contactar o administrador deste sistema para maiores
esclarecimentos.
utilizando-se do programa chsh mostrado acima.
A forma mais rápida de explorarmos o sistema é utilizando um
programa browser como o Midnight Commander (mc
).
Alternativas são o dired
, ytree
ou uma
coleção imensa de programas similares rodando no modo texto ou
como clientes X: tkdesk
, xfilemanager, xfm, XFiles, linux
explorer,xnc,
etc. Entretanto, os programas mais rápidos
são os que, como mc
, usam curses[8] ou slang, e assim podem ser usados tanto na
console ou terminal texto, ou num xterm[9] ou outro
emulador de terminais em X.
![]() |
ytreeO ytree é um programa semelhante ao xtree, usado no MsDos, exceto pelos comandos de manipulação de atributos de arquivos, que necessariamente segue o padrão Unix. Aqui vemos o ytree rodando num xterm. |
![]() |
midnight commander
Este é provavelmente o mais popular dos file managers no Linux
e em outros unices. Ele permite mover rapidamente arquivos entre
diretórios, criar links, modificar atributos de arquivos, possui
bookmarks, além de suportar diretamente arquivos compactados
(diretórios virtuais), ou até mesmo diretórios ftp, isto
é, em servidores remotos, transparentemente. Existe uma versão
do |
tkdesk
Um programa também popular no ambiente X é tkdesk, um
|
![]() |
Mostraremos então como modificar atributos, copiar arquivos, criar ou
expandir arquivos compactados e realizar a maioria das tarefas do dia-a-dia
com o mc
, traçando um paralelo aos programas mais
básicos para realizar as mesmas tarefas. Dessa forma, rapidamente
poderemos nos acostumar com o novo sistema sem o aprendizado imediato de
algumas centenas de comandos e opções. Escolhemos o midnight
commander devido à sua universalidade, ou seja, não necessita do
X rodando.
A tela do mc tem 4 regiões: barra de menu, dois paineis de diretório e uma linha (ou múltiplas, configurável) de comando, aonde podemos executar comandos via um shell. Normalmente o cursor (linha em vídeo reverso) repousa sobre o painel da esquerda, mas com tab ou Ctrl-i mudamos para o outro painel. Abaixo da(s) linha(s) do shell, uma linha de status nos mostr0
as teclas de função ativas e as ações atribuidas a estas. Quando digitamos return ou enter sobre um arquivo, visualizamos este, ou caso seja um diretório, tornamos este diretório visível no painel corrente. Para nos dirigirmos ao diretório hierarquicamente superior (diretório "pai") escolhemos o diretório de nome "..". Como esperado, as teclas com setas para cima e para baixo, nos permitem escolher o arquivo com o cursor. A maioria das operações se processam sobre o arquivo com o cursor, mas às vezes desejamos marcar vários arquivos e realizar um operação única com estes. Existem duas formas de se fazer isso: a primeira, marcando os arquivo com a tecla insert ou Ctrl-t, que inverte o estado de seleção do arquivo corrente; a segunda com "+" que nos permite selecionar arquivos por um wildcard. Os usuários do MsDos podem estranhar a ausência do nome do disco (A:, C:, etc), mas no unix não existem tais nomes, pois todos os discos são montados em subdiretórios de uma única estrutura de disco, a partir da raíz "/", que é definida na carga do sistema.[10]. Quando escolhemos copiar um ou múltiplos arquivos, o destino será o outro painel de diretório do mc.
Alguns comandos são escolhidos pelo usuário na
configuração do programa, como mostra a figura, quando digitamos
F2 (user menu). Os comandos do menu pulldown (a
partir da tecla F9) permitem ao usuário escolher
váêias formas de apresentação dos arquivos e modos
de listagem. Por exemplo, escolhendo-se Left->Quick View, teremos a
visualização das primeiras linhas de cada arquivo no qual
posicionemos o cursor no outro painel (use tab para ir ao
outro painel). Escolhendo Left->Tree, veremos no painel esquerdo uma
árvore dos diretórios (subdiretórios) e no lado direito
os arquivos no diretório aonde o cursor esteja posicionado (após
digitar enter), possibilitando assim uma
navegação mais rápida. Os comandos View e Edit (direto
com as teclas F3 ou F4) nos farão
visualizar totalmente ou editar o arquivo com o cursor, mas tenha cuidado: o
editor default é o vi
, extremamente
não-amigável para usuários de MsDos. Portanto, antes de
fazer isso, saia do mc e digite:
export EDITOR=joe
e voce terá um editor semelhante ao WordStar (ou às interfaces
visuais da Borland), com comandos bem mais familiares e help na tela (com
Ctrl-KH como no WordStar). Outra possibilidade, se voce
não tem medo de mexer no sistema, é editar o arquivo
/etc/profile
e colocar esta linha dada acima neste arquivo, para
execução na carga do seu shell. Entretanto, esta
modificação só estará ativada quando voce der um
novo login.
mc user menu
Aqui podemos ver alguns comandos que podem ser configurados editando um
arquivo: Usualmente o principiante não deverá mexer nesse arquivo até conhecer melhor como escrever comandos (programas) com o shell. Entretanto os comandos mais usuais estão aí, e no menu principal a grande maioria das operações com arquivos podem ser realizadas a um toque de tecla, mesmo sem conhecer profundamente a estrutura do sistema operacional. |
![]() |
O Midnight Commander tem um comando (evocado pelo Ctrl-o) que deixa toda sua interface visual escondida e habilita o usuário a executar comandos diretamente para o shell. O mesmo comando retorna ao modo visual. Assim, caso o usuário esteja em dúvida com relação a algum comando, poderá executá-lo diretamente na linha de comando, sem ter que sair do programa. Por outro lado, uma opção de configuração (Options->Configuration->Pause after run->always) que faz com que o programa pause no final da execução de cada comando, permitindo o usuário visualizar a saida na tela do comando executado e bater uma tecla qualquer para retornar à interface visual do mc.
Uma relação completa dos comandos do mc
pode ser
encontrada no seu manpage, ou com o help online (a partir do
comando F1).
À medida que voce for visitando vários diretórios com o mc, lembre-se de salvar os lugares mais interessantes criando bookmarks, com o comando Ctrl-\. Voce pode inclusive criar folders com os vários diretórios relacionados a uma mesma tarefa e assim se organizar melhor. O mesmo comando permite ir rapidamente (no painel corrente) para um diretório salvo anteriormente.
Discutiremos a seguir o formato das listagens de arquivos. O Linux (assim como os outros Unices), possuem nomes de arquivos com caracteres praticamente arbitrários, excetuando o "/", que é usado como separador de diretórios. É aconselhavel todavia usarmos caracteres visíveis e normais, evitando por exemplo, espaços no nome de um arquivo.[13] São armazenadas 3 datas/horários associados a cada arquivo: a data/hora de criação, de modificação (edição por exemplo), e do último acesso ao arquivo. Diretórios são tratados exatamente como arquivos. O comando do menu (Left->Info ou Right->Info) mostra estas propriedades, juntamente com outras como o modo, o sistema de arquivo (filesystem), o dono e o grupo ao qual este arquivo pertence, e o número de links desse arquivo. A figura a seguir mostra os dados do painel do mc quando este comando é executado.
![]() |
file information
O Midnight Commander pode mostrar várias propriedades do arquivo que
consta no outro painel de diretório, escolhendo o menu Left->Info (ou
Right->Info conforme o caso) e posicionando o cursor sobre o arquivo desejado
no outro painel. O dispositivo ( |
A linha mode acima mostra-nos uma porção de caracteres aparentemente sem sentido. Vejamos devagar o que significam estes. Cada letra representa um flag referente a uma permissão de acesso, exceto pelo primeiro da esquerda e agrupados de 3 em 3. Um arquivo totalmente desprotegido mostraria:
-rwxrwxrwx
onde os 3 primeiros "rwx" são referentes ao acesso pelo dono do arquivo (veja o Owner acima), os seguintes aos usuários que pertençam ao mesmo grupo, e os tres últimos a outros usuários quiasquer. Quando o caracter (r, w ou x) está presente, o flag está ativo e a permissão para leitura (r), escrita (w) ou execução(x) está habilitada. O número (0644) mostra exatamente a mesma coisa codificada em octal, mas no lugar de aprender chmod por enquanto, voce pode brincar um pouco com os comandos do mc que permitem alterar esses flags de modo muito mais simples.
Para tentar isso com o mc, posicione o cursor sobre um arquivo e digite F9 (para ir ao menu), e escolha File->Chmod e modifique cada flag individualmente com a barra de espaço. Selecione Set (botão abaixo na caixa de diálogo) para sair ou Cancel.
Voce provavelmente já teve que transportar uma coleção de
arquivos entre dois computadores. É bastante desinteressante sair
copiando de um em um arquivo para um disquete (ou vários disquetes!) e
recolocá-los no mesmo lugar (isto é nos mesmos
diretórios) da outra máquina. Se voce faz isso com
frequência, deve usar algum compactador/arquivador como o zip ou arj. No
Linux o formato compactado mais comum é o .tar.gz
, apesar
de ser possível usar quaisquer outro destes mencionados. A vantagem do
.tar.gz
é que ele também transporta links[12], pipes, devices, e outros "arquivos" que
não são realmente dados. O nome .tar.gz
vem de
dois programas independentes: o tar
, que é um
utilitário para armazenamento de vários arquivos em um
só, com informações de diretórios, e o
gzip
(daí a extensão gz) que é um
compactador bastante popular. Outros compactadores são mais eficientes
como o bzip2
(extensão bz2), mas não invalida o que
estamos discutindo aqui, inclusive são igualmente suportados pelo
Midnight Commander. A distribuição RedHat do Linux usa um
compactador próprio (que é também GPL, isto é
software aberto) chamado rpm
.
Com o mc, podemos criar facilmente um .tar.gz colocando-nos no diretório aonde estão os arquivos a armazenar e digitando F2 3, insto é a tecla F2 (user menu) seguido a tecla 3, comando "Make a release...". Isto criará o arquivo compactado no diretório imediatamente superior ao corrente, exceto se entrarmos outro path. Para descompactar um arquivo assim criado, ou já existente nos CDRoms ou obtidos via ftp/http da internet, o procedimento ainda é mais simples. Simplesmente "entre" no arquivo (digitando enter), como voce o faria com um subdiretório e aí voce verá um sistema de arquivos virtual, podendo visualizar (o README por exemplo) antes de decidir instalar o software obtido. Entretanto, você não poderá editar arquivos nesse sistema de arquivos virtual. Para copiar parte ou todo o conteúdo, proceda exatamente como o faria com arquivos e diretórios normais, selecionando no outro painel o destino dos seus arquivos.