Rozwiązanie społecznościowe

iCloudPD w systemie ZimaOS: naprawa uwierzytelniania za pomocą pęku kluczy i MFA

A ZimaOS user initialized boredazfcuk/icloudpd and created a keyring but still hit an MFA-cookie authentication failure.

Jeśli boredazfcuk/icloudpd tworzy keyring, ale nadal nie przechodzi uwierzytelniania, ponownie uruchom udokumentowany proces inicjalizacji kontenera i skup się na pliku cookie MFA, a nie tylko na zapisanym haśle. Ten obraz Dockera wymaga zarówno trwałego stanu /config, jak i prawidłowej sesji uwierzytelniania Apple, aby automatyczne pobieranie zdjęć mogło być kontynuowane.

Użytkownik źródłowy utworzył już keyring, ale nadal otrzymywał komunikat „Brak informacji o uwierzytelnianiu wieloskładnikowym w pliku cookie”. Aktualna dokumentacja kontenera wyjaśnia dokładnie dlaczego: inicjalizacja zapisuje hasło i generuje plik cookie MFA, który później wymaga okresowego ponownego uwierzytelnienia.

Terminal kontenera icloudpd pokazujący błąd uwierzytelniania dwuskładnikowego po inicjalizacji
Kontener dotarł do etapu MFA, ale po inicjalizacji zgłosił brak informacji uwierzytelniających. Źródło: forum społeczności IceWhale.

Co musi być przechowywane trwale

Przypisz folder na hoście do ścieżki /config w kontenerze. Ten katalog przechowuje konfigurację, pliki keyringu Pythona, plik cookie uwierzytelniania oraz stan wymagany po ponownym uruchomieniu kontenera.

Przypisz osobny folder na hoście dla pobranych zdjęć, zgodnie z wybraną wartością download_path. Nie przechowuj biblioteki zdjęć wyłącznie w nietrwałym systemie plików kontenera.

Uruchom oficjalne polecenie inicjalizacji

Dokumentacja nadrzędnego projektu docker-icloudpd zawiera następujące polecenie:

docker exec -it icloudpd sync-icloud.sh --Initialise

Zastąp icloudpd, jeśli kontener w ZimaOS ma inną nazwę.

Keyring to tylko jedna część uwierzytelniania

Podczas inicjalizacji skrypt prosi o hasło do konta Apple i, jeśli wyrazisz zgodę, zapisuje je w keyringu. Następnie obsługuje uwierzytelnianie dwuskładnikowe i tworzy plik cookie w katalogu /config.

Jeśli hasło jest obecne, ale plik cookie nie zawiera prawidłowego stanu MFA, kontener nadal może zakończyć działanie błędem, dokładnie tak jak pokazano na zrzucie ekranu źródłowego.

Ukończ MFA za pomocą zaufanego urządzenia Apple

Po wyświetleniu monitu zatwierdź logowanie na zaufanym urządzeniu i wprowadź aktualny kod weryfikacyjny w interaktywnym terminalu. Nie używaj ponownie wygasłego kodu z wcześniejszej próby.

Jeśli Apple nie dostarcza kodu weryfikacyjnego lub go nie akceptuje, sprawdź, czy możesz normalnie zalogować się na konto Apple przez iCloud.com, zanim obwinisz Dockera.

Sprawdź właściciela i uprawnienia katalogu /config

Kontener musi mieć możliwość zapisywania plików keyringu i plików cookie w trwałym folderze konfiguracji. Jeśli zmieniono PUID/PGID albo przypisano folder ZimaOS z niezgodnym właścicielem, stan uwierzytelniania może nie przetrwać.

Po inicjalizacji sprawdź, czy nowe pliki keyringu i cookie pojawiają się w przypisanym katalogu konfiguracji i pozostają w nim po ponownym uruchomieniu kontenera.

Uwierzytelnij się ponownie, gdy Apple wygaśnie sesję

Dokumentacja nadrzędnego projektu informuje, że współczesne uwierzytelnianie Apple może wymagać ponownego uwierzytelnienia mniej więcej co 30 dni. Kontener udostępnia polecenie:

docker exec -it icloudpd reauth.sh

Uwzględnij to w planie konserwacji. Sprawny kontener może później przestać pobierać zdjęcia, mimo że w ZimaOS nic się nie zmieniło.

Jeśli zmieniono hasło do konta Apple

Udostępniony przez projekt nadrzędny wrapper oferuje opcję usunięcia keyringu. Usuń nieaktualne zapisane dane uwierzytelniające, a następnie ponownie przeprowadź inicjalizację, zamiast wielokrotnie próbować używać nieprawidłowego wpisu w keyringu.

Przechowuj miejsce docelowe zdjęć oddzielnie od /config

Stan konfiguracji i pobrane zdjęcia mają różne wymagania dotyczące kopii zapasowych. Twórz kopie zapasowe właściwej biblioteki zdjęć niezależnie, a katalog /config chroń na tyle, aby można było odtworzyć kontener bez rozpoczynania wszystkiego od zera.

Poradnik tworzenia kopii zapasowych zdjęć może pomóc w utworzeniu drugiej lokalnej lub zewnętrznej kopii.

Co zrobić, jeśli uwierzytelnianie Apple nadal się nie udaje?

Włącz rejestrowanie debugowania kontenera, sprawdź dokładny etap uwierzytelniania i przejrzyj tracker zgłoszeń oraz dyskusji projektu nadrzędnego pod kątem bieżących zmian po stronie Apple. Uwierzytelnianie iCloud nie jest stabilnym lokalnym protokołem; Apple może niezależnie od ZimaOS zmienić sposób logowania.

FAQ

Dlaczego icloudpd nie działa, mimo że hasło znajduje się w keyringu?

Wrapper wymaga również prawidłowego pliku cookie uwierzytelniania dwuskładnikowego. Samo zapisane hasło nie wystarczy.

Jak często muszę ponownie się uwierzytelniać?

Aktualna dokumentacja wrappera opisuje okresowe ponowne uwierzytelnianie MFA, zwykle mniej więcej co 30 dni.

Gdzie przechowywać plik cookie uwierzytelniania?

Przechowuj trwale folder /config kontenera na pamięci masowej ZimaOS, aby stan keyringu i pliku cookie przetrwał odtworzenie kontenera.

Czy icloudpd jest oficjalnym produktem Apple do tworzenia kopii zapasowych?

Nie. To zewnętrzny downloader korzystający ze sposobu, w jaki działa uwierzytelnianie Apple. Zachowaj niezależną kopię zapasową pobranej biblioteki.