[HowTo] Rclone: Subir y/o sincronizar archivos desde linea de comandos linux a Google Drive

Posted: domingo, 19 de mayo de 2019 by Termita in Etiquetas: , , , , , , , ,
0

Rclone es una herramienta que nos permite subir archivos y/o sincronizar carpetas en casi cualquier nube.
Hay documentación exhaustiva en el man del propio comando, en el manual de la web oficial y en MANKIER.

¿Como utilizar Rclone para subir archivos y/o sincronizar carpetas con Google Drive?

1. Crear un perfil de la cuenta de Google Drive que vamos a emplear (recibe el nombre de 'remote')
rclone config


No remotes found - make a new one
n) New remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
n/r/c/s/q> n
name> remote
Type of storage to configure.
Choose a number from below, or type in your own value
[snip]
10 / Google Drive
   \ "drive"
[snip]
Storage> drive
Google Application Client Id - leave blank normally.
client_id>
Google Application Client Secret - leave blank normally.
client_secret>
Scope that rclone should use when requesting access from drive.
Choose a number from below, or type in your own value
 1 / Full access all files, excluding Application Data Folder.
   \ "drive"
 2 / Read-only access to file metadata and file contents.
   \ "drive.readonly"
   / Access to files created by rclone only.
 3 | These are visible in the drive website.
   | File authorization is revoked when the user deauthorizes the app.
   \ "drive.file"
   / Allows read and write access to the Application Data folder.
 4 | This is not visible in the drive website.
   \ "drive.appfolder"
   / Allows read-only access to file metadata but
 5 | does not allow any access to read or download file content.
   \ "drive.metadata.readonly"
scope> 1
ID of the root folder - leave blank normally.  Fill in to access "Computers" folders. (see docs).
root_folder_id>
Service Account Credentials JSON file path - needed only if you want use SA instead of interactive login.
service_account_file>
Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine or Y didn't work
y) Yes
n) No
y/n> y  <-------- (*) si trabajamos en local es "yes", si trabajamos en remoto (por ssh por ejemplo) elegimos "no"
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Configure this as a team drive?
y) Yes
n) No
y/n> n
--------------------
[remote]
client_id =
client_secret =
scope = drive
root_folder_id =
service_account_file =
token = {"access_token":"XXX","token_type":"Bearer","refresh_token":"XXX","expiry":"2014-03-16T13:57:58.955387075Z"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y



(*) Es recomendable que los perfiles almacenados en RClone esté protegidos con contraseña. Eso se hace de la siguiente manera:
rclone config
n) New remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
n/r/c/s/q> s



2. Subir ficheros y/o Sincronizar
RClone es especialmente susceptible con los espacios y carácteres raros en los nombres y rutas de los archivos.

2.a Subir

Copiar un directorio local a un directorio de Google Drive
rclone copy /DirectorioLocal NombreDelPerfilGoogleDrive:CarpetaRemota
por ejemplo: rclone copy -vv /home/usuario/peliculasdeaccion gdrivedemispeliculas:pelisaccion

Copiar un archivo local a un directorio de Google Drive
rclone copy /DirectorioLocal/NombreDeArchivo NombreDelPerfilGoogleDrive:CarpetaRemota
por ejemplo: rclone copy /home/usuario/peliculadeacción.avi perfilgdrivedemispeliculas:accion


2.b Sincronizar
Sincronizar un directorio local con un directorio de Google Drive. (*) Esto hará que el directorio remoto (directorio de Google Drive) se iguale con el directorio local. Si en el directorio local hay menos archivos que en el directorio remoto, los sobrantes de este último se borrarán. Por ejemplo, si en local tenemos la película 'a.avi' y en remoto (Google Drive) tenemos la película 'b.avi', tras sincronizar tendremos que tanto en remoto como en local habrá la película 'a.avi' y la película 'b.avi' se habrá borrado del remoto.
RClone comprueba diferencias para ficheros completos. No realiza, por tanto, una copia diferencial de un archivo en el que hayan cambiado solamente unos pocos bytes. Los archivos se copian completos. Esto se debe a que, a día de hoy, los almacenamientos en la nube no suelen permitir transferencias parciales de archivos.
rclone sync -vv /DirectorioLocal NombreDelPerfilGoogleDrive:CarpetaRemota

