Acredito que isso decorre de 2 ideias, embora eu possa estar errado.
-
Inicialmente, as permissões de desenvolvimento do UNIX estavam abertas. Antes da era da segurança, a ideia de tornar um arquivo apenas legível / gravável / executável por certos indivíduos não era necessária. Como tal, a progressão natural desse ponto de vista seria pegar a ideia de permissões e restringi-las. Em vez de obter um valor 0 de permissões e adicioná-las a elas.
-
A outra razão seria a ideia de que uma negação específica produz resultados mais precisos na maioria dos casos, em seguida, uma permissão especificada. Situações diferentes exigem necessidades diferentes. Por exemplo, as permissões do diretório padrão são:
755
, em que as permissões do arquivo padrão são644
Se você especificamente permitido executar, por exemplo, isso teria que ser traduzido para diretórios e arquivos. Você seria então confrontado com a escolha de ambos os diretórios não vêm com a execução ativada, ou arquivos fazem. No entanto, os diretórios precisam serem ativados para funcionar. Como tal, em vez disso, você faz a opção de remover permissões extras, em vez de adicionar permissões específicas.
Com uma umask de 0000
, você ainda acaba sem permissões de execução em um arquivo normal, se você fez as coisas ao contrário, seria mais difícil projetá-lo dessa maneira.