# Gesamt-Uptime auslesen?

## bröggle

Hi, kann man irgendwie herausfinden wie lange der Pc bisher insgesamt lief?

Dabei ist es irrelevant ob er nun nur schaut wie lange gentoo lief, oder wie lange das mainboard an war oder was auch immer, denn mein system hat sich bisher nicht verändert....und es läuft eh nur gentoo drauf...

gibt es also eine möglichkeit das auszulesen? z.b. per logfiles oder sonstigem?

----------

## RealGeizt

nein, glaube ich nicht, da es ja beim ausschalten immer wieder ressettet wird.

die funktion müsste dann wenn schon im bios drin sein.

was du nachschauen kannst ist, wie lange dein system schon besteht.

----------

## hds

wenn du deine /var/log/messages nie loescht.. die werden ja archiviert. dann brauchst du nur in das aelteste hineinsehen  :Wink: 

OTOH.. du koenntest natuerlich auch nach einer datei schauen, welches das aelteste datum hat. das duerfte dann der tag der installation gewesen sein. sortiere mal dein /bin nach datum..

----------

## c07

Über deine Logfiles solltest du selber ungefähr Bescheid wissen. Sonst zählen teilweise Festplatten die Betriebsdauer mit. Kannst du mit den smartmontools auslesen. Bei mir scheint der Zähler aber relativ schnell überzulaufen und wieder bei Null anzufangen.

----------

## bröggle

geht einfacher:

```
splat -c -s world

 = Summary

        Total Builds:  1307

        Time Elapsed:  8 days, 2 hours, 24 minutes, and 14 seconds

        Average Time:  8 minutes, and 55 seconds

        First Build:   sys-apps/portage-2.0.50-r11

                       (Mon Sep 20 19:49:58 2004)

        Last Build:    sys-apps/smartmontools-5.33

                       (Sat Feb  5 13:06:38 2005)

```

 :Wink: 

aber das zeigt mir leider nur an wie lange mein system besteht...

und nicht wie lange es schon lief.

(aber zumindest wie lange ich schon kompilier...)

edit:

@c07: wie du siehst habe ich das schon versucht... aber laut der ausgabe von smartctl -a /dev/hda bekomme ich 

```

Error 386 occurred at disk power-on lifetime: 312 hours (13 days + 0 Error 388 occurred at disk power-on lifetime: 313 hours (13 days + 1 hours)

  04 51 00 00 4f c2 e0  Error: ABRT

Error 387 occurred at disk power-on lifetime: 313 hours (13 days + 1 hours)

  04 51 00 00 4f c2 e0  Error: ABRT

Error 386 occurred at disk power-on lifetime: 312 hours (13 days + 0 hours)

  04 51 00 01 4f c2 a0  Error: ABRT

Error 385 occurred at disk power-on lifetime: 312 hours (13 days + 0 hours)

  04 51 00 01 4f c2 a0  Error: ABRT

Error 384 occurred at disk power-on lifetime: 312 hours (13 days + 0 hours)

  04 51 00 01 4f c2 a0  Error: ABRT

```

und das kann nicht ganz stimmen :/

----------

## dertobi123

Solange /var/log/wtmp nicht zwischenzeitlich gelöscht wurde könnte man evtl. über die Ausgabe von "last" weiterkommen, dürfte aber eher eine Frickellösung sein.

----------

## hds

hmm.. kann nicht stimmen:

```

hds etc # splat -c -s world

 = Summary

        Total Builds:  18

        Time Elapsed:  2 hours, 29 minutes, and 14 seconds

        Average Time:  8 minutes, and 17 seconds

        First Build:   media-libs/libquicktime-0.9.3-r1

                       (Thu Feb  3 17:55:42 2005)

        Last Build:    app-portage/splat-0.07

                       (Sat Feb  5 16:27:22 2005)

hds etc #

```

das sys ist von mitte oktober   :Shocked: 

----------

## c07

 *bröggle wrote:*   

> 
> 
> ```
> Error 388 occurred at disk power-on lifetime: 313 hours (13 days + 1 hours)
> ```
> ...

 

Das heißt ja nur, dass der letzte Fehler zu der Zeit aufgetreten ist. Bei meiner alten Platte hab ich das:

```
  9 Power_On_Hours          0x0032   098   098   000    Old_age   Always       -       1376287
```

Zählt allerdings im Minutentakt und könnte dann ungefähr stimmen. Bei meiner neuen Platte krieg ich das:

```
  9 Power_On_Minutes        0x0032   246   246   000    Old_age   Always       -       279h+13m
```

Zählt auch im Minutentakt, kann aber nicht stimmen (müssten wohl mindestens 2000 Stunden sein).

----------

## Sonic Lux

Bei mir hat es hin:

```

bash-2.05b# splat -c -s world

 = Summary

        Total Builds:  1961

        Time Elapsed:  12 days, 21 hours, 33 minutes

        Average Time:  9 minutes, and 28 seconds

        First Build:   dev-util/ccache-2.3

                       (Thu Feb 19 09:39:44 2004)

        Last Build:    app-portage/splat-0.07

                       (Sat Feb  5 17:33:45 2005)

```

----------

## hds

komisch, wieso geht das bei mir nicht? naja, nicht weiter wild, und es laeuft auch ansonsten alles. dennoch verwundert mich das etwas   :Shocked: 

----------

## theche

hab mein notebook jetzt ziemlich genau ein jahr und hier gibt es das aus

```
 9 Power_On_Hours          0x0012   096   096   000    Old_age   Always       -

       1820

```

wie ist das eigentlich mit den spin-ups? schädigen die die festplatte sehr?

```
 4 Start_Stop_Count        0x0012   098   098   000    Old_age   Always       -

       4282

 
```

wie lange hält denn eine notebookfestplatte das normalerweise durch?

----------

## bröggle

@hds: du könntest mal genlop -l machen... wenn der dir auch nur 18 pakete liefert dann hast du wohl mal deinen emerge.log gelöscht  :Wink: 

das splat is ja nur ein log-file-analyser...

```

 9 Power_On_Half_Minutes   0x0032   100   100   000    Old_age   Always       -       318h+30m

```

halbe minuten ?

die ganze zeit /2 rechnen?

edit:

das sind dann aber auch nur 13tage und 6 stunden(wie beim Fehler)... von denen ich 8h durchkompiliert habe... 

wohl eher nicht ;/

----------

## hds

 *bröggle wrote:*   

> 
> 
> das splat is ja nur ein log-file-analyser...
> 
> 

 

achso! ich dachte, der wuerde in /var/db nachschauen. das erklaert natuerlich einiges   :Razz: 

----------

## HeadbangingMan

Für eine Gesamt-Gentoo-Uptime könnte man ein Script schreiben, welches beim shutdown die Ausgaben von uptime aufaddiert und in eine Datei speichert.

Bringt natürlich nur dann was, wenn man es direkt bei der Installation einbaut.

----------

## hds

btw.. auch nett:

http://counter.li.org/reports/uptimestats.php

----------

## Chr!s

Guck mal unter http://www.uptime-project.net/.

Da haben die ein tool zum Uptime auslesen...

----------

## bröggle

hmm leider nicht im portage :/

wie sieht es denn aus, messen die auch wirklich die bisherige laufzeit?

----------

## tuxian

Ja, siehe http://www.uptime-project.net/page.php?page=toplist&content=profile&uid=40588

Das ist das von mir.

Unten bei "Gesamt" steht die Gesamt-Uptime.

----------

## bröggle

hmm und wie macht das tool das?

kannst du's schnell dem portage hinzufügen  :Wink: 

alles andere is so unbequem  :Wink: 

----------

## tuxian

Das sendet einfach stündlich die uptime an den uptime server.

Ist doch ganz leicht zu installieren: http://www.uptime-project.net/board/viewforum.php?f=8

Mit dem Erstellen von ebuilds kenn ich micht nicht aus.

----------

## bröggle

ja schon, aber ich meine liest es auch die bisherige uptime aus?

oder nur die seit installation?

----------

## tuxian

Sollte schon die Gesamtuptime erfassen da am PC sicher nichts gespeichert wird von den Daten, nur auf dem Uptime-Server und da hast du ja deinen Account.

----------

## hug0

könnte man sich nicht mittels "man last" was basteln?

----------

## smog_at

Du könntest folgendes Perl-Skript verwenden bzw. umbauen

```

#!/usr/bin/perl -w

use strict;

use POSIX;     # Uhrzeit und Datum (stftime)

use Getopt::Long;

my $NetworkCard = "eth1";

my $Filename = "uptime.count";

my $add_old_summary = '';

chomp(my $Seconds = `cat /proc/uptime | cut -s -d ' ' -f1`);

GetOptions('add-old-summary!', \$add_old_summary);

if(-e $Filename) {

  open my $fh, "<$Filename" or die "Can't read from '$Filename'\n";

  print "Read from '$Filename'\n";

  chomp(my $ts = <$fh>);

  close $fh;

  $Seconds += $ts if($add_old_summary);

}

my $sSeconds = $Seconds;

my $sDays = $sSeconds / (3600*24);

$sSeconds %= 3600*24;

my $sHours = $sSeconds / 3600;

$sSeconds %= 3600;

my $sMinutes = $sSeconds / 60;

$sSeconds %= 60;

print "$Seconds Seconds => ";

print sprintf("%d Days, %d Hours, %d Minutes, %d Seconds", $sDays, $sHours, $sMinutes, $sSeconds) . "\n";

open my $fh, ">$Filename" or die "Can't write to '$Filename'\n";

print $fh "$Seconds\n";

print "File '$Filename' were written\n";

close $fh;

```

Lg smog_at

----------

## bröggle

 *hug0 wrote:*   

> könnte man sich nicht mittels "man last" was basteln?

 

wtmp begins Tue Feb  1 15:36:07 2005

sagt die letzte Zeile von last...

:/

----------

## hug0

 *bröggle wrote:*   

>  *hug0 wrote:*   könnte man sich nicht mittels "man last" was basteln? 
> 
> wtmp begins Tue Feb  1 15:36:07 2005
> 
> sagt die letzte Zeile von last...
> ...

 

bei mir nicht.

die einträge gehen bei mir bis märz 2004 zurück, was passen könnte.

EDIT so, am notebook nachgeschaut.

in der letzten zeil steht das kaufdatum  :Smile: 

keine ahnung, wovon es abhängt, wie lange last zurückgeht.

----------

## tuxian

 *hug0 wrote:*   

>  *bröggle wrote:*    *hug0 wrote:*   könnte man sich nicht mittels "man last" was basteln? 
> 
> wtmp begins Tue Feb  1 15:36:07 2005
> 
> sagt die letzte Zeile von last...
> ...

 

In der ersten nicht in der letzten Zeile, oder?

----------

## hug0

bei mir in der letzten zeile, wenn ich einfach nur "last" eingebe,

ganz oben stehen die neuen, ganz unten die alten.

hab ich irgendwie ne andere version von last?   :Rolling Eyes: 

----------

## tuxian

 *hug0 wrote:*   

> bei mir in der letzten zeile, wenn ich einfach nur "last" eingebe,
> 
> ganz oben stehen die neuen, ganz unten die alten.
> 
> hab ich irgendwie ne andere version von last?  

 

Nein, stimmt schon, ist bei mir auch so.

----------