Por ejemplo rclone sync -vv /home/usuario/peliculasaccion NombreDelPerfilGoogleDrive:pelisaccion



*. Otros comandos útiles de RClone

Lista de todos los comandos
rclone --help

Ayuda específica de un comando concreto
rclone <comando> --help

Lista de remotes (perfiles de cuentas de almacenamiento remoto / en la nube) configurados en RClone
rclone listremotes

Información sobre un 'remoto' concreto: espacio ocupado y disponible
rclone about <remote>

Lista los ficheros que hay en la carpeta de un 'remoto', de manera recursiva, junto con su tamaño en bytes
rclone ls NombreDelPerfilRemoto:CarpetaRemota

Lista los ficheros que hay en la carpeta de un 'remoto, de manera recursiva, junto con su tamaño en bytes y además la fecha de modificación
rclone lsl NombreDelPerfilRemoto:CarpetaRemota

Lista de directorios de un 'remoto', pero solamente los del primer nivel. Es decir, no lo hace de forma recursiva
rclone lsd NombreDelPerfilRemoto:

Visualizar todos los ficheros y directorios de un 'remoto'
rclone lsf NombreDelPerfilRemoto:

Visualizar en forma de árbol todos los ficheros y directorios de un 'remoto'
rclone tree NombreDelPerfilRemoto:

Borrar ficheros o el contenido del directorio de un 'remoto'
rclone delete NombreDelPerfilRemoto:FicheroQueQueremosBorrar

Simular borrado de ficheros o del contenido del directorio de un 'remoto'
rclone delete NombreDelPerfilRemoto:FicheroQueQueremosBorrar --dry-run

Borrar ficheros mayores de, por ejemplo, 10 megabytes
rclone delete NombreDelPerfilRemoto: --min-size 10M

Consultar espacio que ocupan todos los archivos contenidos en un directorio y todos sus subdirectorios
rclone size NombreDelPerfilRemoto:CarpetaRemota

mkdir, move, moveto ó rmdir permiten gestionar carpetas y archivos. En la ayuda hay información detallada.



Filtrado de archivos [extraído de GMPROJECTS.ME]

En todas las acciones en la que se opera con ficheros o directorios, RClone permite definir unas reglas de filtrado, de manera que es muy fácil sincronizar una estructura de archivos, seleccionando cuáles queremos tener en cuenta y cuáles otros no.

Las expresiones de RClone utilizan un lenguaje prácticamente idéntico al que utiliza la herramienta rsync. Este lenguaje es conocido como "file globs" y se utiliza también en la shell de GNU/Linux.

Estas son las opciones relativas al filtrado y la selección de archivos:

--exclude <expresión>

Excluye fichero según la expresión. Para copiar todos los archivos excepto los que terminen en .tmp podemos utilizar esta línea de comando

rclone copy --exclude "*.tmp" mi_directorio_local mi_disco_OneDrive:/directorio_destino

El modificador --exclude se puede repetir para añadir varias reglas en un mismo comando

--exclude-from <fichero>

Lee varias expresiones de exclusión desde un fichero de texto. Es muy útil cuando necesitas definir reclas complejas. Solamente necesitas crear un fichero con las reglas utilizando el mismo leguaje glob.

## exclude.txt

