configura a permissão do arquivo para que não seja deletável ou gravável

0

Isso é o que eu acho que está acontecendo.

No Unix, a capacidade de excluir um arquivo é regida pela capacidade de gravação do diretório em que ele se encontra. Isso afeta, em última análise, a capacidade de gravação do arquivo. Como um arquivo pode ser excluído e substituído.

Eu posso definir o bit stick. Isso ajuda um pouco, mas é ignorado pelo proprietário do arquivo.

Eu percebo que, em última análise, qualquer permissão pode ser alterada pelo proprietário. Mas existe uma maneira de impedir que um arquivo seja excluído, na ausência de alteração de permissão (por acidente)?

Estou interessado em soluções para o Gnu / Linux. No entanto, se não houver solução para este, eu estaria interessado em soluções para qualquer Unix, incluindo variantes de franjas (plano 9, mac-os, bsb, solaris, athena, etc. etc.….).

Bit imutável chattr +i file , só pode ser definido pelo usuário com CAP_LINUX_IMMUTABLE , por exemplo root (Então não é muito útil).

    
por ctrl-alt-delor 01.07.2016 / 14:17

1 resposta

0

Atualmente, o Linux herda os controles de acesso padrão "rwx" do Unix. Isso significa que, sem uma reformulação séria do modelo de permissão atual, não é possível negar ao proprietário do arquivo para remover o arquivo, embora o kernel seja capaz de restringir isso. (o kernel gerencia seus arquivos e pode negar qualquer atividade do usuário, mas o kernel atual tem muito poucos bits de permissão para controlar)

Se não for usuário root, você poderá tentar definir o modo apenas para proprietário, por exemplo, chmod 444 file . Observe que você tem sempre que definir o bit de gravação de volta para modificá-lo. E alguns softwares (como vim ) podem redefinir automaticamente esse bit sem aviso prévio, mas por padrão ele não faz isso.

O sinalizador imutável ajuda apenas se você tiver um mecanismo - sudo ou semelhante, o que lhe dá permissão para alterá-lo como usuário sem privilégios.

Veja também existem ACLs de sistemas de arquivos mais avançados além do tradicional 'rwx' e POSIX ACL? . ACLs ( não POSIX ) podem resolver este problema definindo a permissão remove .

    
por 03.07.2016 / 13:03