qual a diferença entre chmod 777 e chmod 7777

6

Eu tenho um professor que insiste em sempre digitar chmod 7777 , mas eu fui ensinado que chmod 777 era a convenção apropriada.

Eu os testei na linha de comando e chmod 777 something.txt yeilds

-rwxrwxrwx   1 home  staff    0 May  6 16:47 something.txt

e chmod 7777 something.txt retornam

-rwsrwsrwt   1 home  staff    0 May  6 16:47 something.txt

Que altera os campos executáveis para s, s e t. Eu entendo 777 porque é 111 111 111 em binário, então é só ligar todos os campos, mas por que eu usaria 7777 e o que ele faz diferente?

    
por Loourr 06.05.2013 / 22:54

4 respostas

10

Em 7777 , os primeiros três bits são os sinalizadores setuid , setgid e sticky . Estes só devem ser definidos em circunstâncias muito especiais. Você está correto que 777 é a configuração mais apropriada (se você quiser tornar o arquivo tanto mundialmente editável como mundial-executável).

E, a menos que o arquivo seja um programa ou script executável ou um diretório, geralmente você não deve definir x bits. Não há muito mal em fazer isso, no entanto.

    
por 06.05.2013 / 22:59
1

Não há nenhuma razão para um professor sensato insistir em definir o setuid / gid e os bits pegajosos, então talvez você esteja confundindo 7777 e 0777 .

As permissões sendo declaradas como um número octal, a convenção apropriada para representá-las é prefixar um 0 . É como quando 0x é usado para distinguir um número hexadecimal.

Note que chmod não espera que as permissões sejam expressas em decimal ou hexadecimal, então este prefixo octal é opcional.

    
por 07.05.2013 / 02:30
0

O dígito mais à esquerda é o dígito setuid, setgid e stickybit. Os dois primeiros definem os ids efetivos de usuário e grupo do usuário que abre o arquivo. Eu não sei o que é stickybit.

    
por 06.05.2013 / 22:59
0

O bit pegajoso é usado para dizer ao sistema operacional para manter o arquivo na RAM o máximo possível para reduzir as leituras do disco e reduzir a latência. Isso é aplicado a arquivos que são processados com frequência e são necessários com alta rapidez. Alguns sistemas operacionais e de software ignoram ou usam outros métodos para realizar a mesma coisa. Mas é daí que vem o nome falso (mantenha-o preso na memória sempre que possível)

    
por 29.10.2017 / 07:24

Tags