find date of last boot
Robert Bonomi
bonomi at mail.r-bonomi.com
Fri Jun 8 02:02:28 UTC 2012
> From owner-freebsd-questions at freebsd.org Thu Jun 7 20:26:46 2012
> Date: Thu, 07 Jun 2012 20:24:49 -0500
> From: Chris <racerx at makeworld.com>
> To: freebsd-questions at freebsd.org
> Subject: Re: find date of last boot
>
> On 6/7/2012 8:14 PM, Chris Hill wrote:
> > On Thu, 7 Jun 2012, Fbsd8 wrote:
> >
> >> dmesg command does not show date of last boot.
> >>
> >> Are there some other commands to find date of last boot?
> >
> > That was fun. Google helped me with this; the crappy skillz are all mine.
> >
> > --- cut here ---
> > #!/bin/sh
> > #
> > # Find date of last boot
> > #
> > DAYS_UP=`uptime | awk '{print $3}'`
> > SEC_UP=`echo "${DAYS_UP} * 86400" | bc`
> > DATE=`date`
> > EPOCH_DATE=`date -j -f "%a %b %d %T %Z %Y" "${DATE}" "+%s"`
> > BOOT_SEC=`echo "${EPOCH_DATE} - ${SEC_UP}" | bc`
> > BOOT_DATE=`gawk -v duh=${BOOT_SEC} 'BEGIN{print strftime("%Y-%m-%d",duh)}'`
> > echo "Last boot on ${BOOT_DATE}"
> > --- cut here ---
> >
> > Example from this machine:
> > $ ./boot_date.sh
> > Last boot on 2010-12-26
> > $
> >
> > Enjoy.
> >
>
> Why create something that is already built in?
> As I mentioned previously, the last command lists when the system was
> rebooted.
Probably, because last does *not* reliably do so. <grin>
To wit:
$ date
Thu Jun 7 20:59:44 CDT 2012
$ uptime
8:58PM up 8 days, 22:30, 1 user, load averages: 0.07, 0.03, 0.01
$ last reboot
wtmp begins Tue Jun 5 17:00:58 CDT 2012
$
'wtmp' has been rotated twice since the system was booted.
More information about the freebsd-questions
mailing list