Làm cách nào tôi có thể bật Wake-on-lan vĩnh viễn?


13

Tôi luôn muốn bật Wake-on-lan cho các card mạng của mình. Các hướng dẫn cộng đồng đề nghị bổ sung thêm các lệnh liên quan đến /etc/network/interfaces. Theo kinh nghiệm trước đây khi chỉnh sửa các tệp conf của Ubuntu, rất có khả năng tệp giao diện mạng được ghi lại mỗi lần khởi động, nếu không phải là mọi nâng cấp apt. Cách tốt nhất để đảm bảo rằng Wake-on-lan được bật mỗi khi khởi động?

Câu trả lời:


12

Một kịch bản khởi động chạy sau khi các card mạng được cấu hình nên thực hiện thủ thuật. Ubuntu sử dụng mới nhất. Sau khi đọc về các công việc mới bắt đầu, ethtool, viết một kịch bản mới bắt đầu và tìm kiếm các interwebs để tìm giải pháp tốt hơn, tôi đã nghĩ ra điều này từ jevinskie (bạn sẽ muốn đưa nó vào một tệp /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
  • Bắt đầu khi các nics được khởi tạo
  • Lấy tên nic từ / Proc / net / dev
  • Ghi nhật ký hành động vào syslog
  • Hành vi trên tất cả các nics được tìm thấy
  • Yêu cầu ethtool, vì vậy hãy chắc chắn rằng nó được cài đặt trước:

    sudo apt-get install ethtool
    

Nếu bạn muốn thấm nhuần chỉ một nic với sức mạnh của sự thức tỉnh, một cái gì đó như thế này là phù hợp hơn:

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
Tôi luôn nghĩ đánh thức trên lan là một tính năng của BIOS.
con-f-sử dụng

@ con-f-use Nó đòi hỏi sự hợp tác giữa BIOS và NIC. Cả hai phải hỗ trợ WOL. Hơn nữa, ít nhất nic của tôi có thói quen xấu là vô hiệu hóa wol sau khi khởi động. Wiki cộng đồng Ubuntu ngụ ý đây là trường hợp của nhiều máy tính.
djeikyb

@ con-f-use Chủ đề superuser.sx này về cách thức hoạt động của sức mạnh và khởi động lại cũng rất thú vị vì nó liên quan đến WOL.
djeikyb

Điều này cần phải được thay đổi cho systemd?
Nathan Osman

@NathanOsman vui lòng thêm câu trả lời systemd! giải pháp này vẫn phù hợp với các bản phát hành LTS cũ hơn nhưng vẫn được hỗ trợ
djeikyb

3

Tạo tập tin mới, giả sử wakeonlanconfigvà đặt các dòng dưới đây vào nó:

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

Tiếp theo thiết lập quyền của tệp, làm cho nó có thể thực thi được:

chmod a+x wakeonlanconfig

Và cuối cùng làm cho kịch bản chạy khi khởi động:

update-rc.d -f wakeonlanconfig defaults

Để biết chi tiết về mor, vui lòng truy cập: http://lukasz-lademann.blogspot.com/2013/01/how-set-up-wol-wake-on-lan-on-thin.html


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.