O Deja-dup não pode acessar o volume do Truecrypt quando executado a partir do Cron

0

Eu tenho um deja-dup configurado para backup em um volume Truecrypt montado. Funciona bem, mas agora eu gostaria de executar o deja-dup em meus próprios intervalos via Cron (configurado para minha conta):

* * * * * env DISPLAY=:0 deja-dup --backup (a agenda de todos os minutos é apenas para testes)

O trabalho é iniciado bem, mas o deja-dup mostra que o destino não está disponível:

SeeutentarconfigurarotrabalhodoCronatravésdaGUI"Tarefas agendadas" e selecioná-lo como "aplicativo X", ele será adicionado aos trabalhos do Cron como:

* * * * * /usr/bin/python /usr/share/gnome-schedule/xwrapper.py c 2 # JOB_ID_2

No entanto, quando o trabalho é executado, ele falha da mesma maneira que com o meu próprio ajuste Cron.

Como a tarefa começa bem se eu a executar do terminal, minha suposição é que, por algum motivo, a tarefa iniciada pelo cron não tem permissão para acessar o volume montado.

Q1: Como a tarefa é iniciada a partir das configurações Cron do meu usuário e, portanto, deve ser executada como meu usuário, por que não teria acesso a um volume montado?

Q2: O motivo da falha pode ser algo diferente de permissões?

Q3: Você pode sugerir alguma solução para esse problema?

    
por tmt 09.03.2014 / 18:20

1 resposta

1

Com base nas respostas de outra pergunta , eu mesmo consegui encontrar a solução. Consiste em iniciar deja-dup com um script que adiciona algumas variáveis do sistema. O cron job, obviamente, executa o script.

#!/bin/bash

export DISPLAY=:0

sessionfile='find "${HOME}/.dbus/session-bus/" -type f'
export 'grep "DBUS_SESSION_BUS_ADDRESS" "${sessionfile}" | sed '/^#/d''
export 'grep "DBUS_SESSION_BUS_PID" "${sessionfile}" | sed '/^#/d''
export 'grep "DBUS_SESSION_BUS_WINDOWID" "${sessionfile}" | sed '/^#/d''

deja-dup --backup
exit 0

NOTA: Se alguém apresentar uma resposta bem escrita que não apenas forneça esta ou outra solução de trabalho, mas que também explique o motivo do problema, qual é a sessão do DBUS e qual o papel que desempenha nesse problema, Aceitarei com prazer sua resposta em vez desta .

    
por tmt 11.03.2014 / 09:50