Attivare l'esecuzione automatica di Nextcloud Cron con un timer Systemd
Controlla la modalità cron di Nextcloud, ripara il servizio systemd e il timer e verifica che i processi in background vengano eseguiti dopo l'avvio e ogni cinque minuti.
Quando zypper refreshsi riceve un errore HTTP 500 su SLES, è necessario innanzitutto identificare l'URL del repository che lo ha generato. Un errore HTTP 500 indica che un server che gestisce la richiesta ha riscontrato una condizione imprevista; il server responsabile potrebbe essere l'host del repository, il server RMT dell'organizzazione o un proxy HTTP. Isolare il repository che presenta l'errore e riparare o segnalare l'endpoint prima di cancellare i metadati locali. Una ricostruzione forzata della cache non è in grado di risolvere i problemi di un server che continua a restituire un errore 500.
Le attuali guide di amministrazione e aggiornamento di SLES 15 SP7 di SUSE documentano i comandi per l'elenco e l'aggiornamento dei repository, inclusi zypper refresh -fdbquelli per la ricostruzione dei metadati dei repository locali. Tuttavia, non segnalano un problema di errore HTTP 500 a livello di SLES attualmente in corso. La soluzione pratica dipende dal fatto che l'URL appartenga al SUSE Customer Center, a un mirror interno o a un repository di terze parti.
Inizia annotando l'alias e l'URL del repository. Su SLES, esegui:
zypper repos -u
Questa -uopzione visualizza l'origine di ciascun repository configurato. Prendi nota di quali voci sono abilitate e impostate per l'aggiornamento, quindi confronta i nomi host degli URL che non funzionano. Se un repository di terze parti non funziona mentre le origini di aggiornamento di SUSE si aggiornano correttamente, indaga sul proprietario di tale repository. Se diversi repository puntano allo stesso host interno e tutti non funzionano, il mirror condiviso, il servizio RMT, il proxy inverso o la relativa connessione upstream sono indizi più probabili.

Successivamente, aggiorna solo il repository interessato tramite alias:
sudo zypper refresh -f 'Vendor-App'
Sostituisci Vendor-Appcon l'alias esatto mostrato da zypper repos -u. Questo evita una schermata di errori ripetuti provenienti da repository non correlati e ti fornisce un risultato mirato da condividere con l'amministratore. Se l'alias contiene spazi, mantieni gli apici singoli. Mantieni l'URL e il timestamp esatti dell'errore, ma oscura qualsiasi nome utente, password, token o altro segreto incorporato prima di inviare i log o gli screenshot.

Leggi l'intero messaggio di errore di Zypper e identifica l'URL specifico dei metadati a cui fa riferimento, spesso un file nella repodatadirectory del repository. Se l'endpoint può essere interrogato senza credenziali, confronta la sua risposta HTTP dall'host SLES:
curl -sS -D - -o /dev/null --max-time 20 "$METADATA_URL"
Imposta METADATA_URLl'URL esatto dei metadati che causano l'errore senza inserire le credenziali nell'URL o nella riga di comando. Il comando stampa le intestazioni della risposta e ignora il corpo della risposta. Un risultato come questo HTTP/1.1 500conferma che un server nel percorso della richiesta sta restituendo un errore; non dimostra se l'origine o un intermediario lo ha generato. Curl potrebbe anche utilizzare impostazioni di autenticazione o proxy diverse da Zypper, quindi considera questo risultato come un confronto, non come una riproduzione definitiva. Se l'accesso al repository richiede l'autenticazione, utilizza il metodo di test approvato dalla tua organizzazione anziché esporre le credenziali.

