netbsd localtime settings

octobre 11, 2006

là encore c’est easy 😉 2 cas de figure, le plus simple avec une machine entièrement dédiée à NetBSD:

# sysctl -w kern.rtc_offset=0
# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime
# date 200610111832

Avec une machine dual boot:

# echo rtclocaltime=YES >>/etc/rc.conf
# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime
# date 200610111832
# /etc/rc.d/rtclocaltime restart

Le principe: en gros, et par défaut, le kernel stocke dans le hardware la date en GMT (ou UTC c’est à peu près pareil). Pour ça, il va ajouter ou retirer du temps en fonction du fuseau horaire défini par /etc/localtime avant de lire (boot) ou d’écrire (shutdown) l’hardware clock. Si on a un système en dual boot avec un autre OS qui veut une hardware clock en heure locale (ex: heure de Paris) il faut en plus « feinter » le système avec kern.rtc_offset. C’est ce que fait /etc/rc.d/rtclocaltime.

On a donc pour un dual boot:

heure locale (18h30) = heure hardware (18h30) + kern.rtc_offset (-2h) + /etc/localtime (+2h)

et pour un système dédié:

heure locale (18h30) = heure hardware (16h30) + kern_rtc_offset (0) + /etc/localtime (+2h)

presque clair non? 🙂

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :