Quero negar permissão de exclusão para tudo o que está em /home/don/testdir ou em seus subdiretórios para todos os aplicativos, sem impedir a criação ou gravação. Pelo que entendi, isso não é possível com a ACL convencional porque a permissão de gravação é tudo (criar + gravar + excluir) ou nada, não posso negar apenas excluir enquanto permite criar e gravar.
Eu tentei chattr +a
para esse diretório, mas se depois de executar este comando o subdiretório for adicionado e nesse subdiretório o arquivo for adicionado, isso não impedirá a remoção desse arquivo, por exemplo testdir/subdir/file.txt.
Sou novo no AppArmor. Tentei criar a seguinte regra e salvá-la como /etc/apparmor.d/home.don.testdir
mas não funcionou
# Profile to prevent any process from deleting files in /home/don/testdir
profile prevent-delete {
# Allow read, write, and execute within the directory
/home/don/testdir/ rix,
/home/don/testdir/** rwlix,
# Explicitly deny delete operations
deny /home/don/testdir/** D,
}
Recebi um erro do analisador AppArmor para /etc/apparmor.d/home.don.testdir no perfil /etc/apparmor.d/home.don.testdir na linha 9: erro de sintaxe, TOK_ID inesperado, esperando TOK_MODE.