Я фанат этого блога! Подписаться

Linux дистрибутивы

На нашем линукс блоге вы можете скачать linux дистрибутивы, а так же найти много информации по линуксу

Subscribe

Удаленое включение компьютера – Wake On Lan

Октябрь 26th, 2009

Думаю многих посещала мысль влключать свой сервак не подходя к нему. Будь то целая серверная, домашний сервак или просто медиацентер.

Для всего этого есть хорошая технология Wake On Lan. И мы сейчас будем учиться её использовать на Ubuntu.

Работает это очень всё просто.

Управляемый комп находиться в дежурном режиме, где подается питание только на сетевую карту. Сам сетевой адаптер находиться в режиме пониженого энергоснаюжения, это дает ему возможность отслеживать все  входящие пакеты, которые приходят на его мак адрес, но на них он не отвечает. Есть только один магический пакет который дает команду врубить комп, он называется  Magic Packet.


Итак, делаем!

1) Для начала нам нужно врубить поддержку в биосе. Так что смотрим мануал по нашей материнке как это делается. Ищите что то вроде enable Wake On LAN или Power on by PCI Devices.

2) Теперь грузим ось с убунту, где создадим скрипт, который правильно сконфигурирует настройки сетевой карты при каждой загрузке.

– Выбираем нужную нам сетевую карту

Код:

ifconfig

Код:

eth0      Link encap:Ethernet  HWaddr 01:23:45:67:89:ab
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::215:f2ff:fe6f:3487/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:71495 errors:0 dropped:0 overruns:0 frame:0
          TX packets:76190 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:23164212 (22.0 MiB)  TX bytes:7625016 (7.2 MiB)
          Interrupt:217 Base address:0xd400
 
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1290 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1290 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:161182 (157.4 KiB)  TX bytes:161182 (157.4 KiB)

у меня как видите всего лишь одна карта eth0

– Теперь создаем скрипт, предварительно получив права root’а.
Код:

sudo su
cd /etc/init.d/
gedit wakeonlanconfig

– Заносим в фаил эти настройки
Код:

#!/bin/bash
ethtool -s eth0 wol g
exit

– Ставим нужные права
Код:

chmod a+x wakeonlanconfig

– Делаем симлинк, и делаем скрипт выполняемым при загрузке
Код:

update-rc.d -f wakeonlanconfig defaults

– В терминале увидите что-то типа:
Код:

Adding system startup for /etc/init.d/wakeonlanconfig ...
   /etc/rc0.d/K20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc1.d/K20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc6.d/K20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc2.d/S20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc3.d/S20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc4.d/S20wakeonlanconfig -> ../init.d/wakeonlanconfig
   /etc/rc5.d/S20wakeonlanconfig -> ../init.d/wakeonlanconfig

– Теперь проверим, всё ли правильно мы сделали.
Код:

/etc/init.d/wakeonlanconfig

Если ничего не произошло и появилась следущая строка ввода, то всё ок.

3) Теперь распечатываем на всякий весь этот мануал, и шуруем к другому компу. И далее нам понадобиться софтина, которая будет слать волшебный пакетик. Для убунту я нашел wakeonlan. Но я думаю лучше воспользоваться этим онлайн сервисом(можно и сотки им воспользоваться). Для запуска нам понадобиться IP компа и MAC сетевой карты. Порты используются либо 7, либо 9.

– Пробуем
Код:

wakeonlan -i [IP адрес] -p [порт] [MAC адрес]

– Мой пример
Код:

wakeonlan -i 192.168.1.36 -p 7 11:32:45:67:89:ab

В-общем, всё должно работать. Если не запахало, то смотрите биос, скорее всего там грабли зарыты. либо вы что то сделали неправильно.

З.Ы. Тестировал на Ubuntu 9.04

Комментировать

 


melayu boleh