Permissão negada erro sem conexão ssh

3

Eu tenho um servidor Ubuntu 12.04 que executa um aplicativo python. O aplicativo é iniciado manualmente em tmux ou automaticamente quando o servidor é iniciado.

O aplicativo processa solicitações http de clientes android. Ele salva alguns dados no disco rígido:

os.mkdir(directory_path)
with open(file_name, "w") as f:
    f.write(text)

O aplicativo enviou exceções ao bate-papo por telegrama:

OSError: [Errno 13] Permission denied: '/home/username/Desktop'

Com uma conexão ssh ativa, tudo funciona bem. Depois de fechar o terminal ssh do cliente, recebo muitos erros de "Permissão negada" no log do servidor sobre a tentativa de criar um arquivo ou diretório. Depois de se conectar com o ssh (somente conectando, sem executar nenhum comando), tudo funciona bem novamente e novos arquivos ou pastas são criados pelo aplicativo.

- Isso acontece quando o programa é iniciado pelo servidor e não em uma sessão do tmux? Sim. O problema aparece em ambos os casos.

- A conexão com a máquina reconecta automaticamente a sessão do tmux? Não. Anexar ao tmux é manual (tmux a). Aplicação funciona bem após a conexão ssh ao servidor. Anexar o tmux não é necessário.

Como a conexão ssh pode afetar um processo de aplicativo em execução ou direitos de acesso ao sistema?

    
por user1941407 19.02.2016 / 11:21

1 resposta

2

A criptografia home-directory padrão no Ubuntu funciona como se o diretório fosse descriptografado quando você abre a sessão (PAM) e volta criptografado quando a sessão é fechada. Isso não é ideal para uso do servidor se você precisar servir / armazenar alguns dados desse usuário.

Você pode armazenar os dados em outro local (a solução mais fácil :)) ou desabilitar a criptografia. Se não for uma opção, forneça mais detalhes sobre o que você precisa alcançar.

Também pode haver uma maneira de preservar a sessão (eu não descobri isso), então você não obterá o diretório criptografado, mas provavelmente não há razão para ter a criptografia. :)

    
por 19.02.2016 / 14:03

Tags