Estou usando o Ubuntu 22.04. Tenho uma pasta GUI que contém subpastas e arquivos (texto, csv, rar etc). O aplicativo GUI só consegue modificar os arquivos. Apenas usuários administradores podem excluir os arquivos. Usuários normais não podem modificar nenhum arquivo e não podem excluir as pastas ou arquivos da pasta GUI. Como dar essa permissão específica para a pasta GUI e o executável GUI?
Vamos supor que o aplicativo seja executado como
appuser
, o administrador éroot
euser
é o usuário, e você tem uma/opt/app
pasta de aplicativo. Neste caso:/opt/app
paraappuser:appuser
r-xr-xr-x
(555
), assim os usuários não poderão criar ou excluir arquivos na pasta (exceto,root
é claro).rw-r--r--
(644
), para queappuser
seja possível modificá-las, mas outros não.Esta é uma solução simples, uma um pouco mais detalhada seria colocar os usuários reais do aplicativo no
appuser
grupo, então as permissões anteriores podem ser550
e640
respectivamente.Além disso, há uma parte faltando no quebra-cabeça que você deve definir
umask
para o aplicativo, para que os novos arquivos tenham as mesmas permissões que os pré-existentes.