> Stupid question but… does it work with the correct passphrase?

No, it does not work with the correct passphrase, the only way I can unlock LUKS on Debian 13 for the moment is to connect in ssh manually and type the passphrase myself.

> I don't know how ansible's command module deals with TTYs, but again
> that `ssh` invocation looks wrong. Does it work when you use one of the
> 3 alternatives I suggested?

No, nothing works.

> That's still not the debug output I asked for. From my first message:

Yes sorry, here is the output :

matthieu@terminator:~$ ssh -T [email protected] <<<'passphrase'
+ set -ue
+ PATH=/sbin:/bin
+ TIMEOUT=10
+ PASSFIFO=/lib/cryptsetup/passfifo
+ ASKPASS=/lib/cryptsetup/askpass
+ UNLOCK_ALL=n
+ '[' -f /lib/cryptsetup/functions ]
+ . /lib/cryptsetup/functions
+ '[' /usr/bin/cryptroot-unlock '!=' /usr/bin/cryptroot-unlock ]
+ '[' /usr/bin/cryptroot-unlock '!=' /usr/bin/cryptroot-unlock ]
+ '[' /usr/bin/cryptroot-unlock '!=' /usr/bin/cryptroot-unlock ]
+ TABFILE=/etc/crypttab
+ export 'DM_DEFAULT_NAME_MANGLING_MODE=hex'
+ TABFILE=/cryptroot/crypttab
+ unset -v IFS
+ '[' '!' -f /cryptroot/crypttab ]
+ '[' /cryptroot/crypttab -ot /proc/1 ]
+ '[' -t 0 ]
+ wait_for_prompt
+ local pid timer 'num_locked_devices=-1' n
+ :
+ count_locked_devices
+ local 'COUNT=0'
+ crypttab_foreach_entry count_locked_devices_callback
+ local 'callback=count_locked_devices_callback' IFS
+ local _CRYPTTAB_NAME _CRYPTTAB_SOURCE _CRYPTTAB_KEY _CRYPTTAB_OPTIONS CRYPTTAB_NAME CRYPTTAB_SOURCE CRYPTTAB_KEY CRYPTTAB_OPTIONS
+ '[' -f /cryptroot/crypttab ]
+ IFS='     ' read -r _CRYPTTAB_NAME _CRYPTTAB_SOURCE _CRYPTTAB_KEY _CRYPTTAB_OPTIONS
+ '[' md1_crypt '!=' md1_crypt ]
+ '[' -z md1_crypt ]
+ printf '%b' md1_crypt
+ CRYPTTAB_NAME=md1_crypt
+ '[' -z 'UUID=37271a9b-560a-4863-9eb6-6d74b38e493e' ]
+ '[' -z none ]
+ printf '%b' 'UUID=37271a9b-560a-4863-9eb6-6d74b38e493e'
+ CRYPTTAB_SOURCE='UUID=37271a9b-560a-4863-9eb6-6d74b38e493e'
+ printf '%b' none
+ CRYPTTAB_KEY=none
+ printf '%b' luks,discard
+ CRYPTTAB_OPTIONS=luks,discard
+ count_locked_devices_callback
+ dm_blkdevname md1_crypt
+ local 'name=md1_crypt' dev
+ dmsetup info -c --noheadings -o blkdevname -- md1_crypt
+ dev=
+ return 1
+ COUNT=1
+ IFS='     ' read -r _CRYPTTAB_NAME _CRYPTTAB_SOURCE _CRYPTTAB_KEY _CRYPTTAB_OPTIONS
+ printf '%d\n' 1
+ n=1
+ '[' 1 -eq 0 ]
+ '[' -1 -lt 0 ]
+ timer=100
+ num_locked_devices=1
+ get_askpass_pid
+ local pid
+ pgrep_exe /lib/cryptsetup/askpass
+ local exe pid
+ readlink -f -- /lib/cryptsetup/askpass
+ exe=/usr/lib/cryptsetup/askpass
+ '[' -f /usr/lib/cryptsetup/askpass ]
+ ps -eo 'pid='
+ read pid
+ readlink -f /proc/1/exe
+ '[' /usr/bin/sh '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/2/exe
+ '[' /proc/2/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/3/exe
+ '[' /proc/3/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/4/exe
+ '[' /proc/4/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/5/exe
+ '[' /proc/5/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/6/exe
+ '[' /proc/6/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/7/exe
+ '[' /proc/7/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/8/exe
+ '[' /proc/8/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/9/exe
+ '[' /proc/9/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/10/exe
+ '[' /proc/10/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/11/exe
+ '[' /proc/11/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/12/exe
+ '[' /proc/12/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/13/exe
+ '[' /proc/13/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/14/exe
+ '[' /proc/14/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/15/exe
+ '[' /proc/15/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/16/exe
+ '[' /proc/16/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/17/exe
+ '[' /proc/17/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/18/exe
+ '[' /proc/18/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/19/exe
+ '[' /proc/19/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/20/exe
+ '[' /proc/20/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/21/exe
+ '[' /proc/21/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/22/exe
+ '[' /proc/22/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/23/exe
+ '[' /proc/23/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/24/exe
+ '[' /proc/24/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/25/exe
+ '[' /proc/25/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/26/exe
+ '[' /proc/26/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/27/exe
+ '[' /proc/27/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/28/exe
+ '[' /proc/28/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/29/exe
+ '[' /proc/29/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/30/exe
+ '[' /proc/30/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/31/exe
+ '[' /proc/31/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/32/exe
+ '[' /proc/32/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/33/exe
+ '[' /proc/33/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/34/exe
+ '[' /proc/34/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/35/exe
+ '[' /proc/35/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/36/exe
+ '[' /proc/36/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/37/exe
+ '[' /proc/37/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/38/exe
+ '[' /proc/38/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/39/exe
+ '[' /proc/39/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/40/exe
+ '[' /proc/40/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/41/exe
+ '[' /proc/41/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/42/exe
+ '[' /proc/42/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/43/exe
+ '[' /proc/43/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/44/exe
+ '[' /proc/44/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/45/exe
+ '[' /proc/45/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/46/exe
+ '[' /proc/46/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/47/exe
+ '[' /proc/47/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/48/exe
+ '[' /proc/48/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/49/exe
+ '[' /proc/49/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/50/exe
+ '[' /proc/50/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/51/exe
+ '[' /proc/51/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/52/exe
+ '[' /proc/52/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/53/exe
+ '[' /proc/53/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/54/exe
+ '[' /proc/54/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/55/exe
+ '[' /proc/55/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/56/exe
+ '[' /proc/56/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/57/exe
+ '[' /proc/57/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/58/exe
+ '[' /proc/58/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/59/exe
+ '[' /proc/59/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/60/exe
+ '[' /proc/60/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/61/exe
+ '[' /proc/61/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/62/exe
+ '[' /proc/62/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/63/exe
+ '[' /proc/63/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/64/exe
+ '[' /proc/64/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/65/exe
+ '[' /proc/65/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/66/exe
+ '[' /proc/66/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/67/exe
+ '[' /proc/67/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/68/exe
+ '[' /proc/68/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/69/exe
+ '[' /proc/69/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/70/exe
+ '[' /proc/70/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/71/exe
+ '[' /proc/71/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/72/exe
+ '[' /proc/72/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/73/exe
+ '[' /proc/73/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/74/exe
+ '[' /proc/74/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/75/exe
+ '[' /proc/75/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/76/exe
+ '[' /proc/76/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/78/exe
+ '[' /proc/78/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/89/exe
+ '[' /proc/89/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/90/exe
+ '[' /proc/90/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/119/exe
+ '[' /proc/119/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/121/exe
+ '[' /usr/bin/udevadm '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/143/exe
+ '[' /proc/143/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/150/exe
+ '[' /proc/150/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/151/exe
+ '[' /proc/151/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/152/exe
+ '[' /proc/152/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/153/exe
+ '[' /proc/153/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/154/exe
+ '[' /proc/154/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/155/exe
+ '[' /proc/155/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/156/exe
+ '[' /proc/156/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/157/exe
+ '[' /proc/157/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/158/exe
+ '[' /proc/158/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/159/exe
+ '[' /proc/159/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/160/exe
+ '[' /proc/160/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/161/exe
+ '[' /proc/161/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/162/exe
+ '[' /proc/162/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/163/exe
+ '[' /proc/163/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/164/exe
+ '[' /proc/164/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/165/exe
+ '[' /proc/165/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/166/exe
+ '[' /proc/166/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/167/exe
+ '[' /proc/167/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/168/exe
+ '[' /proc/168/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/188/exe
+ '[' /proc/188/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/191/exe
+ '[' /proc/191/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/205/exe
+ '[' /proc/205/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/206/exe
+ '[' /proc/206/exe '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/218/exe
+ '[' /usr/sbin/dropbear '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/227/exe
+ '[' /usr/bin/sh '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/242/exe
+ '[' /usr/lib/cryptsetup/askpass '!=' /usr/lib/cryptsetup/askpass ]
+ printf '%d\n' 242
+ read pid
+ readlink -f /proc/243/exe
+ '[' /usr/bin/sh '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/244/exe
+ '[' /usr/sbin/cryptsetup '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/246/exe
+ '[' /usr/sbin/dropbear '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/247/exe
+ '[' /usr/bin/busybox '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/254/exe
+ '[' /usr/bin/busybox '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/255/exe
+ '[' /usr/bin/busybox '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/257/exe
+ '['  '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ readlink -f /proc/258/exe
+ '[' /usr/bin/busybox '!=' /usr/lib/cryptsetup/askpass ]
+ read pid
+ in_fds 242 /lib/cryptsetup/passfifo
+ local 'pid=242' name fd
+ readlink -f -- /lib/cryptsetup/passfifo
+ name=/usr/lib/cryptsetup/passfifo
+ '[' -e /usr/lib/cryptsetup/passfifo ]
+ find /proc/242/fd -type l
+ readlink -f /proc/242/fd/0
+ '[' /dev/console '!=' /usr/lib/cryptsetup/passfifo ]
+ readlink -f /proc/242/fd/1
+ '[' '/root-63AIGlva3X/pipe:[2362]' '!=' /usr/lib/cryptsetup/passfifo ]
+ readlink -f /proc/242/fd/2
+ '[' /dev/console '!=' /usr/lib/cryptsetup/passfifo ]
+ readlink -f /proc/242/fd/3
+ '[' /usr/lib/cryptsetup/passfifo '!=' /usr/lib/cryptsetup/passfifo ]
+ return 0
+ echo 242
+ return 0
+ pid=242
+ '[' -p /lib/cryptsetup/passfifo ]
+ break
+ local o v
+ grep -z -m1 '^CRYPTTAB_NAME=' /proc/242/environ
+ v='CRYPTTAB_NAME=md1_crypt'
+ eval 'CRYPTTAB_NAME=${v#CRYPTTAB_NAME=}'
+ CRYPTTAB_NAME=md1_crypt
+ grep -z -m1 '^CRYPTTAB_TRIED=' /proc/242/environ
+ v='CRYPTTAB_TRIED=0'
+ eval 'CRYPTTAB_TRIED=${v#CRYPTTAB_TRIED=}'
+ CRYPTTAB_TRIED=0
+ grep -z -m1 '^CRYPTTAB_OPTION_tries=' /proc/242/environ
+ v=
+ eval unset -v CRYPTTAB_OPTION_tries
+ unset -v CRYPTTAB_OPTION_tries
+ '[' -z x ]
+ '[' -z x ]
+ crypttab_find_entry --quiet md1_crypt
+ local 'target=--quiet' 'quiet=n' IFS
+ '[' --quiet '=' --quiet ]
+ '[' 2 -eq 2 ]
+ quiet=y
+ target=md1_crypt
+ '[' -f /cryptroot/crypttab ]
+ IFS='     ' read -r _CRYPTTAB_NAME _CRYPTTAB_SOURCE _CRYPTTAB_KEY _CRYPTTAB_OPTIONS
+ '[' md1_crypt '!=' md1_crypt ]
+ '[' -z md1_crypt ]
+ printf '%b' md1_crypt
+ CRYPTTAB_NAME=md1_crypt
+ '[' -z 'UUID=37271a9b-560a-4863-9eb6-6d74b38e493e' ]
+ '[' -z none ]
+ '[' md1_crypt '=' md1_crypt ]
+ printf '%b' 'UUID=37271a9b-560a-4863-9eb6-6d74b38e493e'
+ CRYPTTAB_SOURCE='UUID=37271a9b-560a-4863-9eb6-6d74b38e493e'
+ printf '%b' none
+ CRYPTTAB_KEY=none
+ printf '%b' luks,discard
+ CRYPTTAB_OPTIONS=luks,discard
+ return 0
+ pgrep_exe /sbin/cryptsetup
+ local exe pid
+ readlink -f -- /sbin/cryptsetup
+ exe=/usr/sbin/cryptsetup
+ '[' -f /usr/sbin/cryptsetup ]
+ ps -eo 'pid='
+ read pid
+ readlink -f /proc/1/exe
+ '[' /usr/bin/sh '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/2/exe
+ '[' /proc/2/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/3/exe
+ '[' /proc/3/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/4/exe
+ '[' /proc/4/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/5/exe
+ '[' /proc/5/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/6/exe
+ '[' /proc/6/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/7/exe
+ '[' /proc/7/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/8/exe
+ '[' /proc/8/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/9/exe
+ '[' /proc/9/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/10/exe
+ '[' /proc/10/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/11/exe
+ '[' /proc/11/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/12/exe
+ '[' /proc/12/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/13/exe
+ '[' /proc/13/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/14/exe
+ '[' /proc/14/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/15/exe
+ '[' /proc/15/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/16/exe
+ '[' /proc/16/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/17/exe
+ '[' /proc/17/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/18/exe
+ '[' /proc/18/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/19/exe
+ '[' /proc/19/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/20/exe
+ '[' /proc/20/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/21/exe
+ '[' /proc/21/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/22/exe
+ '[' /proc/22/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/23/exe
+ '[' /proc/23/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/24/exe
+ '[' /proc/24/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/25/exe
+ '[' /proc/25/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/26/exe
+ '[' /proc/26/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/27/exe
+ '[' /proc/27/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/28/exe
+ '[' /proc/28/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/29/exe
+ '[' /proc/29/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/30/exe
+ '[' /proc/30/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/31/exe
+ '[' /proc/31/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/32/exe
+ '[' /proc/32/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/33/exe
+ '[' /proc/33/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/34/exe
+ '[' /proc/34/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/35/exe
+ '[' /proc/35/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/36/exe
+ '[' /proc/36/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/37/exe
+ '[' /proc/37/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/38/exe
+ '[' /proc/38/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/39/exe
+ '[' /proc/39/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/40/exe
+ '[' /proc/40/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/41/exe
+ '[' /proc/41/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/42/exe
+ '[' /proc/42/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/43/exe
+ '[' /proc/43/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/44/exe
+ '[' /proc/44/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/45/exe
+ '[' /proc/45/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/46/exe
+ '[' /proc/46/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/47/exe
+ '[' /proc/47/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/48/exe
+ '[' /proc/48/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/49/exe
+ '[' /proc/49/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/50/exe
+ '[' /proc/50/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/51/exe
+ '[' /proc/51/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/52/exe
+ '[' /proc/52/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/53/exe
+ '[' /proc/53/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/54/exe
+ '[' /proc/54/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/55/exe
+ '[' /proc/55/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/56/exe
+ '[' /proc/56/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/57/exe
+ '[' /proc/57/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/58/exe
+ '[' /proc/58/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/59/exe
+ '[' /proc/59/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/60/exe
+ '[' /proc/60/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/61/exe
+ '[' /proc/61/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/62/exe
+ '[' /proc/62/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/63/exe
+ '[' /proc/63/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/64/exe
+ '[' /proc/64/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/65/exe
+ '[' /proc/65/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/66/exe
+ '[' /proc/66/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/67/exe
+ '[' /proc/67/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/68/exe
+ '[' /proc/68/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/69/exe
+ '[' /proc/69/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/70/exe
+ '[' /proc/70/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/71/exe
+ '[' /proc/71/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/72/exe
+ '[' /proc/72/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/73/exe
+ '[' /proc/73/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/74/exe
+ '[' /proc/74/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/75/exe
+ '[' /proc/75/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/76/exe
+ '[' /proc/76/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/78/exe
+ '[' /proc/78/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/89/exe
+ '[' /proc/89/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/90/exe
+ '[' /proc/90/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/119/exe
+ '[' /proc/119/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/121/exe
+ '[' /usr/bin/udevadm '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/143/exe
+ '[' /proc/143/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/150/exe
+ '[' /proc/150/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/151/exe
+ '[' /proc/151/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/152/exe
+ '[' /proc/152/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/153/exe
+ '[' /proc/153/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/154/exe
+ '[' /proc/154/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/155/exe
+ '[' /proc/155/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/156/exe
+ '[' /proc/156/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/157/exe
+ '[' /proc/157/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/158/exe
+ '[' /proc/158/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/159/exe
+ '[' /proc/159/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/160/exe
+ '[' /proc/160/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/161/exe
+ '[' /proc/161/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/162/exe
+ '[' /proc/162/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/163/exe
+ '[' /proc/163/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/164/exe
+ '[' /proc/164/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/165/exe
+ '[' /proc/165/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/166/exe
+ '[' /proc/166/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/167/exe
+ '[' /proc/167/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/168/exe
+ '[' /proc/168/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/188/exe
+ '[' /proc/188/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/191/exe
+ '[' /proc/191/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/205/exe
+ '[' /proc/205/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/206/exe
+ '[' /proc/206/exe '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/218/exe
+ '[' /usr/sbin/dropbear '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/227/exe
+ '[' /usr/bin/sh '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/242/exe
+ '[' /usr/lib/cryptsetup/askpass '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/243/exe
+ '[' /usr/bin/sh '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/244/exe
+ '[' /usr/sbin/cryptsetup '!=' /usr/sbin/cryptsetup ]
+ printf '%d\n' 244
+ read pid
+ readlink -f /proc/246/exe
+ '[' /usr/sbin/dropbear '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/247/exe
+ '[' /usr/bin/busybox '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/389/exe
+ '[' /usr/bin/busybox '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/391/exe
+ '['  '!=' /usr/sbin/cryptsetup ]
+ read pid
+ readlink -f /proc/392/exe
+ '[' /usr/bin/busybox '!=' /usr/sbin/cryptsetup ]
+ read pid
+ grep -Fxqz 'CRYPTTAB_NAME=md1_crypt' /proc/244/environ
+ PID=244
+ stat '-c%Z' /proc/244
Please unlock disk md1_crypt
+ BIRTH=1764965230
+ return 0
+ echo 'Please unlock disk md1_crypt'
+ cat
+ wait_for_answer
+ local 'timer=100' b
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=99
+ '[' 99 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=98
+ '[' 98 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=97
+ '[' 97 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=96
+ '[' 96 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=95
+ '[' 95 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=94
+ '[' 94 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=93
+ '[' 93 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=92
+ '[' 92 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=91
+ '[' 91 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=90
+ '[' 90 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=89
+ '[' 89 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=88
+ '[' 88 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=87
+ '[' 87 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=86
+ '[' 86 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=85
+ '[' 85 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=84
+ '[' 84 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=83
+ '[' 83 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=82
+ '[' 82 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=81
+ '[' 81 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=80
+ '[' 80 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=79
+ '[' 79 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=78
+ '[' 78 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=77
+ '[' 77 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=76
+ '[' 76 -le 0 ]
+ '[' -d /proc/244 ]
+ stat '-c%Z' /proc/244
+ b=1764965230
+ '[' 1764965230 -le 1764965230 ]
+ usleep 100000
+ timer=75
+ '[' 75 -le 0 ]
+ '[' -d /proc/244 ]
+ dm_blkdevname md1_crypt
+ local 'name=md1_crypt' dev
+ dmsetup info -c --noheadings -o blkdevname -- md1_crypt
+ dev=
+ return 1
+ '[' 1 -ge 3 ]
+ echo 'cryptsetup: cryptsetup failed, bad password or options?'
cryptsetup: cryptsetup failed, bad password or options?
+ return 1
+ exit 1
matthieu@terminator:~$

