Home
» Come fare
»
Imposta una politica di scadenza affidabile per i file eliminati da Nextcloud.
Imposta una politica di scadenza affidabile per i file eliminati da Nextcloud.
Per svuotare automaticamente la cartella "Eliminati" di Nextcloud, imposta un periodo di conservazione massimo e assicurati che i processi in background di Nextcloud vengano eseguiti a intervalli regolari. Ad esempio, imposta trashbin_retention_obligationl' auto, 30eliminazione automatica degli elementi nel cestino più vecchi di 30 giorni e poi esegui il cron di sistema consigliato da Nextcloud ogni cinque minuti. La autosola impostazione predefinita non garantisce l'eliminazione esatta al trentesimo giorno.
L'eliminazione automatica è permanente. Scegli un periodo di conservazione che dia agli utenti il tempo di correggere eventuali errori e conserva copie di backup di tutto ciò che deve rimanere recuperabile anche dopo essere stato eliminato dal cestino.
Quali operazioni di pulizia esegue Nextcloud per impostazione predefinita?
La documentazione per gli amministratori di Nextcloud 35 descrive autola conservazione degli elementi eliminati per almeno 30 giorni, dopodiché è possibile rimuoverli se è necessario spazio di archiviazione. Se non è necessario spazio, gli elementi possono rimanere nel cestino anche oltre i 30 giorni. Questo comportamento trasforma il cestino in un'area di ripristino, non in un rigoroso timer di eliminazione di 30 giorni.
Valore della policy
Cosa significa
Usalo quando
auto
Conserva gli oggetti per almeno 30 giorni; rimuovili in seguito se hai bisogno di spazio.
Desideri utilizzare la finestra di ripristino predefinita e la pulizia basata sullo spazio.
auto, 30
Gli elementi più vecchi di 30 giorni vengono eliminati automaticamente; è possibile eliminarli anche prima, se necessario.
Desideri un'età massima di 30 giorni.
30, 90
Conserva gli elementi per almeno 30 giorni e cancellali dopo 90 giorni.
Hai bisogno di una finestra di recupero più un limite superiore di conservazione.
disabled
Non svuotare automaticamente il cestino.
Hai una procedura di conservazione separata e intendi conservare gli elementi eliminati.
La conservazione non è assoluta se la quota di un utente viene superata a causa di elementi nel cestino: Nextcloud potrebbe ignorare la policy configurata ed eliminare gli elementi fino al raggiungimento della quota richiesta. Consultare la documentazione aggiornata sulla conservazione degli elementi nel cestino prima di applicare una policy ad account con vincoli di quota.
Imposta un'età massima per i file eliminati
Eseguire il programma occdalla directory di installazione di Nextcloud e come utente HTTP in modo che i permessi dei file rimangano invariati. Su Debian o Ubuntu, questo utente è solitamente www-datae il percorso di installazione è spesso /var/www/nextcloud. Sostituire l'utente e il percorso effettivi con quelli utilizzati su altri sistemi o nei container.
L'output dovrebbe mostrare auto, 30. Se preferisci una politica diversa, usa la tabella sopra e inserisci il suo valore. L' 30, 90opzione mira a conservare gli elementi per almeno 30 giorni e a rimuoverli dopo 90 giorni; l'applicazione delle quote può comunque imporre una pulizia anticipata.
Assicurati che i processi in background vengano eseguiti correttamente.
Nextcloud esegue la gestione della scadenza del cestino come processo in background. Il manuale di amministrazione indica che il processo in background del cestino viene eseguito ogni 30 minuti, ma dipende comunque dall'attivazione del gestore dei processi in background dell'installazione. Nextcloud consiglia di utilizzare cron, il sistema operativo, per le attività regolari; la modalità AJAX predefinita è meno affidabile perché i processi vengono eseguiti solo quando gli utenti visitano il sito.
Imposta Nextcloud in modalità cron:
sudo -E -u www-data php occ background:cron
Imposta Nextcloud in modalità cron in modo che le attività in background pianificate non dipendano dall'apertura del sito da parte degli utenti.
Quindi modifica il crontab dell'utente del server web. Su un tipico host Debian o Ubuntu:
sudo crontab -u www-data -e
Aggiungi questa riga, modificando il percorso dell'eseguibile PHP o di Nextcloud se la tua installazione utilizza posizioni diverse:
*/5 * * * * php -f /var/www/nextcloud/cron.php
Pianifica l'esecuzione di cron.php con l'utente HTTP. Sostituisci il percorso di esempio di Nextcloud con il percorso di installazione del tuo sistema.
Questa pianificazione attiva il runner in background di Nextcloud ogni cinque minuti; i singoli job mantengono le proprie pianificazioni. Per una distribuzione in container, utilizzare il servizio cron o il worker pianificato documentato per tale distribuzione ed eseguirlo cron.phpcome utente web di Nextcloud. Non aggiungere un secondo job alla cieca se la tua immagine o piattaforma lo esegue già.
Come si può verificare la data di scadenza in modo sicuro?
Innanzitutto, verifica sia la policy che l'attività pianificata. Controlla la policy con occ config:system:get trashbin_retention_obligation, quindi elenca l'attività pianificata:
sudo crontab -u www-data -l
Verifica il valore di conservazione salvato e conferma che all'utente del server web sia associata la voce cron.php ricorrente.
Nelle impostazioni di amministrazione di Nextcloud, verifica che i processi in background siano impostati su Cron e che l'ora dell'ultima esecuzione del processo sia incrementata. Trascorso il periodo massimo di conservazione configurato, controlla la sezione File eliminati per verificare la presenza di un vecchio elemento di prova che puoi eliminare senza problemi. Il processo di scadenza viene eseguito secondo la sua pianificazione, quindi la pulizia non è necessariamente immediata al termine esatto del periodo di conservazione.
Per un test una tantum con una policy di conservazione personalizzata, eseguire il comando retention-aware:
Su Nextcloud corrente, trashbin:expireviene applicato il periodo di conservazione configurato. Con la autopolicy predefinita, il comando termina senza far scadere gli elementi; la scadenza automatica predefinita viene gestita dal processo in background. Non sostituire trashbin:cleanup --all-users: tale comando rimuove definitivamente tutti i dati dal cestino per ogni utente, indipendentemente dall'età, e non è un'impostazione di conservazione di routine.
Lista di controllo per la verifica rapida
La policy attiva restituita occ config:system:get trashbin_retention_obligationcorrisponde al periodo di conservazione desiderato.
I processi in background di Nextcloud sono impostati su Cron e il crontab dell'utente del server web include il cron.phppercorso corretto.
L'orario dell'ultima esecuzione del lavoro viene aggiornato nelle impostazioni di amministrazione.
Un vecchio elemento di test che ha superato il limite di età massimo scompare al termine dell'esecuzione del processo in background, mentre gli elementi più recenti rimangono a meno che la pressione sullo spazio di archiviazione o sulle quote non richieda la pulizia.
Se l'ora dell'ultima esecuzione non avanza, prima di modificare il valore di conservazione, è necessario risolvere i problemi relativi al cron di sistema, al percorso della CLI PHP, all'utente del server web e al percorso di Nextcloud. Una policy corretta non può eliminare nulla se il processo in background non viene mai eseguito.