O valor 1777
é a permissão de rwxrwxrwt
:
touch target.txt
chmod 1777 target.txt
ls -al target.txt
-rwxrwxrwt 1 debian debian 0 Jul 14 20:24 target.txt
Eu tenho que obter uma string de permissão de rwSrwSrwT
:
ls -al sample
-rwSrwSrwT 1 debian debian 0 Jul 14 20:24 sample
Como posso calcular o valor para rwSrwSrwT
então?
A resposta direta à sua pergunta é
7666
.O dígito mais significativo no modo de 4 dígitos afeta os bits setuid (
---S------
), setgid (------S---
) e sticky ( ).---------T
Eles são marcados nas mesmas posições que osx
bits, e o superiorS
ouT
indica que ox
bit correspondente não está definido.Isso poderia servir como um exemplo de referência:
Como descobrir:
A resposta está na linha 4 de
stat
.rwSrwSrwT
significa:então o valor octal que você está procurando é 7666:
chmod 7666 target.txt
Tabela de referência:
Observe que você pode simplesmente copiar o valor da permissão de um arquivo para outro, sem se preocupar em calcular o valor octal:
chmod --reference=sample target.txt