Como posso fazer o Dropbox esperar pelo Truecrypt? (incluindo entrada de senha)

3

Estou usando o Truecrypt para proteger meus dados e sou obrigado a usar o Dropbox para compartilhamento de arquivos. Eu configurei minha pasta Dropbox na montagem Truecrypt.

Quando eu entro no Dropbox, aparece um erro, porque a pasta do Dropbox ainda não existe. Eu então tenho que montar a pasta e reiniciar o Dropbox.

Existe alguma maneira de escrever o seguinte:

  • inicie o Truecrypt, solicitando a montagem dos volumes favoritos
    • não pode definir um horário para isso, pois é baseado na entrada do usuário (eu tenho que digitar minha senha de administrador e senha Truecrypt, e devo admitir que às vezes eu me distraio e faço café enquanto faço isso)
  • somente quando o volume é montado , inicie o Dropbox
  • opções para fazer isso automaticamente (no login) e manualmente
por d3vid 30.08.2011 / 09:02

6 respostas

2

Eu tive que fazer algo bem parecido. Aqui está o que acabei fazendo:

  • remover o recurso de início automático do Dropbox, é claro
  • faça com que o Ubuntu inicie automaticamente o seguinte script:

    #!/bin/bash
    #First let's check DB isn't running, you never know
    test "'dropbox status | awk '{print $2}''" == "isn't" || exit;
    #mount private
    truecrypt --mount #you may optionally indicate which container you wish to mount
    #wait for truecrypt
    while test ! -d /media/truecrypt1/Dropbox
    do
        sleep 1
    done;
    #start DB
    dropbox start
    
por yannack 30.01.2013 / 12:11
2

Você pode adicionar um script para atrasar a inicialização do Dropbox - o link para uma pergunta no fórum do Dropbox com a resposta é aqui

    
por Mark Rooney 30.08.2011 / 10:05
2

iwatch é uma ferramenta de linha de comando para permitir que você monitore e responda a eventos do sistema de arquivos usando o inotify     

por JRT 30.08.2011 / 12:02
1

Talvez você possa analisar a saída df para descobrir se o volume está montado. Meu Bash-foo é bastante fraco, então aqui está um script python que deve fazê-lo:

#! /usr/bin/python
# *-*coding=utf-8*-*

"""Try to start dropbox after some volume is mounted"""

import os
import time

MOUNT_POINT = "/home/javier/Private"

mounted = False
while not mounted:
    f = os.popen("df")
    for line in f:
        if MOUNT_POINT in line:
            mounted = True
    f.close()
    if not mounted:
        time.sleep(3000)
os.system('dropbox start')

Você deve alterar MOUNT_POINT para qualquer coisa que o df produzirá somente quando o volume for montado.

Eu adiciono uma maneira mais pythonic de fazê-lo, mas mais difícil de portar para bash e menos flexível, ele vai precisar do ponto de montagem real.

#! /usr/bin/python
# *-*coding=utf-8*-*

"""Try to start dropbox after some volume is mounted"""

import os
import time

MOUNT_POINT = "/home/javier/Private"

mounted = False
while not mounted:
    if os.path.ismount(MOUNT_POINT):
        mounted = True
    else:
        time.sleep(3000)
os.system('dropbox start')
    
por Javier Rivera 31.08.2011 / 09:15
1

Você pode tentar o seguinte script em lote. Eu uso isso em alguns dos meus próprios scripts que exigem algumas peças que eu mantenho dentro de um recipiente TrueCrypt. Apenas lance o seguinte em um arquivo .bat. Você terá que atualizar alguns códigos dependendo de onde você armazena seus arquivos e quais não.

@echo off

IF EXIST "Z:\" (goto startDropBox)
"C:\Path\To\Truecrypt\truecrypt.exe" /v C:\Path\To\Truecrypt\Volume /lz /a /q

:startDropBox
C:\Path\To\DropBox\Executable\Dropbox.exe

O código pressupõe que você sempre monta seu volume na unidade Z. De minha experiência, o código deve ser interrompido na tela de logon TrueCrypt antes de prosseguir para a próxima parte (executando o executável dropbox).

Para executar isso na inicialização, você pode tentar substituir o atalho da caixa de depósito na sua pasta de inicialização com esse arquivo em lote e executar manualmente se desejar também.

Para outras opções de linha de comando com o Truecrypt, veja aqui:

link

Espero que ajude!

EDIT: Apenas percebi que este era um fórum do Ubuntu, meu mal! Mas poderia ser bom para os usuários do Windows em voga esconder rapidamente

    
por Danmanit123456789 16.11.2011 / 00:21
0

O script deve ser algo assim:

Primeiro, crie-o em sua casa. Adicionado um ponto no começo, então será um arquivo oculto:

gedit .dropboxdelayed

Em seguida, cole isso dentro:

#!/bin/sh
#dropboxdelayed()
sleep 20 &&
dropbox start -i &

20 é o número de segundos de atraso, não sei quanto realmente é necessário para montar seus dados criptografados, então você deve tentar e adaptar o número.

Conceda permissão para executar:

chmod +x .dropboxdelayed

E crie uma entrada apontando para ela em System > Startup applications (lembre-se de desabilitar a outra entrada do Dropbox ou você estará executando duas instâncias dele ao mesmo tempo).

Que ajuda.

    
por animaletdesequia 30.08.2011 / 10:26