Sei sulla pagina 1di 80

Administração de Sistemas

 Linux Básico – Parte 1

Professor: Roberto Franciscatto


Principais Distribuições

 As principais distribuições Linux são:

 Debian, Ubuntu, Red Hat, Fedora, OpenSuse,


Mandriva e Slackware.
Estrutura de Diretórios

 /
 Diretório principal (raiz).

 /bin
 Contém arquivos e programas do sistema que são
usados com freqüência pelos usuários.

 /boot
 Contém arquivos necessários para a inicialização do
sistema.
Estrutura de Diretórios

 /cdrom
 Ponto de montagem da unidade de CD-ROM.

 /dev
 Contém arquivos usados para acessar dispositivos
(periféricos) existentes no computador.

 /etc
 Arquivos de configuração de seu computador local.
Estrutura de Diretórios

 /floppy
 Ponto de montagem de unidade de disquetes.

 /home
 Diretórios contendo os arquivos dos usuários.

 /lib
 Bibliotecas compartilhadas pelos programas do sistema e
módulos do kernel.
Estrutura de Diretórios

 /mnt
 Ponto de montagem temporário.
 /proc
 Sistema de arquivos do kernel. Este diretório não existe em
seu disco rígido, pois, ele é colocado lá pelo kernel e usado
por diversos programas que fazem sua leitura, verificam
configurações do sistema ou modificam o funcionamento de
dispositivos do sistema através da alteração em seus
arquivos.
 /root
 Diretório do usuário root
Estrutura de Diretórios

 /sbin
 Diretório de programas usados pelo superusuário (root) para
administração e controle do funcionamento do sistema.
 /tmp
 Diretório para armazenamento de arquivos temporários criados por
programas.
 /usr
 Contém maior parte de seus programas. Normalmente acessível
somente como leitura.
 /var
 Contém maior parte dos arquivos que são gravados com freqüência
pelos programas do sistema, e-mails, spool de impressora, cache, etc.
Sistemas de Arquivos

 O sistema de arquivos corresponde a uma estrutura criada


dentro do seu disco rígido que, após ser feito o
particionamento (divisão do disco em partições), permitirá
que arquivos ediretórios sejam criados, removidos, e etc.

 Os sistemas de arquivos podem ser: reiserfs, swap, ext2,


ext3 e ext4 para partições Linux ou fat32 e ntfs para
partições Windows.

 Após a formatação do disco é possível criar, excluir e


editar os sistemas de arquivos epartições que podem
ser /dev/hda1, /dev/hda2, /dev/hda3...
Sistemas de Arquivos

 Swap -
 É a partição da memória virtual do Linux (permite que o
sistema operacional obter virtualmente mais memória
RAM do que possue para não travar ao abrir vários
programas). Ela deve ser o dobro da memória RAM do
seu computador. Ex : 256 MB de RAM - 512 MB de
Swap.

 Ext2 -
 Para partições GNU/Linux usando o Extended File
System versão 2 (obsoleto).
Sistemas de Arquivos

 Ext3 -
 Para partições GNU/Linux usando o Extended File
System versão 3, com suporte a checagem e correção
de falhas em sistema de arquivos conhecido como
"journaling" (mais rápido, com melhor correção e
recuperação de arquivos corrompidos em caso de
desligamento inesperado do sistema).

 Ext4 -
 Desenvolvido a partir de 2006 para ser o sucessor do
Ext3 e tem como característica: mais estável, mais
rápido e suporte para tamanhos maiores de arquivos e
volumes.
Dispositivos

 No GNU/Linux, os dispositivos existentes em seu


computador (como discos rígidos, disquetes, portas de
impressora, modem, etc) são identificados por um arquivo
referente a este dispositivo no diretório /dev

 Os nomes de dispositivos no sistema GNU/Linux são


acessados através do diretório onde esses dispositivos
físicossão tratados como arquivos. Estes arquivos são um
tipo especial no sistema de arquivos Linux. Esses
dispositivos são:

 impressoras, CD-ROMs, modems, entradas USB,


mouse, HDs, etc.
Dispositivos
Dispositivos

 No GNU/Linux, os dispositivos existentes em seu


