List, set, and change standard ugo/rwx permissions:

Num sistema de ficheiros os ficheiros\pastas têm uma pré-determinada estrutura que permite atribuir aos vários utilizadores do sistema (reais\máquinas) um conjunto de permissões \ bloqueios sobre certas ações. Vamos analisar:

# ls -l /home/user/file
    rwxr-xr-x. 4 user user 4096 Dec  1 13:56 file

Podemos verificar que nos é devolvida várias informações, contudo temos de saber separar cada campo podendo perceber o significado de tudo. Começamos da esquerda para a direita, com uma sequencia de cerca de 11 caracteres “.rwxr-xr-x.”esta sequencia simboliza as permissões associadas com diferentes utilizadores; de seguida temos um digito “4”que simboliza o numero de Hard-Links existentes para o ficheiro\pasta; temos a seguir o Owner e o Owner Grup do ficheiro “user user”que são os donos do ficheiro\pasta; temos depois no final o tamanho “4096”(em bytes), a data da sua ultima modificação “Dec 1 13:56”, e o seu nome “file”.

Vamos nos focar na primeira secção, a responsável por atribuir permissões de acesso aos utilizadores. Todo o ficheiro\pasta é possível de ser modificado por um User Owner(dono), um Owner Group(grupo dono), e os Outros, e cada um destes pode agir Escrevendo (Write), Lendo (Read) e Executando (eXecute) no ficheiro\pasta. Por esse mesmo motivo é que o string inicial é representado da seguinte maneira: .rwx r-x r-x. . Os pontos no inicio e no fim simbolizam permissões especiais que serão explicadas mais a frente (contudo neste caso nada de especial está especificado).

Sabendo que a ordem de representação de dados é “User Group Others”, vemos que o User conssegue “rwx”(Ler\Escrever\Executar), o Group “r-x”(Ler\Executar) e os Others “r-x”(Ler\Executar).

Estas permissões podem ser alteradas com recurso ao comando chmod. Imaginemos que queríamos alterar o [ficheiro-1] de modo a que apenas o User possa Ler\Escrever\Executar, enquanto o Group e Others apenas Ler:

# chmod rwxr—r-- [ficheiro_1]

Contudo não é muito prático escrever esta sequencia de caracteres, sendo que o comando acima surte o mesmo efeito que o seguinte comando:

# chmod 744 [ficheiro_1]

Para ser percebida a associação entre os dois comandos acima, segue a tabela de relação:

Forma Extensível

Forma Numérica

r

4

w

2

x

1

Sendo que caso queiramos definir que o User consegue fazer tudo somamos os valores de todas as opções ( 4+2+1=7 ), enquanto os restantes (Group\Others) apenas Ler (4 ).

Caso seja pretendido mudar o Owner \ Owner Group do ficheiro\pasta tomamos recurso do comando chown, que respeita a seguintes sintaxe:

# chown [Owner]:[OwnerGroup] [ficheiro]

Por exemplo fazer com que Owner do ficheiro seja o user_1 e o Owner Group o group_1:

# chown user_1:group_1 ficheiro

Note-se que caso apenas queria-se especificar so a alteração do owner ou só do Owner Group também é possível, bastando omitir a secção que não se pretende alterar (deixando “:”). Por exemplo alterar apenas o grupo:

# chown :group_1 ficheiro

Last updated

Was this helpful?