chmod: alterar bits do modo de arquivo
Uso (modo octal):
chmod <octal-mode> files...
Uso (modo simbólico):
chmod <references><operator><modes> files..
referencesé uma combinação das letras ugoa, que especificam qual acesso do usuário filesserá modificado:
u o usuário que o possui
goutros usuários no filegrupo de
o outros usuários que não estão no grupo do arquivo
a todos os usuários
Se omitido, o padrão é todos os usuários, mas apenas as permissões permitidas pelo umasksão modificadas.
operatoré um dos caracteres +-=:
+ adicione os bits de modo de arquivo especificados aos bits de modo de arquivo existentes de cada file
- remove os bits de modo de arquivo especificados nos bits de modo de arquivo existentes de cada file
=adiciona os bits especificados e remove os bits não especificados, exceto os bits setuide setgiddefinidos para os diretórios, a menos que especificado explicitamente.
modeconsiste em uma combinação das letras rwxXst, que especificam qual bit de permissão deve ser modificado:
r ler
w escrever
x executar (ou procurar diretórios)
X execute / pesquise apenas se o arquivo for um diretório ou se já tiver definido o bit definido para algum usuário
ssetuid ou setgid (dependendo do especificado references)
t sinalizador de exclusão restrita ou bit adesivo
Como alternativa, modepode consistir em uma das letras ugo; nesse caso, o modo corresponde às permissões atualmente concedidas ao proprietário ( u), membro do filegrupo do grupo ( g) ou permissões de usuários em nenhuma das categorias anteriores ( o).
Os vários bits de chmodexplicado:
- Controle de acesso (ver também
setfacl)
rwx - leia (r), escreva (w) e execute / cruze (x) permissões.
- A leitura (r) afeta se um arquivo pode ser lido ou se um diretório pode ser listado.
- A gravação (w) afeta se um arquivo pode ser gravado ou se um diretório pode ser editado (arquivos adicionados, excluídos, renomeados).
- A execução (x) afeta se um arquivo pode ser executado, usado para scripts (consulte a
#!) e outros arquivos executáveis.
- Cruz (x) afeta se um diretório pode ser percorrido.
se t- bit pegajoso (t) e setgid (s) em diretórios
- O bit adesivo afeta apenas diretórios. Impedirá que qualquer pessoa, exceto o proprietário do arquivo e o root, exclua os arquivos no diretório.
- o bit setgid nos diretórios fará com que novos arquivos e diretórios tenham o grupo definido no mesmo grupo e novos diretórios tenham o bit setgid definido (consulte também os padrões em setfacl).
s - setuid, setgid, em arquivos executáveis.
- Isso pode afetar a segurança de uma maneira ruim, se você não souber o que está fazendo.
- Quando um executável é executado, se um desses bits estiver definido, o usuário / grupo efetivo do executável se tornará o do arquivo. Assim, o programa é executado como esse usuário. veja
setcapuma maneira mais moderna de fazer isso.
chattr: alterar atributos do arquivo
Uso:
chattr <operator><attribute> files...
operatoré um dos personagens +-=: * +adiciona os atributos selecionados para ser ao existente attributesdo files
* -remove o selecionado attributes
* =substitui o actual conjunto de atributos que os arquivos com o especificado attributes.
attributeé uma combinação das letras acdeijstuADST, que correspondem aos atributos:
a acrescentar apenas
c comprimido
d sem lixeira
e formato da extensão
i imutável
j diário de dados
s exclusão segura
t sem fusão de cauda
u undeletable
Asem atimeatualizações
D atualizações de diretório síncronas
S atualizações síncronas
T topo da hierarquia de diretórios
Uso (atributo definido):
setfattr -n <name> -v <value> files...
Uso (remover):
setfattr -x <name> files...
name é o nome do atributo estendido para definir ou remover
value é o novo valor do atributo estendido
setfacl: alterar listas de controle de acesso a arquivos
Uso:
setfacl <option> [default:][<target>:][<param>][:<perms>] files...
option deve incluir um dos seguintes:
--set defina a ACL de um arquivo ou diretório, substituindo a ACL anterior
-m| --modifymodificar a ACL de um arquivo ou diretório
-x| --remove remover entradas da ACL de um arquivo ou diretório
targeté uma das letras ugmo(ou o formato mais longo mostrado abaixo):
u, userspermissão de um usuário nomeado identificado por param, padroniza o proprietário do arquivo uidse omitido
g, grouppermissão de um grupo nomeado identificado por param, padrão para o grupo proprietário, uidse omitido
m, maskDireitos efetivos mascarar
o, otherpermissões de outros
permsé uma combinação das letras rwxX, que correspondem às permissões:
r ler
w escrever
x executar
X executar apenas se o arquivo for um diretório ou já tiver permissão de execução para algum usuário
Como alternativa, permspode ser um dígito octal ( 0- 7) indicando o conjunto de permissões.
Uso:
setcap <capability-clause> file
A capability-clauseconsiste em uma lista separada por vírgula de nomes de recursos, seguida por uma lista de pares operador-sinalizador.
Os operadores disponíveis são =, +e -. As bandeiras disponíveis são e, ie pque correspondem às eficaz , Inheritable e permitidas conjuntos de recursos.
O =operador aumentará os conjuntos de recursos especificados e redefinirá os outros. Se nenhum sinalizador for fornecido em conjunto com o =operador, todos os conjuntos de recursos serão redefinidos. Os operadores +e -aumentarão ou diminuirão um ou mais conjuntos de recursos especificados, respectivamente.
Uso:
chcon [-u <user>] [-r <role>] [-t <type>] files...
user é o usuário do SELinux, como user_u, system_uou root.
role é o papel do SELinux (sempre object_rpara arquivos)
type é o tipo de assunto do SELinux
chsmack: alterar atributos estendidos do SMACK
Uso:
chsmack -a <value> file
valueé o rótulo SMACK a ser definido para o SMACK64atributo de arquivo estendido
setrichacl : altera a lista de controle de acesso avançado .
richacl s são um recurso que adicionará ACLs mais avançadas.
Atualmente um trabalho em andamento, por isso não posso falar muito sobre eles. Eu não os usei.
Consulte também esta pergunta Existem ACLs do sistema de arquivos mais avançadas além das tradicionais 'rwx' e POSIX ACL?
e página de manual
chmod