Base de conhecimento

1000 perguntas frequentes, 500 tutoriais e vídeos explicativos. Aqui, você encontra apenas soluções!

Importar dados para o kDrive a partir do iCloud

Atualização 03/07/2026

Este guia explica como importar dados do iCloud Drive ou iCloud Photos para o kDrive da Infomaniak usando o rclone.

 

✘ INDISPONÍVEL com
kSuite gratuito / kSuite Standard
my kSuite / my kSuite+ (ik.me, etik.com, ikmail.com)


 

Introdução

  • Este método destina-se a utilizadores experientes que desejam transferir dados do iCloud para o kDrive sem ter de copiar manualmente cada ficheiro.
  • O rclone permite configurar uma origem iCloud Drive ou iCloud Photos e, em seguida, um destino kDrive através do WebDAV.
  • O acesso ao iCloud com o rclone requer a palavra-passe normal da Apple ID e a autenticação de dois fatores da Apple. As palavras-passe de aplicação da Apple não são aceites para esta configuração.
  • A autenticação do iCloud pode ter de ser renovada periodicamente com rclone reconnect ou rclone config.
  • O comando rclone copy copia os ficheiros para o kDrive sem os eliminar da origem do iCloud.

 

1. Instalar o rclone

O rclone pode ser instalado através da linha de comandos. No macOS, Linux ou BSD, abra a aplicação Terminal e execute o seguinte comando:

sudo -v ; curl https://rclone.org/install.sh | sudo bash

Consulte o guia oficial de instalação do rclone, se necessário, especialmente para o Windows ou para uma instalação manual.

Após a conclusão da instalação, verifique se o rclone responde corretamente:

rclone version

 

2. Configurar a origem do iCloud no rclone

  1. No Terminal, inicie a configuração do rclone:

    rclone config
  2. Escolha n para criar um novo disco remoto (Novo disco remoto).
  3. Atribua um nome descritivo a esta origem, por exemplo:

    iCloudDrive
  4. Escolha o tipo de armazenamento iclouddrive.
  5. Para importar documentos armazenados no iCloud Drive, mantenha o serviço padrão drive.
  6. Para importar itens do iCloud Fotos, escolha o serviço photos ou crie um segundo disco remoto dedicado, por exemplo, iCloudPhotos.
  7. Indique o seu ID Apple, geralmente um endereço de e-mail.
  8. Escolha inserir a sua própria senha e, em seguida, digite a senha habitual do seu ID Apple.
  9. Responda n à configuração avançada, a menos que haja uma necessidade específica.
  10. Valide a conexão a partir do seu dispositivo Apple de confiança e, em seguida, insira o código de autenticação de dois fatores quando o rclone o solicitar.
  11. Quando o resumo estiver correto, responda y para salvar a configuração.

Verifique se a origem do iCloud está acessível:

rclone lsd iCloudDrive:

Se você configurou uma origem dedicada ao iCloud Fotos, verifique-a também:

rclone lsd iCloudPhotos:

 

3. Configurar o destino kDrive no rclone

O kDrive deve ser configurado no rclone como um armazenamento WebDAV.

  1. Reinicie a configuração se você não estiver mais no menu do rclone:

    rclone config
  2. Escolha n para criar um novo disco remoto.
  3. Atribua um nome descritivo ao destino, por exemplo:

    kDrive
  4. Escolha o tipo de armazenamento webdav.
  5. Para a URL, indique o acesso WebDAV direto ao seu kDrive:

    https://ID_KDRIVE.connect.kdrive.infomaniak.com/
    • Substitua ID_KDRIVE pelo identificador do seu kDrive; consulte este outro guia, se necessário.
  6. Para o fornecedor WebDAV (vendor), escolha other.
  7. Para o utilizador (user), indique o endereço de e-mail utilizado para iniciar sessão na conta de utilizador Infomaniak.
  8. Para a palavra-passe, indique:
    • uma palavra-passe de aplicação se a autenticação de dois fatores estiver ativada na conta Infomaniak;
    • a palavra-passe da conta de utilizador Infomaniak se a autenticação de dois fatores não estiver ativada.
  9. Deixe o campo bearer_token vazio.
  10. Responda n à configuração avançada, a menos que haja uma necessidade específica.
  11. Quando o resumo estiver correto, responda y para guardar a configuração.

A configuração resultante será semelhante a esta no ficheiro de configuração do rclone:

