Professional Documents
Culture Documents
PÁG.: 2
APOSTILA GNU/DEBIAN BÁSICO
Índice
1. Introdução...............................................................................................................8
2. O que é o GNU/Debian............................................................................................9
2.1. Quando surgiu?................................................................................................................
............9
2.2. Codinomes...............................................................................................................
.....................9
2.3. Stable, Testing e Unstable.........................................................................................
..................9
2.3.1. Stable....................................................................................................................................
10
2.3.2. Testing........................................................................................................................
..........10
2.3.3. Unstable.....................................................................................................
..........................10
2.4. Main, Contrib e Non-Free...................................................................................................
........10
2.5. Custo versus Benefício..................................................................................................
............11
3. Partições, Sistema de Arquivos e Estrutura de Diretórios................................12
3.1. Partições................................................................................................................................
......12
3.2. Sistema de Arquivos............................................................................................
......................12
3.3. Estrutura de Diretórios...................................................................................
...........................12
3.4. Por que Criar Várias Partições ? .............................................................................................
.13
4. Usuários e Grupos................................................................................................14
4.1. Usuário.............................................................................................................
...........................14
4.2. Grupo...........................................................................................................................
................14
4.3. Superusuário............................................................................................................................
...14
4.4. Entrando no Sistema ..........................................................................................................
.......14
4.5. Saindo/Reiniciando do Sistema...................................................................................
.............15
5. Conceitos Básicos de Utilização.........................................................................16
5.1. Terminais Virtuais (Consoles).................................................................................
..................16
5.2. Background e Foreground................................................................................
........................16
5.3. Automação na Console....................................................................................................
..........16
6. Redirecionamentos e Pipe...................................................................................17
6.1. Utilização do Redirecionador “>”..............................................................................
...............17
6.2. Utilização do Redirecionador “>>”...............................................................................
............17
6.3. Utilização do redirecionador “<”.........................................................................
.....................17
6.4. Utilização do redirecionador “<<”...........................................................................
.................17
6.5. Uso do “|” (pipe)...........................................................................................................
..............17
6.6. Diferença entre Pipe e Redirecionamento...............................................................................18
7. Comandos Básicos...............................................................................................19
PÁG.: 3
APOSTILA GNU/DEBIAN BÁSICO
PÁG.: 4
APOSTILA GNU/DEBIAN BÁSICO
7.4.1. adduser...........................................................................................................................
......39
7.4.2. addgroup..............................................................................................................................
.40
7.4.3. passwd.......................................................................................................
..........................41
7.4.4. newgrp.......................................................................................................................
...........41
7.4.5. userdel.......................................................................................................................
...........42
7.4.6. groupdel..........................................................................................................................
......42
7.4.7. sg...............................................................................................................................
...........42
7.4.8. Adicionando o usuário a um grupo extra.........................................................................
.....43
7.4.9. chfn.............................................................................................................................
..........43
7.4.10. id.............................................................................................................................
............44
7.4.11. logname...................................................................................................................
...........45
7.4.12. users.........................................................................................................................
..........45
7.4.13. groups...........................................................................................................................
......45
7.4.14. getent.............................................................................................................................
.....45
7.5. Comandos de Rede..................................................................................................
..................46
7.5.1. who.......................................................................................................................
................46
7.5.2. finger...............................................................................................................................
......46
7.5.3. ftp.....................................................................................................................................
.....47
7.5.4. whoami............................................................................................................
.....................47
7.5.5. hostname....................................................................................................................
..........48
7.5.6. ping...........................................................................................................................
............48
7.5.7. nmap...............................................................................................................................
......48
7.6. Comandos para Gerenciamento de Processos.......................................................................49
7.6.1. ps...............................................................................................................................
...........49
7.6.2. top...................................................................................................................................
......49
7.6.3. bg....................................................................................................................................
......50
7.6.4. fg.....................................................................................................................................
......50
7.6.5. jobs.......................................................................................................................
................50
7.6.6. kill..........................................................................................................................................
50
7.6.7. killall...........................................................................................................................
...........51
8. Permissões de acesso a arquivos e diretórios..................................................52
8.1. Donos, grupos e outros usuários...................................................................................
..........52
8.2. Tipos de Permissões de acesso.........................................................................
......................52
8.3. Etapas para acesso a um arquivo/diretório.............................................................................53
8.3.1. Exemplos práticos de permissões de acesso......................................................................53
8.4. Permissões de Acesso Especiais..............................................................................
...............55
8.5. A conta root.......................................................................................................................
..........56
8.6. Comandos para Manipulação de Permissões.........................................................................57
8.6.1. chmod.........................................................................................................................
..........57
PÁG.: 5
APOSTILA GNU/DEBIAN BÁSICO
8.6.2. chgrp...............................................................................................................................
......58
8.6.3. chown..............................................................................................................
.....................58
8.7. Modo de Permissão Octal....................................................................................................
......59
9. Como Instalar pacotes..........................................................................................61
9.1. O que é um Pacote ?................................................................................................
..................61
9.2. Apt................................................................................................................................
................61
9.2.1. Como encontrar pacotes que contém determinado arquivo................................................62
9.2.2. Reconfigurar a lista de pacotes..................................................................................
..........62
9.2.3. Após reconfigurar a lista de pacotes....................................................................................63
9.2.4. Onde está a tal lista de pacotes para instalação?................................................................63
9.3. Dpkg.................................................................................................................................
............63
10. Instalação do Sistema Operacional...................................................................65
11. Arquivos Importantes.........................................................................................66
11.1. Rede...................................................................................................................
........................66
11.2. Administração de Usuários............................................................................
.........................66
11.3. Xorg................................................................................................................................
............66
12. Como Obter Ajuda..............................................................................................67
12.1. Páginas de Manual...........................................................................................
........................67
12.2. Info Pages.............................................................................................................................
.....67
12.3. Help on line.......................................................................................................
........................68
12.4. help............................................................................................................................................
.68
13. Anexos.................................................................................................................69
13.1. Instalação do Sistema Operacional GNU/Debian Desktop Paraná......................................69
13.1.1. Instalação e configuração dos meta-pacotes customizados..............................................72
13.1.2. Removendo pacotes desnecessários e finalizando a instalação.......................................72
13.2. Instalando uma impressora através do CUPS.......................................................................72
13.3. SSH...........................................................................................................................................
..75
PÁG.: 6
APOSTILA GNU/DEBIAN BÁSICO
Índice de Figuras
Figura 1 - As informações dos pacotes do sistema obtidas com o uso do dpkg.......................................64
Figura 2 - A tela inicial de instalação do GNU/Debian...............................................................................69
Figura 3 - A página principal de administração do CUPS – Aba “Home”..................................................73
Figura 4 - Exibindo as informações de uma impressora instalada no CUPS - Aba "Printers"..................75
PÁG.: 7
APOSTILA GNU/DEBIAN BÁSICO
1. Introdução
Este documento, foi elaborado especialmente para o curso de Debian básico ministrado pela
Coordenação de Planejamento, Pesquisa e Capacitação - CPPC. O objetivo desta apostila, é fazer uma
explanação básica com relação aos conceitos e ao uso das principais ferramentas que encontramos
numa distribuição GNU/Linux, de maneira especial no GNU/Debian. Esta apostila foi gerada tendo como
base o “Guia Foca GNU/Linux para Iniciantes”, de Gleydson Mazioli da Silva, que pode ser acessado
em “http://focalinux.cipsga.org.br/guia/iniciante/index.htm#contents”.
A Gerência de Gestão de Ambientes – GGA, por meio da Coordenação de Planejamento,
Pesquisa e Capacitação – CPPC, espera que você possa aproveitar o conteúdo deste material para
ampliar mais o seu conhecimento do Sistema Operacional GNU/Linux, e em especial, da distribuição
Debian.
PÁG.: 8
APOSTILA GNU/DEBIAN BÁSICO
2. O que é o GNU/Debian
“O Debian é um sistema operacional (SO) livre para seu computador. Um sistema operacional é
um conjunto de programas básicos e utilitários que fazem seu computador funcionar. O Debian usa o
kernel Linux, mas grande parte das ferramentas do sistema operacional vêm do projeto GNU, daí o
nome GNU/Linux.
O Debian GNU/Linux é mais que um simples SO: ele vem com mais de 18733 pacotes
contendo softwares pré-compilados e distribuídos em um bom formato, que torna fácil a instalação deles
na sua máquina.”
A última versão estável do Debian é 4.0, codinome “etch”. A última atualização desta versão foi
feita em 8 de Abril de 2007.
(fonte: http://www.debian.org)
O Debian foi iniciado em agosto de 1993 por Ian Murdock, como uma nova distribuição que
seria feita abertamente, no espírito do Linux e do projeto GNU. O Debian deveria ser feito
cuidadosamente e consciensiosamente e ser mantido e suportado com cuidado similar. Ele começou
como um grupo pequeno de desenvolvedores de Software Livre e cresceu gradualmente para se
tornar uma comunidade grande e bem organizada de desenvolvedores e usuários.
Debian é pronunciado /de.bi.ən/. e o nome vem do nome de seu criador, Ian Murdock, e
sua esposa, Debra.
2.2. Codinomes
Para saber sobre os nomes que cada uma das versões do Debian recebeu, leia esta
referência:
http://www.debian.org/releases/
PÁG.: 9
APOSTILA GNU/DEBIAN BÁSICO
Isto significa que ele já teve um tempo suficiente para testes e não apresentou
problemas. É possível fazer a instalação de um sistema com a árvore teste, mas isso exige
conhecimento para resolver problemas com pacotes “jovens”.
A versão instável exige grande conhecimento e capacidade de resolver problemas de
configuração e instalação.
O Debian tem sempre três versões em manutenção constante: “stable”, “testing” e
“unstable”.
2.3.1. Stable
A distribuição “stable” contém a última distribuição oficialmente lançada pela
Debian.
Essa é a versão de produção do Debian, ela é a recomendada primariamente.
A distribuição “stable” do Debian GNU/Linux está atualmente na versão 4.0 e seu
codinome é etch. Ela foi lançada em 8 de Abril de 2007.
2.3.2. Testing
A distribuição “testing” contém pacotes que não foram aceitos numa versão
“stable” ainda, mas eles já estão na fila para serem aceitos. A principal vantagem de usar
essa distribuição é que ela tem versões mais novas dos programas.
A distribuição “testing” atual chama-se lenny.
2.3.3. Unstable
É na distribuição “unstable” que o desenvolvimento ininterrupto do Debian ocorre.
Geralmente, os usuários dessa distribuição são os próprios desenvolvedores e pessoas
que gostam de emoções fortes.
A distribuição “unstable” sempre possuí o codinome sid.
PÁG.: 10
APOSTILA GNU/DEBIAN BÁSICO
eles são em sua maioria pacotes de software de criptografia ou software que está
obstruído por problemas com patentes. A maioria deles é livre mas alguns são não-livres.
Note que os mesmos pacotes podem aparecer em muitas distribuições, mas com
números de versão diferentes.
PÁG.: 11
APOSTILA GNU/DEBIAN BÁSICO
3.1. Partições
São divisões existentes no disco rígido que marcam onde começa onde terminam um
sistema de arquivos. Por causa destas divisões, nós podemos usar mais de um Sistema
Operacional no mesmo computador, ou dividir o disco rígido em uma ou mais partes para ser
usado por um único Sistema Operacional.
Após criada e formatada, a partição será identificada como um dispositivo no diretório
“/dev” e deverá ser montada para permitir seu uso no sistema.
No Linux, os dispositivos existentes em seu computador são identificados por um arquivo
referente a este dispositivo no diretório “/dev”.
A identificação de discos rígidos no Linux é feita da seguinte forma:
/dev/hda1
| | ||
| | | |__ Indica o número da partição do HD.
| | |___ Letra que indica o HD (a=primeiro, b=segundo...).
| |_____ Sigla que indica o tipo do HD (hd=ide, sd=scsi ou sata).
|_________ Diretório onde são armazenados dispositivos do sistema.
/ Sistema raiz.
/bin Contém arquivos programas do sistema que são usados com freqüência
pelos usuários.
PÁG.: 12
APOSTILA GNU/DEBIAN BÁSICO
/proc Sistema de arquivos do kernel. Este diretório não existe em seu disco
rígido, ele é colocado lá pelo kernel e usado por diversos programas que fazem
sua leitura, verificam configurações do sistema ou modificar o funcionamento de
dispositivos do sistema através da alteração em seu arquivos.
/var Contém maior parte dos arquivos que são gravados com freqüência pelos
programas do sistema.
Muitos usuários avançados, assim como empresas de médio e grande porte, se sentem
mais seguros colocando os diretórios cruciais do sistema em partições separadas.
PÁG.: 13
APOSTILA GNU/DEBIAN BÁSICO
4. Usuários e Grupos
4.1. Usuário
Como o Unix foi concebido para que várias pessoas pudessem acessar a mesma máquina
usando os seus recursos, foi criado o conceito de usuário para diferenciar o que cada pessoa
estivesse fazendo e quais recursos ela pode utilizar.
A identificação do usuário é feita por um nome ou id, que é atribuído ao usuário durante a
criação de sua conta no sistema. E para garantir que um usuários não acessem o trabalho de
outro, ele deve informar uma senha que confirme a veracidade daquele id. Desta forma, o id + a
senha é a chave de entrada para o usuário acessar o sistema.
4.2. Grupo
O Linux possui o conceito de grupo, que serve para agrupar vários usuários que
compartilham das mesmas características, por exemplo, permissão de acesso a arquivos e
dispositivos.
4.3. Superusuário
O superusuário é aquele que tem plenos poderes dentro do Linux. É o superusuário que pode
criar novos usuários, alterar direitos, configurar e fazer atualizações no sistema. Somente ele tem
direito a executar essas atividades.
É recomendado utilizar a conta de superusuário somente quando for necessário
configurar algo no sistema e mesmo assim, sendo o mais cauteloso possível para evitar algum
erro que danifique o mesmo.
O superusuário é identificado pelo nome de root.
localhost login:
Você deverá informar seu login (nome de usuário) e pressionar Enter. Logo a seguir será
solicitado o seu password (senha).
Password:
Ao digitar a senha, não será apresentado nada, nem sequer os famosos asteriscos "*", pois
desta forma o sistema garante o sigilo absoluto de seu password, pois nem a pessoa que está ao
seu lado, saberá quantas teclas você digitou.
teste@localhost:~$
Onde:
• O teste é o nome do usuário;
• O localhost é o nome da máquina;
• O ~ significa que o usuário está navegando na pasta /home/teste (pasta pessoal do seu
usuário).
PÁG.: 14
APOSTILA GNU/DEBIAN BÁSICO
PÁG.: 15
APOSTILA GNU/DEBIAN BÁSICO
Comandos Resultado
CTRL + C Termina a execução de um programa que esteja sendo executado em 1° plano.
CTRL + Z Para (pausa) a execução de um programa que esteja sendo executado em 1°
plano.
CTRL + L Limpa a tela.
CTRL + A Posiciona o cursor no inicio da linha.
CTRL + E Posiciona o cursor no final da linha.
CTRL + D Saí do sistema (logout).
CTRL + U Apaga as expressões a partir do ponto onde o cursor está até o inicio da linha.
CTRL + Y Insere o trecho apagado a partir da posição do cursor.
CTRL + R Realiza uma busca no histórico de comandos executados.
TAB Auto-complementação. Basta digitar parte de um nome de arquivo/diretório ou
comando e pressionar <TAB> para que o Bash complete a expressão para
usuário.
PÁG.: 16
APOSTILA GNU/DEBIAN BÁSICO
6. Redirecionamentos e Pipe
Esta seção explica o funcionamento dos recursos de redirecionamento de entrada e saída do
sistema GNU/Linux.
PÁG.: 17
APOSTILA GNU/DEBIAN BÁSICO
Primeiramente, o comando “ls” faz uma listagem longa de arquivos e diretórios contidos no
diretório raiz (“/”) que é enviada diretamente ao comando “more”, que tem a função de efetuar
uma pausa na exibição dos resultados a cada 25 linhas mostradas na tela.
Você pode notar pelo exemplo acima, que ambos tanto “ls” quanto “more” são comandos,
porque estão separados por um "|". Se um deles não existir ou for digitado incorretamente, será
mostrada uma mensagem de erro.
Um resultado diferente seria obtido usando um ">" no lugar do "|"; A saída do comando
“ls -la” seria gravada em um arquivo chamado “more”.
Outro exemplo para um melhor entendimento:
find / -name teste | grep /home
PÁG.: 18
APOSTILA GNU/DEBIAN BÁSICO
7. Comandos Básicos
7.1.1. ls
Lista os arquivos de um diretório.
onde:
caminho/arquivo
Diretório/arquivo que será listado.
caminho1/arquivo1
Outro Diretório/arquivo que será listado. Podem ser feitas várias listagens de uma só
vez.
Opções
-a, --all
Lista todos os arquivos (inclusive os ocultos) de um diretório.
-A, --almost-all
Lista todos os arquivos (inclusive os ocultos) de um diretório, exceto o diretório
atual e o de nível anterior.
-B, --ignore-backups
Não lista arquivos que terminam com ~ (Backup).
--color=PARAM
Mostra os arquivos em cores diferentes, conforme o tipo de arquivo. PARAM pode
ser:
never - Nunca lista em cores (mesma coisa de não usar o parâmetro –-color).
always - Sempre lista em cores conforme o tipo de arquivo.
auto - Somente colore a listagem se estiver em um terminal.
-d, --directory
Lista os nomes dos diretórios ao invés do conteúdo.
-f
Não classifica a listagem.
-F
Insere um caracter após arquivos executáveis ('*'), diretórios ('/'), soquete ('='), link
simbólico ('@') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de arquivos
nas listagens de diretórios.
-G, --no-group
Oculta a coluna de grupo do arquivo.
-h, --human-readable
Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes.
PÁG.: 19
APOSTILA GNU/DEBIAN BÁSICO
-H
Faz o mesmo que -h, mas usa unidades de 1000 ao invés de 1024 para
especificar Kbytes, Mbytes, Gbytes.
-l
Usa o formato longo para listagem de arquivos. Lista as permissões, data de
modificação, donos, grupos etc.
-n
Usa a identificação de usuário e grupo numérica ao invés dos nomes.
-L, --dereference
Lista o arquivo original e não o link referente ao arquivo.
-o
Usa a listagem longa sem os donos dos arquivos (mesma coisa que -lG).
-p
Mesma coisa que -F, mas não inclui o símbolo '*' em arquivos executáveis. Esta
opção é típica de sistemas Linux.
-R
Lista diretórios e sub-diretórios recursivamente.
Uma listagem feita com o comando ls -la normalmente é mostrada da seguinte
maneira:
-rwxr-xr-- 1 marcius gga 8192 nov 4 16:00 teste
marcius
Nome do dono do arquivo teste.
gga
Nome do grupo que o arquivo teste pertence.
8192
Tamanho do arquivo (em bytes).
nov
Mês da criação/última modificação do arquivo.
4
Dia que o arquivo foi criado.
16:00
Hora em que o arquivo foi criado/modificado. Se o arquivo foi criado há mais de
um ano, em seu lugar é mostrado o ano da criação do arquivo.
teste
Nome do arquivo.
PÁG.: 20
APOSTILA GNU/DEBIAN BÁSICO
7.1.2. cd
Entra em um diretório. Você precisa ter a permissão de execução para entrar no
diretório.
cd [diretório]
onde:
diretório
Exemplos:
7.1.3. pwd
Mostra o nome e caminho do diretório atual.
Você pode usar o comando pwd para verificar em qual diretório se encontra
atualmente.
7.1.4. mkdir
Cria um diretório no sistema. Um diretório é usado para armazenar arquivos de um
determinado tipo. O diretório pode ser entendido como uma pasta onde você guarda seus
papeis (arquivos).
Como uma pessoa organizada, você utilizará uma pasta para guardar cada tipo de
documento, da mesma forma você pode criar um diretório vendas para guardar seus
arquivos relacionados com vendas naquele local.
onde:
caminho
Caminho onde o diretório será criado.
diretório
Nome do diretório que será criado.
PÁG.: 21
APOSTILA GNU/DEBIAN BÁSICO
Opções
--verbose
Mostra uma mensagem para cada diretório criado. As mensagens de erro serão
mostradas mesmo que esta opção não seja usada.
-p, --parents
Cria os diretórios de nível superior (diretórios “pai”) do diretório que está sendo
criado, caso eles não existão.
Para criar um novo diretório, você deve ter permissão de gravação. Por exemplo,
para criar um diretório em /tmp com o nome de teste que será usado para gravar arquivos
de teste, você deve usar o comando mkdir /tmp/teste.
Podem ser criados mais de um diretório com um único comando (mkdir /tmp/teste
/tmp/teste1 /tmp/teste2).
7.1.5. rmdir
Remove um diretório do sistema. Este comando faz exatamente o contrário do mkdir.
O diretório a ser removido deve estar vazio e você deve ter permissão de gravação para
remove-lo.
onde:
caminho
Caminho do diretório que será removido.
diretório
Nome do diretório que será removido.
7.2.1. cat
Mostra o conteúdo de um arquivo binário ou texto.
diretório/arquivo
Localização do arquivo que deseja visualizar o conteúdo.
Opções
-n, --number
Mostra o número das linhas enquanto o conteúdo do arquivo é mostrado.
-s, --squeeze-blank
Não mostra mais que uma linha em branco entre um parágrafo e outro.
-
Lê a entrada padrão.
PÁG.: 22
APOSTILA GNU/DEBIAN BÁSICO
O comando cat trabalha com arquivos texto. Use o comando zcat para ver
diretamente arquivos compactados com gzip.
Exemplo:
cat /usr/doc/copyright/GPL
7.2.2. rm
Apaga arquivos. Também pode ser usado para apagar diretórios e sub-diretórios
vazios ou que contenham arquivos.
rm [opções][caminho][arquivo/diretório]
onde:
caminho
Localização do arquivo que deseja apagar. Se omitido, assume que o arquivo
esteja no diretório atual.
arquivo/diretório
Arquivo que será apagado.
Opções
-i, --interactive
Pergunta antes de remover, esta é ativada por padrão.
-v, --verbose
Mostra os arquivos na medida que são removidos.
-r, --recursive
Usado para remover arquivos em sub-diretórios. Esta opção também pode ser
usada para remover sub-diretórios.
-f, --force
Remove os arquivos sem perguntar.
-- arquivo
Remove arquivos/diretórios que contém caracteres especiais. O separador "--"
funciona com todos os comandos do shell e permite que os caracteres especiais como "*",
"?", "-", etc. sejam interpretados como caracteres comuns.
Use com atenção o comando rm, uma vez que os arquivos e diretórios forem
apagados, eles não poderão ser mais recuperados.
Exemplos:
rm teste.txt - Apaga o arquivo teste.txt no diretório atual.
rm *.txt - Apaga todos os arquivos do diretório atual que terminam com .txt.
rm *.txt teste.novo - Apaga todos os arquivos do diretório atual que terminam com
.txt e também o arquivo teste.novo.
rm -rf /tmp/teste/* - Apaga todos os arquivos e sub-diretórios do diretório /tmp/teste
mas mantém o sub-diretório /tmp/teste.
rm -rf /tmp/teste - Apaga todos os arquivos e sub-diretórios do diretório /tmp/teste,
inclusive /tmp/teste.
rm -f -- --arquivo-- - Remove o arquivo de nome --arquivo--.
7.2.3. cp
Copia arquivos.
PÁG.: 23
APOSTILA GNU/DEBIAN BÁSICO
onde:
origem
Arquivo que será copiado. Podem ser especificados mais de um arquivo para ser
copiado usando “Coringas”.
destino
O caminho ou nome de arquivo onde será copiado. Se o destino for um diretório,
os arquivos de origem serão copiados para dentro do diretório.
Opções
i, --interactive
Pergunta antes de substituir um arquivo existente.
-f, --force
Não pergunta, substitui todos os arquivos caso já exista.
-r
Copia arquivos dos diretórios e subdiretórios da origem para o destino. É
recomendável usar -R ao invés de -r.
-R, --recursive
Copia arquivos e sub-diretórios (como a opção -r) e também os arquivos especiais
FIFO e dispositivos.
-v, --verbose
Mostra os arquivos enquanto estão sendo copiados.
Exemplos:
cp teste.txt teste1.txt - Copia o arquivo teste.txt para teste1.txt.
cp teste.txt /tmp - Copia o arquivo teste.txt para dentro do diretório /tmp.
cp * /tmp - Copia todos os arquivos do diretório atual para /tmp.
cp /bin/* . - Copia todos os arquivos do diretório /bin para o diretório em que nos
encontramos no momento.
cp -R /bin /tmp - Copia o diretório /bin e todos os arquivos/sub-diretórios existentes
para o diretório /tmp.
cp -R /bin/* /tmp - Copia todos os arquivos do diretório /bin (exceto o diretório /bin)
e todos os arquivos/sub-diretórios existentes dentro dele para /tmp.
cp -R /bin /tmp - Copia todos os arquivos e o diretório /bin para /tmp.
7.2.4. mv
Move ou renomeia arquivos e diretórios. O processo é semelhante ao do comando
cp mas o arquivo de origem é apagado após o término da cópia.
onde:
origem
Arquivo/diretório de origem.
destino
Local onde será movido ou novo nome do arquivo/diretório.
PÁG.: 24
APOSTILA GNU/DEBIAN BÁSICO
Opções
-f, --force
Substitui o arquivo de destino sem perguntar.
-i, --interactive
Pergunta antes de substituir. É o padrão.
-v, --verbose
Mostra os arquivos que estão sendo movidos.
Exemplos:
mv teste.txt teste1.txt - Muda o nome do arquivo teste.txt para teste1.txt.
mv teste.txt /tmp - Move o arquivo teste.txt para /tmp. Lembre-se que o arquivo de
origem é apagado após ser movido.
mv teste.txt teste.new (supondo que teste.new já exista) - Copia o arquivo teste.txt
por cima de teste.new e apaga teste.txt após terminar a cópia.
7.3.1. badblocks
Realiza a procura por blocos defeituosos num dispositivo de armazenamento,
comumente uma partição ou um disco rígido. Somente testes de leitura podem ser
realizados em partições montadas (disponíveis para serem acessadas pelos usuários), já
os testes que envolvem leitura/escrita, são obrigatoriamente feitos com as partições e
discos desmontados.
Onde:
dispositivo
Representa o dispositivo que se deseja checar. Pode ser uma partição ou um disco
rígido. Por exemplo, “/dev/hdb” ou “/dev/hda2”.
bloco-final/bloco-inicial
Indicam o bloco em que a checagem deve iniciar (bloco-inicial) e no qual deve
terminar (bloco-final). Caso estes parâmetros não sejam fornecidos, a checagem iniciará
pelo primeiro bloco do dispositivo e terminará no ultimo.
opções:
-b tamanho
Define o tamanho do bloco a ser utilizado na checagem, através do uso do
argumento “tamanho”. O padrão é 1024.
-c número
Este parâmetro define a quantidade de blocos que serão testados por vez. O
padrão é 64.
-i arquivo
Faz a leitura de um arquivo que contém uma listagem de blocos defeituosos
previamente conhecidos. Isto otimiza a execução do comando badblocks que não perderá
PÁG.: 25
APOSTILA GNU/DEBIAN BÁSICO
tempo checando estas áreas. Todos os blocos contidos no arquivo, serão omitidos da
checagem e da saída do comando.
-o arquivo
Cria um arquivo contendo os blocos defeituosos detectados pela execução do
comando badblocks. Se esta opção não for especificada, badblocks apenas mostra os
resultados na saída padrão.
-p número
Pode-se definir o número de vezes que a checagem do dispositivo será repetida,
usando este parâmetro. O padrão é 0 (zero), ou seja, apenas uma checagem sem
repetições.
-n
Realiza o teste de leitura/escrita de modo não-destrutivo, preservando os dados no
dispositivo.
-s
Exibe o progresso da execução de badblocks, mostrando os blocos já
processados.
-v
Exibe informações sobre a execução de badblocks. Por padrão, badblocks é
executado no modo silencioso, não permitindo que o usuário acompanhe o progresso da
checagem.
-w
Realiza o teste de leitura/gravação de modo destrutivo. Não utilize esta opção
caso você não possa destruir os dados no dispositivo de armazenamento. Esta opção é
mais rápida que “-n”.
Exemplos:
badblocks -v /dev/hda2
Faz a checagem da segunda partição do primeiro disco IDE exibindo informações
sobre o progresso da verificação.
badblocks -n -v /dev/sdb
Realiza a verificação no modo leitura/escrita não-destrutivo e exibe informações
sobre o progresso da checagem feita pelo programa, sobre o segundo dispositivo de
armazenamento SCSI da maquina.
badblocks -w -s /dev/hdc
Realiza o teste de leitura/escrita de forma destrutiva no primeiro disco da segunda
controladora IDE e exibe os blocos já verificados para o acompanhamento da verificação.
7.3.2. clear
Limpa a tela e posiciona o cursor no canto superior esquerdo do vídeo.
clear
7.3.3. date
Permite ver/modificar a Data e Hora do Sistema. Você precisa estar como usuário
root para modificar a data e hora.
date MesDiaHoraMinuto[AnoSegundos]
PÁG.: 26
APOSTILA GNU/DEBIAN BÁSICO
onde:
MesDiaHoraMinuto[AnoSegundos]
São respectivamente os números do mês, dia, hora e minutos sem espaços.
Opcionalmente você pode especificar o Ano (com 2 ou 4 dígitos) e os Segundos.
+[FORMATO]
Define o formato da listagem que será usada pelo comando date. Os seguintes
formatos são os mais usados:
7.3.4. df
Mostra o espaço livre/ocupado de cada partição.
df [opções]
onde:
Opções
-a
Inclui sistemas de arquivos com 0 blocos.
-h, --human-readable
Mostra o espaço livre/ocupado em Mb, Kb, Gb ao invés de blocos.
-H
Idêntico a -h mas usa 1000 ao invés de 1024 como unidade de cálculo.
-k
Lista em Kbytes.
-l
Somente lista sistema de arquivos locais.
-m
Lista em Mbytes (equivalente a --block-size=1048576).
Exemplos:
df
PÁG.: 27
APOSTILA GNU/DEBIAN BÁSICO
df -h
df -t vfat
7.3.5. ln
Cria links para arquivos e diretórios no sistema. O link é um mecanismo que faz
referência a outro arquivo ou diretório em outra localização. O link em sistemas GNU/Linux
faz referência reais ao arquivo/diretório podendo ser feita cópia do link (será copiado o
arquivo alvo), entrar no diretório (caso o link faça referência a um diretório), etc.
onde:
origem
Diretório ou arquivo de onde será feito o link.
link
Nome do link que será criado.
Opções
-s
Cria um link simbólico. Usado para criar ligações com o arquivo/diretório de
destino.
-v
Mostra o nome de cada arquivo antes de fazer o link.
-d
Cria um hard link para diretórios. Somente o root pode usar esta opção.
Observações:
Se for usado o comando rm com um link, somente o link será removido.
Se for usado o comando cp com um link, o arquivo original será copiado ao invés do
link.
Se for usado o comando mv com um link, a modificação será feita no link.
Se for usado um comando de visualização (como o cat), o arquivo original será
visualizado.
Exemplos:
ln -s /dev/ttyS1 /dev/modem - Cria o link /dev/modem para o arquivo /dev/ttyS1.
ln -s /tmp ~/tmp - Cria um link ~/tmp para o diretório /tmp.
7.3.6. du
Mostra o espaço ocupado por arquivos e sub-diretórios do diretório atual.
PÁG.: 28
APOSTILA GNU/DEBIAN BÁSICO
du [opções]
onde:
Opções
-a, --all
Mostra o espaço ocupado por todos os arquivos.
-b, --bytes
Mostra o espaço ocupado em bytes.
-c, --total
Faz uma totalização de todo espaço listado.
-D
Não conta links simbólicos.
-h, --human
Mostra o espaço ocupado em formato legível por humanos (Kb, Mb) ao invés de usar
blocos.
-H
Como o anterior mas usa 1000 e não 1024 como unidade de cálculo.
-k
Mostra o espaço ocupado em Kbytes.
-m
Mostra o espaço ocupado em Mbytes.
-S, --separate-dirs
Não calcula o espaço ocupado por sub-diretórios.
Exemplo:
du -h
du -hc
7.3.7. find
Procura por arquivos/diretórios no disco. find pode procurar arquivos através de
sua data de modificação, tamanho etc através do uso de opções. O find, ao contrário de
outros programas, usa opções longas através de um "-".
onde:
diretório
Inicia a procura neste diretório, percorrendo seu sub-diretórios.
Opções/expressão
-name [expressão]
Procura pelo nome [expressão] nos nomes de arquivos e diretórios processados.
-iname [expressão]
Procura pelo nome [expressão] desconsiderando maiúsculas e minúsculas.
PÁG.: 29
APOSTILA GNU/DEBIAN BÁSICO
-depth
Processa os sub-diretórios primeiro antes de processar os arquivos do diretório
principal.
-maxdepth [num]
Faz a procura até [num] sub-diretórios dentro do diretório que está sendo
pesquisado.
-mindepth [num]
Não faz nenhuma procura em diretórios menores que [num] níveis.
-mount, -xdev
Não faz a pesquisa em sistemas de arquivos diferentes daquele de onde o
comando find foi executado.
-size [num]
Procura por arquivos que tiverem o tamanho [num]. [num] pode ser antecedido de "+"
ou "-" para especificar um arquivo maior ou menor que [num]. A opção -size pode ser seguida
de:
b - Especifica o tamanho em blocos de 512 bytes. É o padrão caso [num] não seja
acompanhado de nenhuma letra.
c - Especifica o tamanho em bytes.
k - Especifica o tamanho em Kbytes.
-type [tipo]
Procura por arquivos do [tipo] especificado. Os seguintes tipos são aceitos:
b – bloco
c – caracter
d – diretório
p – pipe
f - arquivo regular
l - link simbólico
s – sockete
A maior parte dos argumentos numéricos podem ser precedidos por "+" ou "-".
Para detalhes sobre outras opções e argumentos, consulte a página de manual.
Exemplo:
find / -name grep - Procura no diretório raiz e sub-diretórios um arquivo/diretório
chamado grep.
find / -name grep -maxdepth 3 - Procura no diretório raiz e sub-diretórios até o
terceiro nível, um arquivo/diretório chamado grep.
find . -size +1000k - Procura no diretório atual e sub-diretórios um arquivo com
tamanho maior que 1000 kbytes (1Mbyte).
7.3.8. free
Mostra detalhes sobre a utilização da memória RAM do sistema.
free [opções]
onde:
Opções
-b
Mostra o resultado em bytes.
PÁG.: 30
APOSTILA GNU/DEBIAN BÁSICO
-k
Mostra o resultado em Kbytes.
-m
Mostra o resultado em Mbytes.
-o
Oculta a linha de buffers.
-t
Mostra uma linha contendo o total.
-s [num]
Mostra a utilização da memória a cada [num] segundos.
O free é uma interface ao arquivo /proc/meminfo.
7.3.9. grep
Procura por um texto dentro de um arquivo(s) ou no dispositivo de entrada padrão.
onde:
expressão
palavra ou frase que será procurada no texto. Se tiver mais de duas palavras você
deve identifica-la com aspas "" caso contrário o grep assumirá que a segunda palavra é o
arquivo!
arquivo
Arquivo onde será feita a procura.
Opções
-A [número]
Mostra o [número] de linhas após a linha encontrada pelo grep.
-B [número]
Mostra o [número] de linhas antes da linha encontrada pelo grep.
-f [arquivo]
Especifica que o texto que será localizado, está no arquivo [arquivo].
-h, --no-filename
Não mostra os nomes dos arquivos durante a procura.
-i, --ignore-case
Ignora diferença entre maiúsculas e minúsculas no texto procurado e arquivo.
-n, --line-number
Mostra o nome de cada linha encontrada pelo grep.
-U, --binary
Trata o arquivo que será procurado como binário.
Se não for especificado o nome de um arquivo ou se for usado um hífen "-", grep
procurará a string no dispositivo de entrada padrão. O grep faz sua pesquisa em arquivos
texto. Use o comando zgrep para pesquisar diretamente em arquivos compactados com
gzip, os comandos e opções são as mesmas.
Exemplos:
PÁG.: 31
APOSTILA GNU/DEBIAN BÁSICO
7.3.10. head
Mostra as linhas iniciais de um arquivo texto.
head [opções]
onde:
Opções
-c [numero]
Mostra o [numero] de bytes do inicio do arquivo.
-n [numero]
Mostra o [numero] de linhas do inicio do arquivo. Caso não for especificado, o
head mostra as 10 primeiras linhas.
Exemplos:
head teste.txt
head -n 20 teste.txt
7.3.11. nl
Mostra o número de linhas junto com o conteúdo de um arquivo.
nl [opções] [arquivo]
onde:
arquivo
É o arquivo ao qual se deseja exibir juntamente com a contagem das linhas.
Opções
-b [opc]
Faz a filtragem de saída de acordo com [opc]:
a
Numera todas as linhas.
t
Não numera linhas vazias.
n
Numera linhas vazias.
texto
Numera somente linhas que contém o [texto].
-v [num]
Número inicial (o padrão é 1).
-i [num]
Número de linhas adicionadas a cada linha do arquivo (o padrão é 1).
Exemplos:
nl -ba /etc/passwd
nl -i 2 /etc/passwd
PÁG.: 32
APOSTILA GNU/DEBIAN BÁSICO
7.3.12. more
Permite fazer a paginação de arquivos ou da entrada padrão. O comando more
pode ser usado como comando para leitura de arquivos que ocupem mais de uma tela.
Quando toda a tela é ocupada, o more efetua uma pausa e permite que você pressione
Enter ou espaço para continuar avançando no arquivo sendo visualizado. Para sair do
more pressione c.
more [arquivo]
onde:
arquivo
É o arquivo que será paginado.
Para visualizar diretamente arquivos texto compactados pelo gzip .gz use o
comando zmore.
Exemplos:
more /etc/passwd
cat /etc/passwd | more
7.3.13. less
Permite fazer a paginação de arquivos ou da entrada padrão. O comando less
pode ser usado como comando para leitura de arquivos que ocupem mais de uma tela.
Quando toda a tela é ocupada, o less efetua uma pausa (semelhante ao more) e permite
que você pressione Seta para Cima e Seta para Baixo ou PgUP/PgDown para fazer o
rolamento da página. Para sair do less pressione a tecla <Q>.
less [arquivo]
onde:
arquivo
É o arquivo que será paginado.
Exemplos:
less /etc/passwd
cat /etc/passwd | less
7.3.14. sort
Organiza as linhas de um arquivo texto ou da entrada padrão.
onde:
arquivo
É o nome do arquivo que será organizado. Caso não for especificado, será usado
o dispositivo de entrada padrão (normalmente o teclado ou um "|").
PÁG.: 33
APOSTILA GNU/DEBIAN BÁSICO
Opções
-b
Ignora linhas em branco.
-d
Somente usa letras, dígitos e espaços durante a organização.
-f
Ignora a diferença entre maiúsculas e minúsculas.
-r
Inverte o resultado da comparação.
-n
Caso estiver organizando um campo que contém números, os números serão
organizados na ordem aritmética. Por exemplo, se você tiver um arquivo com os números
100
10
50
Caso esta opção não for usada com o sort, ele organizará como uma listagem
alfabética (que começam de a até z e do 0 até 9)
10
100
50
-c
Verifica se o arquivo já esta organizado. Caso não estiver, retorna a mensagem
"disorder on arquivo".
-o arquivo
Grava a saída do comando sort no arquivo.
7.3.15. tail
Mostra as linhas finais de um arquivo texto.
tail [opções]
onde:
Opções
-c [numero]
Mostra o [numero] de bytes do final do arquivo.
PÁG.: 34
APOSTILA GNU/DEBIAN BÁSICO
-n [numero]
Mostra o [numero] de linhas do final do arquivo.
Exemplos:
tail teste.txt
tail -n 20 teste.txt.
7.3.16. time
Mede o tempo gasto para executar um processo (programa).
time [comando]
onde:
comando
É o comando/programa que deseja medir o tempo gasto para ser concluído.
Exemplo:
time ls
time find / -name crontab.
7.3.17. touch
Muda a data e hora que um arquivo/diretório foi criado. Também pode ser usado
para criar arquivos vazios. Caso o touch seja usado com arquivos que não existam, por
padrão ele criará estes arquivos.
onde:
arquivos
Arquivos que terão sua data/hora modificados.
Opções
-t [[SS]AA]MMDDhhmm[.ss]
Usa (AA) Anos, Mês (MM), Dias (DD), Horas (hh), minutos (mm) e (ss) segundos
para modificação do(s) arquivos ao invés da data e hora atual.
-a, --time=atime
Faz o touch mudar somente a data e hora do acesso ao arquivo.
-c, --no-create
Não cria arquivos vazios, caso os arquivos não existam.
-m, --time=mtime
Faz o touch mudar somente a data e hora da modificação.
-r [arquivo]
Usa as horas no [arquivo] como referência ao invés da hora atual.
Exemplos:
touch teste - Cria o arquivo teste caso ele não existir.
touch -t 10011230 teste - Altera a data e hora do arquivo para 01/10 e 12:30.
touch -t 120112301999.30 teste - Altera da data, hora ano, e segundos do arquivo
para 01/12/1999 e 12:30:30.
PÁG.: 35
APOSTILA GNU/DEBIAN BÁSICO
7.3.18. uptime
Mostra o tempo de execução do sistema desde que o computador foi ligado.
uptime
7.3.19. dmesg
Mostra as mensagens de inicialização do kernel. São mostradas as mensagens da
última inicialização do sistema. Serve para localizar problemas na máquina.
dmesg
Dica: Utilize este comando em conjunto com o comando less, da seguinte forma:
dmesg | less
7.3.20. echo
Mostra mensagens. Este comando é útil na construção de scripts para mostrar
mensagens na tela para o usuário acompanhar sua execução.
echo [mensagem]
A opção -n pode ser usada para que não ocorra o salto de linha após a mensagem
ser mostrada.
7.3.21. su
Permite o usuário mudar sua identidade para outro usuário sem fazer o logout. Útil
para executar um programa ou comando como root sem ter que abandonar a seção atual.
su [usuário]
onde:
usuário
É o nome do usuário que deseja usar para acessar o sistema. Se não digitado, é
assumido o usuário root.
Será pedida a senha do superusuário para autenticação. Digite exit quando
desejar retornar a identificação de usuário anterior.
7.3.22. uname
Retorna informações sobre o sistema.
uname [opções]
onde:
Opções
-a
Exibe todas as informações.
PÁG.: 36
APOSTILA GNU/DEBIAN BÁSICO
-r
Informações sobre a release (versão) do Kernel.
7.3.23. reboot
Reinicia o computador.
reboot
7.3.24. shutdown
Desliga/reinicia o computador imediatamente ou após determinado tempo
(programável) de forma segura. Todos os usuários do sistema são avisados que o
computador será desligado. Este comando somente pode ser executado pelo usuário root
ou quando é usada a opção -a pelos usuários cadastrados no arquivo /etc/shutdown.allow
que estejam logados no console virtual do sistema.
hora
Momento que o computador será desligado. Você pode usar HH:MM para definir a
hora e minuto, MM para definir minutos, +SS para definir após quantos segundos, ou now
para imediatamente (equivalente a +0).
O shutdown criará o arquivo /etc/nologin para não permitir que novos usuários
façam login no sistema (com excessão do root). Este arquivo é removido caso a execução
do shutdown seja cancelada (opção -c) ou após o sistema ser reiniciado.
mensagem
Mensagem que será mostrada a todos os usuários alertando sobre o
reinício/desligamento do sistema.
Opções
-h
Inicia o processo para desligamento do computador.
-r
Reinicia o sistema
-c
Cancela a execução do shutdown. Você pode acrescentar uma mensagem
avisando aos usuários sobre o fato.
Exemplos:
shutdown -h now - Desligar o computador imediatamente.
shutdown -r now - Reinicia o computador imediatamente.
shutdown 19:00 “A manutenção do servidor será iniciada às 19:00” - Faz o
PÁG.: 37
APOSTILA GNU/DEBIAN BÁSICO
7.3.25. mount
O comando mount, tem como objetivo disponibilizar recursos do sistema, como
partições do disco ou dispositivos removíveis, como por exemplo pendrives, para que seja
possível o acesso a estes dispositivos pelo usuário. Esta atividade também é conhecida
como “montar” um dispositivo.
Para montar um dispositivo, também é necessário informar um “ponto de
montagem”. Um ponto de montagem, é na verdade um diretório abaixo do diretório raiz “/”,
que será utilizado para abrigar os dados do dispositivo que está sendo montado. Em geral,
para esta finalidade utiliza-se algum diretório criado logo abaixo do diretório “/media”.
Onde:
dispositivo
Identificação da unidade de disco/partição que deseja acessar (como /dev/hda1
(disco rígido) ou /dev/fd0 (primeira unidade de disquetes).
ponto de montagem
Diretório de onde a unidade de disco/partição será acessado. O diretório deve
estar vazio para montagem de um sistema de arquivo. Normalmente é usado o diretório
“/mnt” para armazenamento de pontos de montagem temporários.
Opções:
-t [tipo]
Tipo do sistema de arquivos usado pelo dispositivo. São aceitos os sistemas de
arquivos:
Para mais detalhes sobre opções usadas com cada sistema de arquivos, veja a
página de manual mount.
-r
Caso for especificada, monta a partição somente para leitura.
-w
Caso for especificada, monta a partição como leitura/gravação. É o padrão.
Existem muitas outras opções que podem ser usadas com o comando mount, mas
PÁG.: 38
APOSTILA GNU/DEBIAN BÁSICO
aqui procurei somente mostrar o básico para "montar" seus discos e partições no
GNU/Linux (para mais opções, veja a página de manual do mount). Caso você digitar
mount sem parâmetros, serão mostrados os sistemas de arquivos atualmente montados
no sistema. Esta mesma listagem pode ser vista em “/etc/mtab”. A remontagem de partição
também é muito útil, especialmente após reparos nos sistema de arquivos do disco rígido.
É necessário permissões de root para montar partições, a não ser que tenha
especificado a opção user no arquivo “/etc/fstab”.
Exemplo de Montagem:
• Montar uma partição Windows (vfat) de /dev/hda1 em /mnt/win somente para leitura:
mount /dev/hda1 /mnt/win -r -t vfat
• Montar a primeira unidade de disquetes /dev/fd0 em /floppy:
mount /dev/fd0 /floppy -t vfat
• Montar um pendrive: mount /dev/sda1 /mnt/pen -t vfat
• Remontar a partição raíz como somente leitura: mount -o remount,rw /
• Remontar a partição raíz como leitura/gravação (a opção -n é usada porque o mount
não conseguirá atualizar o arquivo “/etc/mtab” devido ao sistema de arquivos “/” estar
montado como somente leitura atualmente: mount -n -o remount,rw /
7.3.26. umount
O comando umount, faz a operação inversa do comando mount, ou seja, ele é
utilizado para “desmontar” recursos disponibilizados pelo comando mount. Você deve ter
permissões de root para desmontar um recurso.
Onde:
dispositivo/ponto de montagem
Você pode tanto usar umount /dev/hda1 como umount /media/dados para
desmontar um sistema de arquivos em “/dev/hda1” (dispositivo) montado em “/mnt/dados”
(ponto de montagem).
Se o dispositivo estiver sendo utilizado, você não poderá desmontá-lo até que
encerre todas as aplicações que estejam fazendo uso, mesmo que seja só exibindo o
conteúdo, daquele dispositivo.
7.4.1. adduser
Adiciona um usuário ou grupo no sistema. Por padrão, quando um novo usuário é
adicionado, é criado um grupo com o mesmo nome do usuário. Opcionalmente o adduser
também pode ser usado para adicionar um usuário a um grupo. Será criado um diretório
pessoal com o nome do usuário (a não ser que o novo usuário criado seja um usuário do
sistema) e este receberá uma identificação. A identificação do usuário (UID) escolhida será
a primeira disponível no sistema especificada de acordo com a faixa de UIDS de usuários
permitidas no arquivo de configuração /etc/adduser.conf. Este é o arquivo que contém os
padrões para a criação de novos usuários no sistema.
PÁG.: 39
APOSTILA GNU/DEBIAN BÁSICO
onde:
usuário/grupo
Nome do novo usuário que será adicionado ao sistema.
Opções:
-disable-passwd
Não executa o programa passwd para escolher a senha e somente permite o uso
da conta após o usuário escolher uma senha.
--force-badname
Desativa a checagem de senhas ruins durante a adição do novo usuário. Por
padrão o adduser checa se a senha pode ser facilmente adivinhada.
--group
Cria um novo grupo ao invés de um novo usuário. A criação de grupos também
pode ser feita pelo comando addgroup.
-uid [num]
Cria um novo usuário com a identificação [num] ao invés de procurar o próximo
UID disponível.
-gid [num]
Faz com que o usuário seja parte do grupo [gid] ao invés de pertencer a um novo
grupo que será criado com seu nome. Isto é útil caso deseje permitir que grupos de
usuários possam ter acesso a arquivos comuns.
Caso estiver criando um novo grupo com adduser, a identificação do novo grupo será
[num].
--home [dir]
Usa o diretório [dir] para a criação do diretório home do usuário ao invés de usar o
especificado no arquivo de configuração /etc/adduser.conf.
--ingroup [nome]
Quando adicionar um novo usuário no sistema, coloca o usuário no grupo [nome]
ao invés de criar um novo grupo.
--quiet
Não mostra mensagens durante a operação.
--system
Cria um usuário de sistema ao invés de um usuário normal.
OBS: Caso esteja usando senhas ocultas (shadow passwords), as senhas dos
usuários serão colocadas no arquivo /etc/shadow e as senhas dos grupos no arquivo
/etc/gshadow. Isto aumenta mais a segurança do sistema porque somente o usuário root
pode ter acesso a estes arquivos, ao contrário do arquivo /etc/passwd que possui os dados
de usuários e devem ser lidos por todos.
7.4.2. addgroup
Adiciona um novo grupo de usuários no sistema. As opções usadas são análogas ao
PÁG.: 40
APOSTILA GNU/DEBIAN BÁSICO
comando adduser.
7.4.3. passwd
Muda a senha do usuário ou grupo. Um usuário somente pode alterar a senha de
sua conta, mas o superusuário (root) pode alterar a senha de qualquer conta de usuário,
inclusive a data de validade da conta etc. Os donos de grupos também podem alterar a
senha do grupo com este comando.
onde:
usuário
Nome do usuário/grupo que terá sua senha alterada.
Opções:
-g
Se especificada, a senha do grupo será alterada. Somente o root ou o
administrador do grupo pode alterar sua senha. A opção -r pode ser usada com esta para
remover a senha do grupo. A opção -R pode ser usada para restringir o acesso do grupo
para outros usuários.
Procure sempre combinar letras maiúsculas, minúsculas, e números ao escolher
suas senhas. Não é recomendado escolher palavras normais como sua senha pois podem
ser vulneráveis a ataques de dicionários cracker. Outra recomendação é utilizar senhas
ocultas em seu sistema (shadow password).
Você deve ser o dono da conta para poder modificar a senhas. O usuário root pode
modificar/apagar a senha de qualquer usuário.
-f
Executa o comando chfn para que o usuário possa alterar as informações como
nome, telefone, etc do usuário em questão.
Exemplos:
passwd root
7.4.4. newgrp
Altera temporariamente a identificação do grupo primário do usuário. Para retornar
a identificação do grupo anterior, digite exit e tecle <Enter> ou rode o comando novamente
sem parâmetros.
newgrp - [grupo]
onde:
grupo
É o grupo que se deseja tornar o grupo primário do usuário, pode ser utilizado o
nome ou número do grupo que será utilizado.
-
Se usado, inicia um novo ambiente após o uso do comando newgrp (semelhante a
um novo login no sistema), caso contrário, o ambiente atual do usuário é mantido.
PÁG.: 41
APOSTILA GNU/DEBIAN BÁSICO
acessar. Caso a senha do grupo esteja incorreta ou não exista senha definida, a execução
do comando é negada. A listagem dos grupos a que o usuário pertence atualmente, pode
ser exibida usando o comando id (veja a seguir).
7.4.5. userdel
Apaga um usuário do sistema. Quando é usado, este comando apaga todos os
dados da conta especificado dos arquivos de contas do sistema.
onde:
-r
Apaga também o diretório pessoal do usuário.
OBS: Note que uma conta de usuário não poderá ser removida, caso o usuário
esteja utilizando o sistema, pois os programas podem precisar ter acesso aos dados dele
(como UID, GID) presentes no /etc/passwd.
7.4.6. groupdel
Apaga um grupo do sistema. Quando é usado, este comando apaga todos os
dados do grupo especificado dos arquivos de contas do sistema.
groupdel [grupo]
onde:
grupo
É o grupo que se deseja remover.
Tenha certeza que não existem arquivos/diretórios criados com o grupo apagado
através do comando find.
OBS: Você não pode remover o grupo primário de um usuário. Remova o usuário
primeiro.
7.4.7. sg
Executa um comando com outra identificação de grupo. A identificação do grupo
de usuário é modificada somente durante a execução do comando. Para alterar a
identificação de grupo durante sua seção, use o comando newgrp.
onde:
-
Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um
novo login e execução do comando), caso contrário, o ambiente atual do usuário é
mantido.
grupo
Nome do grupo em que o comando deverá ser executado.
PÁG.: 42
APOSTILA GNU/DEBIAN BÁSICO
comando
Comando que será executado. O comando será executado pelo bash.
Exemplo:
sg root ls /root
NomedoGrupo:senha:GID:usuários
onde:
NomedoGrupo
É o nome daquele grupo de usuários.
senha
Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para
grupos, as senhas estarão em /etc/gshadow.
GID
Identificação numérica do grupo de usuário.
usuários
Lista de usuários que também fazem parte daquele grupo. Caso exista mais de um
nome de usuário, eles devem estar separados por vírgula.
Deste modo para acrescentar o usuário "marcius" ao grupo “audio” para ter acesso
aos dispositivos de som do Linux, acrescente o nome no final da linha:
audio:x:100:marcius
Pronto, basta digitar logout e entrar novamente com seu nome e senha, você estará
fazendo parte do grupo “audio” (confira com os comandos groups ou id).
Outros nomes de usuários podem ser acrescentados ao grupo “audio” bastando
separar os nomes com vírgula. Você também pode usar o comando adduser da seguinte
forma para adicionar automaticamente um usuário a um grupo:
7.4.9. chfn
Muda os dados exibidos com o comando finger.
PÁG.: 43
APOSTILA GNU/DEBIAN BÁSICO
onde:
usuário
Nome do usuário.
Opções:
-f [nome]
Muda o nome completo do usuário.
-r [nome]
Muda o número da sala do usuário.
-w [tel]
Muda o telefone de trabalho do usuário.
-h [tel]
Muda o telefone residencial do usuário.
-o [outros]
Muda outros dados do usuário.
Exemplo:
chfn -f "Nome do Usuário root" root
7.4.10. id
Mostra a identificação atual do usuário, grupo primário e outros grupos que este
pertence.
id [opções] [usuário]
onde:
usuário
É o usuário que desejamos ver a identificação, grupos primários e
complementares.
Opções:
-g, --group
Mostra somente a identificação do grupo primário.
-G, --groups
Mostra a identificação de outros grupos que pertence.
-n, --name
Mostra o nome do usuário e grupo ao invés da identificação numérica.
-u, --user
Mostra somente a identificação do usuário (user ID).
-r, --real
Mostra a identificação real de usuário e grupo, ao invés da efetiva. Esta opção
deve ser usada junto com uma das opções: -u, -g, ou -G.
PÁG.: 44
APOSTILA GNU/DEBIAN BÁSICO
Exemplo:
id
id –user
id -r -u.
7.4.11. logname
Mostra seu login (nome de usuário).
logname
7.4.12. users
Mostra os nomes dos usuários que estão usando atualmente o sistema. Os nomes
de usuários são mostrados através de espaços sem detalhes adicionais. Para maiores
detalhes sobre os usuários, veja os comandos id e who.
users
7.4.13. groups
Mostra os grupos que o usuário pertence.
groups [usuário]
onde:
usuário
É o usuário ao qual, queremos exibir os grupos a que ele pertence.
Exemplo
groups
groups root
7.4.14. getent
Apresenta uma lista de informações de acordo com o parâmetro “base”, sobre
usuários, grupos, computadores, redes, serviços e protocolos do sistema, juntamente com
suas informações complementares. A utilização deste comando é feita da seguinte forma:
getent [base]
onde:
base
Significa a base a qual o comando irá consultar. Este parâmetro pode ser
configurado com os valores “passwd” (informações sobre usuários), “group” (informações
sobre grupos), “networks” (informações sobre a rede), “hosts” (informações sobre
resolução de nomes local), “services” (informações sobre serviços) e “protocols”
(informações sobre protocolos de rede).
PÁG.: 45
APOSTILA GNU/DEBIAN BÁSICO
7.5.1. who
Mostra quem está atualmente conectado no computador. Este comando lista os
nomes de usuários que estão conectados em seu computador, o terminal e data da
conexão.
who [opções]
Opções
-H, --heading
Mostra o cabeçalho das colunas.
-m, i am
Mostra o nome do computador e usuário associado ao nome. É equivalente a
digitar who i am ou who am i.
-q, --count
Mostra o total de usuários conectados aos terminais.
7.5.2. finger
Mostra detalhes sobre os usuários de um sistema. Algumas versões do finger
possuem bugs e podem significar um risco para a segurança do sistema. É recomendado
desativar este serviço na máquina local.
onde:
usuário
Nome do usuário que deseja obter detalhes do sistema. Se não for digitado o
nome de usuário, o sistema mostra detalhes de todos os usuários conectados no
momento.
usuario@host
Nome do usuário e endereço do computador que deseja obter detalhes.
Opções
-l
Mostra os detalhes de todos os usuários conectados no momento. Entre os
detalhes, estão incluídos o nome do interpretador de comandos (shell) do usuário, diretório
home, nome do usuário, endereço, etc.
-p
PÁG.: 46
APOSTILA GNU/DEBIAN BÁSICO
Exemplo:
finger
finger root.
7.5.3. ftp
Permite a transferência de arquivos do computador remoto/local e vice versa. O
FTP (File Transfer Protocol) é o sistema de transmissão de arquivos mais usado na
Internet. É requerida a autenticação do usuário para que seja permitida a conexão. Muitos
servidores ftp disponibilizam acesso anônimo aos usuários, com acesso restrito.
Uma vez conectado a um servidor ftp, você pode usar a maioria dos comandos do
GNU/Linux para operá-lo.
ftp [ip/dns]
ls
Lista arquivos do diretório atual.
cd [diretório]
Entra em um diretório.
get [arquivo]
Copia um arquivo do servidor ftp para o computador local. O arquivo é gravado,
por padrão, no diretório onde o programa ftp foi executado.
hash [on/off]
Por padrão esta opção está desligada. Quando ligada, faz com que o caracter #
seja impresso na tela indicando o progresso do download.
mget [arquivos]
Semelhante ao get, mas pode copiar diversos arquivos e permite o uso de
coringas.
send [arquivo]
Envia um arquivo para o diretório atual do servidor FTP (você precisa de uma
conta com acesso a gravação para fazer isto).
prompt [on/off]
Ativa ou desativa a pergunta para a cópia de arquivo. Se estiver como off assume
sim para qualquer pergunta.
Exemplo:
ftp ftp.br.debian.org.
7.5.4. whoami
Mostra o nome que usou para se conectar ao sistema. É útil quando você usa
várias contas e não sabe com qual nome entrou no sistema.
PÁG.: 47
APOSTILA GNU/DEBIAN BÁSICO
whoami
7.5.5. hostname
Mostra ou muda o nome de seu computador na rede. É necessário também,
mudar alguns arquivos de configuração para trocar efetivamente o nome do computador,
além de executar o hostname.
hostname
7.5.6. ping
O comando ping envia requisições ICMP para maquinas remotas. Útil para descobrir
se uma determinada maquina da rede responde as requisições de rede (via ICMP) feitas a
ela. Para que uma maquina possa responder a uma requisição feito por ping, ela deverá
ter o protocolo IP configurado corretamente.
onde:
ip/dns
Endereço IP ou nome (DNS) do computador remoto que desejamos enviar
requisições ping.
Opções
-c
Envia um determinado número de requisições.
-s
Permite especificar o tamanho do pacote em bytes, que ping enviará ao
computador remoto. O padrão é 56.
Exemplos:
ping 10.15.15.5
ping -s 1024 10.15.15.5
7.5.7. nmap
Permite verificar os estados das portas utilizadas pelo protocolo TCP/IP em um
determinado computador remoto. Cada porta pode representar um serviço de rede
fornecido pela maquina remota. Os estados que as portas podem assumir são :
Open: Neste caso a porta esta aberta, permitindo conexão com o computador
remoto através daquela porta.
Filtered: A porta está filtrada, provavelmente por um Firewall.
Closed: A porta está fechada e o serviço inacessível.
onde:
ip/dns
Endereço IP ou nome (DNS) do computador remoto que desejamos verificar o
estado das portas.
Opções
PÁG.: 48
APOSTILA GNU/DEBIAN BÁSICO
-P0
Não realiza ping antes de realizar a verificação, necessário para alguns
computadores com implementações de segurança mais austeras.
-p [intervalo]
Portas a serem verificadas. Pode-se fornecer apenas uma porta ou um intervalo no
padrão “1-1024” ou “80-8080” para se verificar.
-O
Tenta descobrir o sistema operacional do computador remoto.
Exemplos:
nmap -p 80 10.15.15.5
nmap -O -p 22-80 10.15.15.5
nmap localhost
7.6.1. ps
Lista os processos do sistema. Este comando é muito útil para verificar o PID
(número de identificação do processo) de um processo.
ps [opções]
onde:
Opções
-A
Lista todos os processos existentes.
-U [usuário]
Lista os processos de um determinado usuário.
-C [comando]
Permite pesquisar um processo pelo nome do executável.
Exemplos:
ps -A
ps -U marcius
7.6.2. top
Lista os processos do sistema em tempo real. Informações sobre a carga do
sistema, como uso de CPU e memória, também são providas por este comando. Voce
pode pressionar a tecla <Q> para encerrar a execução do top.
top [opções]
Opções
-u [usuário]
Lista os processos de um determinado usuário.
Exemplos:
top
top -u marcius
PÁG.: 49
APOSTILA GNU/DEBIAN BÁSICO
7.6.3. bg
Faz com que um programa seja executado em background (2° plano). Você também
pode usar o operador “&” ao final de um comando para executá-lo em 2° plano.
bg [id/comando]
onde:
id/comando
É o identificador de um processo que está parado (veja o comando jobs) ou o
nome de um comando que deverá ser executado em 2° plano.
Exemplos:
bg updatedb
bg 1
updatedb &
7.6.4. fg
Faz com que um programa seja executado em foreground (1° plano).
fg [id/comando]
onde:
id/comando
É o identificador de um processo que está parado (veja o comando jobs) ou o
nome de um comando que deverá ser executado em 1° plano.
Exemplos:
fg updatedb
fg 1
7.6.5. jobs
Exibe o status dos processos que estão parados ou executando em background (2°
plano).
jobs
O comando jobs exibirá uma lista com identificadores (a esquerda entre chaves) que
poderão ser utilizados com os comandos fg e bg.
7.6.6. kill
Permite enviar um sinal a um comando/programa. Caso seja usado sem parâmetros,
o kill enviará um sinal de término ao processo sendo executado.
Onde:
número
PÁG.: 50
APOSTILA GNU/DEBIAN BÁSICO
sinal
Sinal que será enviado ao processo. Se omitido usa -15 como padrão.
Opções
-9
Envia um sinal de destruição ao processo ou programa. Ele é terminado
imediatamente sem chances de salvar os dados ou apagar os arquivos temporários
criados por ele.
Você precisa ser o dono do processo ou o usuário root para termina-lo ou destruí-lo.
Você pode verificar se o processo foi finalizado através do comando ps.
Exemplos:
kill 500
kill -9 500
kill %1
7.6.7. killall
Permite finalizar processos através do nome.
Onde:
processo
Nome do processo que deseja finalizar
sinal
Sinal que será enviado ao processo (pode ser obtido usando a opção -i).
Opções
-i
Pede confirmação sobre a finalização do processo.
-l
Lista o nome de todos os sinais conhecidos.
-q
Ignora a existência do processo.
-v
Retorna se o sinal foi enviado com sucesso ao processo.
-w
Finaliza a execução do killall somente após finalizar todos os processos.
Exemplo:
killall -HUP inetd
PÁG.: 51
APOSTILA GNU/DEBIAN BÁSICO
dono
É a pessoa que criou o arquivo ou o diretório. O nome do dono do arquivo/diretório é o
mesmo do usuário usado para entrar no sistema GNU/Linux. Somente o dono pode modificar as
permissões de acesso do arquivo.
As permissões de acesso do dono de um arquivo somente se aplicam ao dono do
arquivo/diretório. A identificação do dono também é chamada de user id (UID).
A identificação de usuário e o nome do grupo que pertence são armazenadas
respectivamente nos arquivos /etc/passwd e /etc/group. Estes são arquivos textos comuns e
podem ser editados em qualquer editor de texto, mas tenha cuidado para não modificar o campo
que contém a senha do usuário encriptada (que pode estar armazenada neste arquivo caso não
estiver usando senhas ocultas).
grupo
Para permitir que vários usuários diferentes tivessem acesso a um mesmo arquivo (já
que somente o dono poderia ter acesso ao arquivo), este recurso foi criado. Cada usuário pode
fazer parte de um ou mais grupos e então acessar arquivos que pertençam ao mesmo grupo que
o seu (mesmo que estes arquivos tenham outro dono).
Por padrão, quando um novo usuário é criado, o grupo ele pertencerá será o mesmo de
seu grupo primário (exceto pelas condições que explicarei adiante) (veja isto através do comando
id). A identificação do grupo é chamada de GID (group id).
Um usuário pode pertencer a um ou mais grupos. Para detalhes de como incluir o usuário
em mais grupos veja adicionando o usuário a um grupo extra.
outros
É a categoria de usuários que não são donos ou não pertencem ao grupo do arquivo.
Cada um dos tipos acima possuem três tipos básicos de permissões de acesso que
serão vistas na próxima seção.
x - Permite executar um arquivo (caso seja um programa executável). Caso seja um diretório,
permite que seja acessado através do comando cd.
Veja o comando chmod para detalhes sobre a mudança das permissões de acesso de
arquivos/diretórios.
PÁG.: 53
APOSTILA GNU/DEBIAN BÁSICO
-rwxr-xr--
Estas são as permissões de acesso ao arquivo teste. Um conjunto de 10 letras
que especificam o tipo do arquivo, permissão do dono do arquivo, grupo do arquivo e
outros usuários. Veja a explicação detalhada sobre cada uma abaixo:
-rwxr-xr--
A primeira letra (do conjunto das 10 letras) determina o tipo do arquivos. Se a letra
for um d é um diretório, e você poderá acessa-lo usando o comando cd. Caso for um l é
um link simbólico para algum arquivo ou diretório no sistema (para detalhes veja o
comando ln. Um - significa que é um arquivo normal.
-rwxr-xr--
Estas 3 letras (da segunda a quarta do conjunto das 10 letras) são as permissões
de acesso do dono do arquivo teste. O dono (neste caso marcius) tem a permissão para ler
(r), gravar (w) e executar (x) o arquivo teste.
-rwxr-xr--
Estas 3 letras (da quinta a sétima do conjunto das 10 letras) são as permissões de
acesso dos usuários que pertencem ao grupo user do arquivo teste. Os usuários que
pertencem ao grupo user tem a permissão somente para ler (r) e executar (x) o arquivo
teste não podendo modifica-lo ou apaga-lo.
-rwxr-xr--
Estas 3 letras (da oitava a décima) são as permissões de acesso para usuários
que não são donos do arquivo teste e que não pertencem ao grupo user. Neste caso, estas
pessoas somente terão a permissão para ver o conteúdo do arquivo teste.
marcius
Nome do dono do arquivo teste.
user
Nome do grupo que o arquivo teste pertence.
teste
Nome do arquivo.
drwxr-x---
Permissões de acesso ao diretório exemplo. É um conjunto de 10 letras que
especificam o tipo de arquivo, permissão do dono do diretório, grupo que o diretório
pertence e permissão de acesso a outros usuários. Veja as explicações abaixo:
drwxr-x---
A primeira letra (do conjunto das 10) determina o tipo do arquivo. Neste caso é um
diretório porque tem a letra d.
drwxr-x---
PÁG.: 54
APOSTILA GNU/DEBIAN BÁSICO
drwxr-x---
Estas 3 letras (da quinta a sétima) são as permissões de acesso dos usuários
que pertencem ao grupo user. Os usuários que pertencem ao grupo user tem a permissão
somente para listar arquivos do diretório (r) e entrar no diretório (x) exemplo.
drwxr-x---
Estas 3 letras (da oitava a décima) são as permissões de acesso para usuários
que não são donos do diretório exemplo e que não pertencem ao grupo user. Com as
permissões acima, nenhum usuário que se encaixe nas condições de dono e grupo do
diretório tem a permissão de acessa-lo.
marcius
Nome do dono do diretório exemplo.
user
Nome do grupo que diretório exemplo pertence.
exemplo
Nome do diretório.
Para detalhes de como alterar o dono/grupo de um arquivo/diretório, veja os
comandos chmod, chgrp e chown.
Observações:
• O usuário root não tem nenhuma restrição de acesso ao sistema.
• Se você tem permissões de gravação no diretório e tentar apagar um arquivo que você
não tem permissão de gravação, o sistema perguntará se você confirma a exclusão do
arquivo apesar do modo leitura. Caso você tenha permissões de gravação no arquivo,
o arquivo será apagado por padrão sem mostrar nenhuma mensagem de erro (a não
ser que seja especificada a opção -i com o comando rm).
• Por outro lado, mesmo que você tenha permissões de gravação em um arquivo mas
não tenha permissões de gravação em um diretório, a exclusão do arquivo será
negada.
PÁG.: 55
APOSTILA GNU/DEBIAN BÁSICO
Em diretórios, impede que outros usuários removam arquivos dos quais não são donos. Isto
é chamado de colocar o diretório em modo append-only. Um exemplo de diretório que se
encaixa perfeitamente nesta condição é o /tmp, todos os usuários devem ter acesso para que
seus programas possam criar os arquivos temporários lá, mas nenhum pode apagar arquivos
dos outros. A permissão especial t, pode ser especificada somente no campo outros usuários
das permissões de acesso.
• T - Idêntico a t. Significa que não existe a permissão x naquela posição (por exemplo, em um
chmod 1776 em um diretório).
• X - Se você usar X ao invés de x, a permissão de execução somente é afetada se o arquivo
já tiver permissões de execução. Em diretórios ela tem o mesmo efeito que a permissão de
execução x.
1. Crie um arquivo teste (digitando touch teste) e defina sua permissão para rw-rw-r--
(chmod ug=rw,o=r teste ou chmod 664 teste).
2. Agora use o comando chmod a+X teste
3. digite ls -l
4. Veja que as permissões do arquivo não foram afetadas.
5. agora digite chmod o+x teste
6. digite ls -l, você colocou a permissão de execução para os outros usuários.
7. Agora use novamente o comando chmod a+X teste
8. digite ls -l
9. Veja que agora a permissão de execução foi concedida a todos os usuários, pois foi
verificado que o arquivo era executável (tinha permissão de execução para outros
usuários).
10. Agora use o comando chmod a-X teste
Ele também funcionará e removerá as permissões de execução de todos os usuários,
porque o arquivo teste tem permissão de execução (confira digitando ls -l).
11. Agora tente novamente o chmod a+X teste
12. Você deve ter reparado que a permissão de acesso especial X é semelhante a x, mas
somente faz efeito quanto o arquivo já tem permissão de execução para o dono, grupo
ou outros usuários.
PÁG.: 56
APOSTILA GNU/DEBIAN BÁSICO
onde:
diretório/arquivo
Diretório ou arquivo que terá sua permissão mudada.
Opções:
-v, --verbose
Mostra todos os arquivos que estão sendo processados.
-f, --silent
Não mostra a maior parte das mensagens de erro.
-c, --change
Semelhante a opção -v, mas só mostra os arquivos que tiveram as permissões
alteradas.
-R, --recursive
Muda permissões de acesso do diretório/arquivo no diretório atual e sub-diretórios.
ugoa+-=rwxXst
ugoa - Controla que nível de acesso será mudado. Especificam, em ordem,
usuário (u), grupo (g), outros (o), todos (a).
+-= - + coloca a permissão, - retira a permissão do arquivo e = define a permissão
exatamente como especificado.
rwx - r permissão de leitura do arquivo. w permissão de gravação, x permissão de
execução (ou acesso a diretórios).
chmod o-r teste.txt - Retira (-) a permissão de leitura (r) do arquivo teste.txt para os
outros usuários (usuários que não são donos e não pertencem ao grupo do arquivo
teste.txt).
PÁG.: 57
APOSTILA GNU/DEBIAN BÁSICO
chmod uo+x teste.txt - Inclui (+) a permissão de execução do arquivo teste.txt para o
dono e outros usuários do arquivo.
chmod a+x teste.txt - Inclui (+) a permissão de execução do arquivo teste.txt para o
dono, grupo e outros usuários.
chmod a=rw teste.txt - Define a permissão de todos os usuários exatamente (=) para
leitura e gravação do arquivo teste.txt.
8.6.2. chgrp
Muda o grupo de um arquivo/diretório.
onde:
grupo
Novo grupo do arquivo/diretório.
arquivo/diretório
Arquivo/diretório que terá o grupo alterado.
Opções
-c, --changes
Somente mostra os arquivos/grupos que forem alterados.
-f, --silent
Não mostra mensagens de erro para arquivos/diretórios que não puderam ser
alterados.
-v, --verbose
Mostra todas as mensagens e arquivos sendo modificados.
-R, --recursive
Altera os grupos de arquivos/sub-diretórios do diretório atual.
8.6.3. chown
Muda dono de um arquivo/diretório. Opcionalmente pode também ser usado para
mudar o grupo.
onde:
dono.grupo
Nome do dono.grupo que será atribuído ao diretório/arquivo. O grupo é opcional.
diretório/arquivo
Diretório/arquivo que o dono.grupo será modificado.
Opções
-v, --verbose
Mostra os arquivos enquanto são alterados.
-f, --supress
Não mostra mensagens de erro durante a execução do programa.
PÁG.: 58
APOSTILA GNU/DEBIAN BÁSICO
-c, --changes
Mostra somente arquivos que forem alterados.
-R, --recursive
Altera dono e grupo de arquivos no diretório atual e sub-diretórios.
Exemplos:
chown joao teste.txt
Muda o dono do arquivo teste.txt para joao.
chown -R joao.users *
Muda o dono/grupo dos arquivos do diretório atual e sub-diretórios para joao/users
(desde que você tenha permissões de gravação no diretórios e sub-diretórios).
PÁG.: 59
APOSTILA GNU/DEBIAN BÁSICO
permissão de acesso aos outros usuários (4), grupo (6), e dono (7). O exemplo acima faz os
outros usuários (4) terem acesso somente leitura (r) ao arquivo teste, o grupo (6) ter a permissão
de leitura e gravação (w), e o dono (7) ter permissão de leitura, gravação e execução (rwx) ao
arquivo teste.
chmod 40 teste - O exemplo acima define a permissão de acesso dos outros usuários (0)
como nenhuma, e define a permissão de acesso do grupo (4) como somente leitura (r). Note usei
somente dois números e então a permissão de acesso do dono do arquivo não é modificada (leia
as permissões de acesso da direita para a esquerda!). Para detalhes veja a lista de permissões
de acesso em modo octal no inicio desta seção.
chmod 751 teste - O exemplo acima define a permissão de acesso dos outros usuários
(1) para somente execução (x), o acesso do grupo (5) como leitura e execução (rx) e o acesso do
dono (7) como leitura, gravação e execução (rwx).
PÁG.: 60
APOSTILA GNU/DEBIAN BÁSICO
9.2. Apt
O principal instalador de pacotes que vamos utilizar no caso do Debian é o Apt. A maior
parte das vezes em que precisarmos instalar ou remover um pacote será com ele.
Alguns pontos sobre como usar o Apt devem ser ressaltados:
• Apenas o usuário root pode instalar ou remover pacotes.
• Só uma instância do pode ser executada. A segunda tentativa de iniciar,
simultaneamente, a instalação de um pacote, vai gerar uma mensagem de erro.
Você deve estar se perguntando como fazer para saber o que instalar, ou qual o nome de
um determinado programa no Debian. Para responder a essas dúvidas vamos apresentá-los a
três programas criados para resolver este problema:
• apt-cache search NOME - Para procurar por um pacote chamado NOME
executamos este comando. Ele faz uma pesquisa na lista de pacotes disponíveis
para instalar. A saída apresenta todos os pacotes que apresentam a palavra que
você forneceu como argumento. Existem formas mais complexas de busca que
podem ser mais claras ou mais específicas, geralmente a utilização do comando
grep para filtrar a saída já é o suficiente.
• apt-cache show NOME - Uma vez descoberto o nome correto do pacote no Debian,
você pode querer uma descrição dele.
• synaptic - interface gráfica para a instalação de pacotes . Ele também é utilizado
em outras distribuições, a Conectiva é uma delas.
PÁG.: 62
APOSTILA GNU/DEBIAN BÁSICO
apt-get update
Se não fizer isso e, tentar instalar um novo pacote, receberá uma mensagem de
erro.
9.3. Dpkg
É importante lembrar do comando dpkg. Ele também instala, remove e reconfigura
pacotes. é menos usados para a instalação porque não traz as dependências (POR ISSO SÓ
UTILIZE SE REALMENTE SOUBER O QUE ESTÁ FAZENDO). Se um pacote X tem os pacotes
Y e Z como suas dependências, você teria que baixá-los em sua máquina e instalá-los antes do
pacote X.
Imagine o problema que você pode enfrentar se os pacotes Y e Z tem dependências. E
se as dependências destes também tem suas próprias dependências? Já percebeu onde isso
leva, não é?
Podemos usar o dpkg para saber quais os pacotes temos instalados no sistema:
dpkg -l
PÁG.: 63
APOSTILA GNU/DEBIAN BÁSICO
Outro uso muito importante do dpkg é quando a instalação para por algum problema de
configuração. Este problema pode ter sido causado porque algum pacote em seu sistema está
em um estado incorreto. Guarde-o bem em sua memória, ele poderá lhe ajudar muito.
dpkg --configure -a
Em outras palavras, você está pedindo para o dpkg verificar e corrigir a configuração de
todos os pacotes. Se ele não conseguir “arrumar a casa” pode ajudar a identificar qual o pacote
problemático.
PÁG.: 64
APOSTILA GNU/DEBIAN BÁSICO
PÁG.: 65
APOSTILA GNU/DEBIAN BÁSICO
11.1. Rede
Interfaces de Rede - /etc/network/interfaces
Arquivo que deve conter os IP's de servidores acessados - /etc/hosts
Configuração de DNS - /etc/resolv.conf
Script de start/stop da interface de rede - /etc/init.d/
11.3. Xorg
Configuração do servidor gráfico - dpkg-reconfigure xserver-xorg
Arquivo que contém as informações da Interface Gráfica - /etc/X11/xorg.conf
PÁG.: 66
APOSTILA GNU/DEBIAN BÁSICO
onde:
seção
É a seção de manual que será aberta, se omitido, mostra a primeira seção sobre o
comando encontrada (em ordem crescente).
comando/arquivo
Comando/arquivo que deseja pesquisar.
Exemplos:
man ls
man 5 hosts_access.
info [comando/programa]
Se o nome do comando/programa não for digitado, a info pages mostra a lista de todos
os manuais de comandos/programas disponíveis. A navegação da info pages é feita através de
nomes marcados com um "*" (hipertextos) que se pressionarmos Enter, nos levará até a seção
correspondente. A info pages possui algumas teclas de navegação úteis:
• q - Sai da info pages
PÁG.: 67
APOSTILA GNU/DEBIAN BÁSICO
• ? - Mostra a tela de ajuda (que contém a lista completa de teclas de navegação e muitos
outras opções).
• n - Avança para a próxima página
• p - Volta uma página
• u - Sobre um nível do conteúdo (até checar ao índice de documentos)
• m - Permite usar a localização para encontrar uma página do info. Pressione m, digite o
comando e tecle Enter que será levado automaticamente a página correspondente.
• d - Volta ao índice de documentos.
Existem muitos outras teclas de navegação úteis na info pages, mas estas são as mais
usadas. Para mais detalhes, entre no programa info e pressione ?.
Exemplo:
info cvs
[comando] --help
onde:
comando
É o comando/programa que desejamos ter uma explicação rápida.
O help online não funciona com comandos internos (embutidos no bash), para ter uma
ajuda rápida sobre os comandos internos, veja help.
Exemplo:
ls –help
12.4. help
Ajuda rápida, útil para saber que opções podem ser usadas com os comandos internos
do interpretador de comandos. O comando help somente mostra a ajuda para comandos
internos, para ter uma ajuda similar para comandos externos, veja help on line. Para usar o help
digite:
help [comando]
onde:
comando
É o comando/programa que desejamos ter uma explicação rápida.
Exemplo:
help echo
help exit
PÁG.: 68
APOSTILA GNU/DEBIAN BÁSICO
13. Anexos
4. Em seguida, em “Choose Language”, tecle <Tab> e selecione <Voltar>, você irá para o
“Menu principal do instalador Debian”, selecione <Escolher idioma/Choose language>
e, em seguida, escolha o idioma: <Português do Brasil>.
5. Escolha <Brasil>.
7. Na tela para selecionar outros locales não selecione nenhum adicional, apenas tecle
<Tab> e selecione <Continuar>.
9. Será feita a detecção dos dispositivos e a configuração de rede via DHCP, se o instalador
não encontrar o servidor DHCP da rede será solicitada a configuração manual. Em
seguida informe o nome da máquina: Algo como e[NOME DO ÓRGÃO][n° do
patrimônio] (Em letras minúsculas e com numeração de 5 dígitos).
PÁG.: 69
APOSTILA GNU/DEBIAN BÁSICO
10. Forneça o nome do domínio, algo como [nome do órgão].parana (por exemplo:
celepar.parana)
15. Se tudo ocorrer bem, será iniciado o particionador de discos. Certifique-se que não há
nenhum dado importante no HD em que o sistema será instalado. Selecione a opção
Manual.
16. Pressione <ENTER> sobre o disco para criar uma nova tabela de partições vazia e crie
as seguintes partições:
Ponto de
Tamanho Método de uso Flag inicializável Função
montagem
Formatar a Partição para arquivos de
/boot 128 MB ligado
partição (ext3) boot
Formatar a
/ 10 GB desligado Partição raiz
partição (xfs)
Área para swap de
swap 1 GB área de troca desligado
memória
Restante do Formatar a Partição para arquivos do
/home desligado
espaço partição (xfs) usuário
PÁG.: 70
APOSTILA GNU/DEBIAN BÁSICO
19. Entre a senha de root, geralmente utilizamos a senha “celepar”, em seguida digite
novamente a mesma senha para verificação.
20. Escolha um nome completo para o novo usuário, por exemplo “CELEPAR”, escolha o
nome de usuário para a conta: celepar. Em seguida escolha uma senha: celepar E
depois digite-a novamente para confirmá-la.
21. Na tela “Configurar o gerenciador de pacotes”, você verá um aviso de que entradas
comentadas para http://security.debian.org foram adicionadas ao /etc/apt/sources.list,
apenas selecione <Continuar>
23. A tela “Seleção de software” exibirá várias opções para escolha, as opções “Ambiente
Desktop” e “Sistema básico” estarão selecionadas, desmarque estas opções,
selecionando-as e utilizando a barra de espaço para desmarcar a opção, deixando
nenhuma opção marcada, em seguida pressione <Tab> e selecione <Continuar>
24. Marque <Sim> na pergunta sobre instalar o GRUB no Registro de Inicialização Principal
(MBR). O gerenciador de boot padrão no Debian GNU/Linux 4.0 “etch” é o GRUB.
A primeira etapa da instalação está finalizada, porém, agora iremos entrar em outro
processo que é a configuração do sistema:
26. Logue-se como usuário root e a senha que você definiu anteriormente, provavelmente
celepar.
PÁG.: 71
APOSTILA GNU/DEBIAN BÁSICO
27. Edite o /etc/apt/sources.list, com o editor de textos da sua preferência (vi, nano, pico
etc) deixando-o da seguinte forma:
deb http://www.repositorios.eparana.parana/debian/ etch main contrib nonfree
deb http://www.repositorios.eparana.parana/celepar/ etch main contrib nonfree
deb http://www.repositorios.eparana.parana/marillat/ etch main
deb http://www.repositorios.eparana.parana/security/ etch/updates main contrib
nonfree
PÁG.: 72
APOSTILA GNU/DEBIAN BÁSICO
http://localhost:631
Através desta interface, você poderá instalar impressoras locais (conectadas diretamente
em seu computador) e de rede (conectadas em outros computadores ou diretamente conectadas
a rede).
Para instalar uma nova impressora, na aba principal “Home” da interface de administração,
clique no botão <Add Printer>.
A seguir, na janela “Add New Printer”, será requisitado o preenchimento dos seguintes
parâmetros:
Name = Nome da impressora (fila de impressão). Não poderão haver caracteres especiais
nem espaços. Dê um nome significado como por exemplo, “HP695C” (sem aspas).
Location = Localização física da impressora. Exemplo: “Maquina da Ana” (sem aspas).
Description = Uma descrição qualquer sobre a impressora.
Depois de preencher estes campos, pressione o botão <Continue>. A próxima janela vai
questioná-lo sobre o tipo de conexão que deverá ser feito entre seu computador e a impressora.
Veja a tabela abaixo para saber o que você deve selecionar:
Tipo de Marca Tipo de Conexão Device
Impressora
Rede Qualquer Impressora conectada diretamente na rede, sem AppSocket/HP
estar conectada a um computador. JetDirect
Rede Qualquer Impressora compartilhada por uma máquina na Internet Printing
rede através do protocolo HTTP. Protocol (http)
Rede Qualquer Impressora compartilhada por uma máquina na Internet Printing
rede através do protocolo IPP. Protocol (ipp)
Rede Qualquer Filas de impressão remotas em servidores de LDP/LPR Host
impressão Linux/Unix/Solaris/BSD. Printer
Local Qualquer Impressora ligada a porta paralela. LPT# “x”
Local Canon Canon conectada a porta paralela. Parallel Port #
“x” (CANON)
PÁG.: 73
APOSTILA GNU/DEBIAN BÁSICO
Exemplo.:
socket://10.10.10.25:9100
Exemplo.:
smb://usuario:senha@10.10.10.50/HP820
Exemplo.:
ipp://10.10.10.51/printers/HP820
Após fornecer todas as informações necessárias para conexão com a impressora, clique
PÁG.: 74
APOSTILA GNU/DEBIAN BÁSICO
no botão <Continue> para passar ao próximo passo. Neste próximo passo, é hora de informar
ao CUPS qual o “driver” a ser utilizado pela impressora.
Na lista apresentada, escolha o fabricante da impressora e pressione <Continue>. Na
próxima janela, selecione o modelo da impressora na lista que será apresentada e clique em
<Add Printer>. Se tudo estiver correto, você poderá ver as informações sobre a impressora
através da aba “Printers”, como mostra a figura a seguir:
13.3. SSH
Permite acesso a um computador remoto que esteja executando o serviço SSH. É
necessário fazer autenticação com usuário e senha válidos na maquina remota para poder usar o
computador remoto. Muito útil, mas deve-se tomar alguns cuidados ao disponibilizar este serviço,
evitando expor seu computador a riscos de segurança.
onde:
usuario@host
Permite informar o usuário e o endereço ou nome do computador remoto que deseja-se
conectar. Por exemplo, marcius@10.15.15.15 .
Opções:
-p
Permite fornecer uma porta alternativa para realizar a conexão ao invés da padrão (22).
Exemplo:
ssh paraiba@servidor
ssh -p 30 marcius@10.15.15.5
O SSH também implementa uma ferramenta chamada “scp”, que permite trocar arquivos
entre um computador que disponibilize o serviço SSH e outro que execute o cliente scp. O
comando scp funciona da seguinte forma:
PÁG.: 75
APOSTILA GNU/DEBIAN BÁSICO
seja salvo no diretório “/home/marcius/documentos” da sua maquina. Para isso você poderia
executar o seguinte comando:
Agora suponha que você quisesse fazer o contrário, ou seja, enviar o arquivo “texto.txt” que
está salvo no diretório “/home/marcius/documentos” da sua maquina, para o diretório
“/home/usuario/arquivos” da maquina com endereço IP 10.15.15.15. Neste cenário você poderia
utilizar o seguinte comando:
-P
Permite especificar uma porta específica para efetuar a conexão com o serviço SSH. Esta
opção é obrigatória caso o serviço SSH da maquina a qual se deseja conectar esteja rodando em
qualquer outra porta que não seja a padrão (22).
PÁG.: 76