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

Aby automatycznie opróżnić usunięte pliki w NextCloud, ustaw maksymalny wiek przechowywania i upewnij się, że zadania w tle w NextCloud są uruchamiane zgodnie z harmonogramem. Na przykład, ustaw trashbin_retention_obligationautomatyczne auto, 30usuwanie elementów w koszu starszych niż 30 dni, a następnie uruchamiaj zalecane przez NextCloud zadanie systemowe cron co pięć minut. Sama domyślna autopolityka nie gwarantuje usunięcia plików dokładnie 30. dnia.

Automatyczne usuwanie jest trwałe. Wybierz okres przechowywania, który da użytkownikom czas na naprawienie błędów i twórz kopie zapasowe wszystkich danych, które muszą pozostać możliwe do odzyskania po opuszczeniu kosza.

Co Nextcloud czyści domyślnie?

Dokumentacja administratora NextCloud 35 opisuje autoprzechowywanie usuniętych elementów przez co najmniej 30 dni, a następnie umożliwienie ich usunięcia, jeśli zajdzie taka potrzeba. Jeśli miejsce nie jest potrzebne, elementy mogą pozostać na dysku dłużej niż 30 dni. Takie zachowanie sprawia, że ​​kosz staje się obszarem odzyskiwania, a nie ścisłym 30-dniowym licznikiem czasu usuwania.

Wartość politykiCo to oznaczaUżyj go, gdy
autoPrzechowuj przedmioty przez co najmniej 30 dni; wyjmij je później, jeśli będzie potrzeba więcej miejsca.Potrzebujesz domyślnego okna odzyskiwania i czyszczenia opartego na przestrzeni dyskowej.
auto, 30Automatycznie usuwaj elementy starsze niż 30 dni. Elementy można również usunąć wcześniej, jeśli potrzeba miejsca.Chcesz, aby maksymalny wiek wynosił 30 dni.
30, 90Przechowuj elementy przez co najmniej 30 dni i usuwaj je po 90 dniach.Potrzebujesz okna odzyskiwania i górnej granicy retencji.
disabledNie czyść automatycznie kosza na śmieci.Masz osobny proces przechowywania i zamierzasz zachować usunięte elementy.

Retencja nie jest absolutna, jeśli limit użytkownika zostanie przekroczony z powodu elementów w koszu: Nextcloud może zignorować skonfigurowaną politykę i usunąć elementy do momentu spełnienia wymogu limitu. Przed zastosowaniem polityki do kont z ograniczeniami limitu należy zapoznać się z aktualną dokumentacją dotyczącą retencji w koszu .

Ustaw maksymalny wiek usuwanych plików

Uruchom occz katalogu instalacyjnego Nextcloud jako użytkownik HTTP, aby zachować spójność uprawnień do plików. W systemach Debian i Ubuntu tym użytkownikiem jest zazwyczaj www-data, a ścieżka instalacji to /var/www/nextcloud. Zastąp go swoim rzeczywistym użytkownikiem i ścieżką w innych systemach lub kontenerach.

cd /var/www/nextcloud
sudo -E -u www-data php occ config:system:set trashbin_retention_obligation --value='auto, 30'
Polecenie terminala ustawia trashbin_retention_obligation na auto, 30, a wynik potwierdza wartość konfiguracji systemu.
Ustaw maksymalny wiek na 30 dni przy użyciu wartości auto, 30 w zasadach dotyczących przechowywania.

To ustawienie jest przechowywane w konfiguracji systemu NextCloud. Aby sprawdzić aktywną wartość, uruchom:

sudo -E -u www-data php occ config:system:get trashbin_retention_obligation

Na wyjściu powinien pojawić się komunikat auto, 30. Jeśli wolisz inną politykę, skorzystaj z powyższej tabeli i wprowadź jej wartość. 30, 90Opcja ta ma na celu przechowywanie elementów przez co najmniej 30 dni i usuwanie ich po 90 dniach; egzekwowanie limitu może nadal wymusić wcześniejsze czyszczenie.

Upewnij się, że zadania w tle działają niezawodnie

Nextcloud uruchamia zadanie wygasania kosza w tle. W podręczniku administratora napisano, że zadanie kosza w tle jest uruchamiane co 30 minut, ale nadal zależy to od uruchomienia programu uruchamiającego zadania w tle w instalacji. Nextcloud zaleca korzystanie z crona w systemie operacyjnym do standardowych zadań; domyślny tryb AJAX jest mniej niezawodny, ponieważ zadania są uruchamiane tylko wtedy, gdy użytkownicy odwiedzają witrynę.

Ustaw Nextcloud w trybie cron:

