Buscar

Tema 04 Manipulação de arquivos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Fundamentos de Redes Linux
Tema 04 – Manipulação de arquivos
USO DO TERMINAL - COMANDOS BÁSICOS
Prof Sergio Cardoso
ssilva@unicarioca.edu.br
Objetivos
• Conhecer os comandos para manipulação 
de arquivos.
• Entender os mecanismos de segurança de 
arquivos e diretórios e como manipulá-los.
COMANDOS PARA ARQUIVOS E 
DIRETÓRIOS
CD – Mudança de diretório
• permite “navegar” entre as pastas do sistema.
cd [opções] <caminho>
• cd ..➔ para acessar uma pasta de nível acima do atual;
• cd /➔ para ir a pasta raiz;
• cd➔ para ir a sua pasta pessoal;
• cd –➔ para voltar a pasta que se encontrava antes de 
mudar.
Exemplos
CD – Mudança de diretório
Ls – lista o conteúdo de um diretório
• ls
– lista os arquivos e pastas em um diretório.
– A opção –a mostra arquivos ocultos e a 
opção –l mostra mais informações 
(detalhes). 
– Ex.: “ls” ou “ls –l” ou “ls –a” ou “ls –la”
Ls – lista o conteúdo de um diretório
Ls – lista o conteúdo de um diretório
• ls -lh → Mostra o tamanho dos arquivos de 
forma “amigável” (human-readable)
Ls – lista o conteúdo de um diretório
• ls -alh → Mostra o tamanho dos 
arquivos de forma “amigável” (human-
readable) e os arquivos ocultos
Atalhos de acesso
O símbolo ~ representa a pasta pessoal (home) de um usuário.
Exemplos:
~aluno → Equivale ao caminho para a pasta pessoal do usuário ‘aluno’
cd ~aluno
• Para acessar a pasta pessoal do usuário ‘aluno’.
ls ~aluno/documentos
• Listas os arquivos na pasta ‘documentos’, contida na pasta pessoal do aluno.
Cat
• Exibe o conteúdo de um arquivo na tela do 
terminal.
– Ex.: “cat /etc/resolv.conf”
• Ex.: “cat /etc/network/interfaces”
head
• exibe o conteúdo do início (“cabeça”) de 
um arquivo na tela do terminal.
– -n → exibe as n primeiras linhas
– Ex.: “head -3 /etc/hosts”
tail
• exibe o conteúdo do final (“calda/rabo”) 
de um arquivo na tela do terminal.
• -n → exibe as n últimas linhas
• Ex.: “tail -3 /etc/hosts”
touch
• Cria um arquivo vazio. 
• Se o arquivo já existe sua hora é atualizada.
Inicialmente 
pasta vazia
O arquivo 
é criado
Hora em que 
foi criado
Aguardo um 
minuto e executo 
o comando touch
novamente
Hora 
atualizada
cp
• Copia arquivos.
– Ex.: “cp /etc/resolv.conf /home/aluno”pasta atual
pasta atual está VAZIA
pasta atual com o arquivo COPIADO
listando o conteúdo da pasta pessoal 
e exibindo detalhes do arquivo
mv
• move arquivos.
– Ex.: “mv /home/aluno/resolv.conf /tmp/”
entrou na pasta /tmp/
pasta /tmp/ está VAZIA
listou conteúdo da pasta /tmp/
voltou para pasta pessoal em /home
listou conteúdo da pasta pessoal
mv
• Ex.: “mv /home/aluno/resolv.conf /tmp/”
listou conteúdo da pasta pessoal
pasta pessoal está VAZIA
entrou na pasta /tmp/
listou conteúdo da pasta /tmp/
voltou para pasta 
pessoal
rm
• Remover arquivos/pastas (“deletar”). 
– Ex.: “rm /tmp/musica.mp3”
apagando arquivo
rm
• Opção –rf remove de forma recursiva (-
r) e forçada (-f) CUIDADO!!!.
• Para discutir:
– O que faz o comando ‘rm –rf /‘ ????
mkdir
• Cria uma pasta.
– Ex.: “mkdir /home/aluno/musicas”
criando pasta
“d” simboliza que é uma pasta (directory)
rmdir
• Remove uma pasta, apenas se ela 
estiver vazia.
– Ex.: “rmdir /home/aluno/musicas”
removendo a pasta vazia
find
• find <local> -name <nome>
– procura em todos os lugares de <local> 
as pastas e arquivos que se chamem 
<nome>. 
– Permite uso de curingas: * ou ?.
• Ex.: “find / -name musica.mp3”
• Ex.: “find /home -name *.mp3”
grep
• Comando faz busca por linhas que contém 
um certo padrão no conteúdo de um 
arquivo. 
grep expressão arquivo
• Exemplo:
– grep aluno /etc/passwd
• mostra as linhas do arquivo /etc/passwd que contêm 
a string aluno
grep
grep -v aluno /etc/passwd 
• mostra as linhas que não contêm a string aluno
grep -n aluno /etc/passwd 
• mostra número das linhas e as linhas que contêm a string aluno
grep ^s /etc/passwd 
• mostra as linhas que iniciam com s
grep h$ /etc/passwd 
• mostra as linhas que terminam com h
grep -i aluno /etc/passwd 
• mostra as linhas que contêm a string flin ignorando a diferença de maiúscula e 
minúscula
Link simbólico
ln –s
• Cria um link simbólico para arquivo ou pasta. É análogo ao atalho do 
Windows. 
ln –s alvo atalho
• Exemplo 
• “ln –s /etc/passwd /tmp/abc”
• Foi criada uma entrada em ‘/tmp/abc’ que aponta para o arquivo 
/etc/shadow.
• Se o link for apagado o arquivo para onde apontava é mantido.
• O usuário também precisa ter permissão para acessar o arquivo original.
• O link e o original não precisam estar na mesma partição.
Link simbólico
• ln –s→ Exemplo com arquivoO link é criado
ls → Tipo ‘l’ (link)
Link simbólico
• ln –s → Exemplo com pasta
O link para a 
pasta é criado
Entrando no link da pasta
Como é um link, 
o conteúdo é o 
mesmo.
hardlink
• ln → Cria um hardlink.
– Ex: “ln /etc/passwd /tmp/abc”
– Menos usado em relação ao link simbólico.
– O hardlink aponta para o mesmo bloco em 
disco (inode) onde está o arquivo de 
destino.
– Não é permitido fazer hardlink de pastas.
stat
• Exibe mais detalhes sobre um arquivo ou pasta.
▪ Repare nos três horário indicados:
▪ Access → data/hora em que o arquivo foi acessado pela última vez.
▪ Modify → data/hora em que o arquivo (conteúdo) foi modificado pela última vez.
▪ Change → data/hora em que as propriedades do arquivo foram modificadas 
pela última vez (proprietário, grupo, permissões, etc). 
PERMISSÕES DE ARQUIVOS
Tipos de arquivos
• No Linux um arquivo pode ser de texto ou binário: 
– Texto:
• Seu conteúdo é compreendido pelas 
pessoas. 
• Um arquivo texto pode ser uma carta, 
um script, um programa de computador 
escrito pelo programador, arquivo de 
configuração, etc.
– Binário:
• Seu conteúdo somente pode ser 
entendido por computadores. 
• Um arquivo binário é gerado através de 
um arquivo de programa (formato 
texto) através de um processo chamado 
de compilação, gerando um 
“executável”.
Exemplo de arquivo texto
#/etc/rsyslog.conf Configuration file for rsyslog.
#Default logging rules can be found in 
/etc/rsyslog.d/50-default.conf
#################
#### MODULES ####
#################
$ModLoad imuxsock # provides support for local system 
logging
$ModLoad imklog # provides kernel logging support
(previously done by rklogd)
#$ModLoad immark # provides --MARK-- message capability
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
Exemplo de arquivo binário
• Se tentar ver o conteúdo de um arquivo 
binário com o comando cat:
Permissões de acesso
• As permissões de acesso 
protegem o sistema de 
arquivos Linux do acesso 
indevido de pessoas ou 
programas não autorizados.
– As permissões de acesso 
permitem controlar o que 
cada usuário pode fazer em 
um arquivo (ou diretório)
– Evitam que um programa 
possa realizar alterações 
indevidas, apague arquivos, 
etc...
Donos, Grupos e outros usuários
• O acesso aos arquivos é definido para os donos 
(u), grupos (g) e outros usuários (o)
– Donos
• É a pessoa que criou o arquivo ou o diretório. Somente o 
dono pode modificar as permissões de acesso do arquivo
– Grupos
• Permite que vários usuários diferentes tenham acesso a 
um mesmo arquivo
– Usuários
• É a categoria de usuários que não são donos ou não 
pertencem ao grupo do arquivo
Tipos de Permissões de Acesso
r - Permissão de leitura para arquivos. Caso for um diretório, permite listar 
seu conteúdo (através do comando ls, por exemplo).
w - Permissão de gravação para arquivos. Caso for um diretório, permite a 
gravação de arquivos ou outros diretórios dentro dele. Para que um 
arquivo/diretório possa ser apagado, é necessário o acesso a gravaçã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.
Combinando tudo!
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 arquivo.conf
Olhando mais de perto...
Permissões de arquivos
-rwxr–xr–x1 aluno turma 12331 Jul 16 15:34 arquivo.conf
- arquivo comum
d pasta (directory)
l link simbólico
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 arquivo.conf
rwx r–x r–-
PARA ARQUIVOS
r – Permissão para ler o conteúdo 
(READ)
w – Permissão para 
gravar/modificar/apagar (WRITE)
x – Permissão para executar o arquivo 
ou script (EXECUTE)
PARA PASTAS
r – Permissão para ver o conteúdo da 
pasta (listar os arquivos)
w – Permissão para criar, apagar ou 
modificar arquivos na pasta e alterar os 
atributos da pasta.
x – Permissão para acessar a pasta e 
os arquivos nela armazenados.
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 script.sh
rwx r–x r–-
Permissões do PROPRIETÁRIO do arquivo.
O usuário ‘aluno’ pode:
- Ler o conteúdo do arquivo ( r )
- Modificar e apagar o arquivo ( w )
- Executar o arquivo ( x )
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 script.sh
rwx r–x r–-
Permissões de GRUPO do arquivo.
Os usuários que pertencem ao grupo ‘turma’ podem:
- Ler o conteúdo do arquivo ( r )
- Executar o arquivo ( x )
NÃO PODEM:
- Modificar e apagar o arquivo ( w )
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 script.sh
rwx r–x r–-
Permissões outros usuários.
Outros? Quem não é o proprietário (aluno) e nem pertence 
ao grupo ‘turma’.
Os outros podem:
- Ler o conteúdo do arquivo ( r )
NÃO PODEM:
- Modificar e apagar o arquivo ( w )
- Executar o arquivo ( x )
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 arquivo.conf
aluno
Proprietário
(dono)
turma
grupo
tamanho
em bytes*
* O tamanho é representado em bytes quando não for explicitada a unidade.
Permissões de arquivos
-rwxr–xr–x 1 aluno turma 12331 Jul 16 15:34 arquivo.conf
Data da última 
modificação ou 
criação
Nome
Comandos para permissões de arquivos
• Muda a permissão de acesso de uma pasta ou arquivo.
chmod [opções] [permissões] [pasta/arquivo]
• Muda o grupo de uma pasta ou arquivo. 
chgrp [opções] [grupo] [pasta/arquivo] 
• Muda o dono de uma pasta ou arquivo. Opcionalmente 
pode também ser usado para mudar o grupo.
chown [opções] [dono:grupo] [pasta/arquivo]
Comandos para permissões de arquivos
• OPÇÕES para chmod, chgrp e chown:
– [pasta/arquivo]
• pasta ou arquivo que terá sua permissão alterada. 
– [opções]
• -v: mostra todos os arquivos ou pastas que estão sendo 
processados.
• -f: não mostra a maior parte das mensagens de erro.
• -c: semelhante a opção -v, mas só mostra os arquivos 
ou pastas que tiveram as permissões alteradas.
• -R: muda permissões de acesso da pasta ou arquivo na 
pasta atual e subpastas.
Mudando o proprietário
• Exemplo:
– Arquivo: ‘/tmp/documento’
1 - Mudar o proprietário do arquivo para ‘fernando’:
Inicialmente o proprietário é ‘aluno’
O proprietário mudou para ‘fernando’
Modificando o grupo
• Exemplo:
– Arquivo: ‘/tmp/documento’
2 - Mudar o grupo do arquivo para ‘turma’:
Inicialmente o grupo é ‘aluno’
O grupo mudou para ‘turma’
Modificando as permissões
• Exemplo:
– Arquivo: ‘/tmp/documento’
3 – Mudar permissões:
• Proprietário e grupo podem ler e escrever
• Os outros, nada!
Comando chmod
• O comando anterior foi:
chmod 660 documento
Nome do arquivo
0 ou ––– (nenhuma permissão)
1 ou ––x (execução)
2 ou –w– (escrita)
3 ou –wx (escrita e execução)
4 ou r–– (leitura)
5 ou r–x (leitura e execução)
6 ou rw– (leitura e escrita)
7 ou rwx (leitura, escrita e 
execução)
6 → proprietário
6 → grupo
0 → outros
Valores para as permissões (octal)
• Preciso decorar essa tabela?
NÃO!
0 ou ––– (nenhuma permissão)
1 ou ––x (execução)
2 ou –w– (escrita)
3 ou –wx (escrita e execução)
4 ou r–– (leitura)
5 ou r–x (leitura e execução)
6 ou rw– (leitura e escrita)
7 ou rwx (leitura, escrita e 
execução)
Valores para as permissões (octal)
• Cada bloco de permissão é composto de 3 
campos true/false:
– Leitura (r)
– Gravação (w)
– Execução (x)
• Cada um deles tem um valor.
r w x
4 2 1
Valores para as permissões (octal)
• Como em contagem binária, você soma os 
valores dos bits que ficaram ligados.
• Se os três estiverem ligados = 4 + 2 + 1 = 7
– As três permissões ativas
• Se os três estiverem desligados = 0
– Nenhuma das três permissões
r w x
4 2 1
Valores para as permissões (octal)
• Compare e veja como é simples:
r w x
4 2 1
0 ou ––– (nenhuma permissão)
1 ou ––x (execução)
2 ou –w– (escrita)
3 ou –wx (escrita e execução)
4 ou r–– (leitura)
5 ou r–x (leitura e execução)
6 ou rw– (leitura e escrita)
7 ou rwx (leitura, escrita e 
execução)
Valores para as permissões (letras)
• Entidades
u => usuário
g => grupo
o => outro
a => todos
• Permissões
r => leitura
w => gravação
x => execução
Operadores 
+ => adicionar permissão
- => remover permissão
= => definir permissão
Valores para as permissões (letras)
• chmod g+r *
– Permite que todos os usuários que pertençam ao grupo dos arquivos (g) tenham (+) 
permissões de leitura (r) em todos os arquivos do diretório atual. 
• 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). 
• 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.
Permissões de arquivos
• Para exercitar:
Descrição
Representação
decimal
Representação 
letras
Leitura, escrita e execução para todos os 
usuários.
Leitura e execução para todos os usuários. 
O dono também pode escrever.
Leitura e execução para o Dono e para o 
Grupo. O dono também pode escrever. 
Usuários que não são nem o dono nem do 
grupo não tem nenhuma permissão.
Leitura, escrita e execução apenas para o 
Dono. Todos os outros não tem permissão.
Leitura e escrita para todos os usuários. 
Ninguém tem permissão de execução.
Permissões de arquivos
• Para exercitar:
Descrição
Representação
decimal
Representação 
letras
Leitura e escrita para o Dono e Grupo. E 
somente leitura para outros usuários.
Leitura e escrita para o Dono e o Grupo. 
Nenhum outro usuário tem permissão.
Leitura e escrita para o Dono. Somente 
leitura para todos os outros.
Leitura e escrita para o Dono, e somente 
leitura para o Grupo. Demais sem 
permissão.
Leitura e escrita só para o Dono.
Somente leitura para o Dono.
Permissões de arquivos
• Respostas:
Permissões de arquivos
• Respostas:
COMANDOS PARA 
EMPACOTAMENTO
Arquivamento e compactação
– tar→ Arquiva arquivos, ou estrutura 
completa de pastas, em um arquivo único.
• É semelhante ao ZIP, porém o ‘tar’ puramente 
não faz a compactação dos arquivos.
tar
– Arquiva arquivos, ou estrutura completa de 
pastas, em um arquivo único.
Arquivo.tar → sem compactação.
Terá o mesmo tamanho dos 
arquivos contidos.
Para criar o .Tar
• tar cvf <saída> 
<entrada>...<entrada>
• O v é opcional. Mostra a lista de arquivos 
processados.
• <saída> → Nome do arquivo de saída. 
Recomenda-se terminar com .tar para que o 
nome indique o tipo do arquivo, mas não é 
obrigatório.
• <entrada> → Nome de um ou mais 
arquivos/pastas a serem incluídos. Se for uma 
pasta, toda a estrutura (incluindo arquivos) fará 
parte do .tar .
Para criar o .Tar
Arquivamento e compactação
– Após o arquivamento, o tar pode se utilizar 
de algum processo de compactação para 
reduzir o tamanho final do arquivo. Ex: gzip, 
bzip...
arquivado.tar arquivado.tar.gz
Para criar o .tar COMPACTADO
• tar cvfz <saída> 
<entrada>...<entrada>
Criado no exemplo anterior
Criado nesse exemplo
Tar com várias entradas
• Ex.: “tar cfz arquivo.tar.gz /etc
/home”
• O arquivo de saída terá o conteúdodas 
pastas:
– /etc
– /home
• Incluindo a estrutura completa de pastas.
Para extrair o .tar
• A extração é feita na pasta corrente (atual) 
do usuário (pwd).
Raíz
Pasta corrente
Para extrair o .tar
• A extração é feita na pasta corrente (atual) 
do usuário (pwd). Raíz
Para extrair o .tar
– Ex: “tar xfz backup2_etc.tar.gz”
Mais sobre o tar
• O tar possui uma infinidade de opções e 
recursos muito úteis, que não foram 
apresentados aqui.
Quer saber mais?
# man tar
gzip
• gzip <arquivo> → Comprime arquivos, 
reduzindo seu tamanho.
– Ex.: “gzip documento.txt”
– Ao término:
• O arquivo compactado será 
documento.txt.gz.
• O arquivo original é substituído.
– Não faz um ‘pacotão’ de arquivos e pastas. Para 
isso, use em conjunto com o ‘tar’.
– Se forem informados vários arquivos, cada um 
será compactado independentemente.
gzip
• gzip <arquivo>→ Comprime 
arquivos, reduzindo seu tamanho.
– Ex.: “gzip documento.txt”
Arquivo original
Arquivo compactado
Repare que o arquivo original foi substituído pela versão comprimida.

Outros materiais