Jeśli główny crontab utworzony za pomocą crontab -e znika po ponownym uruchomieniu ZimaOS, jest to zgodne z charakterystycznym dla urządzeń układem systemu ZimaOS, który jest w większości tylko do odczytu. Wątek z listopada 2025 r. prawidłowo wskazał objaw, ale przedstawiał jedynie ogólne obejście oparte na kontenerze.
Obecnie dostępna jest bardziej natywna dla ZimaOS metoda: pakiet Zima Cron utrzymywany przez społeczność można zainstalować za pomocą zpkg, a jego konfiguracja zaplanowanych zadań jest przechowywana w sposób przystosowany do ZimaOS.
Dlaczego stary crontab użytkownika root zniknął
Użytkownik utworzył wpis cron dla użytkownika root, potwierdził go poleceniem crontab -l, a następnie utracił go po ponownym uruchomieniu. W odpowiedzi społeczność wyjaśniła, że trwała konfiguracja powinna znajdować się w stałej pamięci ZimaOS, a nie w standardowych, zmiennych ścieżkach systemu Linux.
To wyjaśnienie jest zgodne z aktualnymi zaleceniami ZimaOS, według których większość folderów systemowych jest tylko do odczytu, a dane użytkownika i aplikacji powinny znajdować się w /DATA.
Używaj Zima Cron zamiast odtwarzać stan /var/spool
Aktualny samouczek Zima Cron opisuje polecenie zpkg install zima_cron, po którym Zima Cron pojawi się na liście aplikacji. Obsługuje harmonogramy interwałowe oraz standardowe wyrażenia cron.
Przechowuj skrypty i pliki wyjściowe w /DATA, aby samo zadanie nie zależało od nietrwałej ścieżki systemowej.
Przetestuj trwałość, zanim zaufasz rzeczywistemu zadaniu kopii zapasowej
Najpierw utwórz nieszkodliwe zadanie — na przykład dopisujące bieżący czas do dziennika w /DATA. Sprawdź, czy działa, uruchom ponownie ZimaOS, a następnie potwierdź, że zadanie nadal istnieje i dalej zapisuje nowe znaczniki czasu.
Dopiero potem przenieś do harmonogramu polecenie tworzenia kopii zapasowej, czyszczenia lub synchronizacji. Przewodnik rozwiązywania problemów z zaplanowanymi zadaniami obejmuje kolejny etap, gdy harmonogram przetrwa, ale samo polecenie się nie wykonuje.
Kiedy kontener harmonogramu nadal ma sens
Dedykowany kontener harmonogramu nadal jest rozsądnym rozwiązaniem, gdy zadanie należy do jednego stosu aplikacji i powinno być wersjonowane razem z jego konfiguracją Compose. W takim przypadku utrwal jego konfigurację i jasno wskaż jeden komponent odpowiedzialny za harmonogramowanie.
Przewodnik po trwałości danych Dockera pomaga uniknąć umieszczania skryptów wewnątrz nietrwałej warstwy kontenera.
Podsumowanie
Nie polegaj na ręcznie edytowanym systemowym crontabie jako trwałej warstwie harmonogramowania w ZimaOS. Umieszczaj skrypty i dzienniki w /DATA, korzystaj z Zima Cron lub innego celowo utrwalonego harmonogramu i sprawdź, czy harmonogram przetrwa zarówno ponowne uruchomienie ZimaOS, jak i odtworzenie aplikacji lub kontenera.