computador (como discos rígidos, disquetes, portas de
impressora, modem, etc) são identificados por um arquivo
referente a este dispositivo no diretório /dev

 Os nomes de dispositivos no sistema GNU/Linux são


acessados através do diretório onde esses dispositivos
físicossão tratados como arquivos. Estes arquivos são um
tipo especial no sistema de arquivos Linux. Esses
dispositivos são:

 impressoras, CD-ROMs, modems, entradas USB,


mouse, HDs, etc.
Shell de root e usuário

 shell de usuário "$"


 [aluno1@pc1 ~]$

 shell de root "#"


 [root@pc1 ~]#

 Para trocar o shell de usuário para superusuário "root"


digite o comando su no Debian e outras distribuições
Linux e sudo e su no Ubuntu:
Comandos de Sessão

 $ su
 Password: (Digite a senha de root)

 logout ou Ctrl + D - termina a sessão do usuário.


 $ logout

 exit - encerra o shell de comandos corrente.


 $ exit
Iniciando e Desligando o Computador

 reboot - reinicia o computador.


# reboot
 shutdown - reinicia o computador.
 # shutdown -r now
 # shutdown -h 5 (desliga o computador após 5 minutos)

 halt - desliga o computador.


 # halt
 poweroff - desliga o computador.
 # poweroff
 init 0 - desliga o computador.
 # init 0
Ajuda

 help - exibe opções de comandos.


 $ ps --help
 $ ps -h

 man - consulta os manuais dos comandos do sistema.


 $ man ls

 info - exibe informações de um ou mais comandos.


 $ info ls
 $ info
 para sair do info pressione "q".
Ajuda

 whatis - consulta uma base de dados que contém informações


de palavras.
 $ whatis ls

 apropos - consulta manuais de comandos de acordo com uma


string fornecida.
 $ apropos wget
