Bug 36633

Summary: Закрывается screen при обрыве SSH сессии
Product: Sisyphus Reporter: Vyacheslav Dikonov <slava>
Component: systemdAssignee: Alexey Shabalin <shaba>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: arseny, at, glebfm, ldv, rider, shaba, zvn
Version: unstable   
Hardware: all   
OS: Linux   

Description Vyacheslav Dikonov 2019-04-19 23:56:53 MSK
1) Заходим по ssh (по ключу) на удаленную машину
2) screen mc 
   Запускаем долгий процесс 
3) связь рвется, ssh сессия разорвана
4) Заходим туда же снова
5) screen -r

There is no screen to be resumed.

@$%!!!   Итоги работы компьютера за последние часы пропали.
Это теперь так и будет?
Comment 1 Anton Farygin 2019-04-20 09:19:25 MSK
Это фича systemd, отключается настройкой.
Comment 2 Vyacheslav Dikonov 2019-04-20 10:00:27 MSK
Подскажите, пожалуйста, как найти эту настройку.
В сети море неверных решений проблемы с nohup, disown и т.д. 

Помогло 
systemd-run --scope --user screen mc

но хочется стандартного поведения и не заучивать длинные лишние команды...
Comment 3 Anton Farygin 2019-04-20 10:44:12 MSK
KillUserProcesses=no
Comment 4 Alexey Shabalin 2019-04-20 13:54:34 MSK
Установите пакет systemd-settings-disable-kill-user-processes, это самый простой способ.
Comment 5 zvn 2026-03-16 09:31:38 MSK
действительно, NOTABUG

Но чаще всего при коротких процессах результат работы screen отслеживают и ssh-подключение к серверу не закрывают.

А вот если что-то длительное запускают и, отключившись по Ctrl+A+D еще и отключаются от ssh-сессии, а потом обнаруживают, что ни процесса, ни screen нет, то это _очень_ неприятно, портит репутацию особенно _серверным_ дистрибутивам.
Comment 6 Arseny Maslennikov 2026-03-16 09:55:34 MSK
(In reply to zvn from comment #5)
> действительно, NOTABUG
> 
> А вот если что-то длительное запускают и, отключившись по Ctrl+A+D еще и
> отключаются от ssh-сессии, а потом обнаруживают, что ни процесса, ни screen
> нет, то это _очень_ неприятно,
Да.

> портит репутацию особенно _серверным_
> дистрибутивам.
Тогда надо завести другую багу на _серверный дистрибутив_, наверное, и в ней ставить вопрос о другом дефолте.

А в сизифе пакет как пакет.
В пространстве решений есть несколько точек.
Кому-то удобно настроить KillUserProcesses=no.
Кто-то предпочтёт включить linger одному усеру.
Иные готовы засунуть screen-сеансы в юниты, которые умирать не будут. Но, конечно, лучше, чтобы такой механизм был уже реализован и приезжал в пакете screen (точно не в пакете systemd).
Comment 7 zvn 2026-03-16 10:13:15 MSK
речь шла не только о серверных дистрибутивах. 

Например, https://www.altlinux.org/Обновление_ОС содержит рекомендацию использовать screen и, вообще говоря, даже при домашнем использовании можно на это наткнуться и это тоже портит репутацию, уже совсем не серверным дистрибутивам.

смотрел в других дострибутивах
loginctl show-session $XDG_SESSION_ID | grep KillUserProcesses
как-то совсем не yes.