Uso del cliente de línea de comandos¶
Resumen¶
Esta página describe nextcloudcmd, el cliente de línea de comandos que realiza una única sincronización entre un directorio local y el servidor: dónde obtenerlo, su sintaxis y opciones, el manejo de credenciales y la lista de exclusión. Está dirigida a usuarios que sincronizan desde la terminal o mediante scripts.
Fuente: documentación de Nextcloud, «user_manual/desktop/commandline», versión 3ad9158, licencia CC BY 3.0; traducida y adaptada para APS Conecta Gestión.
Los paquetes del cliente de Nextcloud contienen un cliente de línea de comandos, nextcloudcmd, que puede usarse para sincronizar archivos de APS Conecta Gestión con los equipos cliente.
nextcloudcmd realiza una única ejecución de sincronización y después finaliza el proceso de sincronización. De este modo, nextcloudcmd procesa las diferencias entre los directorios del cliente y del servidor y propaga los archivos para llevar ambos repositorios al mismo estado. A diferencia del cliente con interfaz gráfica, nextcloudcmd no repite las sincronizaciones por sí mismo. Tampoco supervisa los cambios en el sistema de archivos.
Instalación¶
Uso¶
Para invocar nextcloudcmd, hay que indicar la URL del repositorio local y la del remoto con el siguiente comando:
nextcloudcmd [OPTIONS...] sourcedir nextcloudurl
donde sourcedir es el directorio local y nextcloudurl es la URL del servidor.
Otras opciones de línea de comandos que admite nextcloudcmd son las siguientes:
--path: sustituye la carpeta raíz remota predeterminada por una subcarpeta concreta del servidor (p. ej.: /Documents sincronizaría la subcarpeta Documents del servidor)--user,-u<user>: usausercomo nombre de inicio de sesión.--password,-p<password>: usa password como contraseña.-n: usanetrc(5)para iniciar sesión.--non-interactive: no hace preguntas e intenta leer $NC_USER y $NC_PASSWORD del entorno.--silent,--s: suprime la salida detallada del registro.--trust: confía en cualquier certificado SSL, incluidos los no válidos.--httpproxyhttp://[user@pass:]<server>:<port>: usa server como proxy HTTP.--exclude<file>: archivo de lista de exclusión--unsyncedfolders<file>: archivo que contiene la lista de carpetas no sincronizadas (sincronización selectiva)--max-sync-retries<n>: reintenta como máximo n veces (3 de forma predeterminada)-h: sincroniza los archivos ocultos, no los ignora
Manejo de credenciales¶
nextcloudcmd requiere que el usuario indique el nombre de usuario y la contraseña mediante el patrón de URL estándar, p. ej.:
$ nextcloudcmd /home/user/my_sync_folder https://carla:secret@server/nextcloud
Para sincronizar el directorio Music de APS Conecta Gestión con el directorio local media/music, a través de un proxy que escucha en el puerto 8080 y en una máquina pasarela con la dirección IP 192.168.178.1, la línea de comandos sería:
$ nextcloudcmd --httpproxy http://192.168.178.1:8080 --path /Music \
$HOME/media/music \
https://server/nextcloud
nextcloudcmd pedirá el nombre de usuario y la contraseña, a menos que se hayan especificado en la línea de comandos o se haya pasado -n.
Lista de exclusión¶
nextcloudcmd requiere acceso a un archivo de lista de exclusión. Este debe estar instalado junto con nextcloudcmd y, por tanto, disponible en una ubicación del sistema, estar colocado junto al binario como sync-exclude.lst o especificarse explícitamente con la opción --exclude.
El contenido requerido del archivo es un elemento de exclusión por línea, donde se permiten comodines, p. ej.:
~*.tmp
._*
]Thumbs.db
]photothumb.db
System Volume Information
Ejemplo¶
Sincronizar un directorio local con el directorio indicado del servidor nextcloud
$ nextcloudcmd --path /<Directory_that_has_been_created> /home/user/<my_sync_folder> \
https://<username>:<secret>@<server_address>