Public bug reported: In Ubuntu 24.04 server, setting the system time zone via systemd's timedatectl fails to update the contents of /etc/timezone. In previous LTS server releases, timedatectl updated this file without any issue, so this is new faulty behavior.
Because there are several different ways to query for the system's time zone (e.g., timedatectl, /etc/localtime, /etc/timezone), this bug leaves the system time zone in an inconsistent state, with the answer depending on the query method. For example, I discovered this bug when installing the latest version of Jenkins on Ubuntu 24.04, where Jenkins insisted my server was on UTC even though timedatectl would report back "America/Chicago". It turned out that Jenkins was reading the system time zone from /etc/timezone, which had never been updated after I set the timezone via timedatectl. I don't know for certain, but I believe that /etc/timezone is a common way for Java-based applications to read the system time zone. I think there has been talk of removing /etc/timezone entirely from Debian, since it could be considered redundant, which may be why timedatectl has changed its behavior here. I would be fine with that solution except for the fact that when I delete /etc/timezone on Ubuntu 24.04, it keeps getting recreated. I believe whenever the tzdata package is updated, that regenerates /etc/timezone, and a "dpkg- reconfigure tzdata" certainly does. If nothing else, there is an inconsistency in Ubuntu 24.04 between the behavior of timedatectl and the behavior of tzdata, and this inconsistent behavior can lead to an inconsistent time zone setting. Steps to reproduce the bug: ``` $ timedatectl show --property=Timezone Timezone=America/New_York $ ls -la /etc/localtime lrwxrwxrwx 1 root root 36 Mar 21 21:46 /etc/localtime -> /usr/share/zoneinfo/America/New_York $ cat /etc/timezone America/New_York $ sudo timedatectl set-timezone 'America/Chicago' $ timedatectl show --property=Timezone Timezone=America/Chicago $ ls -la /etc/localtime lrwxrwxrwx 1 root root 35 Mar 21 20:51 /etc/localtime -> /usr/share/zoneinfo/America/Chicago $ cat /etc/timezone America/New_York $ sudo dpkg-reconfigure --frontend noninteractive tzdata 2> /dev/null $ cat /etc/timezone America/Chicago ``` ProblemType: Bug DistroRelease: Ubuntu 24.04 Package: systemd 255.4-1ubuntu8.5 ProcVersionSignature: Ubuntu 6.8.0-55.57-generic 6.8.12 Uname: Linux 6.8.0-55-generic x86_64 ApportVersion: 2.28.1-0ubuntu3.3 Architecture: amd64 CasperMD5CheckResult: pass Date: Fri Mar 21 18:20:28 2025 InstallationDate: Installed on 2025-02-11 (38 days ago) InstallationMedia: Ubuntu-Server 24.04.1 LTS "Noble Numbat" - Release amd64 (20240827) Lsusb: Error: command ['lsusb'] failed with exit code 1: Lsusb-t: Lsusb-v: Error: command ['lsusb', '-v'] failed with exit code 1: MachineType: VMware, Inc. VMware7,1 ProcEnviron: LANG=en_US.UTF-8 PATH=(custom, no user) SHELL=/bin/bash TERM=xterm ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-6.8.0-55-generic root=UUID=d1d2bd07-2fa1-4f46-b54e-6b249e25a778 ro SourcePackage: systemd UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 08/07/2020 dmi.bios.vendor: VMware, Inc. dmi.bios.version: VMW71.00V.16707776.B64.2008070230 dmi.board.name: 440BX Desktop Reference Platform dmi.board.vendor: Intel Corporation dmi.board.version: None dmi.chassis.asset.tag: No Asset Tag dmi.chassis.type: 1 dmi.chassis.vendor: No Enclosure dmi.chassis.version: N/A dmi.modalias: dmi:bvnVMware,Inc.:bvrVMW71.00V.16707776.B64.2008070230:bd08/07/2020:svnVMware,Inc.:pnVMware7,1:pvrNone:rvnIntelCorporation:rn440BXDesktopReferencePlatform:rvrNone:cvnNoEnclosure:ct1:cvrN/A:sku: dmi.product.name: VMware7,1 dmi.product.version: None dmi.sys.vendor: VMware, Inc. ** Affects: systemd (Ubuntu) Importance: Undecided Status: New ** Tags: amd64 apport-bug noble -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2103839 Title: timedatectl set-timezone does not update /etc/timezone, leaving system with inconsistent time zone setting To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/2103839/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs