আমি সিদ্ধান্ত নিয়েছি যে আমার মিডিয়া সার্ভারটি স্বয়ংক্রিয়ভাবে জাগ্রত করার জন্য একটি সমাধান চাই যখন অ্যাক্সেস করা হয় যা ডিডি-আরআরটি-র উপর নির্ভর করে না।
আমার একটি রাস্পবেরি পাই রয়েছে তাই আমি এটি ব্যবহার করেছি কারণ এটি কম শক্তি এবং এটি সর্বদা রাখার বিষয়ে আমার কোনও আপত্তি নেই, অবশ্যই এটি কোনও লিনাক্স মেশিন থেকে চালানো যেতে পারে।
নিজের জন্য চূড়ান্ত সমাধানটি আমি খুঁজে পেয়েছিলাম একটি সামান্য বাশ লিপি writing রাস্পবেরি-পাই নির্ভরতাগুলি ইথারওয়াক এবং টিসিপিডম্প are উভয়ই রাসমিয়ান এ ডিফল্টরূপে ইনস্টল করা হয় না। অন্যান্য পোস্টে উল্লিখিত হিসাবে সার্ভারে ওয়েক অন ল্যানকে সক্ষম করা দরকার।
sudo apt-get install etherwake
sudo apt-get install tcpdump
ওয়েক স্ক্রিপ্টটি নিম্নরূপ:
nano ~/wol.sh
তারপর:
#!/bin/bash
pingInterval=60 #time interval, in seconds, between checks that the server is still awake.
target=192.168.x.x #WOL target ip address
targetMAC=00:11:22:33:44:55 #WOL target MAC
wake () {
tcpdump -i eth0 -c 1 -p host $target
etherwake $targetMAC
#echo WOL sent to $target at $targetMAC
return
}
while sleep $pingInterval; do
varPing=`ping -s 1 -c 2 $target > /dev/null; echo $?`
if [ $varPing -eq 0 ]; then
#echo ping success
else
#echo ping fail
wake
fi
done
প্রাথমিক ধারণাটি হ'ল এটি আমার রাস্পবেরি-পাই থেকে চালিত হয়েছে যা সার্ভারের জন্য একটি একক আরপ অনুরোধটি লক্ষ্য করলে এটি সার্ভারটি জাগিয়ে তুলবে। সার্ভারটি যদি জেগে থাকে তবে এটি আরপ অনুরোধের জন্য শুনবে না তবে এটি এখন জেগে আছে তা নিশ্চিত করার জন্য প্রতি এখনই কয়েক পিংস পাঠান।
আমি ফাইলটি wol.sh এর নাম দিয়েছি এবং এটি সম্পাদনযোগ্য করে দিয়েছি। তারপরে এটি sudo crontab এ রেখে @reboot কে মূল হিসাবে চালু করতে। এটি টিসিপিডাম্পের জন্য যা এথ0 এবং ইথারওয়েক শোনার জন্য উন্নত অ্যাক্সেসের প্রয়োজন।
sudo chmod +x /home/pi/wol.sh
sudo crontab -e
এটি নীচে যোগ করুন
@reboot sh /home/pi/wol.sh > /dev/null