[ Пред. ] [ main ] [ След. ]

WoL с ноутбука

 

Сперва надо установить wakeonlan на своём Debian:


sudo apt-get install wakeonlan


Manjaro — через Pamac.


В их AUR есть wakeonlan, а ещё есть gwakeonlan — GTK и Python.


Обращение к удалённому устройству делается по его MAC-адресу.


Узнать текущий mac address:


sudo ip a


Посмотреть зачение для link/ether, например „b4:99:ba:bf:48:44“.


Скрипт


#!/bin/bash
	# Wake up NAS через роутер, 
	# ждём 81 sec (1 мин 20 сек)пока он проснётся, 
	# открываем firefox с OMV. 
	# Почему 81 — на самом деле нужно 80, но когда скрипт начинает работать, глаз замечает старт отсчёта обратного времени с 79-й секунды и мозг удивляется.

firefox="/opt/firefox/firefox -p astenix"
device="B4:99:BA:BF:48:44"
nas_ip="192.168.10.20"
nas_url="http://tower.local:81/"

    
# Функция отсчёта времени
function countdown(){
for (( i=81; i>0; i--)); do
	printf "\rОсталось $i секунд. Можно нажать AnyKey чтобы запинговать NAS немедленно."
	read -s -n 1 -t 1 key
	if [ $? -eq 0 ]
	then
		break
	fi
done
}

	# echo "Отослан сигнал пробуждения."
wakeonlan $device
	
	# запустить обратный отсчет
countdown
	
	# дежурное сообщение
echo "\nНачинается пингование в цикле. После успешного ответа откроется firefox."
	
	# пингуем
 	# „grep from -m 1“ фильтрует вывод команды ping в поисках строки, которая содержит слово „from“.
	# Опция „-m 1” говорит grep, что надо остановиться после нахождения первой строки, в которой есть слово „from”. 
	# Сразу после этого выполняется следующая строка, которая запускает Firefox
ping $nas_ip | grep from -m 1

	# когда пинг вернулся — открываем браузер
$firefox $nas_url