Como definir umask padrão no Ubuntu 17.04?

2

No passado, sempre defini umask at ~/.profile . Defino um umask de 077 para que meus documentos recebam uma permissão de 600 (rw-------) . Mas definir isso em ~/.profile não funciona mais no Ubuntu 17.04.

Assim como novos documentos são criados em uma sessão do gnome no Ubuntu 17.04, onde posso configurar para que eles sejam criados com permissão 600?

    
por G.W. 27.06.2017 / 00:18

3 respostas

2

Para definir permissões para todos os diretórios e arquivos que são criados no dia a dia por qualquer usuário:

  1. sudo nano /etc/pam.d/common-session
  2. Encontre a linha com "session optional pam_umask.so"
  3. Altere isso para "sessão opcional pam_umask.so umask = 0077"
  4. Salve o arquivo.
  5. Reinicialize.

Novos arquivos serão 600. Novos diretórios serão 700.

    
por TooManyPets 28.06.2017 / 19:07
0

Se você estiver usando o GDM, ele não lê ~/.profile como o LightDM. E o terminal normalmente abre um shell de não-login. O efeito líquido é que ~/.profile não é carregado quando você abre um terminal após o login usando o GDM.

Ou:

  • insira suas configurações em ~/.bashrc ou
  • defina seu terminal para iniciar um shell de login ou
  • mude para LightDM
por muru 28.06.2017 / 08:41
0
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

Isso é literalmente o que seu ~/.profile diz. Você relogou uma vez mudou? Deve funcionar bem.

Além disso:

This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login exists.

Na verdade, confirmou o problema em um Ubuntu 17.04 recém-instalado. Mesmo a atualização completa ainda faz com que esse problema apareça e mesmo ~/.bash_profile seja ignorado, parece haver um problema com o interpretador de comandos não lendo esses arquivos após o login.

Você pode usar ~/.bashrc por enquanto, o que ainda funciona bem e é lido durante o login.

Então, depois de cavar um pouco nele, parece que o bash não é executado por padrão com o --login mais, o que significa que ele não lê o arquivo ~ / .profile. Iniciar um novo bash com o umask em ~ / .profile com bash --login define o umask corretamente iniciando um bash sem ele, embora ignore o ~ / .profile. Não tenho certeza do que foi alterado, mas isso parece um erro para mim, a menos que tenha sido intencionalmente alterado.

    
por Ziazis 27.06.2017 / 11:04