Я думав, що можу легко перевірити часові позначки певних файлів. Тоді я зрозумів, що це буде не так просто, коли я побачив такі часові позначки 1991
.
Я думав, що можу легко перевірити часові позначки певних файлів. Тоді я зрозумів, що це буде не так просто, коли я побачив такі часові позначки 1991
.
Відповіді:
Мабуть, найпростіший спосіб (припускаючи, що sda1 - це ваш / root /):
tune2fs -l / dev / sda1 | grep створено
Це має відображати дату створення файлової системи. Підтверджено, що працює на ext2 to ext4, не впевнений в інших файлових системах!
cp -a
дані. Отже, коротко: визначити вік системи не в усіх випадках.
/dev/root
трохи більш загальне.
Один з механізмів, який я часто використовую, - це перевірити час зміни (ctime) для файлів у головному домашньому каталозі. Оскільки /root
домашній каталог створюється під час встановлення та часто використовується рідко, це може забезпечити порівняно гарне наближення. Як уточнив Кайл у коментарях, оскільки 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
. Крім того, мені цікаво, чому час створення файлів не
Перевірка обладнання буде хорошим вибором, якщо у вас є доступ до нього. Ви можете оглянути систему та / або апаратні компоненти, щоб отримати гарне уявлення про час її збирання.
Крім того, якщо ви можете отримати доступ до екрана BIOS, там часто є інформація про дату, яка може бути використана для визначення віку машини.
Якщо ви можете отримати доступ до інформації SMART на жорсткому диску ( smartctl -a /dev/sda
), там може щось продовжувати. Я не бачу конкретної часової позначки в SMART, але існує принаймні години використання лічильника. Це забезпечить нижню межу того, скільки років машині (адже якщо жорсткий диск працює протягом 100 годин, система не може бути молодшою за 100 годин).
Що стосується перевірок файлової системи, ви можете подивитися інформацію про дату для /lost+found
- цього каталогу було створено під час створення файлової системи. Дата на ній повинна відповідати інформації про налаштування з попередньої відповіді.
/lost+found
підказки, оскільки ця інформація доступна непривілейованим користувачам. Запуск пакетної операції на зразок tune2fs в кореневих файлових системах як суперпользователь трохи турбує. Крім того, це рішення працює у файлових системах FreeBSD та non-ext2 / 3/4.
З RedHat та його похідними досить просто отримати загальне уявлення про версію ОС / vintage через комбінацію віку файлів та інших системних файлів. Я зазвичай перевіряю /root/anaconda-ks.cfg
файл, оскільки він містить початкові параметри сервера та параметри пакету. Іноді uname -a
буде хороша інформація про дату збирання ядра. Також буде кластер файлів з тією ж датою в /etc
; зазвичай посилання rcx.d, скрипти rc, inittab тощо.