Uptimed – Håll koll på uptimen i Linux
För den som har läst min om mig-sida vet att jag har i nuläget två servrar som är tänkt att vara i gång dygnet runt i 365 dagar om året. Detta är ett tufft mål att uppfylla, speciellt om man har många ytter omständigheter så som elavbrott, hårdvarukrascher och buggar i mjukvara som leder till krasch; listan kan göras lång. Är man som jag alltid vill ta reda på hur lång uptime som serven hade innan detta skedde måste dock köra kommandot ”uptime” rätt många gånger eller göra ett crontab i stil med:
* * * * * uptime >> uptime.txt
Detta är förhållandevis enkla lösningar, men som har flera nackdelar. Att själv hålla reda på uptimen kräver att man kommer ihåg tiden samt att man verkligen vet exakt när serven gick ned. Tänk om serven strejkar medan du sover? Crontab skulle kunna lösa detta problem, men då har man istället problemet med att uptime.txt blir rätt stor om den har lagrat en viss text varje gång och fyllt på det en gång i minuten (vilket är så ofta man får lov att göra en crontab på). Med andra ord blir uptime.txts filstorlek rätt stor.
Men det finns en lösning på det hela, och det är Uptimed. Uptimed är ett litet program i programbiblioteket som egentlige har två uppgifter. Först och främst hålla koll på och spara uptimen (både senaste och tidigare uptimes), det andra är att presentera informationen på ett bra sätt. Detta är något som jag tycker att den lyckats bra med i båda fallen, då eftersom att man dels kan gå tillbaka i historien och se när serven var på som längst. Det roliga med upplägget av presentationen av uptimen är att den är utformad som en higscore-lista, vilket bidrar till att tävlingsinstinkten vaknar till liv och man ställer högre krav på att hålla ännu längre uptime än vad man tidigare har satt som mål. Vilket i sig kan vara bra, då det förmodligen leder till att man i högre grad ser till att man väljer hård- och mjukvara som medför att datorn eller serven blir stabil och därmed skapar mindre problem för användaren.
Att installera Uptimed under Ubuntu eller annat operativsystem med pakethanteraren Apt-get är lika enkelt som vi är vana vid:
sudo apt-get install uptimed
Däremot är det inte bara att köra ”uptimed” för att få ut informationen. Detta eftersom att uptimed är egentligen en demon som håller reda på datorns uptime. Vill man istället presentera informationen kör man istället följande kommando:
uprecords
Exempel på hur det kan se ut:
# Uptime | System Boot up ----------------------------+--------------------------------------------------- -> 1 79 days, 06:18:03 | Linux 2.6.28-18-server Mon Mar 8 22:02:23 2010 2 57 days, 05:01:55 | Linux 2.6.28-16-server Thu Nov 12 12:01:01 2009 3 50 days, 03:43:45 | Linux 2.6.28-17-server Sun Jan 17 17:43:52 2010 4 31 days, 08:34:36 | Linux 2.6.28-11-server Mon Oct 12 04:14:17 2009 5 7 days, 20:28:09 | Linux 2.6.28-17-server Fri Jan 8 17:03:34 2010 6 2 days, 02:53:57 | Linux 2.6.28-11-server Sat Oct 10 00:11:39 2009 7 0 days, 17:49:27 | Linux 2.6.28-17-server Sat Jan 16 22:07:19 2010 8 0 days, 02:56:32 | Linux 2.6.28-17-server Sat Jan 16 13:50:26 2010 9 0 days, 01:45:52 | Linux 2.6.28-17-server Sun Jan 17 15:57:21 2010 10 0 days, 01:07:40 | Linux 2.6.28-11-server Mon Oct 12 03:06:03 2009 ----------------------------+--------------------------------------------------- NewRec 22 days, 01:16:07 | since Wed May 5 04:04:18 2010
Resultatet som man får ut av ovanstående kommando tycker jag inte är tillräcklig, därför brukar jag köra följande:
uprecords -a -M
Och då för man ett resultat i stil med:
# Uptime | System Boot up ----------------------------+--------------------------------------------------- -> 1 79 days, 06:20:27 | Linux 2.6.28-18-server Mon Mar 8 22:02:23 2010 2 57 days, 05:01:55 | Linux 2.6.28-16-server Thu Nov 12 12:01:01 2009 3 50 days, 03:43:45 | Linux 2.6.28-17-server Sun Jan 17 17:43:52 2010 4 31 days, 08:34:36 | Linux 2.6.28-11-server Mon Oct 12 04:14:17 2009 5 7 days, 20:28:09 | Linux 2.6.28-17-server Fri Jan 8 17:03:34 2010 6 2 days, 02:53:57 | Linux 2.6.28-11-server Sat Oct 10 00:11:39 2009 7 0 days, 17:49:27 | Linux 2.6.28-17-server Sat Jan 16 22:07:19 2010 8 0 days, 02:56:32 | Linux 2.6.28-17-server Sat Jan 16 13:50:26 2010 9 0 days, 01:45:52 | Linux 2.6.28-17-server Sun Jan 17 15:57:21 2010 10 0 days, 01:07:40 | Linux 2.6.28-11-server Mon Oct 12 03:06:03 2009 ----------------------------+--------------------------------------------------- NewRec 22 days, 01:18:31 | since Wed May 5 04:04:18 2010 mst in 20 days, 17:39:34 | hundred days Wed Jun 16 23:02:23 2010
Vill du göra andra ändringar hur informationen av uprecords ska presenteras finns det en rätt simpel men bra dokumenterad information om det. Kör bara följande:
man uprecords
För er som undrar hur lång uptime som jag har haft på mina servrar så finns det olika sätt att se det på. Något som jag värdesätter mer än att ha en varaktig uptime är att man gör säkerhetsuppdateringar samt att man gör underhåll av sina servrar (och datorer för den delen med). Ibland kräver det att serven måste startas om eller den tas ur drift för att kunna underhålla den. På så sätt går det att få ihop att jag har haft en väldigt lång uptime. Istället för att försöka trixa med siffrorna och likande kan jag istället tala om att det högsta som jag har kunnat se med hjälp av uprecords är 276 dagar, 7 timmar, 26 minuter och 56 sekunder. Anledningen till att uptimen inte blev längre var för att jag har missat ett par viktiga uppdateringar och därmed kändes det tvunget att starta om maskinen. 😉
Hej kusin!
Var ute och strö surfade och kom in på din sida.
Bra att du använder Ubuntu!
Ville e.g bara säga hej
/Jonas
Trevligt att du kunde titta in! Trevligt att du också använder Ubuntu. 🙂