[edito para adicionar as melhores práticas, seguindo a sugestão Dotancohen em sua resposta. Espero que não fique menos claro, e que o bom hábito seja tomado]
Informações adicionais importantes: não são equivalentes.
chmod a+rwx
: defina os últimos 3 octais como 777, para garantir que Proprietário, Grupo e Usuários tenham o conjunto "rwx". Se houver bits adicionais no primeiro octal (setuid, setgid e / ou Sticky bit), eles não serão tocados. Pense nisso como um binário "ou 00777".
chmod 777
: defina os direitos para 00777, para garantir que Proprietário, Grupo e Usuários tenham o "rwx" configurado E NADA MAIS. Ele também garante que os bits adicionais (setuid, setgid e / ou Sticky bit) sejam definidos como 0.
Portanto, use o primeiro formulário, se você quiser garantir acesso a todos (e, por favor, faça duplo, triplo certeza de que é necessário ... ele abre a porta para todos os tipos de problemas de segurança, alguns inesperadamente) amplo no que eles permitem que um usuário mal-intencionado faça)
Use o formulário 777 se você também quiser certificar-se de redefinir qualquer bit setuid / setgid / sticky, ou seja, se os arquivos precisarem ser "00777", o que provavelmente é mais provável no seu caso (o direito do arquivo é conhecido, e deve ser: 00777). Aqui também, certifique-se de que é realmente necessário ...
Normalmente, é melhor manter o acesso ao proprietário (e às vezes agrupar): use os grupos para conceder acesso a alguns usuários específicos ao arquivo / diretório. a + rwx é fácil e geralmente é o caminho errado para conceder acesso (claro que existem casos muito raros quando é a única maneira ...)
O
link é uma boa leitura, pois explica o que cada número ou letra representa (incluindo setuid / setgid / sticky)