[Bug 2150073] [NEW] sudo‑rs causes apt-get (install or upgrade)to be stopped (T+) in a non‑interactive SSH session

KJ LAU 2150073 at bugs.launchpad.net
Thu Apr 23 05:08:38 UTC 2026


Public bug reported:

On Ubuntu 26.04 (where /usr/bin/sudo is implemented via sudo-rs), running apt-get upgrade or install under sudo from a non‑interactive SSH + Expect‑driven environment causes the apt-get process to enter a T+ (stopped) state due to do_signal_stop(), causing the installation to hang indefinitely.
This problem does not reproduce when replacing sudo-rs with classic sudo (sudo.ws) under identical conditions.

High level flow:

Host OS (launcher):
  Ubuntu 22.04 LTS

Guest OS (QEMU VM):
  Ubuntu 26.04 (daily / pre‑release)

user at localhost:~$ sudo --version
sudo-rs 0.2.13-0ubuntu1

sudo implementation:
  - Failing: sudo-rs (default sudo in Ubuntu 26.04)
  - Working: classic sudo (sudo.ws)

Invocation context:
  SSH non‑interactive session
  Command chain driven via shell script + Expect
  No human‑attached TTY inside the guest

Guest OS debug information:

sudo ps -eo pid,ppid,stat,wchan:32,cmd | egrep 'apt|dpkg|ldconfig' | grep -v grep
   8809    7947 T+   do_signal_stop                   apt-get upgrade -y

pstree -ap output:

  ├─sshd,3270
  │   ├─sshd-session,3757
  │   │   └─sshd-session,3793
  │   │       └─bash,3799
  │   │           ├─sudo,3960 ./installer.sh ASL default
  │   │           │   └─sudo,3964 ./installer.sh ASL default
  │   │           │       └─installer.sh,3966 /home/user/installer.sh ASL default
  │   │           │           ├─installer.sh,7947 /home/user/installer.sh ASL default
  │   │           │           │   └─apt-get,8809 upgrade -y
  │   │           │           └─tee,7948 -a /home/user/cbkc_output.log
  │   │           └─tee,3961 installer_logs.txt

** Affects: rust-sudo-rs (Ubuntu)
     Importance: Undecided
         Status: New

** Summary changed:

- sudo‑rs causes apt-get 9install or upgrade)to be stopped (T+) in a non‑interactive SSH session
+ sudo‑rs causes apt-get (install or upgrade)to be stopped (T+) in a non‑interactive SSH session

** Description changed:

  On Ubuntu 26.04 (where /usr/bin/sudo is implemented via sudo-rs), running apt-get install under sudo from a non‑interactive SSH + Expect‑driven environment causes the apt-get process to enter a T+ (stopped) state due to do_signal_stop(), causing the installation to hang indefinitely.
  This problem does not reproduce when replacing sudo-rs with classic sudo (sudo.ws) under identical conditions.
  
  High level flow:
  
  Host OS (launcher):
-   Ubuntu 22.04 LTS
+   Ubuntu 22.04 LTS
  
  Guest OS (QEMU VM):
-   Ubuntu 26.04 (daily / pre‑release)
+   Ubuntu 26.04 (daily / pre‑release)
  
  user at localhost:~$ sudo --version
  sudo-rs 0.2.13-0ubuntu1
  
  sudo implementation:
-   - Failing: sudo-rs (default sudo in Ubuntu 26.04)
-   - Working: classic sudo (sudo.ws)
+   - Failing: sudo-rs (default sudo in Ubuntu 26.04)
+   - Working: classic sudo (sudo.ws)
  
  Invocation context:
-   SSH non‑interactive session
-   Command chain driven via shell script + Expect
-   No human‑attached TTY inside the guest
+   SSH non‑interactive session
+   Command chain driven via shell script + Expect
+   No human‑attached TTY inside the guest
  
- 
- Guest OS debug information in :
+ Guest OS debug information:
  
  sudo ps -eo pid,ppid,stat,wchan:32,cmd | egrep 'apt|dpkg|ldconfig' | grep -v grep
-    8809    7947 T+   do_signal_stop                   apt-get upgrade -y
- 
+    8809    7947 T+   do_signal_stop                   apt-get upgrade -y
  
  pstree -ap output:
  
-   ├─sshd,3270
-   │   ├─sshd-session,3757
-   │   │   └─sshd-session,3793
-   │   │       └─bash,3799
-   │   │           ├─sudo,3960 ./installer.sh ASL default
-   │   │           │   └─sudo,3964 ./installer.sh ASL default
-   │   │           │       └─installer.sh,3966 /home/user/installer.sh ASL default
-   │   │           │           ├─installer.sh,7947 /home/user/installer.sh ASL default
-   │   │           │           │   └─apt-get,8809 upgrade -y
-   │   │           │           └─tee,7948 -a /home/user/cbkc_output.log
-   │   │           └─tee,3961 installer_logs.txt
+   ├─sshd,3270
+   │   ├─sshd-session,3757
+   │   │   └─sshd-session,3793
+   │   │       └─bash,3799
+   │   │           ├─sudo,3960 ./installer.sh ASL default
+   │   │           │   └─sudo,3964 ./installer.sh ASL default
+   │   │           │       └─installer.sh,3966 /home/user/installer.sh ASL default
+   │   │           │           ├─installer.sh,7947 /home/user/installer.sh ASL default
+   │   │           │           │   └─apt-get,8809 upgrade -y
+   │   │           │           └─tee,7948 -a /home/user/cbkc_output.log
+   │   │           └─tee,3961 installer_logs.txt

