Как выключить систему, но при этом оставить ее доступной в сети


10

Я пытаюсь установить файловый сервер в своей сети для обслуживания данных и резервного копирования.

Я хочу, чтобы эта машина была доступна в любое время, но я бы предпочел не включать ее постоянно (для экономии энергии).

Можно ли настроить все так, чтобы оно автоматически приостанавливалось (или отключалось) через некоторое время, а затем автоматически включалось при попытке подключиться к нему (используя некоторые пробуждения по магии LAN, без необходимости явной отправки WOL пакеты)?

Ответы:


8

OS X может сделать это сейчас, как и Snow Leopard. Это стало возможным благодаря Sleep Proxy Service . Это в значительной степени автоматически. Единственным требованием является наличие в вашей локальной сети второго устройства Apple, которое всегда работает в качестве прокси-сервера для сна. Я полагаю, что их нынешние встроенные коробки с низким энергопотреблением поддерживают Airport, Time Machine и Apple TV.

Однако в общем случае я считаю, что ответ - нет. Я не знаю ни о какой другой ОС, которая реализовала подобный сервис. Технология с открытым исходным кодом, поэтому нет никаких причин, что это не может быть везде в конце концов. Возможно, это слишком ново, чтобы увидеть широкое распространение.

Теперь вы можете спросить: зачем вам вторая коробка Apple в локальной сети?

Когда ПК спит, ядро ​​- и, следовательно, сетевой стек - не работает, поэтому в вашей ОС нет кода, который мог бы отвечать на «волшебный» пакет того типа, который вы желаете.

Магические пакеты Wake-on-LAN не обрабатываются ОС. Они распознаются интегральной схемой сетевого интерфейса, которая отвечает, посылая сигнал CPU, который выводит его из состояния сна. Это может быть сделано, потому что IC остается включенной в некоторых состояниях сна. (Вот почему индикатор Ethernet-соединения горит, когда на некоторых компьютерах ПК выключен.)

Причина, по которой технология Apple работает, заключается в том, что перед тем, как компьютер переходит в спящий режим, он уведомляет прокси-сервер сна. Спящий прокси затем организует временный прием трафика для спящей машины, и если он получает что-то интересное, он отправляет пакет WOL на ПК и передает полученный трафик.


2
«договориться о временном приеме трафика для спящего аппарата» - как при отравлении ARP? Прохладно.
Вим Коенен

4
Это не более использование ARP отравления, чем отказоустойчивость NIC. Термин «отравление ARP» подразумевает одно: никто не пытается атаковать что-либо с помощью этой технологии. С другой стороны, служба Sleep Proxy - это способ для спящего ПК явно разрешить прокси-серверу отслеживать трафик, пока он спит. Вы можете также предъявить обвинение в краже идентификационных данных по телефону или вызвать ARP-отравление.
Уоррен Янг

Я проголосовал за это, потому что, хотя он не дает общего решения, он хорошо объясняет природу этого решения в последнем абзаце.
Мистер Блестящий и Новый 宇 宇

11

Мне повезло, с помощью PowerNap (он упакован для Ubuntu-Sever, но источник есть, так что вы должны иметь возможность скомпилировать его на любом), чтобы приостановить машины резервного копирования, когда они ничего не делают. Однако это не разбудит их автоматически. Существует также программа PowerWake, связанная с архивом исходного кода PowerNap (упакованный как powerwakeв Ubuntu), который обеспечивает некоторую абстракцию процесса Wake-On-Lan (например, позволяет легко отправлять WOL только с именем хоста), но это все еще не автомат.

Редактировать. Другой вариант:

Я не знаю много об этом, потому что я никогда не использовал это, но некоторые карты способны пробуждаться от любого одноадресного сообщения. Вы можете увидеть, есть ли у вашей карты возможность использовать ethtool

# ethtool eth0 

Замените eth0 для вашего сетевого устройства. Затем посмотрите на вывод строки, начинающейся с «Supports Wake-on:». Если в этой строке указано «u», то при загрузке вы можете сделать следующее (т. Е. В сценарии инициализации или в чем-то подобном):

ethtool -s eth0 wol u

В сочетании с PowerNap или чем-то еще, что переводит машину в спящий режим при определенных условиях, это должно обеспечить то, что вы ищете.


Где я могу найти ethertool?
Герт

Извините, это была опечатка - инструмент ethtool. Я исправил опечатку и добавил ссылку на ethtool.
Стивен Д

powerwakeкажется, включен в отдельный одноименный пакет, по крайней мере, под Ubuntu 10.10.
интуитивно

Понимаю. powernapи powerwakeвключены в одно и то же дерево исходников, но таким образом, чтобы сделать два пакета. Я обновлю пост немного позже, когда подумаю над хорошим способом упомянуть этот факт.
Стивен Д.

Есть также napd , который кажется более универсальным, чем powernap.
Себастьян
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.