Como executo um aplicativo somente enquanto minha pasta de entrada é descriptografada?

1

Recentemente, comecei a usar o syncthing e enfrentei um desafio:

Eu tenho minha pasta pessoal criptografada no meu laptop e quero sincronizar pastas de dentro da minha pasta pessoal. A pasta é criptografada usando ecryptfs (usando a opção defaul do Ubuntu "Deseja criptografar sua pasta pessoal?") E, até onde eu sei, ela é montada no log-in e desmontada no log-out.

Portanto, não posso executar o syncthing como um serviço de inicialização (por exemplo, usando supervisor).

Ele precisaria ser iniciado no login primeiro , e o último processo de log-out teria que enviar SIGINT para o processo, aguardar o fechamento e finalize o processo de logout.

Eu estive pensando em usar .bashrc e .bash_logout , mas parece improvável garantir que ele seja executado somente no primeiro e último logout. Então eu optaria por sair disso.

Outra opção que eu tinha em mente era usar kdm (que eu usei para logar no WM. KDE neste caso). Mas isso significaria que só seria executado durante log-ins gráficos. Tudo bem, porém, como eu só uso log-ins não-gráficos para solucionar o problema do sistema. No entanto, eu não sei como eu faria isso com kdm : \

Talvez haja também uma opção para talvez escrever udev triggers? Mas duvido que possam ser usados para desligar corretamente a sincronização, uma vez que isso acionaria após o dispositivo ser desmontado.

Talvez ecryptfs ofereça uma opção? Mas não consigo encontrar nada.

Qual seria a maneira correta de resolver isso? E como?

    
por exhuma 22.08.2015 / 12:58

1 resposta

0

De acordo com a documentação do KDE , você pode configurar o KDE para executar um script sempre que um usuário fizer logoff. Você pode verificar a variável de ambiente USER para verificar se o usuário que efetuou logout é o usuário que você deseja processar. Se o usuário desconectado é você, você pode parar o serviço.

Quando um usuário efetua login, você deve executar outro script para garantir que o serviço esteja sendo executado. Faça as mesmas verificações aqui.

O KDE deve executar o arquivo /etc/kde3/kdm/Xstartup ao fazer o logon e /etc/kde3/kdm/Xreset ao efetuar logoff, mas se isso não funcionar, pode ser configurado para um local diferente. Verifique /etc/kde3/kdm/kdmrc para ver se a localização do arquivo foi alterada.

Mais alternativas podem ser encontradas aqui: Criar um script / tarefa de logoff para o Linux

    
por 23.08.2015 / 12:40