[kDrive]
type = webdav
url = https://ID_KDRIVE.connect.kdrive.infomaniak.com/
vendor = other
user = user@example.com
pass = PASSWORD_STORED_BY_RCLONE

A palavra-passe exibida no ficheiro de configuração do rclone não é escrita em texto simples quando a configuração é realizada com o comando rclone config. Se modificar este ficheiro manualmente, gere o valor do campo pass com o comando rclone obscure.

Verifique se o destino kDrive está acessível:

rclone lsd kDrive:

 

4. Copiar os dados do iCloud para o kDrive

Não utilize sudo para os comandos de cópia se a configuração do rclone tiver sido criada com a sua sessão de utilizador habitual. Caso contrário, o rclone poderá procurar outra configuração e não encontrar os acessos criados anteriormente.

Antes de iniciar uma cópia completa, liste as pastas disponíveis na origem:

rclone lsd iCloudDrive:

Recomenda-se realizar um teste sem transferência real com --dry-run:

rclone copy iCloudDrive: kDrive:iCloudDrive --dry-run --progress

Se o resultado for correto, inicie a cópia:

rclone copy iCloudDrive: kDrive:iCloudDrive --progress --transfers 4 --checkers 8 --retries 5 --low-level-retries 10 --log-level INFO --log-file "$HOME/Desktop/rclone-kdrive-import.log"

Este comando copia as pastas, subpastas e arquivos da origem iCloudDrive: para a pasta iCloudDrive do seu kDrive.

Em caso de interrupção da conexão ou do computador, execute o mesmo comando novamente. O rclone retomará a comparação e evitará copiar novamente os arquivos que já estão presentes, desde que o tamanho e as informações disponíveis correspondam.

Para verificar a consistência do volume copiado, você pode comparar a origem e o destino pelo tamanho:

rclone check iCloudDrive: kDrive:iCloudDrive --size-only --one-way --progress

 

Copiar fotos do iCloud

Se você configurou uma origem dedicada ao iCloud Photos, liste primeiro as bibliotecas e pastas disponíveis:

rclone lsd iCloudPhotos:

Em seguida, adapte o caminho da origem de acordo com a estrutura exibida pelo rclone. Exemplo:

rclone copy iCloudPhotos: kDrive:iCloudPhotos --dry-run --progress

Depois, inicie a cópia se o resultado do teste for correto:

rclone copy iCloudPhotos: kDrive:iCloudPhotos --progress --transfers 4 --checkers 8 --retries 5 --low-level-retries 10 --log-level INFO --log-file "$HOME/Desktop/rclone-kdrive-photos.log"

 

5. Corrigir as datas das fotos, se necessário

Após uma exportação ou cópia de fotos, as datas do sistema dos arquivos podem não corresponder mais à data original da captura. Se a exibição cronológica não estiver correta, você pode corrigir as datas em uma cópia local dos arquivos antes de enviá-los definitivamente para o kDrive.

Trabalhe sempre em uma cópia local dos arquivos antes de executar um script de correção. O script abaixo não é executado diretamente em uma origem remota do rclone: ele processa uma pasta presente no computador.

Para preparar uma pasta local para correção, copie, por exemplo, as fotos para uma pasta temporária na área de trabalho:

rclone copy iCloudPhotos: "$HOME/Desktop/iCloud-Photos" --progress

Em seguida, instale o ExifTool em https://exiftool.org/index.html e execute o script abaixo no macOS a partir do aplicativo Terminal.

O script procura uma data nos metadados do arquivo e, em seguida, no seu nome. Os arquivos corrigidos são listados em DateFound.txt e os arquivos sem uma data utilizável são listados em DateError.txt, na área de trabalho.

O script a ser copiado e colado integralmente:

/bin/bash <<'BASH'
#!/bin/bash
set -u

ROOT="$(osascript -e 'POSIX path of (choose folder with prompt "Select the folder containing the files to update")')" || exit 0

DESKTOP="$HOME/Desktop"
LOG_FOUND="$DESKTOP/DateFound.txt"
LOG_ERROR="$DESKTOP/DateError.txt"
: > "$LOG_FOUND"
: > "$LOG_ERROR"

find_exiftool() {
    if command -v exiftool >/dev/null 2>&1; then
        command -v exiftool
        return 0
    fi
    if [ -x "/usr/local/bin/exiftool" ]; then
        printf '%s\n' "/usr/local/bin/exiftool"
        return 0
    fi
    if [ -x "/opt/homebrew/bin/exiftool" ]; then
        printf '%s\n' "/opt/homebrew/bin/exiftool"
        return 0
    fi
    return 1
}

