Alexander E. Patrakov wrote:

Non-bug. You are changing the TZ variable in already-running bash and that doesn't (and shouldn't) work. On the CD, the TZ variable should be set outside the bash shell, i.e. either propagate from the kernel command line, or from /etc/environment.

TODO: check that openssh uses /etc/environment.

Ok, that makes sense. There is something weird though and maybe it is caused somewhere else. Using 6.1.1-1 LiveCD (which doesn't have this PS1 change), starting linux without a TZ parameter, selecting "America/Los_Angeles" at timezone prompt, "Localtime" at next, "en_US.ISO-8859-1" locale, "Default" keyboard layout. The prompt at the tty1 shows:

lfslivecd:root | Mon 12 Dec 2005 03:20:45 PM GMT | ~

In Terminal in Xorg it looks fine:

lfslivecd:root | Mon 12 Dec 2005 07:16:11 AM PST | ~

Booting the LiveCD with "linux TZ=America/Los_Angeles" works correctly. Are we not running clkconf early enough? Or is the only really good way of setting TZ at the boot: prompt (meaning "linux TZ=blah")?

In both cases, PS1 is:
\[\033[0;38m\]\h:\[\033[0;31m\]\u | \[\033[0;38m\]\D{%c} \[\033[0;31m\]| \[\033[0;32m\]\w\[\033[0;38m\]\n\[\033[00m\]\$

and TZ is:
America/Los_Angeles

/etc/sysconfig/clock is "UTC=0"

I (wrongly) saw that changing the PS1 variable to use `date +%c` instead of \D fixed this. I know of a friend who had used \D in his PS1 also, since each user on his server can have his/her own TZ in the bash startup files, \D wouldn't work as bash was already running. Changing to `date` worked in this case.

Justin
--
http://linuxfromscratch.org/mailman/listinfo/livecd
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to