-----

Matthieu

On Fri, 5 Dec 2025 20:35:33 +0100 Guilhem Moulin wrote:

> Control: tag -1 unreproducible
>
> On Fri, 05 Dec 2025 at 20:03:04 +0100, Matthieu Meurillon wrote:
> > I confirm it does not work on my side (with 3 different syntax) :
> >
> > matthieu@terminator:~$ ssh -T [email protected] <<<'passphrase'
> > […]
> > matthieu@terminator:~$ ssh -T [email protected] <<> > […]
> > matthieu@terminator:~$ ssh -T [email protected] <<< 'passphrase'
>
> FWIW your local shell parses these as the exact same thing. The
> alternatives I suggested use different local and remote code paths.
>
> Stupid question but… does it work with the correct passphrase? Unlike
> your earlier `-tt` output the passphrase isn't returned as is, and there
> is the prompt from cryptroot-unlock. So at least the tooling does seem
> to work somewhat.
>
> > Let me know if you need more information.
>
> That's still not the debug output I asked for. From my first message:
>
> | Please provide a debug trace by adding `set -x` to
> |
> | /usr/share/cryptsetup/initramfs/bin/cryptroot-unlock
> |
> | (and rebuild the initramfs afterwards).
>
> > command:
> > cmd: "ssh -tt root@{{ dropbear_ip }}"
> > stdin: "{{ luks_pwd }}"
>
> I don't know how ansible's command module deals with TTYs, but again
> that `ssh` invocation looks wrong. Does it work when you use one of the
> 3 alternatives I suggested?
>
> --
> Guilhem.

Reply via email to