Bagaimana saya bisa mengaktifkan wake-on-lan secara permanen?

13

Saya ingin mengaktifkan wake-on-lan untuk kartu jaringan saya, untuk selalu. The panduan masyarakat merekomendasikan menambahkan perintah yang relevan dengan /etc/network/interfaces. Dalam pengalaman sebelumnya mengedit file conf Ubuntu, sangat mungkin bahwa file antarmuka jaringan ditulis lagi setiap boot, jika tidak setiap upgrade tepat. Apa cara terbaik untuk memastikan bahwa wake-on-lan diaktifkan setiap boot?

djeikyb
sumber

Jawaban:

12

Skrip boot dijalankan setelah kartu jaringan dikonfigurasikan harus melakukan trik. Ubuntu menggunakan pemula. Setelah membaca tentang pekerjaan pemula, ettool, menulis skrip pemula, dan mencari jalinan solusi yang lebih baik, saya datang dengan ini dari jevinskie (Anda ingin meletakkan ini di file /etc/init):

start on started network

script
    for interface in $(cut -d: -f1 /proc/net/dev | tail -n +3); do
        logger -t 'wakeonlan init script' enabling wake on lan for $interface
        ethtool -s $interface wol g
    done
end script
  • Mulai ketika nics diinisialisasi
  • Raih nama nic dari / proc / net / dev
  • Log tindakan ke syslog
  • Kisah tentang semua NIC ditemukan
  • Membutuhkan ethtool, jadi pastikan itu diinstal terlebih dahulu:

    sudo apt-get install ethtool
    

Jika Anda ingin mengilhami hanya satu nic dengan kekuatan kebangkitan, sesuatu seperti ini lebih tepat:

start on started network

script
    interface=eth0
    logger -t 'wakeonlan init script' enabling wake on lan for $interface
    ethtool -s $interface wol g
end script
djeikyb
sumber
2
Saya selalu berpikir wake on lan adalah fitur BIOS.
con-f-use
@ con-f-use Diperlukan kerjasama antara BIOS dan NIC. Keduanya harus mendukung WOL. Selain itu, setidaknya nic saya memiliki kebiasaan buruk menonaktifkan wol setelah boot. Wiki komunitas Ubuntu menyiratkan ini adalah kasus bagi banyak komputer.
djeikyb
@ con-f-use Superuser.sx ini mengetengahkan tentang cara kerja power dan reboot juga menarik karena berkaitan dengan WOL.
djeikyb
Apakah ini perlu diubah untuk systemd?
Nathan Osman
@NathanOsman tolong tambahkan jawaban systemd! solusi ini masih relevan dengan rilis LTS yang lebih lama tetapi masih didukung
djeikyb
3

Buat file baru, katakanlah wakeonlanconfig, dan tuliskan di bawah ini:

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

Selanjutnya atur izin file, sehingga dapat dieksekusi:

chmod a+x wakeonlanconfig

Dan akhirnya membuat skrip berjalan saat startup:

update-rc.d -f wakeonlanconfig defaults

Untuk detail lebih lanjut, silakan kunjungi: http://lukasz-lademann.blogspot.com/2013/01/how-set-up-w-wol-wake-on-lan-on-thin.html

Lukasz
sumber
1

Di Ubuntu 16.04 juga diatur WOL_DISABLE=Ndalam /etc/default/tlpuntuk menghindari mendapatkan WOL dinonaktifkan oleh manajemen daya TLP.

http://linrunner.de/en/tlp/docs/tlp-configuration.html

Menambahkan NETDOWN=nodalam /etc/default/haltuntuk mencegah mematikan kartu jaringan selama shutdown

nkef
sumber