Permissões de arquivos / diretórios no Unix

0

Parece que cada arquivo / diretório tem um determinado conjunto de permissões mostrado pelos 10 caracteres à esquerda de cada lista, se um deles for digitar no terminal ls -l

Considerando que você pode alterar as permissões usando chmod OCTAL fileName , parece-me que essas permissões são possivelmente definidas por sinalizadores de uma palavra de 10 bits em algum lugar na memória?

O que me deixa confuso é que a listagem pode ser algo como isto: -rw-rw-r--

O que exatamente isso representa? Por que existem várias instâncias de write e read permissões mostradas por w e r , respectivamente?

Eu também li que você deve usar 6xx (resultando em -rw -------) ao gravar permissões em arquivos, e 7xx (resultando em drwx ------) ao gravar permissões para diretórios. Considerando que AMBAS dessas representações octal só se expandem para 9 bits de informação, como estamos definindo as permissões de 10 bits?

Eu também li que se você quiser "remover o grupo e outras permissões de leitura" você pode usar a linha:

chmod go-r fileName

Primeiro, experimentei fazer isso: chmod 677 testFile e, em seguida, usei a linha mencionada anteriormente: chmod go-r testFile -v e recebi a seguinte saída:

mode of testFile changed to 0633 (rw--wx-wx)

Sou muito novo nisso e ainda não encontrei uma descrição muito sucinta e clara dos detalhes.

    
por sherrellbc 08.01.2014 / 04:21

1 resposta

2

Proprietário, grupo e todos os outros.

Existem dez caracteres lá. O primeiro é um "que tipo de arquivo é esse?" mostrar que não precisamos nos preocupar ainda; os 9 restantes descrevem as permissões para o proprietário do arquivo, o grupo do arquivo e todos os outros.

Portanto, se a propriedade de um arquivo for raiz: wheel (ou seja, owner é root e group is wheel), a string de permissões -rwxrw-r-- significa:

O usuário root pode ler, gravar e executar A roda de grupo pode ler e escrever Todo mundo pode simplesmente ler

(Note que no contexto de um diretório, "x" significa "listar conteúdo"; é por isso que a maioria dos diretórios é executável em todo o mundo.)

E, para completar, além de "x", você verá "s", "t" ou "T" em seu lugar, que têm a ver com permissões de grupo vs. proprietário e que possui uma nova arquivo criado em um diretório. Finalmente, a primeira letra será "d" para diretórios e "b" ou "c" para arquivos de dispositivos em / dev.

    
por 08.01.2014 / 04:24