Proteja o conteúdo da pasta sobrescrita

Proteja o conteúdo da pasta sobrescrita

Existe uma maneira (com ACL) de proteger o conteúdo de uma pasta? Os usuários devem criar arquivos dentro de uma pasta, mas não substituí-los/editar/excluí-los. Isso é possível?

Responder1

Pode-se usar inotifywaitpara monitorar o diretório e fazer alterações, como alterar a propriedade de cada novo arquivo copiado no diretório. Em uma distribuição baseada em Debian, instale o software da seguinte forma: apt-get install inotify-tools.

Crie um script, talvez /usr/local/sbin/inbox.sh, da seguinte maneira.

#!/usr/bin/env bash
inotifywait -m -e create "/path/to/directory" |
while read path event file; do
    if [ "$event" = "CREATE" ]; then
        chown root:root "$path$file"
    fi
done

Dê permissão ao script para executar ( chmod 0700 /usr/local/sbin/inbox.sh). Em seguida, execute-o no momento da inicialização, digamos, /etc/rc.localou qualquer arquivo RC apropriado: /usr/local/sbin/inbox.sh &.

De acordo commanual, -mmonitora indefinidamente e -eobserva um evento específico. Dentro do whileloop, poderia ser possível receber um evento como CREATE,ISDIR, que indica a criação de um diretório, é claro. Os diretórios não são o alvo da pergunta; portanto, a ifinstrução contém um comando para responder apenas a novos arquivos, que são representados pelo evento CREATE. A pathvariável from inotifywaitpossui uma barra final, portanto, $pathe $filepode ser concatenada sem especificar uma barra entre os dois.

informação relacionada