Jueves, Agosto 16, 2018

Cómo arrancar el servicio de Dropbox en el inicio de sesión

Dropbox

Dropbox es uno de los servicios de almacenamiento en la nube más populares, sin embargo, su soporte para GNU/Linux no termina por ser el más amigable con el usuario, cosa que no se puede decir de Mega, que soporta oficialmente una gran cantidad de distribuciones, incluidas Arch Linux y derivadas.

Dropbox puede funcionar mediante un demonio que se ejecuta desde la carpeta del usuario. Esto se puede comprobar siguiendo las instrucciones para la instalación desatendida mediante la línea de comandos, que sirven para descomprimir la versión del cliente distribuida dentro de un fichero comprimido. Lo bueno de esas instrucciones es que permiten ejecutar el servicio sobre cualquier distribución, pero con el posible coste de que no pueda ser iniciado junto con la sesión del usuario fácilmente. Por eso, utilizando systemd, vamos a explicar los pasos necesarios para automatizar el inicio de Dropbox en caso de instalarse mediante el fichero comprimido.

Este tutorial va dirigido sobre todo a los usuarios Arch Linux y otras distribuciones que no dan facilidades por sus vías oficiales para instalar Dropbox. Aunque se puede recurrir a AUR, dichos repositorios no tienen soporte oficial y hasta podrían ser un riesgo por lo que hemos podido comprobar recientement.

¿A quién va dirigido este tutorial?

Este tutorial ofrece una vía alternativa para los usuarios que no cuenten con un canal oficial o fiable para instalar Dropbox. Por ejemplo, los usuarios de openSUSE, Debian y Ubuntu pueden recurrir a los mismos repositorios de las distribuciones, mientras que los de Fedora pueden hacer lo mismo instalando previamente los repositorios de RPMFusion o bien tirando del paquete RPM disponible en el sitio web.

Por otro lado, también puede ser considerado como una forma genérica de configurar Dropbox sobre cualquier sistema operativo GNU/Linux que utilice sysmted como init de sistema.

Instalar Dropbox en GNU/Linux a través del fichero comprimido

Aquí directamente vamos a copiar y pegar los pasos publicados en el sitio web de Dropbox.

En caso de utilizar un sistema de 32-bit:

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -

En caso de utilizar un sistema de 64-bit:

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -

En caso no conseguir descargar y/o descomprimir el fichero, posiblemente sea porque no se tenga instalado wget, tar y/o gzip.

Si se quiere iniciar la sesión en Dropbox por primera vez, se puede recurrir al siguiente comando:

~/.dropbox-dist/dropboxd

Automatizando el inicio de Dropbox junto con el de la sesión en el sistema

Ahora vamos a explicar los pasos a seguir para automatizar el inicio de Dropbox junto con el de la sesión en el sistema. Antes de empezar a explicar los pasos, dejamos bien claro que es necesario utilizar systemd como init del sistema para realizar este tutorial.

Lo primero que hay que hacer es crear las carpetas necesarias para crear el servicio de systemd a nivel del usuario, accediendo primero para ello a la subcarpeta oculta “.config”:

cd ~/.config

Crear la subcarpeta “systemd” dentro de “.config”:

mkdir systemd

Crear la subcarpeta “user” dentro de “systemd”:

cd systemd
mkdir user

Acceder a la carpeta “user”:

cd user

Llegados a este punto hay que crear un fichero llamado “dropbox.service”:

nano dropbox.service

Que tendrá el siguiente contenido:

[Unit]
Description=Dropbox as a user service
After=local-fs.target network.target

[Service]
Type=simple
ExecStartPre=/bin/sleep 20
ExecStart=%h/.dropbox-dist/dropboxd
Restart=on-failure
RestartSec=1

[Install]
WantedBy=default.target

Después tendríamos que ser capaces de gestionar el servicio creado, aunque posiblemente antes haga falta reiniciar la sesión o la computadora en caso de que en un principio los siguientes pasos no funcionasen.

Para iniciar el servicio de Dropbox (no, en ningún caso se requiere utilizar sudo o iniciar sesión con root):

systemctl --user start dropbox

Para detener el servicio:

systemctl --user stop dropbox

Para habilitar el servicio junto al inicio de la sesión:

systemctl --user enable dropbox

Para inhabilitar el servicio junto al inicio de la sesión:

systemctl --user disable dropbox

Si se analiza el código del servicio, se puede ver una detención de 20 segundos. Esto ha sido añadido porque, al menos por lo que he visto en Manjaro XFCE sobre mi netbook Atom (un ordenador muy poco potente), el servicio se iniciaba, pero no aparecía en la bandeja del sistema ni se integraba con las notificaciones. Con el retraso mediante “sleep” se asegura la correcta ejecución, tanto a nivel del propio del servicio como del escritorio.

 

Fuentes: Ben’s Corner | Stack Overflow | muylinux

¿Quién está en línea?

Hay 141 invitados y ningún miembro en línea

Contador de Visitas

9311110
Hoy Hoy 419
Ayer Ayer 824
Esta semana Esta semana 3283
Este mes Este mes 18191
Total de Visitas Total de Visitas 9311110

Día con más
visitantes

08-05-2018 : 1937

Gracias por su visita