.*
.*/**
*.tmp

Este archivo permite filtrar los ficheros ocultos, los directorios ocultos y los ficheros con extensión *.tmp

rclone copy --exclude-from "exclude.txt" mi_directorio_local mi_disco_OneDrive:/directorio_destino

--exclude-if-present <expresión>

Excluye un directorio completo si alguno de los ficheros que contiene cumple con la expresión. Puede ser muy útil para excluir de una acción directorios  mediante la creación de un fichero vacío con nombre, por ejemplo, .ignore

rclone copy --exclude-if-present ".ignore" mi_directorio_local mi_disco_OneDrive:/directorio_destino

--include <expresión>
--include-from <fichero>

Estos modificadores realizan la función inversa a los anteriores. Solamente procesan los ficheros y directorios que cumplen con la expresión.

--ignore-existing

Ignora los archivos existentes en el destino.

--filter <expresión>

Permite definir reglas de inclusión y/o exclusión. Cuando quieres utilizar reglas más complicadas, donde tienes ficheros que incluir, pero quieres excluir algunos de ellos --filter te permite simplificar la definición de estas reglas. Simplemente tienes que añadir un símbolo + ó - delante para definir reglas de inclusión o exclusión.

Estos dos comandos son equivalentes

rclone copy --filter "- *.tmp" mi_directorio_local mi_disco_OneDrive:/directorio_destino
rclone copy --exclude "*.tmp" mi_directorio_local mi_disco_OneDrive:/directorio_destino

--filter-from <fichero>

La verdadera potencia de las reglas de filtrado está en el modificador --filter-from en el que se utiliza un fichero de texto para definir todas las reglas que necesitemos.

## filter.txt

+ *.jpg
+ *.png
- borrados/**
+ *.txt

El comando siguiente, utilizando esta definición de filtros copiará todas las imágenes en formato jpg y png y los archivos de texto, excepto aquellos dentro del directorio borrados.

rclone copy --filter-from "filter.txt" mi_directorio_local mi_disco_OneDrive:/directorio_destino

Otros comandos para filtrar archivos, en función de sus características, son:

--min-size <tamaño>      Ignora los archivos cuyo tamaño es más pequeño que el especificado
--max-size <tamaño>      Ignora los archivos cuyo tamaño es más grande que el especificado
--max-age <edad>      Ignora los archivos con antiguedad mayor  a la especificada
--min-age <edad>      Ignora los archivos con antiguedad menor a la especificada







--------------------
fuentes:
https://rclone.org/drive/
https://www.gmprojects.me/2018/08/almacenamiento-en-la-nube-desde-linux.html

0

Ilustrémoslo con un ejemplo:
Tenemos un video .mkv y lo queremos pasar a .avi

Hay muchas maneras de hacer esto. Tres de ellas son:

MÉTODO 1
Mediante VLC
Tras arrancar VLC, menú Media>Convert/Save
Seleccionar el archivo .mkv y si es necesario también el archivo con los subtítulos.
Click en Convert/Save
Introducir nombre de archivo que queremos ponerle al video una vez convertido.
Start


MÉTODO 2
Mediante ffmpeg

Manteniendo los códecs de video y de audio originales
ffmpeg -i nombre_video.mkv -codec copy nombre_video.avi<br data-mce-bogus="1">
ô
ffmpeg -i nombre_video.mkv -vcodec copy -acodec copy nombre_video.avi

Modificando los códecs de video y/o de audio
ffmpeg -i nombre_video.mkv -vcodec mpeg4 -acodec mp3 nombre_video.avi


MÉTODO 3
Mediante mencoder
mencoder nombre_video.mkv -ovc xvid -oac mp3lame -lameopts abr:br=192 -xvidencopts pass=2:bitrate=-700000 -o nombre_video.avi





-----------------------------------
fuentes

[HowTo] google calendar (lectura y escritura) en Thunderbird

Posted: martes, 7 de mayo de 2019 by Termita in Etiquetas: , , , , , ,
0

Hay que añadir estas 2 extensiones:

Provider for Google Calendar
Lightning

Y en Thunderbird
Archivo > Nuevo > Calendario > Google Calendar


--------------------

POP3 e IMAP

Posted: sábado, 4 de mayo de 2019 by Termita in Etiquetas: , , , , , , , ,
0

El protocolo POP3 se descarga los mensajes que recibes desde el servidor a tu Thunderbird (existe una opción para dejarlos en el servidor además de descargarlos). Todo lo que hagas en tu gestor como, por ejemplo, eliminar uno de tus mensajes, tendrá efecto en Thunderbird pero no en el servidor, a no ser que configures explícitamente esta opción avanzada.

El protocolo IMAP, en cambio, almacena tus mensajes en el servidor y no en tu equipo, lo que implica que tus acciones sí afectarán a la información almacenada en el server (si borras un correo desde Thunderbird, se borrará en el servidor también). El protocolo IMAP tiene la desventaja de que tus correos ocuparán espacio en tu cuenta de hosting. Por contra, tiene la ventaja de que conservará tus correos enviados, carpetas y correos leídos entre distintos dispositivos.

0

Este blog se está transportando a un sitio "más libre".
Puede consultarse este artículo en su nueva ubicación:
>>>>>>>>>>>>>>>>>>>>>>