Tworzenie kopii zapasowej i przywracanie skrzynki pocztowej Zimbra CE za pomocą eksportów TGZ

Aby utworzyć kopię zapasową jednej skrzynki pocztowej Zimbra Community Edition (CE), wyeksportuj ją jako plik TGZ za pomocą zmmailbox getRestURL, sprawdź poprawność archiwum i przywróć je za pomocą postRestURL. Podczas importowania na konto, które już zawiera pocztę, zacznij od resolve=skip; użycie resolve=resetw katalogu głównym skrzynki pocztowej może usunąć istniejące elementy.

Dowiedz się, co chroni eksport na skrzynkę pocztową

Zimbra eksportuje i importuje dokumenty TGZ za pośrednictwem interfejsu REST i zmmailboxnarzędzia. Archiwum ma na celu przechowywanie zawartości skrzynek pocztowych i struktury folderów, w tym wiadomości e-mail w plikach EML oraz odpowiednich danych kalendarza, kontaktów, zadań lub aktówki. To, jaka zawartość i metadane przetrwają import, zależy od wersji źródłowej i docelowej oraz przenoszonych elementów.

Nie należy mylić tego z pełną kopią zapasową konta lub serwera. Eksport zawartości TGZ nie tworzy brakującego konta ani nie zachowuje niezależnie wszystkich atrybutów LDAP, haseł, aliasów, przypisań klas usług, ustawień routingu, filtrów, uprawnień ani konfiguracji serwera. Wszelkie niezbędne ustawienia konta należy zarejestrować osobno, korzystając z procedur administracyjnych. Narzędzie zmbackupopisane w starszej dokumentacji Zimbra należy do wersji Network Edition, a nie do standardowego przepływu pracy w wersji CE.

Przykłady poleceń są zgodne z udokumentowanymi interfejsami Zimbra, ale nie stanowią one testu na żywo każdej niezależnie skompilowanej wersji CE. Przed zaplanowaniem odzyskiwania produkcyjnego sprawdź zmcontrol -vdostępne informacje, zmmailboxpomoc i notatki do wydania kompilacji. Nie należy również zakładać, że eksport REST na żywo przechwyci jeden idealnie spójny moment, jeśli użytkownik zmieni elementy podczas działania. Zaplanuj okno niskiej aktywności, gdy spójność ma znaczenie.

Eksportuj indywidualną skrzynkę pocztową

1. Zidentyfikuj konto i jego hosta poczty

Połącz się z serwerem Zimbra, używając konta w systemie operacyjnym z uprawnieniami administratora. Przełącz się na użytkownika usługi Zimbra, a następnie sprawdź, czy konto docelowe istnieje. W przypadku wdrożenia wieloserwerowego upewnij się, że łączysz się z właściwą usługą poczty elektronicznej.

sudo -iu zimbra
zmcontrol -v
zmprov ga user@example.com zimbraMailHost zimbraAccountStatus
zmmailbox -z -m user@example.com getAllFolders

Zastąp je user@example.comrzeczywistym kontem. Przełącznik -zkorzysta z lokalnych danych logowania administratora Zimbra; nie jest to hasło użytkownika końcowego. Jeśli nie masz niezbędnych uprawnień administracyjnych, skorzystaj z zatwierdzonego przepływu pracy dostępu do konta zamiast osadzać hasła w poleceniu powłoki.

Terminal pokazujący wyszukiwanie konta Zimbra z hostem skrzynki pocztowej i aktywnym statusem
Przed rozpoczęciem eksportu sprawdź adres skrzynki pocztowej, serwer hostujący i status konta.

2. Utwórz prywatną lokalizację archiwum

Jako uprzywilejowany użytkownik systemu operacyjnego utwórz lokalizację, do której użytkownik usługi Zimbra będzie mógł zapisywać. Zrób to poza katalogami publicznymi i najpierw sprawdź ilość wolnego miejsca. Uruchom polecenie instalacyjne przed przełączeniem się na [ zimbralub wróć do swojego uprzywilejowanego konta].

sudo install -d -o zimbra -g zimbra -m 0700 /srv/zimbra-mailbox-backups
df -h /srv/zimbra-mailbox-backups
ls -ld /srv/zimbra-mailbox-backups

