আমার একটি উবুন্টু মেশিন এবং একটি দেবিয়ান মেশিন রয়েছে।
উভয়ই আমি দেখতে চাই যে কতক্ষণ একটি নেটওয়ার্ক ইন্টারফেস সংযুক্ত রয়েছে। (এটি, কোনও আইপি পাওয়ার মতো কোনও নেটওয়ার্কের সাথে সংযুক্ত। ইত্যাদি কোনও ক্যাবেলের শারীরিক অবস্থা নয়)। শেষ পরিবর্তন বা অনুরূপ যেকোন কিছু থেকে সেকেন্ডে বা তারিখের সময় + সময়।
এখন পর্যন্ত আমি টাস্কটি করার জন্য একটি ছোট স্ক্রিপ্ট লিখেছি তবে মনে হয় এটি পরীক্ষা করার আরও সাধারণ উপায় থাকা উচিত। একটি প্রোগ্রাম বা / প্রকল্প বা এ জাতীয় কিছু।
আমার লিপি:
#!/bin/bash
if [ -f /etc/os-release ]; then
if TMP=$(grep -i 'ubuntu' /etc/os-release); then
# we are on ubuntu
for i in $(/bin/ls -1 /var/log/syslog* | sort -r); do
TMP=$(zgrep '(eth0): device state change: ip-config -> activated' "$i" | tail -1 | sed "s/ "$(hostname)"/*/")
done
WHEN=$(echo "$TMP" | cut -f1 -d '*')
SEC=$(echo "$(date +%s) - $(date -d "$WHEN" +%s)" | bc)
echo "Last link up: $WHEN ($SEC seconds ago)."
elif TMP=$(grep -i 'debian' /etc/os-release); then
# we are on debian
TMP=$(grep 'eth0: link up' /var/log/syslog* | tail -1 | cut -f2- -d':' | sed "s/ "$(uname -n)" kernel:/*/")
WHEN=$(echo "$TMP" | cut -f1 -d '*')
SEC=$(echo "$(date +%s) - $(date -d "$WHEN" +%s)" | bc)
echo "Last link up: $WHEN ($SEC seconds ago)."
fi
else
echo "File /etc/os-release not found."
fi
ip monitor (অন্যান্য জিনিসগুলির মধ্যে) ব্যবহারের প্রস্তাব দেয় , এটি এক নজর দেওয়ার মতো হতে পারে।
/etc/dhcp3/dhclient-enter-hooks.d/করাও একটি বিকল্প হতে পারে। তবে ঠিক কীভাবে এটি কাজ করে তা বলার জন্য আমি পর্যাপ্ত তথ্য খুঁজে পাচ্ছি না।