সিস্টেমটি বুট করার সময় নির্ভরযোগ্যভাবে টাইমস্ট্যাম্প কীভাবে পাবেন?


13

আমি uptimeকমান্ডটি সম্পর্কে অবহিত , তবে এটি বুট হওয়ার পরে কয়েক সেকেন্ড ফিরে আসে, সুতরাং আমি যদি বর্তমান টাইমস্ট্যাম্প থেকে কেবল এই সংখ্যাটি বাদ দিই, তত্ত্বের মধ্যে আমি আপটাইম এবং বর্তমান টাইমস্ট্যাম্পটি পড়ার পরে যদি দ্বিতীয় পরিবর্তন হয় তবে আমি আলাদা ফলাফল পেতে পারি। uptime -sআমি যা চাই তা কিন্তু এটি সেন্টোতে পাওয়া যায় না (এটি বিটিডব্লু কীভাবে গণনা করা হয়?)। আমি কি এখন / প্রো ডির সিটিটাইম পেতে পারি? এটি আমাকে যথাযথ নম্বর দেবে বলে মনে হয়, তবে আমি আশ্চর্য হয়েছি যে প্রতিটি লিনাক্স সিস্টেম বুটে তৈরি / প্রোক তৈরি করেছে কিনা।


আপনি কোন ফর্ম্যাট চান? HH:MM:SS? অন্যকিছু?
টেরডন

1
@terdon, ইউনিক্স টাইমস্ট্যাম্প
ফুঁয়োফুঁয়ো

উত্তর:


12

প্রথম সব, crtimeহয় লিনাক্স চতুর । বলেছিল, এমন কিছু চলছে

$ stat -c %z /proc/ 
2014-10-30 14:00:03.012000000 +0100

অথবা

$ stat -c %Z /proc/ 
1414674003

আপনার ঠিক যা প্রয়োজন তা সম্ভবত /procফাইল সিস্টেম LFS মান দ্বারা সংজ্ঞায়িত করা হয় এবং কোন লিনাক্স সিস্টেমের জন্য সেইসাথে সেখানে উচিত বেশিরভাগ (সমস্ত?) UNIXen।

বিকল্পভাবে, ধরে নিচ্ছি যে আপনার সত্যিকার অর্থে সেকেন্ডের যথার্থতা প্রয়োজন নেই, তবে কেবল সঠিক টাইমস্ট্যাম্পের প্রয়োজন রয়েছে, আপনি ব্যবহার করতে পারেন who:

$ who -b
   system boot  2014-10-30 14:00

থেকে man who: -বি, - শেষ সিস্টেম বুটের বুট সময়

মহাকাশটি GNU ব্যবহার করে আপনি এটিকে সেকেন্ডে রূপান্তর করতে পারেন date:

$ date -d "$(who -b | awk '{print $4,$3}' | tr - / )" +%s
1414674000

1
একটি ছোটখাট সাবধানতা হ'ল আরটিসি থেকে বুটের সময় নির্ধারণ করা হয়, বা আরটিসি না থাকলে কিছু ডিফল্ট। utmpএইবারে (init দ্বারা) "সিস্টেম বুট" এন্ট্রি হিসাবে লেখা হয়েছে এবং পড়েছি who -b। প্রারম্ভকালীন সময় পর্যন্ত সিস্টেমের সময়টি ভুল হতে পারে। who -bআমার আরপিআই-তে বলেছে এটি ১৯ 1970০ সালে বুট হয়েছিল এবং আরটিসি-এর চেয়ে কম এআরএম বলছে
২০০-

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.