Archiwa poczty mogą zawierać poufne wiadomości i załączniki. Ogranicz dostęp do systemu plików, chroń kopie znajdujące się poza serwerem i stosuj odpowiednie zasady przechowywania.

Terminal pokazujący prywatny katalog kopii zapasowej skrzynki pocztowej i listę uprawnień systemu Unix
Użyj prywatnego katalogu kopii zapasowych i sprawdź uprawnienia systemu plików.

3. Eksportuj skrzynkę pocztową jako TGZ

Z zimbrapoziomu powłoki użyj poniższego eksportera REST. Ta -t 0opcja wyłącza limit czasu CLI dla dużych operacji; nie gwarantuje jednak, że proxy, wejście/wyjście dysku lub limity serwera nie zakłócą eksportu.

umask 077
zmmailbox -z -m user@example.com -t 0 getRestURL '//?fmt=tgz' > /srv/zimbra-mailbox-backups/user-20261010.tgz

Uruchom jeden eksport dla każdego konta i wybierz datę i unikalną nazwę pliku. Nie używaj ponownie poprzedniej ścieżki archiwum, ponieważ przekierowanie powłoki ją skróci. Jeśli polecenie zgłosi błąd, traktuj plik wynikowy jako niekompletny, dopóki nie przejdzie poniższych kontroli.

Terminal pokazujący polecenie zmmailbox getRestURL eksportujące skrzynkę pocztową do pliku TGZ
Polecenie getRestURL zapisuje skompresowane archiwum skrzynki pocztowej w wybranym katalogu.

4. Sprawdź poprawność archiwum i zapisz jego sumę kontrolną

Niepusty plik TGZ nie stanowi dowodu na odzyskiwalność kopii zapasowej. Przetestuj cały strumień tar, sprawdź reprezentatywne wpisy w folderach i oblicz skrót. Niepowodzenie kontroli tar oznacza, że ​​powinieneś zbadać eksport, a nie import pliku.

test -s /srv/zimbra-mailbox-backups/user-20261010.tgz
tar -tzf /srv/zimbra-mailbox-backups/user-20261010.tgz > /dev/null
tar -tzf /srv/zimbra-mailbox-backups/user-20261010.tgz | head -n 20
cd /srv/zimbra-mailbox-backups
sha256sum user-20261010.tgz > user-20261010.tgz.sha256

Zapisz sumę kontrolną obok archiwum i przenieś oba pliki do chronionego magazynu poza oryginalnym serwerem. Po skopiowaniu uruchom sha256sum -c user-20261010.tgz.sha256w katalogu zawierającym oba pliki. Poprawna suma kontrolna potwierdza integralność bajtów, a nie to, że każda funkcja skrzynki pocztowej zostanie poprawnie przywrócona.

Terminal pokazujący istnienie archiwum, integralność gzip i listę folderów skrzynki pocztowej
Przed potraktowaniem eksportu jako użytecznej kopii odzyskiwania należy sprawdzić archiwum.
Terminal pokazujący sumę kontrolną SHA-256 dla pliku TGZ skrzynki pocztowej
Zarejestruj skrót SHA-256, aby można było sprawdzić, czy w przesłanym archiwum nie zaszły jakieś zmiany.

Przywróć archiwum bez nadpisywania poczty na żywo

5. Przygotuj i sprawdź skrzynkę pocztową docelową

Utwórz konto docelowe za pomocą standardowego, zatwierdzonego procesu provisioningu Zimbra, jeśli jeszcze nie istnieje; import TGZ go nie utworzy. Sprawdź jego adres, limit, dostęp do usługi i istniejące foldery. Do pierwszego testu użyj odizolowanego konta nieprodukcyjnego, szczególnie w przypadku transferów między wersjami.

sudo -iu zimbra
zmprov ga user@example.com zimbraMailHost zimbraAccountStatus
zmmailbox -z -m user@example.com getAllFolders

Skopiuj zweryfikowane archiwum do katalogu, który może odczytać użytkownik docelowej usługi Zimbra, zachowując ograniczone uprawnienia. W przypadku transferu zdalnego ponownie sprawdź sumę kontrolną w miejscu docelowym. Nie zakładaj, że konto o tym samym adresie jest puste.

