ls ~/errors
Lessico dei codici d'errore.
I messaggi che tornano sempre nel supporto — cosa significano, come verificarli e cosa aiuta.
550 5.7.1SMTP 550 5.7.1: relay access denied e rifiuti per policyIl server rifiuta il messaggio per policy: quasi sempre il mittente non è autenticato e il server dovrebbe inoltrare (relay) la mail verso un dominio che non gestisce.550 5.7.26SMTP 550 5.7.26 e 5.7.23: email non autenticataGmail (e Microsoft con 5.7.509/5.7.515) rifiuta il messaggio perché non è autenticato né con SPF né con DKIM allineati al dominio del mittente.421 4.7.0SMTP 421 4.7.0: limitato temporaneamente, try again laterIl server di destinazione rifiuta temporaneamente altre mail dal tuo IP perché volume, reputazione o autenticazione sono sospetti: i messaggi restano in coda e vengono ritentati.554 5.7.1SMTP 554 5.7.1: rifiutato per blocklist o spamIl destinatario rifiuta in modo definitivo connessione o messaggio perché l'IP mittente è in una blocklist DNS (DNSBL) o il contenuto è stato classificato come spam.451 4.7.1SMTP 451 4.7.1: greylisting e rifiuto temporaneoIl destinatario rifiuta di proposito il primo tentativo da un mittente sconosciuto; un server di posta configurato bene riprova dopo qualche minuto e la mail passa.535 5.7.8SMTP 535 5.7.8: authentication failed, login rifiutatoIl server ha rifiutato il login SMTP AUTH. La connessione funziona, ma utente, password o meccanismo non corrispondono a quanto si aspetta il backend (di solito Dovecot SASL).530 5.7.0SMTP 530 5.7.0: must issue a STARTTLS command firstSu questa porta il server non accetta né AUTH né MAIL FROM su una connessione in chiaro. Il client deve prima inviare STARTTLS oppure usare TLS implicito sulla 465.552 5.2.2SMTP 552 5.2.2: mailbox full / quota exceededIl server di destinazione rifiuta il messaggio perché la casella del destinatario ha raggiunto la quota. Il mittente riceve un bounce e la mail non viene consegnata.550 5.1.1SMTP 550 5.1.1: user unknown / recipient address rejectedIl server di destinazione non conosce l'indirizzo e rifiuta la mail in modo definitivo. O l'indirizzo è sbagliato, o manca nelle tabelle del server.553 5.7.1SMTP 553 5.7.1: sender address rejected: not owned by userPostfix confronta l'indirizzo mittente (MAIL FROM) con l'utente SASL autenticato. Se secondo smtpd_sender_login_maps l'indirizzo non appartiene a quell'utente, la mail viene rifiutata.does not resolve to addressAvviso Postfix: hostname … does not resolve to addressPostfix ha trovato via PTR un nome per l'IP del server che si connette, ma quel nome non punta di nuovo allo stesso IP. Il client viene quindi trattato come “unknown”.auth failedDovecot: imap-login Disconnected (auth failed)Un client ha fatto login su IMAP o POP3 ed è stato respinto. Può essere un singolo utente con la password sbagliata, una passdb difettosa o un attacco.status=deferred Connection timed outPostfix: status=deferred (connect to …:25: Connection timed out)Il tuo mail server non riesce ad aprire una connessione verso il server del destinatario sulla porta 25, quindi tiene il messaggio in coda e riprova più tardi. Molto spesso la causa è la porta 25 in uscita bloccata.Host or domain name not foundPostfix: Host or domain name not found. Name service error for name=… type=MXPostfix non è riuscito a risolvere nel DNS il dominio del destinatario. O il resolver del tuo server non funziona (spesso un Postfix in chroot senza resolv.conf), oppure il dominio stesso ha un problema.SASL authentication failedPostfix: SASL authentication failed; cannot authenticate to server (no mechanism available)Postfix ha provato ad accedere al tuo smart host (relay) e ha fallito. È il lato in uscita: il tuo server è il client. La causa è un modulo SASL mancante, credenziali errate o un accesso offerto solo dopo l'avvio di TLS.Dovecot Permission deniedDovecot: Error: open() failed: Permission denied (casella)L'utente con cui Dovecot gestisce questa casella non può leggere o scrivere i file di posta. Tipico dopo una migrazione, un nuovo server o quando Postfix consegna con un utente diverso da quello con cui legge Dovecot.dkim=fail body hash did not verifyDKIM: dkim=fail (body hash did not verify)La firma è intatta, ma il corpo del messaggio non corrisponde più all'hash firmato. Qualcosa ha cambiato il testo dopo la firma: un footer, un banner antivirus, un disclaimer, link riscritti o perfino i fine riga.not accepted due to domain's DMARC policy550 5.7.1 Unauthenticated email is not accepted due to domain's DMARC policyIl destinatario ha controllato la policy DMARC del tuo dominio e il messaggio non ha superato né SPF né DKIM in modo coerente con il dominio del From, quindi è stato rifiutato come prevede la policy (p=reject o quarantine).554 5.7.1 Relay access deniedSMTP: 554 5.7.1 Relay access deniedAl server viene chiesto di consegnare posta a un dominio che non gli appartiene, da un client di cui non si fida. Rifiutare è corretto, è ciò che evita un open relay. Il compito è capire se il tuo client avrebbe dovuto autenticarsi o se il tuo dominio non è configurato.450 4.1.8 Sender address rejected: Domain not foundSMTP: 450 4.1.8 Sender address rejected: Domain not foundIl server ricevente ha cercato il dominio nell'indirizzo del mittente e non ha trovato né un record A né un MX, quindi rifiuta la posta con reject_unknown_sender_domain. Le fonti tipiche sono server che inviano come root@hostname.localdomain.mail for example.com loops back to myselfPostfix: mail for example.com loops back to myselfPostfix ha cercato dove inviare la posta ed è finito su se stesso, quindi si ferma invece di girare all'infinito. Il routing dice che questo host è responsabile, ma la configurazione locale non accetta il dominio.550 5.4.1 Recipient address rejected: Access deniedSMTP: 550 5.4.1 Recipient address rejected: Access deniedQuesto rimbalzo arriva da Exchange Online quando si protegge dalla raccolta di indirizzi. La posta viene rifiutata al bordo perché il destinatario non si trova nella directory. Sembra un problema di permessi, ma quasi sempre significa che l'indirizzo lì non esiste.Connection timed out on port 25Porta 25 bloccata: timeout SMTP sull'invio direttoIl tuo mail server non raggiunge il MX del destinatario sulla porta 25 perché l'uscita è bloccata. I messaggi restano in coda e vengono ritentati.502HTTP 502 Bad Gateway con nginx e PHP-FPMnginx non ha ricevuto una risposta valida dall'upstream (PHP-FPM, Node.js, Gunicorn, un container Docker): il backend è fermo, irraggiungibile o è andato in crash.504HTTP 504 Gateway Timeout con nginxnginx ha raggiunto il backend ma non ha ricevuto risposta entro il timeout impostato (60 secondi di default).413HTTP 413 Request Entity Too Large su nginxIl corpo della richiesta (di solito un upload) supera il limite consentito da nginx o da un proxy davanti: la richiesta non arriva nemmeno all'applicazione.403HTTP 403 Forbidden (nginx): directory index is forbiddennginx capisce la richiesta ma nega l'accesso. Il motivo esatto è quasi sempre nell'error.log: “directory index … is forbidden”, “Permission denied” o “access forbidden by rule”.500HTTP 500 Internal Server Error: trovare la causa nei logL'applicazione o il web server ha fallito nel gestire la richiesta. Il codice non dice il perché: il motivo è nell'error.log di nginx, nel log di PHP-FPM o in quello dell'applicazione.503HTTP 503 Service Unavailable: chi lo genera?Il servizio è temporaneamente non disponibile. Prima capisci chi genera il 503: nginx stesso (rate limit, return 503), l'applicazione (maintenance mode) o un load balancer davanti.400400 Bad Request: request header or cookie too largeUn singolo header o la riga dei cookie è più grande del buffer che nginx riserva. Di default sono 4 buffer da 8 KB: cookie SSO grandi o JWT li superano in fretta.ERR_TOO_MANY_REDIRECTSERR_TOO_MANY_REDIRECTS: example.com ti ha reindirizzato troppe volteDue punti si rimandano continuamente il browser. Il browser segue i reindirizzamenti, si arrende dopo un limite e mostra questo errore. Il loop sta sempre nella combinazione di server, CDN e applicazione.Error 521 / 522 (origin unreachable behind CDN)Error 521 (Web server is down) e 522 (Connection timed out) dietro un CDNQuesti codici arrivano dal CDN (per esempio Cloudflare), non dal tuo server. Il CDN era raggiungibile al proprio edge ma non è riuscito a parlare con il tuo origin: 521 significa connessione rifiutata, 522 timeout.Mixed Content: requested an insecure resourceMixed Content: The page was loaded over HTTPS, but requested an insecure resource ... This request has been blockedLa pagina usa HTTPS, ma prova a caricare uno script, un foglio di stile, un font, un'immagine o una richiesta via HTTP semplice. I browser bloccano i contenuti attivi (script, stili, richieste) e avvisano o aggiornano i contenuti passivi come le immagini. Stili e script non vengono più caricati.429 Too Many RequestsHTTP 429 Too Many RequestsIl server o un livello intermedio dice che questo client ha inviato troppe richieste in un dato tempo. Un rate limit sta funzionando come previsto. Il compito è capire quale livello lo applica e se è sbagliato il limite o il client.404 Not Foundnginx: 404 Not Foundnginx ha cercato un file nel percorso costruito da root o alias e dall'URI della richiesta e non l'ha trovato. L'error log mostra il percorso esatto. Di solito è sbagliato il percorso, la regola di routing o il server block.too big headernginx: upstream sent too big header while reading response headerGli header di risposta del backend (di solito i cookie) sono più grandi del buffer che nginx riserva; nginx si ferma e risponde 502 Bad Gateway.Primary script unknownnginx + PHP-FPM: “Primary script unknown” / “File not found.”nginx passa la richiesta a PHP-FPM, ma PHP-FPM non trova il file al percorso indicato o non può leggerlo. Nel browser compare solo “File not found.”.111: Connection refusednginx: connect() failed (111: Connection refused) verso upstreamnginx raggiunge l'host del backend, ma sulla porta di destinazione non ascolta nessuno. Il sistema rifiuta subito la connessione e l'utente vede 502 Bad Gateway.98: Address already in usenginx: bind() failed (98: Address already in use)nginx non riesce ad aprire la sua porta perché un altro processo è già in ascolto: spesso Apache, un secondo nginx o un container Docker.110: Connection timed outnginx: upstream timed out (110: Connection timed out)Il backend (PHP-FPM, Node, Gunicorn) non ha risposto entro il limite di nginx, quindi nginx rinuncia e restituisce 504 Gateway Timeout.rewrite or internal redirection cyclenginx: rewrite or internal redirection cycle while internally redirecting to "/index.html"nginx ha reindirizzato la richiesta internamente più volte e ha rinunciato dopo 10 passaggi, rispondendo 500. Di solito try_files ripiega su un file che non esiste nel root attuale.worker_connections are not enoughnginx: [alert] 768 worker_connections are not enoughUn worker nginx ha esaurito le connessioni che può gestire contemporaneamente. Le nuove richieste attendono o falliscono. Con proxy_pass ogni richiesta usa due connessioni (client e upstream), quindi il limite arriva prima di quanto farebbe pensare il numero di visitatori.could not build server_names_hashnginx: [emerg] could not build server_names_hash, you should increase server_names_hash_bucket_sizenginx salva tutti i valori server_name in una tabella hash. Un nome molto lungo o molti nomi non entrano più in un bucket, quindi il test della configurazione fallisce e nginx non parte né si ricarica.upstream prematurely closed connectionnginx: upstream prematurely closed connection while reading response header from upstreamnginx ha inviato la richiesta al backend, ma il backend ha chiuso la connessione prima di rispondere. L'utente vede 502 Bad Gateway. Il backend è andato in crash, è stato terminato, riavviato o non parla il protocollo usato da nginx.connect() to unix:/run/php/php-fpm.sock failed (13: Permission denied)nginx: connect() to unix:/run/php/php-fpm.sock failed (13: Permission denied) while connecting to upstreamnginx trova il socket di PHP-FPM ma non ha il permesso di aprirlo. Il visitatore vede 502 Bad Gateway. Proprietario, gruppo o modo del socket non corrispondono all'utente con cui gira nginx.cannot load certificatenginx: [emerg] cannot load certificate (PEM no start line, key values mismatch)nginx non è riuscito a leggere il certificato o la chiave indicati e quindi non parte né si ricarica. Il file manca o non è leggibile, non è PEM, è il file sbagliato oppure la chiave non appartiene al certificato.423 LockedNextcloud: "file is locked" e HTTP 423 LockedNextcloud nega l'accesso perché sul file esiste ancora un lock del transactional file locking, di solito rimasto orfano dopo un upload interrotto o un crash.maintenance modeNextcloud: risolvere "maintenance mode is enabled"Nextcloud è in modalità manutenzione e blocca web, client e quasi tutti i comandi occ: attivata apposta o rimasta dopo un aggiornamento non andato a buon fine.untrusted domainNextcloud: accesso tramite un dominio non attendibileNextcloud è stato aperto con un nome host o un IP che non è in trusted_domains, quindi rifiuta il login.data directory readableNextcloud: “your data directory is readable by other users”All'avvio Nextcloud verifica se altri utenti di sistema possono leggere o elencare la directory dei dati. Se sì, Nextcloud si rifiuta di funzionare o mostra l'avviso.Internal Server ErrorNextcloud: internal server error con Request IDNextcloud ha incontrato un errore nel gestire la richiesta. Il Request ID mostrato è la chiave: con quello trovi in nextcloud.log esattamente la voce corrispondente.CSRF check failedNextcloud: CSRF check failed al login o al salvataggioIl token CSRF del form non corrisponde alla sessione sul server. Quasi sempre la sessione si è persa tra caricamento e invio: non è un attacco.APCu not availableNextcloud: memcache \OC\Memcache\APCu not available for local cacheNextcloud usa APCu come cache locale, ma l'istanza PHP in esecuzione non ha APCu attivo. Quasi sempre riguarda solo PHP CLI, cioè occ e cron.php.missing indexesNextcloud: “the database is missing some indexes”Dopo un aggiornamento Nextcloud ha definito nuovi indici ma non li ha creati in automatico, perché su tabelle grandi può richiedere tempo. Senza indici le query rallentano.Last background jobNextcloud: “last background job execution ran … ago”Nextcloud gestisce pulizie, notifiche, versioni dei file e cestino con i job in background. L'avviso significa che questi job non girano da un po'.reverse proxy header configuration is incorrectNextcloud: la configurazione degli header del reverse proxy non è correttaNextcloud riceve header inoltrati (X-Forwarded-For) da un proxy di cui non si fida, oppure non ha un proxy configurato anche se ce n'è uno davanti. I visitatori compaiono con l'IP sbagliato, oppure reindirizzamenti e link usano http invece di https.Cannot write into "config" directoryNextcloud: Cannot write into "config" directory!L'utente del web server non può scrivere in config/, quindi installer, aggiornamenti o impostazioni non riescono a salvare config.php. Di solito proprietario o permessi sono sbagliati dopo una copia, un ripristino o uno spostamento.Too many requestsNextcloud: Too many requests. Troppe richieste dalla tua reteLa protezione brute force di Nextcloud ha rallentato o bloccato il tuo indirizzo IP dopo ripetuti accessi falliti. Spesso la vera causa è un proxy che fa apparire tutti gli utenti come un solo indirizzo.Your data directory is invalidNextcloud: Your data directory is invalid (.ocdata mancante)Nextcloud non parte perché non trova il file marcatore .ocdata nella data directory. È una protezione: Nextcloud non scrive in una cartella che potrebbe essere un punto di mount vuoto e non montato.RedisException: Redis went awayNextcloud: RedisException: Redis went awayNextcloud usa Redis per il file locking e la cache. Se la connessione cade, le richieste falliscono, gli upload si bloccano o compaiono errori 500. La domanda è se Redis è sparito o se Nextcloud non lo raggiunge.Your web server is not properly set up to resolve "/.well-known/caldav"Nextcloud: Your web server is not properly set up to resolve "/.well-known/caldav"Le app di calendario e contatti trovano il tuo server tramite gli indirizzi /.well-known/caldav e /.well-known/carddav. La panoramica avvisa quando non reindirizzano a /remote.php/dav. La sincronizzazione funziona comunque se inserisci a mano l'indirizzo DAV completo.Some files have not passed the integrity checkNextcloud: Some files have not passed the integrity checkNextcloud confronta i file del codice con un elenco firmato di hash. Tutto ciò che è stato modificato, cancellato o aggiunto nella cartella del programma viene segnalato. È un avviso sui tuoi file, non una perdita di dati.Updates between multiple major versions and downgrades are unsupportedNextcloud: Updates between multiple major versions and downgrades are unsupportedNextcloud aggiorna solo da una versione major alla successiva. Il messaggio compare se salti una major, oppure se il codice installato è più vecchio della versione registrata nel database. Non forzarlo mai modificando il numero di versione.SAML signatureErrore SAML: signature validation failed in NextcloudNextcloud (user_saml con php-saml) non è riuscito a verificare la firma della risposta SAML con il certificato IdP salvato e rifiuta il login.invalid_grantOIDC/OAuth2: invalid_grant sul token endpointL'identity provider rifiuta l'authorization code o il refresh token che il client vuole scambiare. Il login fallisce subito dopo il ritorno dall'IdP.redirect_uri_mismatchOIDC: redirect_uri_mismatch / invalid redirect_uriNella richiesta authorize il client invia una redirect_uri che non è registrata esattamente così sull'identity provider. L'IdP si ferma prima che l'utente possa fare login.NotBeforeSAML: “not yet valid”, clock skew su NotBeforeOgni asserzione SAML vale solo in una finestra temporale (da NotBefore a NotOnOrAfter). Se l'orologio del service provider è diverso da quello dell'IdP, l'asserzione risulta non ancora o non più valida.Invalid audience for this ResponseSAML: Invalid audience for this Response (AudienceRestriction)L'identity provider indirizza la sua asserzione a un pubblico, l'Entity ID del service provider. La tua app controlla che il valore coincida con il proprio Entity ID e altrimenti rifiuta. I controlli di firma e tempo sono separati, quindi qui si tratta solo di un nome diverso.invalid_clientOIDC: invalid_client (autenticazione del client fallita)Dopo l'accesso dell'utente, la tua app chiama l'endpoint dei token e deve provare chi è con client ID e secret. invalid_client significa che la prova è stata rifiutata. Riguarda l'identità dell'app, non il codice dell'utente né l'indirizzo di redirect.acme:error:unauthorizedLet's Encrypt: urn:ietf:params:acme:error:unauthorizedLet's Encrypt non è riuscito a scaricare il file di challenge in /.well-known/acme-challenge/ dal server giusto, quindi non emette il certificato.unable to get local issuer certificateSSL: unable to get local issuer certificateIl client non riesce a costruire la catena dal certificato del server fino a una root CA fidata. O il server non invia gli intermedi, o al client manca la root CA.SSL_ERROR_RX_RECORD_TOO_LONGSSL_ERROR_RX_RECORD_TOO_LONG in FirefoxIl browser si aspetta un handshake TLS sulla 443 ma riceve testo in chiaro, di solito una risposta HTTP. Firefox interpreta quei byte come un record TLS troppo lungo e si ferma.ERR_CERT_COMMON_NAME_INVALIDNET::ERR_CERT_COMMON_NAME_INVALIDIl certificato è valido ma non è emesso per questo nome. I browser controllano solo i Subject Alternative Names (SAN): se il nome richiesto non c'è, compare questo errore.certificate has expiredSSL: certificate has expired / ERR_CERT_DATE_INVALIDIl certificato servito è fuori dal periodo di validità. Spesso è stato rinnovato da tempo, ma il web server serve ancora il file vecchio dalla memoria.rateLimitedLet's Encrypt: too many certificates already issuedLet's Encrypt limita quanti certificati vengono emessi in un periodo. L'errore indica il limite raggiunto e da quando puoi riprovare (“retry after”).Timeout during connect (likely firewall problem)Certbot: Timeout during connect (likely firewall problem)Let's Encrypt non è riuscito ad aprire una connessione verso il tuo server sulla porta 80 per scaricare il file della challenge. Qualcosa blocca lungo il percorso: un firewall, un indirizzo errato o un indirizzo IPv6 che non risponde.ERR_SSL_VERSION_OR_CIPHER_MISMATCHERR_SSL_VERSION_OR_CIPHER_MISMATCH (SSL_ERROR_NO_CYPHER_OVERLAP)Browser e server non sono riusciti ad accordarsi su una versione TLS o un cipher. O il server offre solo protocolli obsoleti, oppure le sue impostazioni sono così rigide che i client moderni non trovano una corrispondenza.NET::ERR_CERT_AUTHORITY_INVALIDNET::ERR_CERT_AUTHORITY_INVALID: autorità di certificazione non attendibileIl browser ha ricevuto un certificato ma non riesce a ricondurlo a un'autorità di certificazione di cui si fida. Riguarda chi lo ha firmato, non la data né il nome.NET::ERR_CERT_DATE_INVALIDNET::ERR_CERT_DATE_INVALID: data del certificato non validaUn certificato è valido solo tra due date. Il browser le confronta con il proprio orologio. L'errore significa che oggi, dal punto di vista del client, cade fuori da quell'intervallo: o il certificato è scaduto, o l'orologio del client è sbagliato.Failed to renew certificatecertbot renew: Failed to renew certificate (tutti i rinnovi falliti)I certificati Let's Encrypt durano poco, quindi il rinnovo deve funzionare da solo. Quando certbot renew fallisce, il certificato continua a invecchiare finché il browser mostra l'avviso di scadenza. La causa è di solito nelle impostazioni di rinnovo salvate, non in Let's Encrypt.SERVFAILDNS SERVFAIL: trovare la causa e risolvereIl resolver non è riuscito a ottenere una risposta valida: o i nameserver autoritativi non rispondono come dovrebbero, o la validazione DNSSEC fallisce.NXDOMAINDNS NXDOMAIN: dominio o hostname inesistenteIl name server responsabile ha risposto in modo autorevole che il nome non esiste. È diverso da SERVFAIL o da un timeout: bisogna capire quale server lo afferma e perché.CNAME at apexDNS: CNAME sull'apex, “CNAME and other data”Un CNAME non può stare insieme ad altri record con lo stesso nome. L'apex della zona (example.com) ha sempre SOA e NS: per questo lì il CNAME non è consentito.status: REFUSEDDNS: status: REFUSED (query rifiutata)Il server è stato raggiunto e ha risposto di proposito con un “no”. È una decisione di policy, non un timeout. O non serve la zona che hai chiesto, o non fa ricorsione per il tuo indirizzo.connection timed out; no servers could be reachedDNS: connection timed out; no servers could be reachedLa query non ha ricevuto alcuna risposta, nemmeno un rifiuto. Il pacchetto non è arrivato o la risposta non è tornata. Indica il percorso o il processo del server, non il dominio.curl: (6) Could not resolve hostcurl: (6) Could not resolve hostcurl non è riuscito a trasformare il nome host in un indirizzo IP e quindi non ha nemmeno provato a connettersi. La domanda è se il nome è sbagliato, se manca il record DNS o se solo questa macchina non riesce a risolverlo.ENOSPCNo space left on device anche se df mostra spazio liberoIl kernel restituisce ENOSPC perché una risorsa del filesystem è esaurita: non per forza lo spazio, spesso gli inode o lo spazio occupato da file cancellati ma ancora aperti.Permission denied (publickey)SSH: permission denied (publickey)Il server accetta solo login con chiave e non ha accettato nessuna delle chiavi offerte. La causa si vede nel client con -vvv e nel log del server.EROFSLinux: read-only file system (EROFS)Una scrittura è stata rifiutata perché il filesystem è in sola lettura. Spesso è il kernel a passarlo in sola lettura dopo un errore, per evitare altri danni.EMFILELinux: too many open files (EMFILE, errore 24)Un processo ha raggiunto il limite di file descriptor. Contano i file ma anche socket e pipe: sui web server soprattutto le connessioni aperte.Out of memoryLinux: out of memory, killed process (OOM killer)Il sistema o una cgroup ha finito la memoria. Il kernel ha terminato il processo con il punteggio OOM più alto, non per forza quello che ha causato il problema.control process exitedsystemd: job for X.service failed (control process exited)systemd ha provato ad avviare o ricaricare il servizio e il comando di avvio (ExecStart o ExecStartPre) è terminato con errore. La causa vera è nel journal del servizio.permission denied docker.sockDocker: permission denied nel connettersi al socket del demoneIl tuo utente non può usare /var/run/docker.sock. Solo root e i membri del gruppo docker possono parlare con il demone Docker.REMOTE HOST IDENTIFICATION HAS CHANGEDSSH: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGEDIl server presenta una chiave host diversa da quella salvata nel tuo known_hosts. Spesso è innocuo (una reinstallazione), ma è lo stesso avviso che comparirebbe in un attacco man-in-the-middle.port 22: Connection timed outSSH: connect to host port 22: Connection timed outI tuoi pacchetti non ricevono alcuna risposta. A differenza di “Connection refused”, nessuno risponde: un firewall scarta il traffico, l'indirizzo è sbagliato oppure la macchina è spenta o irraggiungibile.start-limit-hitsystemd: Start request repeated too quickly (start-limit-hit)Il servizio è andato in crash più volte in poco tempo, quindi systemd ha smesso di riavviarlo per proteggere il sistema. Il limite è solo il sintomo: il servizio fallisce per un altro motivo.Could not get lock /var/lib/dpkg/lock-frontendapt: Could not get lock /var/lib/dpkg/lock-frontendUn altro processo sta usando il sistema dei pacchetti, più spesso l'aggiornamento automatico. apt e dpkg ne ammettono uno solo alla volta, quindi il tuo comando deve aspettare.Too many authentication failuresSSH: Received disconnect: Too many authentication failuresIl server conta come tentativo fallito ogni chiave che il tuo agent SSH offre. Con molte chiavi caricate si raggiunge MaxAuthTries (6 di default) prima ancora che venga provata la tua password o la chiave giusta.E: Unable to locate packageapt: E: Unable to locate packageapt non trova il pacchetto in nessuna lista che conosce. O le liste sono vuote o vecchie, o il nome non è giusto per la tua release, o il repository che contiene il pacchetto non è attivo.dpkg was interrupted, you must manually run 'dpkg --configure -a'dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problemUn'installazione o un aggiornamento precedente non è finito. dpkg ha lasciato pacchetti a metà decompressi o configurati e rifiuta nuovo lavoro finché non sono completati. Di solito basta un comando.Temporary failure in name resolutionTemporary failure in name resolution (ping, apt, curl, ssh)Il programma ha chiesto al resolver di sistema un indirizzo IP e non ha ricevuto alcuna risposta. Non significa “il dominio non esiste”. Il server non raggiunge un server DNS funzionante, oppure non ne ha configurato nessuno.is not in the sudoers file. This incident will be reported.sudo: utente is not in the sudoers file. This incident will be reported.sudo funziona, ma la policy non consente nulla a questo utente. Su Debian e Ubuntu la regola di solito è: i membri del gruppo sudo possono usarlo. L'utente non è in quel gruppo, oppure la modifica non è ancora attiva.Argument list too longbash: /usr/bin/rm: Argument list too longLa shell ha sostituito * con tutti i nomi di file corrispondenti e la lista è diventata più grande di quanto il kernel consenta per un comando. Il comando non è nemmeno partito. È un limite della chiamata, non del disco.wrong fs type, bad option, bad superblockmount: wrong fs type, bad option, bad superblock on /dev/sdX, missing codepage or helper programmount dà qui un messaggio generico. Il kernel o un programma di supporto non è riuscito a montare il dispositivo con il tipo e le opzioni indicati. Il log del kernel di solito indica il motivo reale.Bind for 0.0.0.0:80 failed: port is already allocatedDocker: Bind for 0.0.0.0:80 failed – port is already allocatedDocker non riesce a occupare la porta dell'host perché qualcosa la tiene già: un altro container, un servizio dell'host o un docker-proxy bloccato.ssh: connect to host port 22: Connection refusedssh: connect to host … port 22: Connection refusedIl pacchetto è arrivato ed è stato rifiutato: su quella porta non ascolta nessun servizio. È questo che distingue l'errore da un timeout del firewall.rsync error: some files/attrs were not transferred (code 23)rsync error: some files/attrs were not transferred (code 23)rsync ha terminato ma non ha copiato tutto. Il code 23 è un riepilogo: le righe sopra indicano il file e il motivo.gzip: stdin: unexpected end of filetar/gzip: Unexpected EOF in archive – unexpected end of fileL'archivio finisce a metà dei dati. Mancano byte, quindi tar non riesce a leggere l'ultimo membro e si interrompe.NO_PUBKEY – The following signatures couldn't be verifiedapt: NO_PUBKEY – The following signatures couldn't be verifiedapt non conosce la chiave pubblica con cui è firmato il repository. Finché manca, i pacchetti di quella fonte non vengono installati.cron: job is listed but never runsIl cronjob non parte – anche se la riga esisteCron parte con un ambiente minimo. Gli script che funzionano nella shell falliscono lì per PATH, percorsi relativi o variabili mancanti.ERROR 2002 (HY000)MySQL / MariaDB: ERROR 2002 (HY000), connessione tramite socket impossibileIl client cerca il file socket Unix del server e non trova un server attivo: di solito il database è fermo, oppure client e server usano percorsi del socket diversi.ERROR 1045 (28000)MySQL / MariaDB: ERROR 1045 (28000) accesso negatoIl server è stato raggiunto ma rifiuta l'accesso: password errata, un utente che non esiste per quell'host, oppure un plugin di autenticazione che non ammette la password.ERROR 1040 (08004): Too many connectionsMySQL / MariaDB: ERROR 1040 (08004): Too many connectionsIl server ha raggiunto max_connections e rifiuta ogni nuovo client. Alzare solo il limite raramente risolve. La domanda è perché le connessioni restano aperte: app che le perdono, query lente o un picco di traffico.MySQL server has gone awayERROR 2006 (HY000): MySQL server has gone awayIl client ha inviato una query su una connessione che il server aveva già chiuso. È un sintomo con tre origini comuni: il server ha chiuso una connessione inattiva, la query era troppo grande, o il server è stato riavviato.FATAL: password authentication failed for userPostgreSQL: FATAL: password authentication failed for userIl server ha trovato una riga di pg_hba.conf che richiede una password e la password non è stata accettata. Il log del server indica la riga corrispondente e di solito il motivo.FATAL: no pg_hba.conf entry for hostPostgreSQL: FATAL: no pg_hba.conf entry for host, user, databaseIl server è raggiungibile, ma il suo file di accesso pg_hba.conf non ha una riga adatta a questo client: indirizzo, utente, database e modalità SSL. Rifiuta ancora prima di chiedere la password.Table is marked as crashed and should be repairedMariaDB / MySQL: Table is marked as crashed and should be repaired (ERROR 1194 / 145)I file di una tabella MyISAM o Aria sono incoerenti, di solito perché il server si è fermato in mezzo a una scrittura. La tabella resta bloccata finché non viene controllata e riparata. Le tabelle InnoDB si ripristinano da sole e raramente mostrano questo errore.ERROR 1064 (42000)MariaDB/MySQL: ERROR 1064 (42000) – errore di sintassiIl server non ha capito l'istruzione: la sintassi SQL non è valida – spesso una parola riservata usata come nome di colonna, sintassi MySQL 8 su MariaDB o un apice non escapato.ERROR 1067 (42000)ERROR 1067 (42000): Invalid default value for …Il server rifiuta il default di una colonna: non è valido per il tipo o viola il sql_mode attivo, per esempio una data zero con NO_ZERO_DATE.ERROR 2003 (HY000)ERROR 2003 (HY000): Can't connect to MySQL server (10061)Il client ha raggiunto l'host ma la porta ha rifiutato la connessione: il servizio non gira, ascolta solo su 127.0.0.1 oppure un firewall scarta i pacchetti.FATAL: sorry, too many clients alreadyPostgreSQL: FATAL – sorry, too many clients alreadyPostgreSQL ha occupato tutti gli slot di connessione e rifiuta i nuovi client finché uno non si libera. La causa è quasi sempre un pool o un leak, non il limite.OOM command not allowed when used memory > 'maxmemory'Redis: OOM command not allowed when used memory > 'maxmemory'La memoria è sopra maxmemory e la policy noeviction vieta di eliminare chiavi. Le scritture vengono rifiutate, le letture continuano.Allowed memory size exhaustedPHP Fatal error: Allowed memory size exhaustedUno script PHP ha usato più memoria di quanto consenta memory_limit e PHP l'ha fermato. Il valore predefinito di 128 MB è spesso poco per elaborazione di immagini, importazioni o plugin pesanti.Maximum execution time exceededPHP Fatal error: Maximum execution time of 30 seconds exceededUno script PHP è durato più di max_execution_time (30 secondi di default per le richieste web) e PHP l'ha interrotto.server reached pm.max_children settingPHP-FPM: [pool www] server reached pm.max_children setting, consider raising itTutti i worker PHP del pool sono occupati. Le nuove richieste restano in coda finché uno si libera, quindi le pagine rallentano e nginx può dare 502 o 504. La causa è o un numero di worker troppo basso per il carico, o worker bloccati su qualcosa di lento.Call to undefined function mysqli_connect()PHP Fatal error: Uncaught Error: Call to undefined function mysqli_connect()Il PHP che esegue la tua pagina non ha l'estensione mysqli caricata. Il codice è a posto, manca il modulo per questa versione di PHP o per questa SAPI (CLI e PHP-FPM hanno configurazioni separate).Cannot modify header information - headers already sentPHP Warning: Cannot modify header information - headers already sent by (output started at ...)PHP invia gli header HTTP (redirect, cookie, sessione) solo prima di qualsiasi output nel body. Qualcosa ha stampato testo prima, anche solo uno spazio o un byte nascosto. Il messaggio indica il file e la riga in cui l'output è iniziato.The uploaded file exceeds the upload_max_filesize directive in php.iniPHP: The uploaded file exceeds the upload_max_filesize directive in php.iniPHP ha rifiutato l'upload perché il file supera upload_max_filesize o l'intera richiesta supera post_max_size. Più limiti agiscono in catena, dal web server a PHP.PHP Parse error: syntax error, unexpected tokenPHP Parse error: syntax error, unexpected tokenPHP non è riuscito a compilare il file e non lo esegue affatto. La riga segnalata spesso è solo la conseguenza di un errore precedente.FRITZ!BoxPassword FRITZ!Box dimenticata: come rientrareVedi la pagina di accesso ma non ricordi più la password. Se non è mai stata cambiata, quella standard è stampata sotto il dispositivo.fritz.box öffnet nichtfritz.box non si apre: cosa fareIl nome fritz.box funziona solo nella tua rete domestica e richiede un collegamento attivo con la box. Spesso l'indirizzo IP 192.168.178.1 funziona anche quando il nome no.WerkseinstellungenRipristino della FRITZ!Box: cosa si perdeIl ripristino cancella tutte le tue impostazioni. È l'ultima risorsa, non la prima. Se hai ancora accesso, fai prima un backup.Kein InternetFRITZ!Box senza internet: cosa controllare da soliIl Wi-Fi c'è ma non si arriva a internet. La domanda chiave: è colpito un solo dispositivo, tutta la box o la linea?WLAN-KennwortFRITZ!Box: trovare o cambiare la password Wi-FiLa password Wi-Fi (chiave di rete) è stampata sull'etichetta della box fin dalla fabbrica. Puoi anche vederla e cambiarla nell'interfaccia se hai accesso.WLANWi-Fi lento: quali sono le cause e cosa puoi controllareIl tuo dispositivo è collegato al Wi-Fi ma tutto risponde piano. Spesso la linea internet va bene e il problema è il tratto radio tra router e dispositivo, oppure una rete affollata.WLAN-AbbruchIl Wi-Fi si disconnette di continuo: cause e controlliLa connessione c'è, cade per un momento e torna. Di solito indica un segnale radio debole o disturbato, un problema del dispositivo o un router sovraccarico.WLAN-KanalCambiare canale Wi-Fi: 2,4 GHz o 5 GHz, cosa scegliere?Molti problemi di Wi-Fi nascono dal fatto che le reti si disturbano a vicenda. Con la banda giusta e un canale libero la connessione spesso diventa più stabile.Repeater/MeshRipetitore Wi-Fi o mesh: cosa ha senso per casa tua?Se il Wi-Fi non arriva in tutte le stanze, ci sono più strade. Un ripetitore è di solito la soluzione più semplice, un sistema mesh quella più completa. Contano posizione e collegamento.Kein InternetWi-Fi collegato ma senza internet: cause e controlliIl dispositivo è collegato al router, ma pagine e app non si caricano. Il guasto può essere nel dispositivo, nel router, nella linea del provider o nella risoluzione dei nomi.RouterCome riavviare bene il router e quando serveUn riavvio risolve molti piccoli guasti: connessioni bloccate, tabella delle connessioni piena o accesso alla linea perso. L'ordine conta, altrimenti i dispositivi non ricevono un indirizzo pulito.GatewayCome trovare indirizzo IP e gateway in casaIn una rete domestica il gateway è quasi sempre il router. Ti serve il suo indirizzo per aprire la pagina di gestione. Il tuo indirizzo IP mostra se sei davvero entrato nella rete.DNSCambiare server DNS: quando, dove e con quali rischiIl DNS traduce nomi come example.com in indirizzi. Se il DNS del provider non risponde, i siti sembrano morti anche se la linea funziona. Un altro server DNS può aggirare il problema.SpeedtestLo speed test mostra meno del contratto: perchéLa velocità del contratto è quella della linea fino al router. Ciò che arriva al tuo dispositivo dipende da Wi-Fi, cavo, dispositivo e carico. Un solo test via Wi-Fi dice quindi poco.PortfreigabePort forwarding non funziona: DS-Lite, CGNAT, firewallIl port forwarding inoltra le richieste da Internet a un dispositivo della tua rete di casa. Spesso fallisce non per l'impostazione ma perché la tua connessione non ha affatto un indirizzo IPv4 pubblico.DruckerStampante non trovata nella rete di casa: cosa fareLa stampante è accesa, ma PC, Mac o telefono non la trovano. Di solito i dispositivi non sono nella stessa rete, oppure la stampante ha preso un nuovo indirizzo IP.Smart-TVSmart TV o Chromecast non si collega al Wi-FiLo streaming dal telefono alla TV funziona solo se entrambi sono nella stessa rete locale. Casting e AirPlay usano mDNS, che non attraversa i confini tra reti.GastnetzConfigurare la rete ospiti sul router: come e perchéUna rete ospiti dà internet ai visitatori ma li tiene separati dalla rete di casa. La separazione è voluta, ma significa che stampante, TV e NAS non sono raggiungibili da lì.Doppel-NATDue router in cascata: come riconoscere il doppio NATQuando un router sta dietro un altro, ognuno traduce gli indirizzi una volta. Si chiama doppio NAT. Port forwarding, giochi online e accesso remoto spesso non funzionano.FernzugriffRaggiungere NAS o PC di casa da fuoriDa fuori si entra nella rete di casa solo se il router lo permette. Il VPN è la via più sicura. Il port forwarding verso internet è possibile ma più rischioso.