wieder mal, die uptime :P

M

mariio

Jungspund
hallo leute.
is zwar mein erster beitrag hier im forum, aber ich weiß nicht weiter.
in meiner firma soll ich ein programm schreiben, dass mir ausgibt, falls ein stromausfall war, seitwann der rechner wieder läuft

hab das programm eh schon fast fertig, weil mir eben nur noch ein teil fehlt.

ich muss die minuten der jetzt-zeit minus der minuten der uptime-zeit berechnen, damit ich auf die zeit des serverrestarts komme.

jetzt-zeit-minuten: uptime | awk '{ print $1 }' | sed 's/am//g' | awk -F':' '{print $2}'

uptime-minuten: uptime | awk '{ print $3 }'

kann mir da jemand helfen?

und wie schaut es dan aus, wenn es zB 9:00 ist. damit da dann steht zB 8:57, wenn der serverrestart 3min her ist. geht das?

mfg :)
 
Warum machst du das denn anhand der Uptime? Du kannst doch einfach aus der /var/log/messages auslesen, wann der letzte Start des klogd war. Der damit geloggte Timestamp ist die Zeit des letzten Bootens.
 
Hi,

erstmal wilkommen im board. Es gibt hier uebrigens auch ein schoenes Unterforum fuer Shell Skripte, wo die Frage wohl am besten hinpassen wuerde.

Warum machst du das denn anhand der Uptime? Du kannst doch einfach aus der /var/log/messages auslesen, wann der letzte Start des klogd war. Der damit geloggte Timestamp ist die Zeit des letzten Bootens.
Das waere ja zu einfach. ;)
Aber verlaesst man sich dann nicht auf das vorhandensein eines bestimmten log daemons? Auf einem frisch installierten Debian Lenny scheint klogd z.B. standardmaessig nicht zu laufen, stattdessen wird rsyslog benutzt.

Wenn du die Uptime benutzen moechtest, wuerde ich jedenfalls auch nicht das Programm uptime verwenden, sondern die Angaben in /proc/uptime. Die erste der zwei Zahlen gibt die Sekunden seit Systemstart an, damit laesst sich leichter rechnen.

D.h. du koenntest dir z.B. mit 'date +%s' den aktuellen Unix timestamp ausgeben lassen, die Sekunden aus /proc/uptime abziehen, und den resultierenden Unix timestamp wieder in ein menschenlesbares Format umwandeln. Das waere wohl mein Ansatz.

mfg,
bytepool
 
hallo leute :)
danke erstmal für die antworten :) tut mir leid wegen des falschen unterforums.

hab mir da selbst was zusammengestoppelt, was auch super funktioniert, ohne einen timestamp umzuwandeln. hab aus der uptime mit nem cut die einzelnen werte herausgeholt und damit gerechnet.
funktioniert alles wunderbar.

danke trotzdem :D
 

Ähnliche Themen

CSV Datei mit sed manipulieren/optimieren/ergänzen

Samba bricht zusammen

Server-Monitoring mit RRDTool

Zurück
Oben