Terminal pokazujący atrybuty konta z polecenia provisioningu Zimbra
Przed zaimportowaniem elementów skrzynki pocztowej sprawdź, czy wybrane konto docelowe istnieje.

6. Importuj z polityką dotyczącą konfliktów, która odpowiada miejscu docelowemu

Aby dodać brakujące elementy, pozostawiając pasujące elementy na miejscu, użyj resolve=skip. Jest to udokumentowane domyślne zachowanie w przypadku obsługi duplikatów, ale nie gwarantuje idealnego scalania dla każdego typu lub wersji elementu.

zmmailbox -z -m user@example.com -t 0 postRestURL '//?fmt=tgz&resolve=skip' /srv/zimbra-mailbox-backups/user-20261010.tgz

Unikaj kopiowania destrukcyjnego przykładu do produkcji. Dokumenty Zimbra resolve=resetsłużą do czyszczenia elementów docelowych przed importem. Zasady replacei modifyzmieniają również sposób obsługi istniejących elementów. Rozważ ich kontrolowane przywracanie dopiero po przetestowaniu i uzyskaniu zgody na dokładny zakres konta i folderu.

Terminal pokazujący zmmailbox postRestURL z opcją resolve=skip
Importuj archiwum z zasadą pomijania konfliktów, jeśli istniejąca zawartość skrzynki pocztowej musi zostać zachowana.

Obsługa błędów eksportu i weryfikacja odzyskiwania

W przypadku przekroczenia limitu czasu, zachowaj -t 0i sprawdź limity czasu serwera lub proxy oraz limity pamięci masowej; zerowy limit czasu CLI nie rozwiązuje wszystkich problemów sieciowych. Wiki pomocy technicznej Zimbra ostrzega również o uszkodzonych archiwach i awariach wejścia/wyjścia w przypadku niektórych dużych eksportów skrzynek pocztowych. W przypadku eksportu o zbyt dużym rozmiarze lub o zawodności, podziel pracę według folderu lub daty, a następnie przetestuj każde archiwum i jego import na zapasowym koncie.

Na przykład udokumentowane zapytanie wyszukiwania under:Inboxwybiera zawartość skrzynki odbiorczej i jej podfoldery. Cudzysłowy wokół adresu URL REST są niezbędne, ponieważ znak ampersand musi dotrzeć do Zimbry, a nie do powłoki.

zmmailbox -z -m user@example.com -t 0 getRestURL '//?fmt=tgz&query=under:Inbox' > /srv/zimbra-mailbox-backups/inbox-20261010.tgz

Archiwum obejmujące cały folder nie zastępuje pełnego eksportu skrzynki pocztowej. Należy niezależnie zweryfikować jego zawartość i udokumentować, które foldery lub daty zostały pominięte. Jeśli konto jest wyłączone lub żądanie zwróci błąd autoryzacji, należy sprawdzić status konta i uwierzytelnianie administracyjne zamiast pomijać sprawdzanie certyfikatu TLS lub ujawniać dane uwierzytelniające.

7. Sprawdź przywrócone elementy, a nie tylko wyjście polecenia

Wypisz foldery docelowe i porównaj je z zarejestrowanymi folderami źródłowymi i inwentarzem TGZ:

zmmailbox -z -m user@example.com getAllFolders
zmmailbox -z -m user@example.com getMailboxSize

Następnie zaloguj się na konto testowe i otwórz próbkę odebranych i wysłanych wiadomości, załączników, kontaktów i wydarzeń w kalendarzu. Sprawdź daty i ścieżki folderów oraz ewentualne błędy importu. W razie potrzeby utwórz ponownie lub sprawdź osobno aliasy, uprawnienia udostępniania, reguły i inne ustawienia na poziomie konta. Odzyskiwanie danych należy uznać za pomyślne dopiero po uzyskaniu dostępu do oczekiwanych danych i zarejestrowaniu sprawdzeń.

Terminal pokazujący nazwy folderów Zimbra zwrócone przez getAllFolders
Porównaj przywróconą Skrzynkę odbiorczą, Wysłane, Kalendarz i inne foldery z oczekiwaną zawartością archiwum.

