Dropbox es un producto que nos proporciona un espacio online seguro donde compartir ficheros entre varios ordenadores o teléfonos móviles, es multiplataforma por lo que podemos utilizarlo incluso en nuestro servidor web, voy a describir un paso a paso de cómo montar un directorio con Dropbox en un webserver sobre Ubuntu/Debian en modo texto para utilizarlo por ejemplo para realizar backups.

Si lo que buscáis es instalar Dropbox en un terminal con Ubuntu o Debian que tiene interfaz gráfico, es mejor que utilicéis los paquetes .deb que proporciona el propio dropbox y que podéis encontrar aquí.
Requisitos previos:
- Un servidor Ubuntu/Debian ;).
- Una cuenta en Dropbox, si todavía no tenéis una, podéis conseguirla a través de este link y obtendréis 250MB extra (y yo también).
- Debéis tener acceso root o suficientes privilegios en el servidor, también la posibilidad de hacer wget.
- Gcc instalado.
- Python 2.5 instalado (sqlite3 opcional).
Pasos iniciales
Logearse en el servidor e ir a la home de usuario.
Descargar el cliente de texto de Linux para dropbox. Podéis descargar aquí una versión de 32 bits o de 64 bits, según la versión de Ubuntu/Debian que tengáis.
¿Cómo saber si estamos trabajando en 32 bits o 64 bits?
Ejecutáis este comando:
uname -m
Y si la salida es algo así: x86_64 estáis trabajando en 64 bits, si no pone nada de 64, es de 32.
Para descargar el cliente de 32 bits:
wget http://www.dropbox.com/download?plat=lnx.x86
Descomprimirlo en el home del usuario.
tar -zxf dropbox.tar.gz
Si no lo hemos puesto en el home del usuario, deberemos moverlo allí
mv .dropbox-dist ~/.dropbox-dist
Descargarse los ficheros dbmakefakelib.py y dbreadconfig.py de dropbox para realizar la configuración, simplemente ejecutando estos comandos de wget ya los tendríamos:
wget -nd http://dl.dropbox.com/u/6995/dbmakefakelib.py wget -nd http://dl.dropbox.com/u/6995/dbreadconfig.py
Para configurar dropbox deberemos ejecutar dbmakefakelib.py
python dbmakefakelib.py
El resultado de este script no está claro, puede que os salga información de log o puede que no, al finalizar debería aparecer esta línea:
dropboxd ran for 15 seconds without quitting - success?
Esto querrá decir que el script se ha ejecutado suficiente tiempo como para conectarse con Dropbox e inicializar el cliente.
Lo más importante de todo es la clave de 128 bits que nos tiene que asignar el sistema cuando ejecutemos dbreadconfig.py, esta clave la utilizaremos en un navegador para vincular nuestra cuenta de Dropbox con el servidor.
python dbreadconfig.py
Este comando nos devolverá una clave etiquetada como host_id y que se debe parecer a algo como esto: 739bfe362f3bb3246da99dc8d20dbe2b
Puede pasar que este comando no funcione del todo, en ese caso, podemos probar a iniciar dropbox y él mismo nos indicará la URL completa que tenemos que utilizar para vincular el servidor:
~/.dropbox-dist/dropboxd &
La URL a visitar para realizar la vinculación es esta: https://www.dropbox.com/cli_link?host_id=HOSTID donde HOSTID es el número de 128 bits que nos devuelva la ejecución de dbreadconfig.py.
Una vez que hemos vinculado la cuenta, nos saldrá un mensaje de confirmación y en la pestaña "My Computers" de la cuenta de Dropbox ya aparecerá el servidor que estamos vinculando como máquina autorizada para la cuenta.

Si quisieramos desvincular el servidor, podríamos hacerlo simplemente pulsando Unlink en esta pantalla.
Para vincularlo de nuevo, podemos eliminar el proceso de dropbox en el servidor y volverlo a iniciar, nos pedirá ir de nuevo a la URL de activación y listo.
Si tenemos dropbox funcionando a estas alturas:
ps -ef |grep dropbox root 11260 1 0 01:49 ? 00:00:15 /root/.dropbox-dist/dropbox root 19363 14193 0 16:33 pts/1 00:00:00 grep dropbox
Lo mejor es que lo paremos haciendo un kill del proceso (sustituyendo el número del proceso por el que nos diga el ps)
kill -9 11260
Directorio de destino de Dropbox
Por defecto, deberemos utilizar el directorio de home del usuario para dropbox, para ello creamos una carpeta llamada Dropbox en él:
mkdir ~/Dropbox
Y arrancamos el servicio:
~/.dropbox-dist/dropboxd &
Es muy recomendable que utilicemos el cliente oficial de Dropbox para funcionar en Linux, de esta forma podremos parar y arrancar el servicio directamente:
mkdir -p ~/bin wget -P ~/bin http://www.dropbox.com/download?dl=packages/dropbox.py chmod 755 ~/bin/dropbox.py ~/bin/dropbox.py help
También podemos crearnos un alias para llamar directamente a dropbox sin necesidad de la ruta, en nuestro fichero de perfil en el home, por ejemplo .bashrc podemos añadir estas líneas
#dropbox alias dropbox='~/bin/dropbox.py'
Y ya podemos llamar a dropbox sin ruta
$ dropbox help Dropbox command-line interface commands: status get current status of the dropboxd help provide help puburl get public url of a file in your dropbox stop stop dropboxd start start dropboxd filestatus get current sync status of one or more files ls list directory contents with current sync status
Bonus: Cambiar el directorio por defecto de dropbox
Si no queremos usar el home del usuario como directorio de dropbox, podemos cambiarlo con estas instrucciones:
dropbox stop cp ~/.dropbox/dropbox.db dropbox.db.backup wget http://dl.dropbox.com/u/119154/permalink/dropboxdir.py chmod +x dropboxdir.py mv ~/Dropbox /nuevo/directorio python dropboxdir.py --setfolder=/nuevo/directorio dropbox start
Mucho cuidado con estos comandos, deben hacerse siempre después de inicializar Dropbox en un directorio concreto, si hacemos setfolder directamente a un directorio vacío, borrará los ficheros que ya tengamos en dropbox.
Podéis encontrar más información sobre dropbox ejecutado en Linux desde línea de comandos aquí o directamente en los foros de Dropbox.
Y recordad que si todavía no tenéis cuenta en Dropbox, podéis conseguirla a través de este link y obtendréis 250MB extra.





Añadir nuevo comentario