Questão Arch Linux Terminal (via ssh) + Dropbox, mas sincronizar apenas uma única pasta selecionada


Desculpe pelo estranho título ...

Eu sou (ainda) bastante novo no Linux e estou fazendo shh comandos para um dispositivo Arch Linux que não tem opções de saída de tela. Então tudo tem que ser feito no terminal (não no meu super elemento).

Eu uso o dispositivo linux para brincar com python (o que é muito divertido). Agora gostaria de sincronizar minha pasta de script com a caixa de depósito. Desde que eu não tenho espaço suficiente para sincronizar todos os meus arquivos dropbox para o dispositivo, gostaria de saber como posso configurá-lo de uma forma que só sincroniza com a pasta que eu escolho.

No momento eu não instalei o dropbox porque eu tenho medo que ele comece a sincronizar imediatamente todas as minhas pastas dropbox no meu dispositivo linux.

BONUS INFO: Eu já criei uma pasta na minha caixa de depósito que contém alguns scripts py que eu gostaria de ter sincronizado com o meu dispositivo linux.


0


origem




Respostas:


O Dropbox agora fornece um script python para permitir que você exclua pastas. Você pode baixá-lo de Aqui.

Para excluir uma determinada pasta, basta usar o seguinte comando

python ~/dropbox.py exclude 1Password


1





Instalar o Dropbox

# mkdir -p /tmp/dropbox
# cd /tmp/dropbox
# curl -OL http://dl.getdropbox.com/u/6995/dbmakefakelib.py
# curl -OL http://dl.dropbox.com/u/637552/Dropbox/dbreadconfig.py
# curl -L -o dropbox.tar.gz http://www.dropbox.com/download?plat=lnx.x86_64

Use plat = lnx.x86 se você quiser o cliente de 32 bits. Isso cria um diretório temporário para nossos arquivos de instalação do Dropbox e faz o download de dois scripts python necessários: dbmakefakelib.py que cria cópias stub falsas de bibliotecas GUI para que o daemon dropboxd seja iniciado e dbreadconfig.py que exibe informações de configuração da caixa de depósito.

Decida qual usuário estará executando o cliente Dropbox; isso pode ser um usuário dedicado ou pode ser um usuário comum. Você também pode ter mais de uma instância do Dropbox em execução no sistema, portanto, pode optar por configurá-la para vários usuários (embora cada usuário possa executar apenas uma instância do Dropbox). Para este exemplo, teremos criado uma “caixa de depósito” de usuário especial que executará este cliente Dropbox.

# su - dropbox
$ cd ~/
$ tar xvzf /tmp/dropbox/dropbox.tar.gz
$ cd .dropbox-dist
$ python /tmp/dropbox/dbmakefakelib.py

dropboxd correu por 15 segundos sem desistir - sucesso? O script dbmakefakelib.py requer o gcc, portanto, você deve ter o gcc instalado no sistema. Isso cria cópias stub falsas das bibliotecas da GUI para que o dropboxd seja iniciado. No final, você pode ver que ele lançou o dropboxd; pressione [CTRL] C para sair do script. O dropboxd ainda deve estar sendo executado em segundo plano:

$ ps ax | grep dropboxd
24001 pts/0    S      0:00 sh -c { /home/dropbox/.dropbox-dist/dropboxd; } 2>&1

Agora que esse dropbox está em execução, precisamos vinculá-lo a uma conta existente:

$ cd ~/
$ python /tmp/dropbox/dbreadconfig.py
host_id = 0bd9c5a15458fbc31f85e892faa7dac4
schema_version = 6

Pegue o host_id de cima. Faça o login na interface da web do Dropbox e, depois de efetuar login, visite manualmente este URL:

https://www.dropbox.com/cli_link?host_id=[HOST_ID]

Substitua [HOST_ID] pelo host_id que as saídas dbreadconfig.py. Quando você fizer isso, o site do Dropbox informará que você vinculou um novo computador. Vá para as configurações da sua conta e, em seguida, Meus computadores e você verá o novo computador listado.

Se você não matou o processo dropboxd que o dbmakefakelib.py iniciou, você verá que ele já está baixando os arquivos do Dropbox para ~ / Dropbox / em segundo plano.

Para iniciar o daemon dropboxd em segundo plano na inicialização, você pode adicionar o seguinte ao seu script de inicialização /etc/rc.d/rc.local:

daemon --user dropbox /bin/sh -c "/home/dropbox/.dropbox-dist/dropboxd&"

Isto irá iniciar dropboxd em segundo plano com os privilégios do usuário para o qual está instalado (neste caso, o usuário é “dropbox”). Se você quiser fazer um script em todo o sistema, visite o wiki do Dropbox, onde há alguns exemplos que você pode usar, incluindo initscripts para o Fedora / Red Hat e para o Debian / Ubuntu. Ele também tem exemplos de como configurar o Dropbox em execução nos daemontools do DJB.

** Dica para se certificar de que todas as pastas não estão sincronizadas. use uma conta de caixa de depósito diferente para o linuxbox e compartilhe a pasta de scripts específica com ele


1



Sua dica foi uma ideia brilhante! Por que não pensei nisso? - Norfeldt
Obteve este erro ::: / usr / bin / ld: não é possível abrir o arquivo de saída /root/.dropbox-dist/fakelib: Nenhum arquivo uch ou diretório collect2: erro: ld retornou 1 status de saída ::: Eu não criei um usuário desde que eu só queria rodar no usuário root - Norfeldt
Obteve o erro durante a execução ::: python2 /tmp/dropbox/dbmakefakelib.py ::: tinha que fazer python2, já que o python 3.3 é o padrão no arco, e o python2 fará 2.7 - Norfeldt
Acabei de perceber que não vai funcionar no meu dispositivo linux já que é um ARM .. - Norfeldt
quais são exatamente as especificações do seu dispositivo? talvez possamos ser capazes de buscar uma alternativa;) - Shenal Silva