บันทึกของระบบเต็มไปด้วยเซสชั่นและข้อความชิ้น


16

ฉันมีการติดตั้ง CentOS 7 ใหม่และสังเกตว่าไฟล์ / var / log / messages ของฉันเต็มไปด้วยข้อความเช่นนี้

Mar  6 08:40:01 myhostname systemd: Started Session 2043 of user root.
Mar  6 08:40:01 myhostname systemd: Starting Session 2043 of user root.
Mar  6 08:40:01 myhostname systemd: Created slice user-1001.slice.
Mar  6 08:40:01 myhostname systemd: Starting user-1001.slice.
Mar  6 08:40:01 myhostname systemd: Started Session 2042 of user userx.
Mar  6 08:40:01 myhostname systemd: Starting Session 2042 of user userx.
Mar  6 08:40:01 myhostname systemd: Started Session 2041 of user root.
Mar  6 08:40:01 myhostname systemd: Starting Session 2041 of user root.
Mar  6 08:40:31 myhostname systemd: Removed slice user-1001.slice.
Mar  6 08:40:31 myhostname systemd: Stopping user-1001.slice.
Mar  6 08:41:01 myhostname systemd: Created slice user-1001.slice.
Mar  6 08:41:01 myhostname systemd: Starting user-1001.slice.
Mar  6 08:41:01 myhostname systemd: Started Session 2044 of user userx.
Mar  6 08:41:01 myhostname systemd: Starting Session 2044 of user userx.
Mar  6 08:41:21 myhostname systemd: Removed slice user-1001.slice.
Mar  6 08:41:21 myhostname systemd: Stopping user-1001.slice.

ทั้งหมดเหล่านี้หมายถึงอะไรและทำไมพวกเขาอยู่ที่นั่น? หากนี่เป็นเสียงพื้นหลังปกติพวกเขาดูเหมือนจะเป็นทรัพยากรสิ้นเปลืองที่จะบันทึกสิ่งนี้ ...

คำตอบ:


19

(คำถามนี้มีคำตอบให้กับ superuser ที่นี่ด้วย )

เหล่านี้คือข้อความที่เกี่ยวข้องกับการสร้างและการลบส่วนที่ใช้ใน systemd เพื่อจัดกลุ่มกระบวนการและจัดการทรัพยากรของพวกเขา

ทำไมพวกเขาถึงถูกล็อกโดยค่าเริ่มต้นหนีฉัน แต่ฉันเห็นสองวิธีในการปิดการใช้งาน:

  1. วิธีที่ล่วงล้ำน้อยกว่าคือการกรองออกโดยการสร้าง /etc/rsyslog.d/ignore-systemd-session-slice.conf ด้วยเนื้อหาต่อไปนี้:

    if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Removed Slice" or $msg contains "Stopping user-") then stop
    

    และรีสตาร์ท rsyslogd ด้วย systemctl restart rsyslog

  2. วิธีที่กว้างกว่าคือการตั้งค่าระดับการบันทึก systemd สูงขึ้นเล็กน้อยโดยการแก้ไข/etc/systemd/system.conf:

     #LogLevel=info
     LogLevel=notice
    

อ้างอิง:


ต้องเปลี่ยนถ้าคำสั่งเป็นif $programname contains "systemd"เพราะชื่อโปรแกรมถูกเรียกsystemd-logind
Aidas

@Aidas ออกจากความอยากรู้รุ่น distro / systemd อะไร?
fusorx

1
CentOS Linux ออก 7.5.1804 (Core)
Aidas

2

ข้อความเหล่านี้เป็นเรื่องปกติและคาดว่าจะได้รับเมื่อผู้ใช้ล็อกอิน

หากต้องการระงับรายการบันทึกเหล่านี้ใน / var / log / messages ให้สร้างตัวกรองทิ้งด้วย rsyslog เช่นเรียกใช้คำสั่งต่อไปนี้:

echo 'if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop' >/etc/rsyslog.d/ignore-systemd-session-slice.conf

จากนั้นเริ่มบริการ rsyslog

systemctl restart rsyslog

https://access.redhat.com/solutions/1564823

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