Чтобы убедиться, что мост PCI готов к WOL, я попытался поместить
sudo sh -c 'echo enabled > /sys/class/pci_bus/0000:00/device/0000:00:1c.0/power/wakeup'
в /etc/rc.local
По-видимому, этот файл не существует (пока?) во время вызова rc.local
, потому что я получил ошибку, что папка не может быть найдена. Если я скопирую / вставлю инструкцию в окне терминала, система не вернет ошибку.
Я предполагаю, что это какая-то проблема синхронизации, кто-нибудь знает, как это сделать правильно?
или если кто-то может показать мне ссылку, где можно найти больше информации о том, как строится структура папок для /sys/class
, это тоже может помочь!
Я нашел решение здесь: http://bernaerts.dyndns.org/linux/74-ubuntu/220-ubuntu-resume-usb-hid
Хотя, это только предназначен для устройств USB, то же самое относится и к устройствам pci.
Стандартный способ - использовать sysfsutils
, а не /etc/rc.local
. Проверьте наличие необходимого пакета:
sudo apt-get install sysfsutils
теперь отредактируйте файл /etc/sysfs.conf
sudo nano /etc/sysfs.conf
, в конце файла добавьте
class/pci_bus/0000:00/device/0000:00:1c.0/power/wakeup = enabled
Сохраните и выход.
При перезагрузке вы обнаружите:
$ cat /sys/class/pci_bus/0000:00/device/0000:00:1c.0/power/wakeup
enabled
sysfs
, смонтированный на /sys
, не настоящая файловая система - это окно пользовательского пространства в ядро с несколькими настраиваемыми точками доступа, такими как эта - это не настоящие файлы.