home  bbs  files  messages ]

      ZZLI4423             linux.debian.doc             67 messages      

[ previous | next | reply ]

[ list messages | list forums ]

  Msg # 24 of 67 on ZZLI4423, Saturday 9-12-25, 3:47  
  From: MATTI KURKELA  
  To: ALL  
  Subj: Bug#1114943: release-notes: Using dracut  
 XPost: linux.debian.bugs.dist 
 From: Matti.Kurkela@welho.com 
  
 Package: release-notes 
 Severity: normal 
  
 Dear Maintainer, 
  
 * What led up to the situation? 
 I was upgrading from bookworm to trixie while using the non-default 
 initramfs creator "dracut" (as packaged in Debian). I had 
 an otherwise straightforward LVM-on-LUKS setup with a TPM2-based 
 LUKS unlocking method added (using systemd-cryptsetup in bookworm). 
 It turned out that the initramfs created by trixie's dracut had 
 a problem unlocking LUKS and hung in initramfs, waiting forever for the 
 device containing the root filesystem to come up. 
  
 * What exactly did you do (or not do) that was effective (or 
 ineffective)? 
  
 Booting with the previous kernel+initramfs still worked, but it 
 obviously did not allow me to get any information on what was going 
 wrong with the new trixie-generated one. So I tried to trigger the 
 dracut initramfs emergency shell in order to investigate. 
  
 I tried the boot parameter "systemd.unit=emergency.target", 
 and also "rd.break", with various values like "rd.break=pre-mount". 
  
 * What was the outcome of this action? 
 All attempts either hung the same as a regular boot attempt or 
 produced the message: 
  
 Cannot open access to console, the root account is locked. 
 See sulogin(8) to continue. 
  
 * What outcome did you expect instead? 
 I expected to get a root shell on the console within the initramfs 
 environment, in order to start troubleshooting the LUKS unlocking issue. 
  
 * What was the workaround? 
 Once I added "rd.break SYSTEMD_SULOGIN_FORCE=1" to the kernel command line, 
 I managed to get the root shell I expected and could start investigating 
 what was going wrong with LUKS unlocking. 
  
 I knew about this because RedHat/Fedora used to have the same issue when a 
 root 
 account is left locked on installation: 
 https://bugzilla.redhat.com/show_bug.cgi?id=1763160 
  
 However, I did have a passworded root account which should have been 
 usable on the local console. 
  
 Apparently dracut-generated initramfs uses a synthesized minimal 
 /etc/passwd + /etc/shadow, instead of one with the root password hash copied 
 from the regular /etc/shadow. Or maybe my system had a root password 
 hash that was too old for sulogin to handle, or something... 
  
 Anyway, in chapter 4.1.4.2 of the Release Notes, it might be useful to 
 mention 
 the possible need to add "SYSTEMD_SULOGIN_FORCE=1" to the kernel command 
 line if sulogin says "the root account is locked". This information is 
 not exactly easy to find if you don't already know about it: neither 
 the sulogin(8) nor the dracut.cmdline(7) man pages do mention it at all. 
  
 An alternative solution would be a kernel boot parameter: 
  
     init="/sbin/sulogin --force" 
  
 But it contains whitespace and so requires quoting, which increases the 
 risk of mistakes. SYSTEMD_SULOGIN_FORCE=1 is a whitespace-free 
 equivalent. 
  
 Related upstream changes, newest first: 
 https://github.com/systemd/systemd/commit/fecbce1fc654076a2fc092 
 e6d36e5300ea04cdf 
 https://github.com/systemd/systemd/commit/33eb44fe4a8d7971b5614b 
 4c2d90f8d91cce66c 
  
 --- SoupGate-Win32 v1.05 
  * Origin: you cannot sedate... all the things you hate (1:229/2) 

[ list messages | list forums | previous | next | reply ]

search for:

328,087 visits
(c) 1994,  bbs@darkrealms.ca