Główne źródła: odniesienia do poleceń Zimbra zmmailbox , odniesienia do interfejsu REST API Zimbra , odniesienia do administracji Zimbra zmprov oraz artykuł Zimbra na temat eksportów zakresowych i ostrzeżeń dotyczących dużych archiwów . Niektóre przykłady wiki Zimbra są starsze lub oznaczone jako „w trakcie realizacji”; sprawdź ich działanie w zainstalowanej kompilacji CE przed użyciem ich w środowisku produkcyjnym.

Zostaw komentarz

Ustaw publiczny adres URL NextCloud, aby mógł się do siebie dodzwonić

Napraw ostrzeżenie Nextcloud o brakującym adresie wychodzącym, ustawiając jego kanoniczny adres URL i sprawdzając routing DNS, HTTPS i odwrotnego serwera proxy na samym serwerze.

Konfigurowanie buforowania Nextcloud Redis w systemie Ubuntu 24.04

Konfigurowanie buforowania Nextcloud Redis w systemie Ubuntu 24.04

Skonfiguruj APCu i Redis przez lokalne gniazdo Unix na potrzeby buforowania i blokowania plików w usłudze Nextcloud, wraz z instrukcjami dla bieżących i starszych wersji usługi Nextcloud.

Uruchom automatycznie Nextcloud Cron za pomocą timera Systemd

Sprawdź tryb cron Nextcloud, napraw usługę systemd i timer oraz zweryfikuj, czy zadania w tle są uruchamiane po uruchomieniu i co pięć minut.

Usuń ostrzeżenie o blokowaniu plików w NextCloud za pomocą Redis

Włącz niezawodne blokowanie plików Nextcloud, wybierz odpowiedni serwer Redis lub Valkey i sprawdź, czy ostrzeżenie zostanie usunięte bez ryzyka równoczesnych zmian w plikach.

Co jest potrzebne, aby uzyskać ocenę bezpieczeństwa Nextcloud A+

Co jest potrzebne, aby uzyskać ocenę bezpieczeństwa Nextcloud A+

Napraw typowe błędy skanowania Nextcloud dzięki bieżącym aktualizacjom, protokołom HTTPS i HSTS, precyzyjnemu zaufaniu do odwrotnego serwera proxy i sprawdzeniu względem serwera publicznego.

Włącz szyfrowanie po stronie serwera Nextcloud z mierzalnym wpływem

Skonfiguruj Nextcloud SSE dla pamięci masowej, która tego wymaga, chroń klucze szyfrujące i zmierz wpływ transferu i procesora przed zaszyfrowaniem istniejących plików.

Dodaj wyszukiwanie pełnotekstowe Elasticsearch do NextCloud

Połącz wyszukiwarkę plików Nextcloud z Elasticsearch, zindeksuj zawartość dokumentów i wybierz konfigurację odpowiadającą Twoim potrzebom w zakresie serwera i bezpieczeństwa.

Ustaw niezawodną politykę wygasania dla usuniętych plików w usłudze NextCloud

Ustaw niezawodną politykę wygasania dla usuniętych plików w usłudze NextCloud

Skonfiguruj Nextcloud tak, aby usuwał usunięte pliki po upływie określonego czasu przechowywania, niezawodnie planował zadania w tle i unikał poleceń, które usuwają śmieci każdego użytkownika.

Ostrzeżenie o braku indeksów bazy danych NextCloud

Ostrzeżenie o braku indeksów bazy danych NextCloud

Wykonaj bezpieczną naprawę OCC w Nextcloud, przejrzyj zmiany w bazie danych i sprawdź, dlaczego ostrzeżenie może nadal się pojawiać.

Zwiększ limit przesyłania danych do sieci w NextCloud powyżej 2 GB

Zwiększ limit przesyłania danych do sieci w NextCloud powyżej 2 GB

Zezwól na przesyłanie większych plików przez przeglądarkę Nextcloud, dostosowując ustawienia PHP, Nginx lub Apache, tymczasowego miejsca przechowywania i limitu czasu — i sprawdź, który limit blokuje plik.