บีเวอร์ไบโอนิค, 18.04.
วันนี้มีเรื่องตลกเกิดขึ้น ฉันมีระบบ ทำงานได้ดี บูทเครื่องจนถึงเดสก์ท็อป - เวลาทำงานประมาณ 80 วัน เปิดหน้าต่างจำนวนมากบนเดสก์ท็อป ทุกอย่างเรียบร้อยดี จนกระทั่ง... GUI ทำงานบน tty1 (ตามที่คาดไว้)
ในการพยายามดีบักปัญหาอื่น ฉันตัดสินใจเปลี่ยนจากเดสก์ท็อป GUI เป็นคอนโซลเสมือนและเข้าสู่ระบบ ดังนั้นฉันจึงทำ "sudo chvt 2" และไปที่พรอมต์การเข้าสู่ระบบบน tty2 จนถึงตอนนี้ดีมาก ฉันเข้าสู่ระบบในฐานะตัวเอง (บน tty2) ทำบางสิ่ง จากนั้นออกจากระบบ (ผ่าน ^D) - คาดว่าจะกลับไปที่ข้อความแจ้งการเข้าสู่ระบบ ซึ่งจากนั้นฉันสามารถเปลี่ยนกลับไปใช้เซสชันเดสก์ท็อป GUI ของฉันได้
อย่างไรก็ตาม สิ่งต่อไปที่เกิดขึ้นคือฉันเห็นหน้าจอสีม่วงล้วน จากนั้นประมาณ 10 วินาทีต่อมา หน้าจอ GUI ถามรหัสผ่านของฉัน ฉันเข้าสู่ระบบและได้รับการนำเสนอด้วยเดสก์ท็อปที่สะอาดและใหม่ หน้าต่างทั้งหมดที่เคยมีอยู่หายไปแล้ว (หมายความว่าฉันต้องค้นหาว่ามีอะไรอยู่ก่อนหน้านี้ และเริ่มต้นใหม่ทั้งหมด)
ดูเหมือนว่าการออกจากระบบ tty2 ส่งสัญญาณ Hangup ไปยังกระบวนการทั้งหมดที่ทำงานบนเดสก์ท็อป GUI รวมถึงเดสก์ท็อปด้วย บังคับให้คุณลงชื่อเข้าใช้อีกครั้งและรีสตาร์ทสิ่งที่เคยทำงานมาก่อน
ทำไมสิ่งนี้ถึงเกิดขึ้น?
ข้อมูลเพิ่มเติมบางส่วน:
หลังจากรีสตาร์ทเดสก์ท็อป - และหลังจากที่ฉันเรียกใช้สคริปต์เพื่อเปิดหน้าต่าง (โปรแกรม) ปกติของฉัน - ฉันพบว่ามีกระบวนการมากมายที่ทำงานบน tty1 ซึ่งทำงานในฐานะผู้ใช้ "gdm" และเขาวงกตของ ประมวลผลบน tty3 ทำงานเป็นผู้ใช้ "ฉัน" กระบวนการทั้งหมดเหล่านี้ (ทั้งบน tty1 และ tty3) แสดงว่าเริ่มต้นขึ้นเมื่อเดสก์ท็อปเริ่มใหม่ มีกระบวนการเดียว (getty) ที่ทำงานบน tty2
มีไฟล์เดียวใน /var/crash ซึ่งประทับเวลาในขณะที่เดสก์ท็อปเริ่มต้นใหม่ ซึ่งสอดคล้องกับหนึ่งในกระบวนการของฉัน (เช่น บางอย่างที่ฉันทำงานในหน้าต่างเทอร์มินัลของฉันในขณะที่เกิดการขัดข้อง) ไฟล์นั้นแสดงว่าถูกฆ่าโดยสัญญาณ 6 (SIGABRT) SIGABRT มักเกิดจากโปรแกรมที่ล้มเหลวในการยืนยัน (3)