** Description changed:

- On Ubuntu 26.04 (where /usr/bin/sudo is implemented via sudo-rs), running apt-get install under sudo from a non‑interactive SSH + Expect‑driven environment causes the apt-get process to enter a T+ (stopped) state due to do_signal_stop(), causing the installation to hang indefinitely.
+ On Ubuntu 26.04 (where /usr/bin/sudo is implemented via sudo-rs), running apt-get upgrade or install under sudo from a non‑interactive SSH + Expect‑driven environment causes the apt-get process to enter a T+ (stopped) state due to do_signal_stop(), causing the installation to hang indefinitely.
  This problem does not reproduce when replacing sudo-rs with classic sudo (sudo.ws) under identical conditions.
  
  High level flow:
  
  Host OS (launcher):
    Ubuntu 22.04 LTS
  
  Guest OS (QEMU VM):
    Ubuntu 26.04 (daily / pre‑release)
  
  user at localhost:~$ sudo --version
  sudo-rs 0.2.13-0ubuntu1
  
  sudo implementation:
    - Failing: sudo-rs (default sudo in Ubuntu 26.04)
    - Working: classic sudo (sudo.ws)
  
  Invocation context:
    SSH non‑interactive session
    Command chain driven via shell script + Expect
    No human‑attached TTY inside the guest
  
  Guest OS debug information:
  
  sudo ps -eo pid,ppid,stat,wchan:32,cmd | egrep 'apt|dpkg|ldconfig' | grep -v grep
     8809    7947 T+   do_signal_stop                   apt-get upgrade -y
  
  pstree -ap output:
  
    ├─sshd,3270
    │   ├─sshd-session,3757
    │   │   └─sshd-session,3793
    │   │       └─bash,3799
    │   │           ├─sudo,3960 ./installer.sh ASL default
    │   │           │   └─sudo,3964 ./installer.sh ASL default
    │   │           │       └─installer.sh,3966 /home/user/installer.sh ASL default
    │   │           │           ├─installer.sh,7947 /home/user/installer.sh ASL default
    │   │           │           │   └─apt-get,8809 upgrade -y
    │   │           │           └─tee,7948 -a /home/user/cbkc_output.log
    │   │           └─tee,3961 installer_logs.txt

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to rust-sudo-rs in Ubuntu.
https://bugs.launchpad.net/bugs/2150073

Title:
  sudo‑rs causes apt-get (install or upgrade)to be stopped (T+) in a
  non‑interactive SSH session

Status in rust-sudo-rs package in Ubuntu:
  New

Bug description:
  On Ubuntu 26.04 (where /usr/bin/sudo is implemented via sudo-rs), running apt-get upgrade or install under sudo from a non‑interactive SSH + Expect‑driven environment causes the apt-get process to enter a T+ (stopped) state due to do_signal_stop(), causing the installation to hang indefinitely.
  This problem does not reproduce when replacing sudo-rs with classic sudo (sudo.ws) under identical conditions.

  High level flow:

  Host OS (launcher):
    Ubuntu 22.04 LTS

  Guest OS (QEMU VM):
    Ubuntu 26.04 (daily / pre‑release)

  user at localhost:~$ sudo --version
  sudo-rs 0.2.13-0ubuntu1

  sudo implementation:
    - Failing: sudo-rs (default sudo in Ubuntu 26.04)
    - Working: classic sudo (sudo.ws)

  Invocation context:
    SSH non‑interactive session
    Command chain driven via shell script + Expect
    No human‑attached TTY inside the guest

  Guest OS debug information:

  sudo ps -eo pid,ppid,stat,wchan:32,cmd | egrep 'apt|dpkg|ldconfig' | grep -v grep
     8809    7947 T+   do_signal_stop                   apt-get upgrade -y

  pstree -ap output:

    ├─sshd,3270
    │   ├─sshd-session,3757
    │   │   └─sshd-session,3793
    │   │       └─bash,3799
    │   │           ├─sudo,3960 ./installer.sh ASL default
    │   │           │   └─sudo,3964 ./installer.sh ASL default
    │   │           │       └─installer.sh,3966 /home/user/installer.sh ASL default
    │   │           │           ├─installer.sh,7947 /home/user/installer.sh ASL default
    │   │           │           │   └─apt-get,8809 upgrade -y
    │   │           │           └─tee,7948 -a /home/user/cbkc_output.log
    │   │           └─tee,3961 installer_logs.txt

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rust-sudo-rs/+bug/2150073/+subscriptions





More information about the foundations-bugs mailing list