loginctl enable-linger / disable-linger … แต่อ่าน linger-status หรือไม่


16

ฉันรู้วิธีการเปิด / loginctlปิดอ้อยอิ่งกับ

แต่จนถึงตอนนี้ฉันไม่พบวิธีสอบถามสถานะของผู้ใช้

ฉันต้องการรู้: ผู้ใช้ยังคงเปิดใช้งานอยู่fooหรือไม่

ฉันจะเข้าถึงข้อมูลนี้ได้อย่างไร?

คำตอบ:


23

คุณสามารถแสดงรายการผู้ใช้ที่อืดอาดด้วย

ls /var/lib/systemd/linger

เพราะ

loginctl enable-linger $USER
loginctl disable-linger $USER

ทำเทียบเท่า

touch /var/lib/systemd/linger/$USER
rm /var/lib/systemd/linger/$USER

8

loginctl user-status foo แสดงสถานะอิทธิพล


3
ฉันไม่แน่ใจว่ามันใช้งานได้จริง ไม่กี่นาทีที่ผ่านมาสิ่งนี้พิมพ์แผนผังสำหรับผู้ใช้ทดสอบที่ยังไม่ได้เปิดใช้งาน ในไม่กี่นาทีต่อมาผลลัพธ์คือ "ไม่สามารถรับผู้ใช้: ไม่มีผู้ใช้ '1003' ที่รู้จักหรือเข้าสู่ระบบ" ฉันจะใช้วิธีแก้ปัญหาจาก Markus Kuhn (ตรวจสอบว่ามีไฟล์ / var / lib / systemd / linger / $ USER อยู่หรือไม่)
guettli

5

ฉันพบที่ดีที่สุดสำหรับการตรวจสอบในสคริปต์ (โดยทางโปรแกรม):

loginctl show-user $USER --property=Linger 2>/dev/null | grep -q 'yes'

ทำไมไม่ใช้สิ่งนี้: "ตรวจสอบการดำรงอยู่ของ / var / lib / systemd / linger"
guettli

4
เพราะมันอาจมีการเปลี่ยนแปลงโดยไม่ต้องแจ้งให้ทราบล่วงหน้า
Xorax
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.