From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id DEF671FF130 for ; Mon, 20 Jul 2026 15:34:01 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 8C675214A6; Mon, 20 Jul 2026 15:34:00 +0200 (CEST) From: Maximiliano Sandoval To: Thomas Lamprecht Subject: Re: [PATCH manager] report: list recent reboot events and their kernel version In-Reply-To: <55625334-51ae-45d8-b365-91d85d1cc541@proxmox.com> (Thomas Lamprecht's message of "Mon, 20 Jul 2026 14:58:17 +0200") References: <20260720123649.226360-1-a.zeidler@proxmox.com> <55625334-51ae-45d8-b365-91d85d1cc541@proxmox.com> User-Agent: mu4e 1.12.9; emacs 30.1 Date: Mon, 20 Jul 2026 15:33:24 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1784554380284 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.269 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_LOW -0.7 Sender listed at https://www.dnswl.org/, low trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: BTCRPOWX4YWMOQYU5D6E5YOPR5EB2NWN X-Message-ID-Hash: BTCRPOWX4YWMOQYU5D6E5YOPR5EB2NWN X-MailFrom: m.sandoval@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: pve-devel@lists.proxmox.com X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Thomas Lamprecht writes: > Am 20.07.26 um 14:38 schrieb Alexander Zeidler: >> Based on the most recent reboot events, it is possible to determine >> whether and when a crash, fencing, or reboot occurred and with which >> kernel version the node booted. >> >> Use `wtmpdb last` as a replacement for the well-known `last`, since >> the latter became obsolete [0] with Debian Trixie / PVE 9. >> >> # wtmpdb last reboot --fulltimes --limit 5 >> reboot system boot 7.0.14-5-pve Mon Jul 20 14:22:34 2026 - still running >> reboot system boot 7.0.14-5-pve Thu Jul 16 15:12:16 2026 - crash >> reboot system boot 7.0.14-5-pve Thu Jul 16 11:20:15 2026 - Thu Jul 16 15:10:46 2026 (03:50) >> reboot system boot 7.0.14-5-pve Wed Jul 15 13:39:34 2026 - crash >> reboot system boot 7.0.14-2-pve Wed Jul 15 07:39:18 2026 - Wed Jul 15 13:38:04 2026 (05:58) >> >> wtmpdb begins Wed Jul 15 07:39:18 2026 >> >> [0] https://www.debian.org/releases/trixie/release-notes/issues.html#the-last-lastb-and-lastlog-commands-have-been-replaced >> >> Signed-off-by: Alexander Zeidler >> --- >> PVE/Report.pm | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/PVE/Report.pm b/PVE/Report.pm >> index 29433d4a..6049c0bf 100644 >> --- a/PVE/Report.pm >> +++ b/PVE/Report.pm >> @@ -36,6 +36,7 @@ my $init_report_cmds = sub { >> 'hostname', >> 'date -R', >> 'cat /proc/cmdline', >> + 'wtmpdb last reboot --fulltimes --limit 5', > > we nowhere depend on wtmpdb so it's not a given that it's installed. OK, that is not ideal. Afaik only libpam-wtmpdb "Recommends" wtmpdb (according to debtree). > For just the boots we could use "journalctl --list-boots -n 5 -r". > Depending on wtmpdb and writing yet another log file just for kernel version might > be a bit overkill, given that the info is there in the journal, albeit it *is* > annoying that we would have to manually parse them from the journal... For the purposes of support we are more interested about the kernel version used each boot. It would be interesting to have info about the BOOT IDs or having the timestamp of the last entry for a give boot though. Another consideration of journalctl is that the boots might be rotated away. >> 'pveversion --verbose', >> 'cat /etc/hosts', >> 'pvesubscription get', -- Maximiliano