एक दूर-अज्ञेय तरीका है जो ओएस स्थापित करने की तारीख निर्धारित करता है?


10

मैं एक क्रंचबंग मशीन पर हूं और एक स्क्रिप्ट लिखने की कोशिश कर रहा हूं जिसे संदर्भ के रूप में ओएस स्थापित करने की तारीख की आवश्यकता है।

मैंने इस कमांड को खोजा और पाया:

ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'

यह प्रिंट करता है

Mar 31 21:24

मुझे tail -1भाग समझ में नहीं आया , लेकिन यह पता लगाने में सक्षम था कि $ 6 $ 7 $ 8 अंतिम पंक्ति की 6 वीं 7 वीं 8 वीं घटनाएं हैं जो कमांड संदर्भित कर रही है।

हालाँकि, मैंने महसूस किया कि वर्ष को शामिल नहीं किया जा सकता क्योंकि वर्ष ls -ltcकमांड में प्रदर्शित नहीं किया गया था ।

कुछ लोगों ने सुझाव दिया कि तारीख /etcका निर्माण किया गया था और कुछ ने जांच की /var/log/syslogआदि मैंने सोचा कि ये डिस्ट्रो के लिए थोड़ा विशिष्ट हो सकता है।

ओएस स्थापित करने की तारीख खोजने के लिए वास्तव में डिस्ट्रो-एग्नोस्टिक तरीके के लिए आपकी सिफारिश क्या है?


1
आप ऐसा क्यों सोचते हैं कि /etcनिर्माण की तिथि डिस्ट्रो-विशिष्ट है?
केविन

मैंने हाल ही में पढ़ा कि कुछ डिस्ट्रोस हैं जिनमें एक अलग फाइल सिस्टम पदानुक्रम है जैसे कि गोबोलिनक्स और इस धारणा के तहत था कि गॉबोलिनक्स के समान अधिक डिस्ट्रोस हो सकते हैं।
अनिमेश

1
मुझे लगता है कि जाँच / आदि एक विस्तृत फ़ाइल सिस्टम संभालने की तुलना में अधिक पोर्टेबल है। या सिर्फ सबसे पुरानी निर्देशिका के लिए जाँच करें /
केविन

1
पूर्णता के लिए, मैं ध्यान दूंगा कि ls का उत्पादन उस समय को दर्शाता है जब यह छह महीने से कम पुराना हो, और जिस वर्ष यह छह महीने से अधिक हो।
रैंडम 832

@ केविन यदि आप अनुमतियों को संरक्षित करते समय एक संग्रह को खोलते हैं, तो सबसे पुरानी निर्देशिका / फ़ाइल सिस्टम इंस्टॉल की तारीख से पुरानी हो सकती है।
स्कै जूल 30'12

जवाबों:


8

यदि यह धारणा है कि आपके पास एक एक्सटेंडेड {2,3,4} फाइलसिस्टम है, और आपने OS को इंस्टॉल करते समय रूट फाइल सिस्टम को फॉर्मेट किया है (और वाइप के बिना दूसरे ओएस से अपग्रेड नहीं किया है), तो आप डंप 2 एफ का उपयोग कर सकते हैं:

% dumpe2fs -h /dev/mapper/vg_desktop-lv_root 2>&1 |grep 'Filesystem created'
Filesystem created:       Sat Jul 23 04:28:07 2011

क्या आउटपुट को कहीं या फ़ाइल पर रीडायरेक्ट किया जा रहा था, क्योंकि जब मैं कमांड चलाता था तो कुछ भी नहीं होता था।
अनिमेश

आपको अपने रूट फाइल सिस्टम के लिए / dev / mapper / vg_desktop-lv.root के बजाय डिवाइस की आपूर्ति करनी होगी। df /इसे प्राप्त करने के लिए आउटपुट की जाँच करें । मुझे यकीन है कि आप इसे स्वचालित कर सकते हैं।
jsbillings

मुझे एहसास हुआ कि कमांड टाइप _करने के बजाय मेरे पास था -। मुझे अब तारीख मिलती है। धन्यवाद।
अनिमेश

या कि आप बैकअप, सुधार, और बहाल नहीं किया।
psusi

3
मेरा फाइलसिस्टम reiserfs है। इम्हो, / की तलाश में एक बेहतर दृष्टिकोण है।
उपयोगकर्ता अज्ञात

0

मुझे इसके लिए किसी औपचारिक विधि का पता नहीं है।

मैंने हमेशा जो किया है वह है:

touch /install-`date +"%F"` && chattr +i /install-20*

इससे वर्तमान तिथि के बाद 'इंस्टॉल-' नाम की एक फ़ाइल बनती है (अगर आज इसे चलाया गया तो यह 2012-04-03 स्थापित होगा) और इसे अपरिवर्तनीय के रूप में सेट करता है, इसलिए इसे दुर्घटना से हटाया नहीं जा सकता।

फिर यह केवल उस फ़ाइल को देखने का मामला है जब ओएस स्थापित किया गया था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.