Você está na página 1de 14

TLP

• Navegar a linha de comandos


• Trabalhar com arquivos e ficheiros
• Exercícios Práticos
Resumo da Aula anterior

Para mover ficheiros e directórios, nós usamos o comando mv (move), este comando
também é curiosamente utilizado para renomear ficheiros ou pastas.

Para copiar ficheiros, nós usamos o comando cp (copy). Este comando só pode ser
utilizado para copiar pastas, quando for utilizado com a flag –r (copia recursiva).

Para deletar ficheiros, nós usamos o comando rm, para deletar pastas vazias, o
comando utilizado é o rmdir, e, para deletar pastas não vazias, nós usamos o comando
rm junto com a flag –rf.

Uma flag é um artifício que é utilizado depois do nome do comando e precedido de um


hífen, e serve para adicionar funcionalidades adicionais a um comando.
Resumo da Aula anterior

Para saber em qualquer momento, qual é o utilizador com sessão iniciada, nós usamos
o comando whoami que deverá retornar o nome do utilizado com sessão iniciada.

Se depois de nagevar a estrutura de ficheiros e directórios do terminal, nós precisamos


saber a nossa localização, usamos o comando pwd (present working directory) que
retorna o caminho absoluto da nossa localização.

O comando cat é utlizado para mostrar o conteúdo textual de um ficheiro. (sem deixar
de nos mostrar a interface de comandos).

O comando echo serve para imprimir uma mensagem no console, e pode também, ser
um meio de escrever texto sobre um ficheiro. (echo “Olá” > ficheiro).

O comando less é utlizado para mostrar o conteúdo textual de um ficheiro. (sem nos
mostrar a interface de comandos).
No final da Aula, deverás saber:

• Determinar definições de permissão para um ficheiro ou pasta


• Administrar e mudar permissões com o commando chmod
• Administrar e mudar usuários e grupos de usuários usando chrown e chgrp
• Explicar o que root significa, e a relação entre root e sudo
• Criar links in Sistema de arquivos usando o commando ln
• Explicar a diferença entre “hard” e “symbolic” link.
Introdução

No contexto do terminal, permissão é o privilégio que um utlizador tem de


executar uma ou mais instruções. Aprender sobre permissões é uma
habilidade importante para poder usar o terminal com confiança.
Usuários e grupos de utilizadores

Antes de aprender sobre permissões, é importante perceber o conceito de


usuário e de grupo de utilizadores. Façamos uma pequena demonstração. Vá
para o directório do usuário principal ~ (usuário logado). Aliste toda
informação nesta pasta, use o comando: ls -lah

A terceira coluna especifica o nome do utilizador que detem o ficheiro, neste caso,
gollum. A quarta coluna especifica o nome do grupo associado ao ficheiro. Neste caso
gollum.

Para ver em qual grupo de utilizadores o utilizador actual pertence, use o comando
group.
Usuários e grupos de utilizadores

Como veremos, a permissão pode ser configurada para o detentor do ficheiro,


para um utilizador associado a um grupo, ou, para um utilizador que não é
nem o detentor ou membro de um grupo associado ao ficheiro.
Permissões

Voltemos a nossa atenção para a imagem anterior:

Nós já tratamos da terceira e quarta coluna nesta imagem. Agora viremos a


atenção para a primeira coluna. Os caracteres na primeira coluna, referem-se
a permissão do ficheiro .bashrc.

Cada caracter no texto –rw-r—r--, representa um aspecto da permissão do


ficheiro. Quanto se fala em permissão, podemos considerar três tipos:
• r – reading (leitura)
• w – writing (escrita)
• x – executing (Executar)
Permissões

Uma questão importante é: porque o texto de permissões é tão longo se só


existem três permissões (ou operações) que se podem aplicar sobre um
ficheiro.

O texto de permissões, descreve os diferentes utilizadores com ou sem as


três (read, write, e, execute) permissões sobre o ficheiro. O utilizador pode
estar entre as três categorias de utilizadores abaixo:
1. O dono do ficheiro
2. Membro de um grupo de utilizadores com ligação ao ficheiro (não dono)
3. Outro. Nem é dono ou participante de um grupo com ligação ao ficheiro
Permissões

Uma string the permissões especifica os três tipos de utilizadores e mais um


caracter adicional que representa o tipo de informação com o qual estamos a
lidar (ficheiro, pasta, etc.). Vejamos abaixo, o exemplo de uma string de
permissões e como podemos enteder este texto.

- rwx r-x r-x


Tipo: Dono Grupo Outro
‘-’ ficheiro
‘d’ Pasta
‘l’ symbolic link
Mudar permissões

Para mudar as permissões de um ficheiro, usamos o commando chmod. Para


cada grupo (dono, grupo, outros), nós Podemos atribuír um número de 0 à 7.
Abaixo, encontramos uma tabela que demonstra o significado de cada
número:
Mudar permissões

Então, se alguém quisesse mudar a permissão de um ficheiro, de modos, que


somente o dono e utilizadores associados a um grupo com ligação ao
ficheiro pudessem ler, escrever e executar. Nós haviamos de escrever:

Chmod 770 teste.txt

Se quisermos ser mais específicos, Podemos configurar as permissões na


notação simbólica (symbolic notation), um exemplo disto é:

chmod ug+rwx,o-rwx teste.txt

Tradução: Adiciona (+) permissão de leitura (r), escrita (w), e, execução (x)
para o utlizador (user) e o grupo a que pertence (group). E, remove (-), leitura
(r), escrita (w), e, execução (w) a outros (other) utilizadores.
Mudar permissões

Se quisermos mudar as permissões para uma pasta devemos usar a flag –R:

chmod –R 775 nome_de_uma_pasta


Ficheiros e pastas executáveis

Falemos um pouco sobre o que sobre o “x” (executable) significa para as


configurações de permissão de uma pasta ou ficheiro. Se alguém tem
permissão de execução sobre uma pasta, significa que este utilizador pode
entrar dentro da pasta com o commando cd.

Quando um utilizador tem a permissão de execução sobre um ficheiro,


significa que pode ser executada pelo shell como que de um programa se
tratasse:

Você também pode gostar