A notação simbólica chmod
é mais refinada em comparação com a notação octal, permitindo a modificação de bits de modo específicos enquanto deixa outros bits de modo intocados.
A notação simbólica consiste em três componentes:
chmod [references][operator][modes] file
O references
consiste em uma combinação das letras ugoa
, que especificam qual acesso do usuário ao file
será modificado: o usuário que o possui ( u
), outros usuários no grupo do arquivo ( g
), outros usuários que não estão no grupo do arquivo ( o
) ou todos os usuários ( a
). Se o componente references
for omitido, o padrão será todos os usuários, mas somente as permissões permitidas pelo umask
serão modificadas.
O +
operator
faz com que os bits de modo de arquivo especificados sejam adicionados aos bits de modo de arquivo existentes de cada arquivo; -
faz com que eles sejam removidos; e =
faz com que eles sejam adicionados e bits não especificados sejam removidos, exceto setuid
e setgid
bits definidos para diretórios, a menos que explicitamente especificado.
O mode
consiste em uma combinação das letras rwxXst
, que correspondem à leitura ( r
), gravação ( w
), execução (ou pesquisa de diretórios) ( x
), execução / pesquisa somente se o arquivo for um diretório ou se já tiver permissão de execução para algum usuário ( X
), setuid
ou setgid
(dependendo das referências especificadas) ( s
) e sinalizador de exclusão restrito ou bit adesivo ( %código%). Como alternativa, o t
pode consistir em uma das letras mode
, caso em que ugo
corresponde às permissões atualmente concedidas ao proprietário ( mode
), membro do grupo do arquivo ( u
) ou permssions de usuários em nenhuma das categorias anteriores ( g
).
Exemplos
Supondo que o conjunto de permissões para o
seja file
Remova a permissão de outros usuários que não estão no grupo de arquivos:
-
Octal:
0764/-rwxrw-r--
Observe como as permissões existentes deixadas inalteradas devem ser repetidas ao usar a notação octal.
-
Simbólico:
chmod 760 file
Com a notação simbólica, as permissões de arquivo existentes não importam.
Defina chmod o-rwx file
:
-
Octal:
setuid
-
Simbólico:
chmod 4764 file
Defina chmod u+s file
:
- Octal:
setgid
- Simbólico
chmod 2764 file