วิธีอ่านข้อมูลการเข้าสู่ระบบแบบเก่าโดยใช้คำสั่ง“ ล่าสุด”


14

lastคำสั่งอาจแสดงไม่กี่บรรทัดเกินไปของข้อมูลเข้าสู่ระบบของผู้ใช้โดยตัดทอนเมื่อ“wtmp เริ่มต้น”

หากฉันต้องการได้รับข้อมูลมากที่สุดlast(เช่นเพื่อดูว่าระบบของฉันเข้าถึงจาก IP ที่ไม่รู้จัก / น่าสงสัยโดยใช้ชื่อผู้ใช้ของฉัน) ฉันจะส่งออกข้อมูล "ล่าสุด" ที่เก่ากว่าได้อย่างไร

หากฉันใช้last -2000ตั้งใจที่จะเห็นเอาต์พุต 2,000 บรรทัด แต่คำสั่งอาจส่งคืนได้เพียงไม่กี่บรรทัดสิ่งใดก็ตามที่เกิดขึ้นก่อนที่“ wtmp เริ่มต้น” จะถูกตัดทอน)

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


last -oอาจช่วย หน้าคนบอกว่ามันอ่านไฟล์ wtmp เก่า แต่ในระบบของฉันมันไม่ได้ให้ข้อมูลมากนัก แม้ว่าจะwtmp beginsตั้งค่าเป็น 1 มกราคม 1970
udiboy1209

1
มันสนุก. หากคุณมีการเข้าสู่ระบบมากกว่า 1970 ตั้งแต่ที่แสดงในบันทึกของคุณการตั้งค่าบางอย่างอาจไม่ถูกต้อง
หินน้ำ

คำตอบ:


17

lastคำสั่งใช้แฟ้มไบนารี/var/log/wtmpที่จะแสดงรายชื่อของสู่ระบบครั้งล่าสุดผู้ใช้

แต่/var/log/wtmpเป็นไฟล์ที่หมุนที่รายการเก่าจะถูกเก็บเข้า/var/log/wtmp.xที่ x [0-9]คือหลัก

ดังนั้นหากคุณต้องการมองลึกลงไปในประวัติการเข้าสู่ระบบให้ลองเปิดไฟล์ใดไฟล์หนึ่งต่อไปนี้:

last -2000 -f /var/log/wtmp.1 | less

1
หากต้องการอ่าน 2000 สายใน terminal มันจะดีกว่าที่จะผ่านมันไปlessเป็นlast -2000 -f /var/log/wtmp.1| less+1 สำหรับคำตอบที่ดี
souravc

เป็นความคิดที่ดีขอบคุณ @souravc ฉันแก้ไขคำตอบของฉันแล้ว
Sylvain Pineau

ขอบคุณมาก! ฉันสังเกตว่าไฟล์ wtmp.1 ถูก gzipped โดยอัตโนมัติเป็นไฟล์ wtmp.1.gz ดังนั้นฉันจึงคลายซิปและใช้ "last -f" เพื่ออ่านนั่นคือสิ่งที่ฉันต้องการ ขอบคุณมาก. Btw, wtmp.1 ดูเหมือนว่ายังใหม่เกินไปและฉันมีไฟล์ wtmp1 เท่านั้น (ไม่มีไฟล์อื่นเช่น wtmp2 ฯลฯ ใน / var / log) หากฉันต้องการให้ระบบจัดเก็บข้อมูลเพิ่มเติมฉันจะเปลี่ยนการตั้งค่าระบบเริ่มต้นได้อย่างไร เพื่อจุดประสงค์นี้?
หินน้ำ

โปรดสร้างคำถามใหม่เพื่อครอบคลุมจำนวนการหมุนเวียนที่ควรเก็บถาวร
Sylvain Pineau

1

หากสุดท้าย-f /var/log/wtmp.1ไม่ได้ให้ผลลัพธ์ใด ๆ อาจเป็นเพราะเช่นความยาวของเรคคอร์ดมีการเปลี่ยนแปลงในเวอร์ชั่นที่ใหม่กว่า

ตัวเลือกง่ายๆก็คือการใช้ utmpdump แทน:

utmpdump /var/log/wtmp.1  | less

โอ้และlessสามารถเลิกใช้โดยใช้q(จาก "ออกจาก" ;-))


มี 10 คะแนนแรกของคุณตลอด 1 ปีต่อมา!
WinEunuuchs2Unix

0

ปรับปรุง

เข้าสู่ระบบ

/var/log/wtmp.1

มีข้อ จำกัด

Ubuntu 16และ17อาจมีกลไกในการลบบันทึกเก่ากว่าหนึ่งเดือน ในการกำหนดค่าพฤติกรรมนี้คุณควรแก้ไข:

/etc/logrotate.conf

ข้อมูลเพิ่มเติม:

เข้าถึงบันทึกการเริ่มต้นและปิด

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