Cosa significa (!) Dopo l'uptime su htop


84

Stavo analizzando alcuni web head guardando htope ho notato quanto segue

Uptime: 301 days(!), 23:47:39

Che cosa (!)significa?


@JoelDavis quindi il (!) Non significa nient'altro che il server sia attivo da 301 giorni?
brentwpeterson,

8
Mostrano il codice esatto nel link ma sì, in pratica sta solo dicendo "OMG!"
Bratchley,

2
Tuttavia, il punto esatto di demarcazione è di 100 giorni.
Bratchley,

1
@JoelDavis - perché non scriverlo come A in modo da poterlo chiudere?
slm

Risposte:


119

Dal codice sorgente htop , file UptimeMeter.c , puoi vedere:

char daysbuf[15];
if (days > 100) {
   sprintf(daysbuf, "%d days(!), ", days);
} else if (days > 1) {
   sprintf(daysbuf, "%d days, ", days);
} else if (days == 1) {
   sprintf(daysbuf, "1 day, ");
} else {
   daysbuf[0] = '\0';
}

Penso che !qui sia solo un segno che il server è attivo da più di 100 giorni.

Riferimento


Quindi c'è un overflow del buffer dopo 9999 giorni di uptime? (il buffer sembra essere char [32] ora)
Kopfgeldjaeger il

108

htop autore qui. Sì, come già menzionato da altri, si presenta infatti dopo 100 giorni di attività.

Il motivo non è niente di speciale, è solo un uovo di Pasqua nel software. Considera che il programma è impressionato dal tuo tempo di attività e prendilo come vuoi. :)


3
È sempre bello vedere una risposta definitiva come questa.
iamnotmaynard,

34

htop mostra il punto esclamativo quando il server è attivo da 100 o più giorni.

Mentre un tempo gli amministratori di sistema erano orgogliosi di mostrare tempi di attività prolungati, al giorno d'oggi il sistema deve essere riavviato per essere aggiornato con nuovi kernel e alcune correzioni di sicurezza. Per tale motivo, un lungo periodo di attività non è probabilmente una buona cosa e tendo a interpretare il punto esclamativo come un segnale di avvertimento.


8
Mentre la tua risposta è concisa (e apparentemente corretta), aggiungere alcuni collegamenti alla documentazione pertinente o fonti di supporto sarebbe positivo.
HalosGhost

7
In alcuni casi è possibile tenersi aggiornati senza riavviare. Tuttavia, il problema è che dopo molte modifiche non si può essere certi che il sistema si avvierà in caso di riavvio non pianificato. Quindi non è una cattiva idea fare riavvii pianificati per i test.
Tadas Sasnauskas,

quindi la patch live nel kernel 4 di Linux non è necessaria? dal momento che il sistema deve essere avviato regolarmente per il controllo dei bug?
Chenming Zhang,

Uso la cura del kernel per rendere il mio kernel senza riavvio.
allquixotic,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.