EXIFTOOL="$(find_exiftool)" || {
    printf '%s\n' "ExifTool not found. Install it, then run the script again." >> "$LOG_ERROR"
    printf '%s\n' "ExifTool not found. Check DateError.txt on the desktop."
    exit 1
}

if [ ! -d "$ROOT" ]; then
    printf 'Invalid folder: %s\n' "$ROOT" >> "$LOG_ERROR"
    printf '%s\n' "Invalid folder. Check DateError.txt on the desktop."
    exit 1
fi

get_exif_date() {
    "$EXIFTOOL" -s3 -d "%Y:%m:%d %H:%M:%S" -DateTimeOriginal -CreateDate -MediaCreateDate -TrackCreateDate -CreationDate -ModifyDate -- "$1" 2>/dev/null | awk '/^[0-9]{4}:[0-9]{2}:[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}/ { print substr($0, 1, 19); exit }'
}

get_name_date() {
    local name
    name="$(basename "$1")"
    if [[ "$name" =~ ([12][0-9]{3})[-_]?([01][0-9])[-_]?([0-3][0-9])([_\ -]?([0-2][0-9])[-_\.]?([0-5][0-9])[-_\.]?([0-5][0-9]))? ]]; then
        local year="${BASH_REMATCH[1]}"
        local month="${BASH_REMATCH[2]}"
        local day="${BASH_REMATCH[3]}"
        local hour="12"
        local minute="00"
        local second="00"
        if [ -n "${BASH_REMATCH[5]:-}" ]; then
            hour="${BASH_REMATCH[5]}"
            minute="${BASH_REMATCH[6]}"
            second="${BASH_REMATCH[7]}"
        fi
        printf '%s:%s:%s %s:%s:%s\n' "$year" "$month" "$day" "$hour" "$minute" "$second"
        return 0
    fi
    return 1
}

is_valid_date() {
    date -j -f "%Y:%m:%d %H:%M:%S" "$1" "+%Y:%m:%d %H:%M:%S" >/dev/null 2>&1
}

to_touch_date() {
    printf '%s' "$1" | sed -E 's/^([0-9]{4}):([0-9]{2}):([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})$/\1\2\3\4\5.\6/'
}

write_metadata() {
    local file="$1"
    local date_value="$2"
    "$EXIFTOOL" -overwrite_original "-DateTimeOriginal=$date_value" "-CreateDate=$date_value" "-ModifyDate=$date_value" -- "$file" >/dev/null 2>&1 || true
}

process_file() {
    local file="$1"
    local date_value=""
    local source=""

    date_value="$(get_exif_date "$file")"
    if [ -n "$date_value" ]; then
        source="EXIF"
    else
        date_value="$(get_name_date "$file")"
        if [ -n "$date_value" ]; then
            source="file name"
        fi
    fi

    if [ -n "$date_value" ] && is_valid_date "$date_value"; then
        local touch_value
        touch_value="$(to_touch_date "$date_value")"

        if [ "$source" != "EXIF" ]; then
            write_metadata "$file" "$date_value"
        fi

        if touch -t "$touch_value" "$file" 2>/dev/null; then
            printf '%s | %s | %s\n' "$source" "$date_value" "$file" >> "$LOG_FOUND"
        else
            printf 'Unable to update file date: %s\n' "$file" >> "$LOG_ERROR"
        fi
    else
        printf 'No valid date found: %s\n' "$file" >> "$LOG_ERROR"
    fi
}

while IFS= read -r -d '' file; do
    case "$file" in
        *.json|*_original) continue ;;
    esac
    process_file "$file"
done < <(find "$ROOT" -type f -print0)

printf '%s\n' "Done. Check DateFound.txt and DateError.txt on the desktop."
BASH

Após a correção, envie a pasta local corrigida para o kDrive:

rclone copy "$HOME/Desktop/iCloud-Photos" kDrive:iCloudPhotos --progress --transfers 4 --checkers 8 --retries 5 --low-level-retries 10

 

6. Acessar os dados a partir do kDrive

Após a conclusão da cópia, seus dados estarão acessíveis a partir do aplicativo web kDrive, dos aplicativos móveis kDrive e dos dispositivos sincronizados com o aplicativo desktop kDrive.

Se você também estiver usando o aplicativo desktop kDrive, aguarde até o final da sincronização local antes de mover ou renomear as pastas importadas.


Esta seção de perguntas frequentes foi útil?