Una risposta 500 è diversa da un problema di cache dei metadati locali. È inoltre distinta da errori DNS, errori del certificato TLS, timeout e risposte di autenticazione come 401 o 403. Questi messaggi richiedono verifiche diverse. Non disabilitare la verifica TLS, non modificare il repository in HTTP semplice e non eliminare ripetutamente le cache per far scomparire un errore 500. Per quanto riguarda la semantica HTTP, la RFC 9110 definisce il codice 500 come una condizione imprevista del server che ha impedito l'esecuzione della richiesta.
È possibile ispezionare e modificare lo stato del repository con Zypper o YaST. Ad esempio, il zypper modifyrepocomando documentato può disabilitare un repository tramite alias, ma si tratta di una soluzione operativa temporanea, non di una riparazione per una sorgente necessaria non funzionante. Evitate di modificare gli URL dei repository generati a caso, soprattutto dopo una migrazione di un service pack, poiché i repository di prodotti e aggiornamenti utilizzano percorsi specifici per versione.
Solo dopo che il server o il proxy avranno restituito una risposta valida, si dovrà riprovare a utilizzare tutti i repository abilitati:
sudo zypper refresh -f

Se l'endpoint ora risponde ma Zypper continua a segnalare dati del repository locale obsoleti o incoerenti, la sezione di risoluzione dei problemi di SLES 15 SP7 di SUSE consiglia un aggiornamento completo dei metadati e una ricostruzione del database con:
sudo zypper refresh -fdb
Questo comando forza il download dei metadati grezzi e ricostruisce il database locale risolvibile di Zypper. È utile in caso di problemi con i metadati locali; non è una soluzione per una risposta 500 persistente. Non confondere l'aggiornamento dei metadati del repository con l'installazione degli aggiornamenti: esegui il normale comando di patch o aggiornamento solo dopo che l'aggiornamento è stato completato correttamente.
Eseguire il test zypper refresh -f 'ALIAS'per la sorgente che in precedenza presentava errori, quindi sudo zypper refresh -fper tutti i repository abilitati. La correzione è confermata quando i metadati del repository interessato vengono scaricati senza errori HTTP 500 e Zypper termina senza errori su una sorgente abilitata. Se una sorgente continua a non funzionare, conservare l'URL esatto, il codice di stato, le intestazioni di risposta e l'ora, e comunicarli al responsabile di tale endpoint.
Controlla la modalità cron di Nextcloud, ripara il servizio systemd e il timer e verifica che i processi in background vengano eseguiti dopo l'avvio e ogni cinque minuti.
Abilita il blocco affidabile dei file in Nextcloud, scegli il backend Redis o Valkey più adatto e verifica che l'avviso scompaia senza rischiare modifiche simultanee ai file.
Risolvi i problemi più comuni riscontrati durante le scansioni di Nextcloud con gli aggiornamenti più recenti, HTTPS e HSTS, una configurazione precisa del proxy inverso e verifiche rispetto al server pubblico.
Configura Nextcloud SSE per lo spazio di archiviazione che lo richiede, proteggi le chiavi di crittografia e misura l'impatto sul trasferimento dati e sulla CPU prima di crittografare i file esistenti.
Collega la ricerca file di Nextcloud a Elasticsearch, indicizza il contenuto dei documenti e scegli una configurazione adatta alle esigenze del tuo server e della tua sicurezza.
Configura Nextcloud per rimuovere i file eliminati dopo un periodo di conservazione definito, pianifica in modo affidabile le attività in background ed evita i comandi che svuotano il cestino di tutti gli utenti.
Esegui in modo sicuro la riparazione OCC di Nextcloud, visualizza in anteprima le modifiche al database e verifica il motivo per cui l'avviso potrebbe persistere.
Consenti il caricamento di file di dimensioni maggiori nel browser Nextcloud allineando le impostazioni di PHP, Nginx o Apache, dello spazio di archiviazione temporaneo e del timeout, e verifica quale limite sta bloccando il file.
Imposta il limite di memoria PHP effettivamente utilizzato da Nextcloud, riavvia il servizio corretto e conferma l'impostazione di 512 MB nella Panoramica di amministrazione.
Monta un bucket di object storage compatibile in Nextcloud utilizzando il suo backend S3, con l'endpoint, le credenziali, l'ambito di accesso e i passaggi di verifica corretti.