Dropbox su OpenBSD


10

Qualcuno ha avuto successo con l'installazione di dropbox con dropboxd che funziona correttamente su OpenBSD (FreeBSD funzionerebbe anche per me ..)? Ho creato dal sorgente e tutto si installa bene, ma quando provo ad accenderlo:


$ python /usr/bin/dropbox start                                                
Starting Dropbox...
The Dropbox daemon is not installed!
Run "dropbox start -i" to install the daemon

$ ssh root@localhost 
root@localhost's password: 

<snip>

# python /usr/bin/dropbox start -i                                                                    
Starting Dropbox...
Dropbox is the easiest way to share and store your files online. 
Want to learn more? Head to http://www.dropbox.com/

In order to use Dropbox, you must download the proprietary daemon. [y/n] y

Error: Platform not supported

Quindi ho controllato i client della riga di comando e le cose di solo testo da http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall, ma ovviamente questo è precompilato per Linux .. no dice.

Qualcuno tenta di affrontare questo e ottenere una soluzione alternativa per una combinazione DropBox / BSD?


Ho continuato a collegarmi a questo e alla fine mi sono imbattuto in uno stopper dello spettacolo: non c'è emulazione di Linux su amd64 per openbsd. Gioco finito. Mi dispiace ammazzare il tempo di tutti.


Puoi aprire /usr/bin/dropboxun editor di testo, cercare il Error: Platform not supportedmessaggio e pubblicare qui la corrispondente riga di codice (alcune righe sopra e anche alcune righe sotto)? Dal momento che è uno script Python, potrebbe essere possibile cambiarlo leggermente se si tratta solo di un controllo per piattaforme ufficialmente supportate.
Vitor Py,

ugh. Dropbox ancora non supporta Mac OS X (che utilizza un kernel variante di BSD) per strumenti a linea di comando - significa che ancora non è possibile riavviarlo in modalità remota dopo un riavvio tramite linea di comando!
Michael,

Ho un paio di idee: 1. Utilizzo dell'API di Dropbox per creare un client semplice: dropbox.com/developers/documentation/http/overview 2. Esegui Dropbox in una macchina virtuale Linux. In tal caso, la cartella Dropbox nella VM potrebbe essere resa disponibile per l'host (ad es. Con Samba).
jsb

Risposte:


3

Questo è il codice offensivo sullo script dropbox:

def plat():
    if sys.platform.lower().startswith('linux'):
        arch = platform.machine()
        if (arch[0] == 'i' and
            arch[1].isdigit() and
            arch[2:4] == '86'):
            plat = "x86"
        elif arch == 'x86_64':
            plat = arch
        else:
            FatalVisibleError("Platform not supported")
        return "lnx.%s" % plat
    else:
        FatalVisibleError("Platform not supported")

Puoi provare a sostituire questo con qualcosa di simile a:

def plat():
    arch = platform.machine()
    if (arch[0] == 'i' and
        arch[1].isdigit() and
        arch[2:4] == '86'):
        plat = "x86"
    elif arch == 'x86_64':
        plat = arch
    else:
        FatalVisibleError("Platform not supported")

Naturalmente, potresti trovare altri problemi lungo la strada. In bocca al lupo.


Buon consiglio Ti darò quel vortice e ti farò sapere come è andata.
unclejamil,

@unclejamil Se riscontri altri problemi nel tentativo di farlo funzionare, fammi sapere :) Non capisco perché le persone eseguano quel tipo di assurdi controlli della piattaforma. Se funziona, lascialo funzionare!
Vitor Py,

L'installer è stato completato ma purtroppo dropboxd sta ancora morendo. Non sono sicuro di dove sia il problema, ma ho pensato di darti un aggiornamento e grazie ancora per il suggerimento. Continuerò a martellare a questa cosa e vedrò se riesco a trovare l'amore. Se faccio qualche progresso, te lo farò sapere.
unclejamil,

1
@unclejamil Sei sicuro che dropboxd sia gestito correttamente dal livello di emulazione di Linux? Hai eseguito sysctl kern.emul.linux=1prima di eseguire dropboxd? Almeno nel sistema Fedora dove sono adesso dropboxd è un binario statico, questo dovrebbe essere sufficiente. D'altra parte ~/.dropbox-dist/dropboxè un eseguibile dinamico e ci sono alcune cose che devono essere fatte prima che possa essere eseguito: controlla la compat_linuxpagina man.
Vitor Py,

0

Verifica la compatibilità di Linux. Genere:

sysctl -w kern.emul.linux=1

e riesegui dropbox ....


1
La compatibilità di Linux è stata abbandonata in OpenBSD 6.0 (nel 2016), perché nessuno la stava usando ed era troppo fastidioso da mantenere.
Kusalananda

0

Opzione 1:

L' API di Dropbox è ben documentata e ti consente di fare più di te ciò che probabilmente desideri. Sembra che sarebbe facile scrivere una CLI per operazioni semplici, ma qualcuno ha già fatto di più: https://github.com/dropbox/dbxcli

Non ho ancora testato dbxcli su OpenBSD, ma in generale mi sembra che il percorso API sia la soluzione più semplice.

Opzione 2:

Configura una macchina virtuale Linux ed esegui Dropbox al suo interno. Puoi accedere comodamente al file system guest sul tuo host attraverso diversi metodi (file server locale o mount tramite ssh)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.