ฉันคิดว่าฉันสามารถตรวจสอบการประทับเวลาของไฟล์เฉพาะได้อย่างง่ายดาย แล้วฉันตระหนักว่ามันจะไม่ง่ายดังนั้นเมื่อผมเห็น timestamps 1991
เช่น
ฉันคิดว่าฉันสามารถตรวจสอบการประทับเวลาของไฟล์เฉพาะได้อย่างง่ายดาย แล้วฉันตระหนักว่ามันจะไม่ง่ายดังนั้นเมื่อผมเห็น timestamps 1991
เช่น
คำตอบ:
วิธีที่ง่ายที่สุดน่าจะเป็น (สมมติว่า sda1 คือ / root /):
tune2fs -l / dev / sda1 | grep สร้างแล้ว
สิ่งนี้จะแสดงวันที่ซึ่งระบบไฟล์ถูกสร้างขึ้น ยืนยันว่าจะทำงานกับ ext2 ถึง ext4 ไม่แน่ใจเกี่ยวกับระบบไฟล์อื่น ๆ !
cp -a
ด้วยข้อมูล ดังนั้นในระยะสั้น: เป็นไปไม่ได้ที่จะกำหนดอายุของระบบในทุกกรณี
/dev/root
จะกว้างกว่านิดหน่อย
กลไกหนึ่งที่ฉันมักใช้คือตรวจสอบเวลาเปลี่ยน (ctime) ในไฟล์ภายในไดเรกทอรีหลักของรูท เนื่องจาก/root
โฮมไดเร็กตอรี่ถูกสร้างขึ้นในเวลาติดตั้ง, และมักจะไม่ค่อยได้ใช้, สิ่งนี้สามารถให้การประมาณที่ค่อนข้างดี ตามที่ Kyle ได้อธิบายไว้ในคอมเม้นต์เนื่องจาก ctime อ้างถึง inode และไม่ใช่ข้อมูลการแก้ไขเนื้อหาไฟล์จะไม่เปลี่ยน ctime
โดยค่าเริ่มต้นls
คำสั่งพิมพ์เวลาการแก้ไข (mtime) ของไฟล์ ดังนั้นหากแทนที่ตัวเลือก ctime เช่นนั้น
ls -alct /root
นี่จะพิมพ์ไฟล์ทั้งหมดแสดงเวลาสร้างและเรียงลำดับตามเวลา
ตัวอย่างเช่นนี่คือตัวอย่างของไฟล์ที่เก่าแก่ที่สุด 3 ไฟล์ใน/root
ไดเรกทอรีจากหนึ่งในระบบของฉัน
ls -alt install.log.syslog .cshrc .tcshrc
-rw-r--r--. 1 root 10238 Feb 18 2010 install.log.syslog
-rw-r--r--. 1 root 129 Dec 3 2004 .tcshrc
-rw-r--r--. 1 root 100 Sep 22 2004 .cshrc
จากนั้นตรวจสอบเวลาการเปลี่ยนแปลง
ls -alct install.log.syslog .cshrc .tcshrc
-rw-r--r--. 1 root 100 Feb 18 2010 .cshrc
-rw-r--r--. 1 root 10238 Feb 18 2010 install.log.syslog
-rw-r--r--. 1 root 129 Feb 18 2010 .tcshrc
วันที่ 18 กุมภาพันธ์ 2010 ติดตามด้วยเวลาโดยประมาณที่ฉันจะติดตั้งระบบนั้นเป็นครั้งแรก
ลอง
ls -alp /etc/ssh/ssh_host_dsa_key.pub | cut -d " " -f6
กุญแจถูกสร้างขึ้นเมื่อคุณติดตั้งระบบปฏิบัติการ
ls
จะแสดงวันที่แตกต่างกัน (อย่างน้อยในเครื่องของฉัน) ดังนั้นcut
คำสั่งจะไม่ทำงาน stat -c %y /etc/ssh/ssh_host*pub
ตอนนี้ผมจะใช้ นอกจากนี้ผมสงสัยว่าทำไมครั้งการสร้างแฟ้มยังไม่ได้รับความรักมากขึ้นบน Linux ...
ตรวจสอบฮาร์ดแวร์จะเป็นเดิมพันที่ดีถ้าคุณมีการเข้าถึง คุณสามารถตรวจสอบระบบและ / หรือส่วนประกอบฮาร์ดแวร์เพื่อให้ได้แนวคิดที่ดีว่าควรประกอบเมื่อใด
อีกวิธีหนึ่งถ้าคุณสามารถเข้าถึงหน้าจอ BIOS มักจะมีข้อมูลวันที่ซึ่งสามารถใช้เพื่อกำหนดอายุของเครื่อง
หากคุณสามารถเข้าถึงข้อมูลสมาร์ทบนฮาร์ดไดรฟ์ ( smartctl -a /dev/sda
) อาจมีบางสิ่งที่ต้องดำเนินการ ฉันไม่เห็นเวลาที่ระบุใน SMART แต่มีตัวนับการใช้งานอย่างน้อยหนึ่งชั่วโมง นั่นจะให้ขอบเขตที่ต่ำกว่าในเรื่องอายุของเครื่อง (เนื่องจากหากฮาร์ดไดรฟ์ทำงานเป็นเวลา 100 ชั่วโมงระบบจะไม่สามารถอายุน้อยกว่า 100 ชั่วโมง)
สำหรับการตรวจสอบระบบไฟล์คุณสามารถดูข้อมูลวันที่/lost+found
- ไดเรกทอรีนั้นถูกสร้างขึ้นเมื่อระบบไฟล์ถูกสร้างขึ้น วันที่ที่ควรเห็นด้วยกับข้อมูล tunefs จากคำตอบก่อนหน้า
/lost+found
คำใบ้เนื่องจากข้อมูลนี้มีให้สำหรับผู้ใช้ที่ไม่มีสิทธิ์ การรันการดำเนินการแบบแบตช์เช่น tune2fs บนระบบไฟล์รูทเนื่องจาก superuser เป็นเรื่องน่ากังวลเล็กน้อย นอกจากนี้โซลูชันนี้ทำงานบนระบบไฟล์ FreeBSD และ non-ext2 / 3/4
ด้วย RedHat และอนุพันธ์มันค่อนข้างง่ายที่จะเข้าใจแนวคิดทั่วไปของเวอร์ชั่น OS / เหล้าองุ่นผ่านการผสมผสานระหว่างอายุไฟล์และไฟล์ระบบอื่น ๆ ฉันมักจะตรวจสอบ/root/anaconda-ks.cfg
ไฟล์เนื่องจากมีการตั้งค่าเซิร์ฟเวอร์เริ่มต้นและพารามิเตอร์แพ็คเกจ บางครั้งuname -a
จะมีข้อมูลที่ดีเกี่ยวกับวันที่สร้างเคอร์เนล นอกจากนี้ยังจะกลุ่มของไฟล์ที่มีวันเดียวกันใน/etc
; โดยทั่วไปแล้วลิงก์ rcx.d, สคริปต์ rc, inittab ฯลฯ
สิ่งนี้ใช้ได้กับระบบ Red Hat:
rpm -qi basesystem | grep "Install Date"