Как я могу заставить Dropbox ожидать Truecrypt? (включая ввод пароля)

Я использую Truecrypt для обеспечения моих данных и обязан использовать Dropbox для некоторого совместного доступа к файлам. Я настроил свою папку Dropbox на Truecrypt, монтируются.

Когда я вхожу в систему броски Dropbox ошибка, потому что папка Dropbox еще не существует. Я затем должен смонтировать папку и перезапустить Dropbox.

Есть ли любой способ, которым я могу написать сценарий следующего:

  • запустите Truecrypt, запросив для монтирования любимых объемов
    • не может назначить время для этого, поскольку оно основано на вводе данных пользователем (я должен ввести свой пароль администратора и пароль Truecrypt, и я должен признать, что иногда отвлечен, и сделайте кофе при выполнении этого),
  • только, когда объем смонтирован, запустите Dropbox
  • опции сделать это автоматически (на входе в систему) и вручную
3
задан 30 August 2011 в 13:20

6 ответов

Я должен был сделать что-то весьма схожее. Вот то, что я закончил тем, что делал:

  • удалите функцию автоматического запуска Dropbox, конечно,
  • имейте автоматический запуск Ubuntu следующий сценарий:

    #!/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
    
2
ответ дан 1 December 2019 в 13:20

Можно добавить сценарий для задержки Dropbox от запуска - ссылка на вопрос о форуме Dropbox с ответом здесь

2
ответ дан 1 December 2019 в 13:20

iwatch является инструментом командной строки, чтобы позволить Вам контролировать и отвечать на события файловой системы с помощью inotify подсистемы. Я не уверен, какое событие было бы лучшим, но я предположу, что некоторое событие файловой системы имеет место, когда файловая система смонтирована.

2
ответ дан 1 December 2019 в 13:20

Возможно, можно проанализировать к выводу df, чтобы обнаружить, смонтирован ли объем. Мое нечто Bash довольно слабо, таким образом, вот сценарий Python, который должен сделать это:

#! /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')

Необходимо изменить MOUNT_POINT на что-либо, что df произведет только, когда объем будет смонтирован.

Я добавляю больше pythonic способа сделать его, но тяжелее к порту для избиения и менее гибкий этому будет нужна реальная точка монтирования.

#! /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')
1
ответ дан 1 December 2019 в 13:20

Сценарий должен быть чем-то вроде этого:

Во-первых, создайте его в своем доме. Добавленный точка в beggining, таким образом, это будет скрытый файл:

gedit .dropboxdelayed

Затем вставьте эту внутреннюю часть:

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

20 число секунд задержки, не знайте, сколько делает truecrypt для монтирования зашифрованных данных, таким образом, необходимо попробовать его и адаптировать число.

Дайте ему разрешение работать:

chmod +x .dropboxdelayed

И создайте запись, указывающую на него в Системе> приложения Запуска (не забудьте отключать другую запись Dropbox там, или Вы будете выполнять два экземпляра его одновременно).

Свист это помогает.

0
ответ дан 1 December 2019 в 13:20

Вы могли попробовать следующий сценарий пакетной обработки. Я использую это в некоторых моих собственных сценариях, которые требуют некоторых частей, я остаюсь в рамках truecrypt контейнера. Просто бросьте следующее в .bat файл. Необходимо будет обновить часть кода в зависимости от того, где Вы храните свои файлы и что нет.

@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

Код предполагает, что Вы всегда монтируете свой объем на диске Z. На основе моего опыта код должен зависнуть в экране входа в систему truecrypt прежде, чем продолжиться к следующей части (выполняющий исполняемый файл Dropbox).

Для выполнения этого при запуске Вы могли попытаться заменить ярлык Dropbox в своей папке запуска с этим пакетным файлом, и Вы могли выполнить это вручную, если бы Вы хотели также.

Поскольку другие переключатели командной строки с Truecrypt выглядят здесь:

http://www.truecrypt.org/docs/?s=command-line-usage

Надежда, которая помогает!

Править: Просто реализованный это было форумом человечности, моим плохим! Но могло быть хорошим для блуждающих пользователей Windows, быстро скрывается

1
ответ дан 1 December 2019 в 13:20

Другие вопросы по тегам:

Похожие вопросы: