উত্তর:
রেডহাট-স্টাইলের লিনাক্সে লগইন লগগুলি ডাকা হয় wtmp
( man wtmp
), /var/log/
ডিফল্টরূপে সঞ্চিত থাকে এবং আপনি সেগুলি utmpdump
(RHEL6 এ) ব্যবহার করে পুনরুদ্ধার করতে পারেন ।
[root@server ~]# utmpdump /var/log/wtmp* | awk '$4~"root" {print}'
Utmp dump of /var/log/wtmp
[7] [01320] [ts/0] [root ] [pts/0 ] [192.168.1.101 ] [192.168.1.101 ] [Tue Sep 24 00:31:47 2013 UTC]
[7] [01817] [ts/3] [root ] [pts/3 ] [192.168.1.101 ] [192.168.1.101 ] [Tue Sep 24 00:38:22 2013 UTC]
[7] [01690] [ts/0] [root ] [pts/0 ] [192.168.1.101 ] [192.168.1.101 ] [Tue Sep 24 00:59:04 2013 UTC]
[7] [23641] [ts/0] [root ] [pts/0 ] [192.168.1.101 ] [192.168.1.101 ] [Wed Sep 25 19:12:44 2013 UTC]
[7] [03020] [ts/0] [root ] [pts/0 ] [192.168.1.100 ] [192.168.1.100 ] [Fri Sep 27 21:33:40 2013 UTC]
...
মনে হচ্ছে last
আপনি যা করতে চেষ্টা করছেন তা অর্জন করতে এটি ব্যবহার করা যেতে পারে। তথ্য উত্তোলনের জন্য আপনাকে শেষ কমান্ডের তারিখ যুক্ত করতে হবে।
last | while read line; do date=`date -d "$(echo $line | awk '{ print $5" "$6" "$7 }')" +%s`; [[ $date -ge `date -d "Aug 25 00:00" +%s` && $date -le `date -d "Aug 28 00:00" +%s` ]] && echo $line; done
তবে, যদি আপনি কোনও নির্দিষ্ট ব্যবহারকারীর সম্পর্কে তথ্য সন্ধানের বিষয়ে উদ্বিগ্ন হন তবে আপনি সর্বশেষ আদেশটি হিসাবে পরিবর্তন করতে পারেন last username
এবং তারপরে while
লুপটি পাইপ করতে পারেন। এটি আপনাকে গত এক বছরের জন্য কোনও নির্দিষ্ট ব্যবহারকারীর লগইন সম্পর্কিত তথ্য দেবে।
আমি উপরের কমান্ডটি পরীক্ষা করেছি এবং এটি আমার সিস্টেমে পুরোপুরি সূক্ষ্মভাবে কাজ করে। আমি থেকে উপরোক্ত কমান্ডের নেন এখানে ।
আপনার প্রয়োজনীয়তা অনুসারে আপনি কমান্ডের তারিখটি পরিবর্তন করতে পারেন।
last
কমান্ড - কিন্তু আপনি যে বেশী গবেষণা কাজ করা উচিত, এবং যে কোনো ক্ষেত্রে, আপনি আসলে নির্দিষ্ট না করে কেনlast
কমান্ড দরকারী নয়। এছাড়াও, "লগ ইন" সংজ্ঞায়িত করুন। আপনি কি কনসোল লগিনগুলি ট্র্যাক করতে চান? এসএসএইচ লগিন? ইম্যাকস নিষেধ,telnet
লগইন? বা শুধু পামের সাথে প্রমাণীকরণের কিছু? হতে নির্দিষ্ট ।