systemd รุ่น 230 มีการปรับค่าคอนฟิกเริ่มต้น KillUserProcesses เป็น yes ทำให้ systemd ปิดโปรแกรมทุกตัวทันทีหลังจากผู้ใช้ล็อกเอาต์จากระบบ (รวมถึงการเชื่อมต่อ ssh หลุดไป) ส่งปัญหาต่อโปรแกรมที่เปิดค้างเอาเพื่อป้องกันการเชื่อมต่อหลุดไปอย่าง tmux, screen, และ x2go keszybz นักพัฒนาของ systemd ระบุว่าทางแก้นั้นทำได้โดยผู้ใช้อาจจะสั่งแก้ scope ของการรันด้วยคำสั่ง systemd-run --scope --user tmux ทำให้แม้ว่าผู้ใช้หลุดออกจากระบบไป โปรแกรมก็จะรันต่อ แต่หากโปรแกรมเช่น tmux และ screen จะสามารถรันตัวเองโดยเปลี่ยน scope ได้อันโนมัติก็จะดีกว่า และเขาเสนอให้ tmux รองรับการเปลี่ยน scope ด้วยตัวเอง ้ข้อเสียของแนวทางนี้คือ tmux จะต้องลากเอาไลบรารี dbus เข้ามาเป็น dependency ด้วย ทาง nicm นักพัฒนาของ dbus ระบุว่าฟังก์ชั่น daemon ทำงานได้ค่อนข้างตรงกันทุกระบบอยู่แล้วมานานถึงสามสิบปี ทำไม systemd จึงเลือกมาเปลี่ยนพฤติกรรมและให้แอปพลิเคชั่นรองรับความเปลี่ยนแปลงนี้ไว้เอง ทางฝั่ง systemd ระบุว่าการปิดโปรแกรมทั้งหมดหลังผู้ใช้หลุดออกจากระบบเป็นค่าเริ่มต้นหลังจากมีปัญหาโปรแกรม GUI รันค้างไว้แม้ผู้ใช้จะล็อกเอาต์ไปแล้วก็ตามจึงต้องเปลี่ยนพฤติกรรมนี้ ตอนนี้ทางฝั่ง tmux ปฎิเสธจะดึง dbus เข้ามา และระบุว่าถ้ามี API ให้ใช้งานง่ายๆ ก็จะพิจารณาอีกที ที่มา - Github: tmux, Debian Bug #825394 Topics: systemdLinux