sudo -E -u www-data php occ background:cron
W terminalu uruchamiane jest polecenie occ background:cron i wyświetlana jest odpowiedź, że zadania w tle są ustawione na tryb cron.
Przełącz Nextcloud w tryb cron, aby zaplanowane zadania w tle nie zależały od otwierania witryny przez użytkowników.

Następnie edytuj plik crontab użytkownika serwera WWW. Na typowym hoście Debian lub Ubuntu:

sudo crontab -u www-data -e

Dodaj ten wiersz, zmieniając ścieżkę wykonywalną PHP lub Nextcloud, jeśli instalacja korzysta z innych lokalizacji:

*/5 * * * * php -f /var/www/nextcloud/cron.php
Edytor crontab specyficzny dla użytkownika zawiera wiersz uruchamiający /var/www/nextcloud/cron.php co pięć minut.
Zaplanuj cron.php pod użytkownikiem HTTP. Zastąp przykładową ścieżkę Nextcloud ścieżką instalacji.

Ten harmonogram uruchamia program uruchamiający w tle Nextcloud co pięć minut; poszczególne zadania mają własne harmonogramy. W przypadku wdrożenia kontenera należy użyć udokumentowanej usługi cron lub zaplanowanego procesu roboczego dla tego wdrożenia i uruchomić go cron.phpjako użytkownik sieciowy Nextcloud. Nie należy dodawać drugiego zadania bezmyślnie, jeśli obraz lub platforma już je uruchamia.

Jak bezpiecznie sprawdzić termin ważności?

Najpierw zweryfikuj zarówno politykę, jak i zaplanowane zadanie. Sprawdź politykę za pomocą occ config:system:get trashbin_retention_obligation, a następnie wyświetl zaplanowane zadanie:

sudo crontab -u www-data -l
W terminalu wyświetla się aktywny auto, wartość retencji 30 i pięciominutowy wpis cron dla cron.php.
Sprawdź zapisaną wartość retencji i upewnij się, że użytkownik serwera WWW ma cykliczny wpis cron.php.

W ustawieniach administracyjnych NextCloud sprawdź, czy zadania w tle są ustawione na Cron i czy czas wykonania ostatniego zadania został przesunięty. Po upływie skonfigurowanego maksymalnego wieku sprawdź, czy w sekcji „Usunięte pliki” znajduje się stary element testowy, który można bezpiecznie utracić. Zadanie wygasania jest uruchamiane zgodnie z harmonogramem, więc czyszczenie niekoniecznie następuje natychmiast po osiągnięciu dokładnej granicy retencji.

Aby przeprowadzić jednorazowy test z niestandardową polityką przechowywania, uruchom polecenie retention-aware:

sudo -E -u www-data php occ trashbin:expire --quiet

W obecnej wersji NextCloud trashbin:expireobowiązuje skonfigurowany okres przechowywania. Przy domyślnej autopolityce polecenie kończy działanie bez wygasania elementów; domyślne automatyczne wygasanie jest obsługiwane przez zadanie w tle. Nie należy zastępować trashbin:cleanup --all-users: to polecenie trwale usuwa wszystkie śmieci dla każdego użytkownika, niezależnie od wieku, i nie jest standardowym ustawieniem przechowywania.

Lista kontrolna szybkiej weryfikacji

  • Aktywna polityka zwrócona przez occ config:system:get trashbin_retention_obligationodpowiada planowanemu okresowi przechowywania.
  • Zadania w tle Nextcloud są ustawione na Cron, a tabela crontab użytkownika serwera WWW zawiera poprawną cron.phpścieżkę.
  • Ostatni czas wykonania zadania można zmienić w ustawieniach administracyjnych.
  • Stary element testowy, który przekroczył maksymalny wiek, znika po uruchomieniu zadania w tle, natomiast nowsze elementy pozostają, chyba że ze względu na obciążenie pamięci masowej lub limitu konieczne jest wyczyszczenie.

Jeśli czas ostatniego wykonania nie ulegnie zmianie, przed zmianą wartości retencji rozwiąż problemy z cronem systemowym, ścieżką PHP CLI, użytkownikiem serwera WWW i ścieżką NextCloud. Poprawna polityka nie wyczyści niczego, jeśli program uruchamiający w tle nigdy się nie uruchomi.

Oficjalna dokumentacja

Zostaw komentarz

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.

Wyczyść ostrzeżenie Nextcloud dotyczące pamięci PHP na serwerze WWW

Ustaw limit pamięci PHP, z którego faktycznie korzysta Nextcloud, uruchom ponownie odpowiednią usługę i potwierdź ustawienie 512 MB w przeglądzie administratora.

Podłącz kontener zgodny z S3 do zewnętrznej pamięci masowej NextCloud

Zamontuj zgodny obiekt pamięci masowej w Nextcloud, korzystając z zaplecza S3, z odpowiednim punktem końcowym, poświadczeniami, zakresem dostępu i krokami weryfikacji.