Comandos de Navegação

 pwd - Exibe o diretório corrente


 $ pwd

 cd - Muda de diretório corrente


 tree - Lista arquivos e diretórios em forma de árvore
 $ tree (obs: Por padrão o comando tree não vem
instalado em muitas das distribuições no Debian
instale com apt-get install tree e no Fedora yum
install tree.)
Comandos de Navegação

 ls – Lista arquivos e diretórios


 ls [opções] [diretório]
 opções
 -a exibe arquivos ocultos (arquivos que iniciam
com um (.) ponto Ex: ls -a
 -l exibe detalhes de um arquivo ou diretório
 -h exibe tamanho de um arquivo ou diretório
junto com a opção -l Ex: ls -lh
 -d exibe o detalhes de um diretório junto com a
opção -l Ex: ls -ld
 -1 exibe linha por linha os arquivos de um
diretório
Comandos de Navegação

 ls – Lista arquivos e diretórios


 ls [opções] [diretório]
 opções
 -F exibe as características de cada arquivo
sem a opção -l que pode ser:
Localização de Arquivos

 find - localiza arquivos no disco


Localização de Arquivos

 find - localiza arquivos no disco

 Exemplos:

 $ find /etc/ -name *.conf


 $ find /usr/bin/ -type f -user kurumin -ctime +3
Localização de Arquivos

 grep - filtra caracteres específicos de um arquivo


 opções [descrição]
 -i não diferencia maiúscula de
minúscula
 -e + (palavra) procura por expressão "palavra"
 -n exibe o número de linhas "padrão"
 -f +(arquivo) lê o "padrão" a partir do arquivo
especificado
Localização de Arquivos

 grep - filtra caracteres específicos de um arquivo


 $ cat /etc/passwd | grep -i root
 $ ps aux | grep http
Localização de Arquivos

 strings - filtra string em arquivo binário

 [opções] [descrição]
 -a procura por strings em todo o arquivo
 -f imprime o nome do arquivo antes de cada
string
 Exemplos:
 $ strings /usr/bin/passwd | grep passwd (procura pela string
passwd no arquivo binário)
 $ strings -a /usr/bin/passwd (procura somente por strings no arquivo
binário)
Localização de Arquivos

 whereis - localiza arquivos binários (programas)


 whereis [opções] [comando]
 -b Localiza arquivos binários.
 -s Localiza código fonte.
 -m Localiza página de manual.

 Exemplo:
 $ whereis firefox
Localização de Arquivos

 which - Mostra o caminho de um programa

 Exemplo:
 $ which firefox
Espaço em nome de arquivos e diretórios

 Coloque entre aspas duplas " ou simples ' ou \ o


nome do arquivo ou pasta.

 Criando diretórios com espaços


 $ mkdir "pasta 1"
 $ mkdir 'pasta 2'

 Para exibir use o comando ls


 $ ls -d "pasta 1"
 $ ls -d 'pasta 2'
 $ ls -d pasta\ 1
 $ ls -d pasta\ 2
Arquivos e Diretórios

 touch - Atualiza a data e hora de acesso ou


modificação de um arquivo, caso o arquivo não exista
é criado um arquivo vazio.

 -c Não cria o arquivo caso ele não exista.


 -m Atualiza a data e hora de modificação.
 -a Atualiza a data de acesso.

 Exemplo:
 $ touch arquivo1
 $ touch arquivo2 arquivo3
Arquivos e Diretórios

 stat - Exibe status de arquivos ou sistema de


arquivos.

 $ touch arquivo (cria o arquivo em branco)


 $ stat arquivo (mostra status do arquivo)
 $ cat arquivo (acessa o arquivo)
 $ stat arquivo (mostra status do arquivo)
 $ echo "ola" > arquivo (modifica o arquivo)
 $ stat arquivo (mostra status do arquivo)
Arquivos e Diretórios

 rm – Remove arquivos e diretórios



-f Não exibe mensagens de confirmação para apagar
(cuidado).
 -i Pergunta antes de apagar.
 -r ou -R Remove recursivamente conteúdo de uma pasta.
(cuidado).
 -v Visualiza o nome dos arquivos antes de apagar.
Arquivos e Diretórios

 Exemplos:

 $ rm arquivo1
 $ rm -rf pasta/*
 (remove somente conteúdo da pasta)
 $ rm -rf pasta
Arquivos e Diretórios

 mkdir – cria diretórios

 -m Cria diretório com permissões de modo


 -v Mostra o nome de cada diretório
 -p Cria ou sobrescreve diretórios, e não
ocorrerá um erro caso já existam (Ex:
mkdir -p diretorio/pasta1)
Arquivos e Diretórios

 mkdir – cria diretórios

 Exemplos:

 $ mkdir pasta1
 $ mkdir -p pasta1/pasta2
Arquivos e Diretórios

 rmdir - Remove diretórios

 -p
 Remove diretórios e sub-diretórios vazios
 (Ex: rmdir -p diretorio/a/b/c)
 -v
 Exibe o nome de cada diretório removido

 Exemplos:
 $ rmdir diretorio
 $ rmdir -p diretorio/pasta1/pasta2
Arquivos e Diretórios

 cp – Copia Arquivos e Diretórios

 -r ou -R Copia recursivamente arquivos


em um diretório
 -i Pergunta se deve ser sobrescrever o
arquivo de destino
 -p Preserva propriedades,
permissões e proprietário do arquivo
 -f Remove arquivos destinos
existentes se requerido.
Arquivos e Diretórios

 Exemplos

 $ cp -rf pasta /tmp


 $ ls -l arquivo
 $ cp -p arquivo /tmp
 $ ls -l /tmp/arquivo
Arquivos e Diretórios

 ln - Cria links simbólicos (atalhos) e hard links


(referência direta) para arquivos e/ou diretórios

 -s Cria um link simbólico


 -d Cria um link simbólico para um
diretório (Ex: ln -sd diretorio link)
 -f Força a criação do link simbólico (Ex:
ln -sf diretorio link)
Arquivos e Diretórios

 Exemplo:
 $ mkdir pasta
 $ ln -s pasta link (cria um link simbólico
"atalho" para o diretório)
 $ ls -l link
 $ touch arquivo
 $ ln arquivo link2 (cria um hard link
"referência direta" para o arquivo)
 $ ls -l link2
Arquivos e Diretórios

 mv - Move ou renomeia arquivos ou diretórios

 -f Apaga arquivos/diretorios de destinos


existentes sem perguntar ao usuário
 -i Pergunta ao usuário se deseja
sobrescrever arquivos/diretórios de destino
 -b Cria cópias de segurança dos arquivos
que estão para ser sobrescrevidos ou
removidos
Arquivos e Diretórios

 Exemplos:
 $ mv aula1.txt aula2.txt pasta (Move os arquivos aula1.txt e aula2.txt
para a diretório "pasta" )
 $ mv aula3.txt teste.txt (Renomeia aula3.txt para teste.txt)
 $ touch aula1.txt
 $ mv -i aula1.txt pasta (Pergunta se deseja sobrescrever o
arquivo aula1.txt no diretório pasta)
 $ touch aula1.txt
 $ mv -f aula1.txt pasta (Não pergunta se deseja sobrescrever o
arquivo aula1.txt no diretório pasta)
Arquivos e Diretórios

 split - Divide um arquivo em partes menores.

 Exemplo:
 $ split --help (para ver mais opções)
 $ split -b 1440k pasta_grande.tar.gz
(divide em partes menores de 1440k)
 $ cat xaa xaa > pasta_restaurada.tar.gz
 (une os arquivos divididos xaa e xab no
arquivo pasta_restaurada.tar.gz)
Arquivos e Diretórios

 comm – Compara dois arquivos linha por linha

 Exemplo:
 $ comm letras1 letras2
 (compara os dois arquivos e exibe a
diferença linha por linha)
Arquivos e Diretórios

 file - Exibe o tipo de arquivo, caso seja uma imagem,


arquivo binário, arquivo texto, etc...

 $ file LINUXBRASIL.jpg (arquivo de imagem)


 $ file arquivo.txt (arquivo de texto)
 $ file /usr/bin/passwd (arquivo binário
(programa executável))
Informações do Sistema

 /proc/version - exibe informações sobre a versão do


kernel, do compilador gcc e da distribuição Linux
utilizada.

 $ cat /proc/version

 date - exibe data e hora atual


Informações do Sistema

 cal - exibe o calendário atual

 $ cal (Exibe o mês atual)


 $ cal -3 (Exibe o mês anterior, o mês atual e o
mês posterior)
 $ cal 2008 (Exibe os meses do ano de 2008)
Informações do Sistema

 Para alterar a data e o horário do sistema, logue como


root e execute os comandos abaixo:

 $ su
 # date 010522052008
Sáb Jan 05 22:05:00 BRST 2008

 Acima, a data foi alterada para 05/01/2008 e o horário


para 22:05:00
Informações do Sistema

 hostname - exibe o nome da máquina


 $ hostname

 uptime - exibe a carga média dos processos que estão


sendo executados no sistema
 $ uptime

 time - exibe o tempo de execução de um comando.


 $ time find /etc -name *.conf
Informações do Sistema

 cat - concatena arquivo e imprime na saída padrão


 $ cat /etc/fstab

 less - exibe arquivos texto


 $ less /etc/fstab

 more - semelhante ao comando less


 $ cat /etc/passwd | more
 $ more /etc/passwd
Informações do Sistema

 hostname - exibe o nome da máquina


 $ hostname

 uptime - exibe a carga média dos processos que estão


sendo executados no sistema
 $ uptime

 time - exibe o tempo de execução de um comando.


 $ time find /etc -name *.conf
Informações do Sistema

 Para alterar a data e o horário do sistema, logue como


root e execute os comandos abaixo:

 $ su
 # date 010522052008
Sáb Jan 05 22:05:00 BRST 2008

 Acima, a data foi alterada para 05/01/2008 e o horário


para 22:05:00
Informações do Sistema

 cal - exibe o calendário atual

 $ cal (Exibe o mês atual)


 $ cal -3 (Exibe o mês anterior, o mês atual e o
mês posterior)
 $ cal 2008 (Exibe os meses do ano de 2008)
Informações do Sistema

 hostname - exibe o nome da máquina


 $ hostname

 uptime - exibe a carga média dos processos que estão


sendo executados no sistema
 $ uptime

 time - exibe o tempo de execução de um comando.


 $ time find /etc -name *.conf
Informações do Sistema

 uname - exibe informações sobre o kernel,


processador, plataforma de hardware e sistema
operacional

 $ uname --help (opções)


 $ uname -a (exibe todas informações)
 $ uname -r (exibe a versão do kernel do Linux)
 $ uname -o (exibe o sistema operacional)
 $ uname -m (exibe informações sobre plataforma de
hardaware 32bits (i386,i486,i586,i686)
ou 64 bits (X86_64).
Visualização de Arquivos

 cat - concatena arquivo e imprime na saída


padrão
 $ cat /etc/fstab

 less - exibe arquivos texto


 $ less /etc/fstab

 more - semelhante ao comando less


 $ cat /etc/passwd | more
 $ more /etc/passwd
Filtragem de Arquivos

 head - exibe n linhas a partir do início do arquivo


 head [opções] [arquivo]

 -n Visualiza as n primeiras linhas do arquivo.


 -b n Visualiza os n primeiros blocos do arquivo.
 -c n Visualiza os n primeiros caracteres do arquivo.

 Exemplo:
 $ head -c 5 /etc/fstab
Filtragem de Arquivos

 tail - exibe linhas a partir do final do arquivo


 tail [opções] [arquivo]

 -n Visualiza as n últimas linhas do arquivo.


 -b n Visualiza os n últimos blocos do arquivo.
 -c n Visualiza os n últimos caracteres do arquivo.

 Exemplo:
 $ tail -f /var/log/messages
 (-f visualiza o arquivo de log em tempo real)
Filtragem de Arquivos

 tr - substitui ou traduz caracteres


 tr [opções] [string1] [string2]

 -c Faz a troca de todos caracteres que não estão


em string1.
 -d Exclui ocorrências de caracteres de string1 na
entrada.
 -s Exclui caracteres repetidos em string2 na
saída.
 Exemplo:
 $ cat /etc/passwd | tr "a-z" "0-9"
Filtragem de Arquivos

 wc - conta palavras
 wc [opções] [arquivo]

 -l Conta as linhas.
 -w Conta as palavras.
 -c Conta os caracteres.

 Exemplo:
 $ wc -l /etc/fstab
Filtragem de Arquivos

 sort - ordena linhas de texto em arquivos


 sort [opções] [arquivo]

 -m Junta dois arquivos que estão ordenados,


visualizando a união na saída.
 -r Inverte a ordem para decrescente.
 -t delimitador Utilizado para separação de campos.
Filtragem de Arquivos

 sort - ordena linhas de texto em arquivos


 sort [opções] [arquivo]

 $ cat > teste.txt


banana
amora
cereja
 $ sort teste.txt
Filtragem de Arquivos

 tac - Concatena e imprime o inverso de um


arquivo

 $ tac /etc/hosts.allow
Filtragem de Arquivos

 diff - exibe a diferença entre arquivos


 diff [opções] [arquivo1] [arquivo2]

 -a Assume que todos arquivos são do tipo texto.


 -b Despreza diferenças na quantidade de espaço em branco e tabulação.
 -i As diferenças de letras maiúsculas/minúsculas são desprezadas.
 -E As diferenças de tabulação são desprezadas.
 -w Despreza qualquer espaço em branco
 -B Ignora linhas em branco a mais ou a menos.
 -a Compara os arquivos como arquivos de texto, ainda que não sejam
Compactação e Descompactação
 tar - compacta ou descompacta arquivos e
diretórios em formatos .tar, .tar.gz, .tar.bz2

 tar [opções] [arquivo ou diretório]


 [opção] [descrição]
 -c cria um novo arquivo e adiciona os arquivos selecionados
 -C especifica um diretório para extrair
 -t lista o conteúdo do arquivo
 -f especifica indicando que é um arquivo
 -x extrai os arquivos do arquivo
 -z compacta ou extrai os arquivos no formato gzip
 -j compacta ou extrai os arquivos no formato bzip2
 -v exibe o nome do arquivo extraído
Compactação e Descompactação
 tar - compacta ou descompacta arquivos e
diretórios em formatos .tar, .tar.gz, .tar.bz2

 Exemplo:
 $ touch arquivo1 arquivo2 arquivo3

 $ tar -cvzf teste.tar.gz arquivo*


(compacta todos arquivos no arquivo teste.tar.gz)

 $ tar -xvzf teste.tar.gz -C /tmp


(extrai todos arquivos de teste.tar.gz em /tmp)
Compactação e Descompactação

 gzip - compacta arquivos no formato gz

 gzip [opções] [arquivo]


 [opção] [descrição]

 -c grava o arquivo na saída e conserva o original


 -h exibe opções de ajuda
 -d descompacta arquivo
 -v exibe mensagem enquanto descompacta o
arquivo
Compactação e Descompactação

 gzip - compacta arquivos no formato gz

 Exemplo:
 $ touch arquivo.txt
 $ gzip arquivo.txt (compacta)
 $ ls
 $ arquivo.gz (arquivo compactado)
Compactação e Descompactação

 gunzip - descompacta arquivos no formato gz

 Exemplo:
 $ gunzip arquivo.gz (arquivo descompactado)

 Ou usando o comando gzip com a opção -d

 $ gzip -d arquivo.gz (arquivo descompactado)


Compactação e Descompactação

 bzip2 - compactação modo bzip2

 Exemplo:
 $ touch arquivo
 $ bzip2 arquivo (compacta)

 bunzip2 - descompactação modo bzip2

 Exemplo:
 $ bunzip2 arquivo (descompacta)
Compactação e Descompactação

 zip e unzip - compacta e descompacta arquivos e


diretórios no formato ZIP

 Exemplo:
 $ zip arquivo.zip teste.txt (compacta)
 $ unzip arquivo.zip (descompacta)

 Para compactar um diretório use a opção -r e para


descompactar -d
 $ zip -r pasta.zip pasta/ (compacta um diretório)
 $ unzip pasta.zip (descompacta)
Comandos de Hardware
 lspci - Exibe informações sobre barramentos
PCI do computador e sobre os dispositivos a eles
conectados

 $ lspci --help (para opções)


 $ lspci -v | more
Comandos de Hardware

 procinfo - Exibe informações de status do sistema


em /proc, como memória, data de inicialização do
sistema, carga média da CPU, paginação swap, discos
rígidos e números de interruptores IRQ.

 $ procinfo
Comandos de Hardware

 lsusb - Exibe informações sobre barramentos


USB do computador e sobre os dispositivos a eles
conectados.

 $ lsusb --help (para opções)


 $ lsusb -v
Acesso Remoto

 FTP - FTP significa File Transfer Protocol (Protocolo de


Transferência de Arquivos), é uma forma de transferir
arquivos de um host local para servidor remoto (não é
seguro, use ssh (no Linux-Intermediário)

 $ ftp ftp.debian.org
Acesso Remoto

 Exemplo:
 $ ftp ftp.debian.org
 login: anonymous (usuário anonymous)
 password: (senha em branco )
 ftp>? (exibe opções de comandos)
 ftp>lcd (exibe o diretório local)
 ftp>cd debian (acessa o diretório remoto "debian")
 ftp>get README (faz o download do arquivo remoto
"README" no diretório local)
 ftp>quit (encerra a conexão)
Acesso Remoto

 SSH - SSH significa Secure Shell (Shell Seguro), é um


protocolo de rede que permite usar um canal seguro
entre um host local e um host remoto com segurança
usando chaves criptografadas.

 $ ssh -l aluno1 192.168.0.1


aluno1@192.168.0.1's password:
 $ aluno1@pc01:~$
 $ exit (encerra a conexão)
Transferência de Arquivos

 wget - Faz o download de arquivos e diretórios da


internet de modo não interativo.

 wget [opções] [url]


 -v Exibe a saída do comando.
 -r Baixa recursivamente diretórios e
subdiretórios.
 -c Continua o download do arquivo, caso a
conexão caia
 $ wget --help
 $ wget -cv ftp://ftp.debian.org/debian/README
Navegador WEB – Modo Texto

 Lynx e Links

 Instalação:
 apt-get install lynx
 apt-get install links

 Para usar basta digitar no terminal:


 $ lynx http://www.google.com.br
 $ links http://www.google.com.br
Acesso Remoto

 SSH - SSH significa Secure Shell (Shell Seguro), é um


protocolo de rede que permite usar um canal seguro
entre um host local e um host remoto com segurança
usando chaves criptografadas.

 $ ssh -l aluno1 192.168.0.1


aluno1@192.168.0.1's password:
 $ aluno1@pc01:~$
 $ exit (encerra a conexão)

Potrebbero piacerti anche