1000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Importar datos a kDrive desde iCloud
Esta guía detalla cómo importar datos iCloud utilizando rClone en kDrive Infomaniak.
COMPATIBILIDAD my kSuite ✗ | my kSuite+ ✗ ✔= Oferta compatible | ✗= No disponible |
Prólogo
- Como Apple no ofrece una API como sus competidores, una solución para recuperar los documentos de un iCloud Drive es instalar la app kDrive macOS para sincronizar la carpeta icloud que debe estar en tu biblioteca. La guía a continuación ofrece una alternativa sólida.
1. Configurar rclone para acceder a los drives
Instalación de rclone en tu ordenador
Existe una versión de rclone con interfaz gráfica (GUI) pero también es posible hacerlo mediante la línea de comandos (CLI):
- Instale rclone desde una aplicación de tipo
Terminal
en tu dispositivo, escribiendo el siguiente comando completo:sudo -v ; curl https://rclone.org/install.sh | sudo bash
- Ingrese la contraseña de su sesión en la computadora para comenzar la instalación:
- Consulte la guía oficial de instalación si es necesario.
Configuración del disco remoto (iCloud) en rclone
- Una vez instalado rclone, ingrese el comando
rclone config
.- Consulte el guía oficial de configuración si es necesario.
- Luego, elija configurar una nueva importación remota respondiendo
n
paraNew remote
. - Nombra el disco remoto, por ejemplo
appledrive
: - Luego, elija el tipo de disco a importar respondiendo
iclouddrive
, que corresponde a iCloud Drive entre las opciones disponibles. - Indique a rclone el
apple_id
ingresando tu Apple ID (generalmente una dirección de correo electrónico). - Elige usar tu propia contraseña vinculada a la cuenta Apple ID (
y
). - Introduzca su contraseña dos veces cuando se le solicite:
- Responda “No”
n
a la pregunta sobre la “configuración avanzada”. - Una ventana en su dispositivo debe abrirse para advertirle de una conexión remota; autorícela:
- Una ventana en su dispositivo debe abrirse con un código de autenticación de dos factores; cópielo:
- Pega el código cuando rclone te lo pide.
- Responda “Sí”
y
a la última pregunta si toda la información presentada es correcta.
Configuración del disco de destino (kDrive) en rclone
Es posible actuar directamente sobre el archivo de configuración de rclone pegando tu configuración kDrive en el formato, por ejemplo:
[kDrive]
type = webdav
url = https://kDrive_ID_HERE.connect.kdrive.infomaniak.com/
vendor = other
user = user@email.com
pass = PASSWORD_HERE_OR_APP_PASSWORD_IF_2FA
Pero aquí está cómo proceder paso a paso, como en la configuración anterior:
- Siempre en la terminal, ingrese
n
para una nueva configuración de disco y escriba el nombrekDrive
para reconocer su disco de destino: - Luego, elija el tipo de disco a importar respondiendo
webdav
, lo que corresponde a una configuración WebDAV entre las opciones propuestas. - Ingrese la siguiente información:
url
= acceso directo a kDrive (consulte el otro guía sobre el ID kDrive para la URL de conexión)vendor
= rclone (la opción n°6)user
= dirección de correo electrónico para iniciar sesión en la cuenta de usuario Infomaniak
- Responda “Sí”
y
a la pregunta sobre la contraseña y luego ingrese la contraseña:- contraseña de aplicación en caso de autenticación doble activada o la de su cuenta de usuario Infomaniak si no ha activado la 2FA.
- Deje vacío el
bearer_token
y luego responda “No”n
a la pregunta sobre la “configuración avanzada”. - Responda “Sí”
y
a la última pregunta y sus 2 discos se mostrarán:
2. Copiar los datos de iCloud a kDrive
Requisitos previos
- Consulte las opciones disponibles en la guía oficial antes de iniciar una importación.
Ejemplo de comando para iniciar una copia de sus datos de iCloud a la raíz de su kDrive:
sudo rclone copy appledrive: kDrive:
¡Esto iniciará instantáneamente la copia de tus carpetas, subcarpetas y contenidos de iCloud al dossier personal de tu kDrive Infomaniak!
Detalles sobre las fechas de sus fotos exportadas
Si exportas tus fotos desde iCloud a kDrive Infomaniak, ten cuidado con las metadatos de fechas. Durante la exportación, las fechas de creación de los archivos pueden ser modificadas y reemplazadas por la fecha de exportación en lugar de la fecha original de la toma de la foto.
Aquí tienes un script para usuarios avanzados que permite restaurar los metadatos correctos de tus archivos a partir de la información EXIF (se recomienda procesar lotes de 7000 fotos como máximo para evitar fallos):
- Descargue ExifTool https://exiftool.org/index.html (Paquete MacOS).
- Instale la aplicación permitiendo su apertura de antemano si es necesario:
- Abra Script Editor (ubicado en su carpeta Aplicaciones > Utilidades):
- Haga clic en Nuevo documento.
- Pegue y pegue el largo script propuesto a continuación en la ventana de Script Editor.
- Haga clic en Ejecutar para iniciar el script, se abrirá una ventana:
- Selecciona la carpeta a analizar.
- Deje luego que el script se ejecute, modificará las fechas o escribirá los errores en un archivo errors.txt en el escritorio.
El script para copiar y pegar por completo:
-- remplace date du fichier par la date exif creation
tell application "Finder"
set Chemin to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à redater"
my inspecter(Chemin)
end tell
on inspecter(un_dossier)
tell application "Finder"
-- traitement des fichiers :
set les_fichiers to files of un_dossier
repeat with chaque_fichier in les_fichiers
-- traitement d'un fichier
set lefichier to chaque_fichier
set AppleScript's text item delimiters to {""}
set nom to name of chaque_fichier --récupère le nom du fichier
set extens to document file nom in un_dossier --recupere l extension du fichier
set lextension to name extension of extens
set sauv to AppleScript's text item delimiters --sauvegarder la variable delimiteur
set AppleScript's text item delimiters to {"."} --récupère la partie avant le dernier "."
set elements to text items of nom
set nomcourt to (items 1 thru -2 of elements) as string
set ancien_nom to nomcourt
set AppleScript's text item delimiters to sauv --restaurer la variable delimiteur
set chaque_fichier to chaque_fichier as string
try
set datephoto to do shell script "/usr/local/bin/exiftool -DateTimeOriginal " & quoted form of POSIX path of chaque_fichier
if datephoto is "" then set datephoto to do shell script "/usr/local/bin/exiftool -CreationDate " & quoted form of POSIX path of chaque_fichier
if datephoto is "" then set datephoto to do shell script "/usr/local/bin/exiftool -CreateDate " & quoted form of POSIX path of chaque_fichier
on error
-- Ecrit un fichier erreur sur le bureau si erreur chargement date
set lelog to open for access ((path to desktop folder as text) & "errors.txt") as text with write permission
write "Le fichier ne contient pas de date : " & chaque_fichier & return to lelog starting at eof
close access lelog
set datephoto to ""
end try
if length of datephoto > 20 then
set x to (length of datephoto) - 33
set DateOriginale to text -x thru -1 of datephoto
set ladate to text 1 thru 5 of DateOriginale
set lannee to ladate
set ladate to ladate & text 7 thru 8 of DateOriginale
set lemois to text 7 thru 8 of DateOriginale
set ladate to ladate & text 10 thru 11 of DateOriginale
set lejour to text 10 thru 11 of DateOriginale
set ladate to ladate & text 13 thru 14 of DateOriginale
set lheure to text 13 thru 14 of DateOriginale
set ladate to ladate & text 16 thru 17 of DateOriginale
set lesminutes to text 16 thru 17 of DateOriginale
set ladate to ladate & "." & text 19 thru 20 of DateOriginale
set lessecondes to text 19 thru 20 of DateOriginale
set newnom to lannee & "-" & lemois & "-" & lejour & " " & lheure & "." & lesminutes & "." & lessecondes
set xxx to ladate as string
if xxx is " 000000000000.00" then
-- Ecrit un fichier erreur sur le bureau si erreur chargement date(=0000...)
set lelog to open for access ((path to desktop folder as text) & "errors.txt") as text with write permission
write "Le fichier ne contient pas de date : " & chaque_fichier & return to lelog starting at eof
close access lelog
else
do shell script "touch -t " & ladate & " " & quoted form of POSIX path of chaque_fichier
end if
end if
if datephoto is not "" then
else
set lelog to open for access ((path to desktop folder as text) & "errors.txt") as text with write permission
write "Le fichier ne contient pas de date : " & chaque_fichier & return to lelog starting at eof
close access lelog
end if
end repeat
-- traitement des dossiers :
set les_dossiers to folders of un_dossier
repeat with chaque_dossier in les_dossiers
-- traitement d'un dossier
my inspecter(chaque_dossier)
end repeat
end tell
end inspecter
tell application "Finder"
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell