[unix-ws] Y2000-Fehler in MvLogs
Rainer Laatsch
Laatsch at rrz.uni-koeln.de
Mon Jan 3 13:28:03 CET 2000
Im Perl-Programm
/vol/local/share/MvLogs
, das moeglicherweise auch ausserhalb des Rechenzentrums genutzt wird,
war ein Jahr-2000-Fehler. Dadurch wurden abgehaengte Logs falsch umbenannt,
z.B. in /var/adm/messages.191000101 statt /var/adm/messages.20000101 , also
das Jahr 19100 genommen, von dem wir weit entfernt sind. In das
Programm /vol/local/share/MvLogs habe ich nun eine Korrektur eingebaut,
die die Logs der ersten 3 Tage dieses Jahres korrekt zurueckbenennt. Ab morgen
sollte dann wieder alles stimmen; Logs sollten dadurch nicht verlorengegangen
sein. Im einfachsten Fall bis morgen abwarten.
Zur Nutzung von 'localtime' in perl u. perl5 hier ein Testprogramm :
----------------------------------------
#!/vol/gnu/bin/perl
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$year=$year+1900; $mon=$mon+1 ;
$dateformiso= "%4.4d-%2.2d-%2.2d+%2.2d:%2.2d:%2.2d \n" ;
printf( $dateformiso, $year,$mon,$mday,$hour,$min,$sec);
$dateform4= "%4.4d%2.2d%2.2d+%2.2d:%2.2d:%2.2d \n" ;
printf( $dateform4, $year,$mon,$mday,$hour,$min,$sec);
printf ( "Weekday=%d DayInYear=%d DST=%d \n" , $wday,$yday,$isdst );
----------------------------------------
Dies ergibt z.Zt.:
2000-01-03+13:19:23
20000103+13:19:23
Weekday=1 DayInYear=2 DST=0
Mit freundlichem Gruss
Rainer Laatsch
________________________________ ______________________
Reg. Rechenzentrum der
E-mail: Laatsch at rrz.Uni-Koeln.DE Universitaet zu Koeln
Fax : (0221) 478-5590 Robert-Koch-Str. 10
Tel : (0221) 478-5582 D-50931 Koeln