ฉันจะเปิดใช้งาน wake-on-lan อย่างถาวรได้อย่างไร


13

ฉันต้องการเปิดใช้งาน wake-on-lan สำหรับการ์ดเครือข่ายของฉันได้ตลอดเวลา คู่มือชุมชน/etc/network/interfacesแนะนำการเพิ่มคำสั่งที่เกี่ยวข้องกับการ จากประสบการณ์ที่ผ่านมาการแก้ไขไฟล์ Ubuntu ของ Ubuntu เป็นไปได้อย่างมากว่าไฟล์อินเตอร์เฟสเครือข่ายจะถูกเขียนขึ้นใหม่ทุกครั้งที่บูตหากไม่ใช่การอัพเกรด apt ทุกครั้ง อะไรคือวิธีที่ดีที่สุดในการตรวจสอบให้แน่ใจว่าเปิดใช้งานการเรียกใช้ LAN ทุกการบู๊ต

คำตอบ:


12

สคริปต์การเริ่มระบบทำงานหลังจากการ์ดเครือข่ายได้รับการกำหนดค่าควรทำการหลอกลวง Ubuntu ใช้พุ่งพรวด หลังจากอ่านเกี่ยวกับงานพุ่งพรวด ethtool เขียนสคริปต์พุ่งพรวดและค้นหา interwebs เพื่อหาทางออกที่ดีกว่าฉันมากับสิ่งนี้จากjevinskie (คุณจะต้องใส่มันลงในไฟล์/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
  • เริ่มเมื่อนิคส์เริ่มต้น
  • คว้าชื่อ nic จาก / proc / net / dev
  • บันทึกการทำงานของ syslog
  • ทำหน้าที่เกี่ยวกับนิคส์ทั้งหมดที่พบ
  • ต้องใช้ ethtool ดังนั้นตรวจสอบให้แน่ใจว่าติดตั้งก่อน:

    sudo apt-get install ethtool
    

หากคุณต้องการที่จะเติมเต็มหนึ่ง nic กับพลังของการปลุกบางสิ่งเช่นนี้มีความเหมาะสมมากขึ้น:

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

2
ฉันคิดเสมอว่าการปลุก LAN เป็นคุณสมบัติ BIOS
con-f-use

@ con-f-use มันต้องการความร่วมมือระหว่าง BIOS และ NIC ทั้งสองต้องสนับสนุน WOL นอกจากนี้อย่างน้อยNic ของฉันมีนิสัยที่ไม่ดีในการปิดใช้งาน wol หลังจากบูต วิกิชุมชนของ Ubuntu บ่งบอกถึงกรณีนี้สำหรับคอมพิวเตอร์หลาย ๆ เครื่อง
djeikyb

@ con-f-use เธรด superuser.sx นี้เกี่ยวกับการทำงานของพลังงานและการรีบูตเครื่องก็น่าสนใจเนื่องจากเกี่ยวข้องกับ WOL
djeikyb

จำเป็นต้องเปลี่ยนแปลงสิ่งนี้สำหรับ systemd หรือไม่
Nathan Osman

@NathanOsman โปรดเพิ่มคำตอบ systemd! วิธีการแก้ปัญหานี้ยังคงเกี่ยวข้องกับรุ่นเก่า แต่ยังสนับสนุนรุ่น LTS
djeikyb

3

สร้างไฟล์ใหม่สมมติว่าwakeonlanconfigวางบรรทัดด้านล่างลงไป:

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

ถัดไปตั้งค่าการอนุญาตของไฟล์ทำให้สามารถเรียกใช้งานได้:

chmod a+x wakeonlanconfig

และในที่สุดก็ทำให้สคริปต์ทำงานเมื่อเริ่มต้น:

update-rc.d -f wakeonlanconfig defaults

สำหรับรายละเอียดหมอกรุณาเยี่ยมชม: http://lukasz-lademann.blogspot.com/2013/01/how-set-up-wol-wake-on-lan-on-thin.html


1

ใน Ubuntu 16.04 ตั้งนอกจากนี้WOL_DISABLE=Nใน/etc/default/tlpการหลีกเลี่ยงการ WOL ปิดใช้งานโดยการจัดการพลังงาน TLP

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

เพิ่มNETDOWN=noใน/etc/default/haltเพื่อป้องกันการปิดการ์ดเครือข่ายในระหว่างการปิด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.