Cách bật Wake-on-LAN trong Ubuntu

Cách bật Wake-on-LAN trong Ubuntu

Tất cả chúng ta đều mong muốn tự động hóa mọi thứ: Ô tô, nhà cửa và đặc biệt là máy tính. Wake-on-LAN là cách hoàn hảo để tự động bật PC. Mặc dù hướng dẫn này tập trung vào cách bật Wake-on-LAN trong Ubuntu, nhưng bạn có thể áp dụng nó cho bất kỳ bản phân phối Linux nào và thậm chí tìm thấy tính năng này trong Windows.

Wake-on-LAN là gì?

Wake-on-LAN là một tiêu chuẩn mạng cho phép bạn bật hoặc đánh thức máy tính của mình bằng tin nhắn mạng. Tin nhắn này, gọi là Magic Packet, được gửi từ một thiết bị khác trên cùng một mạng cục bộ hoặc thậm chí qua mạng không dây.

Magic Packet chứa địa chỉ MAC của network interface card (NIC) của máy tính mục tiêu, xác định duy nhất phần cứng. Khi NIC, vẫn ở trạng thái năng lượng thấp ngay cả khi máy tính tắt, nhận được gói này, nó sẽ báo hiệu cho bo mạch chủ bật nguồn hệ thống.

Chuẩn bị thiết lập cho Wake-on-LAN

Trước khi bắt đầu, hãy đảm bảo bạn đã đáp ứng các yêu cầu cơ bản sau:

  • Kết nối Ethernet có dây (Wi-Fi WoL bị hạn chế và thường không đáng tin cậy)
  • Bo mạch chủ và card mạng tương thích (hầu hết các loại hiện đại đều hỗ trợ)
  • Cài đặt BIOS/UEFI hỗ trợ WoL
  • Quyền truy cập quản trị vào máy Ubuntu

Kiểm tra phần cứng và cài đặt BIOS

Trước tiên, bạn cần đảm bảo phần cứng của mình hỗ trợ Wake-on-LAN. Hầu hết các desktop hiện đại và nhiều máy tính xách tay đều hỗ trợ, nhưng vẫn đáng để kiểm tra lại.

Khởi động lại máy tính và nhấn phím thích hợp để vào BIOS/UEFI (thường là F2, F10, Del hoặc Esc – hãy xem màn hình trong khi khởi động). Tìm các tùy chọn như Wake-on-LAN, Power on by PCI-E, PCI Power Up hoặc Allow PCI Wake-Up Event. Tên chính xác thay đổi tùy theo nhà sản xuất. Đặt tùy chọn thành Enabled.

Bạn cũng có thể cần tắt tính năng có tên ErP Ready hoặc Deep Sleep vì các chế độ tiết kiệm điện này có thể cắt hoàn toàn nguồn điện cho card mạng, ngăn card nhận được magic packet. Một số máy tính xách tay cũng yêu cầu cài đặt như Always On USB để card mạng luôn được cấp nguồn khi tắt hoặc ngủ đông.

Kiểm tra xem card mạng có hỗ trợ Wake-on-LAN không

Để Wake-on-LAN hoạt động, card Ethernet của bạn cần hỗ trợ tính năng này. Tính năng này đã là tiêu chuẩn trong ít nhất 10 năm, vì vậy khả năng cao là card của bạn sẽ hỗ trợ, nhưng bạn nên kiểm tra lại.

Interface Ethernet là card mạng của thiết bị. Mỗi card có một tên duy nhất được tìm thấy bằng lệnh terminal sau:

ip a

Tên bạn đang tìm kiếm tương tự như enp8s0. Đây là ID duy nhất của card mạng được sử dụng trong hướng dẫn này.

Wake-on-Lan
Wake-on-Lan

Ethtool là một ứng dụng nguồn mở cho phép bạn thay đổi cài đặt driver mạng. Đối với Wake-on-LAN, nó cho phép PC hiểu dữ liệu mà nó đang nhận.

Lệnh cài đặt ethtool là:

sudo apt install ethtool

Tiếp theo, hãy tìm hiểu xem card mạng của bạn có hỗ trợ Wake on LAN không.

sudo ethtool <Tên interface của mạng>

Bạn sẽ được cung cấp thông tin chi tiết về phần cứng interface Ethernet của mình. Chúng ta đang tìm kiếm:

Supports Wake-on: g
Wake-on: g

Dòng đầu tiên cho biết PC của bạn có hỗ trợ Wake-On-LAN không. Có thể có các chữ cái khác cùng với chữ g. Hiện tại, chúng ta chỉ cần chữ g.

Dòng thứ hai cho biết Wake-On-LAN có được bật hay không. Đừng quá lo lắng về điều đó, vì nhiệm vụ tiếp theo của chúng ta sẽ là bật nó.

Bật Wake-on-LAN tạm thời

Bật Wake-on-LAN sẽ yêu cầu NIC đánh thức hệ thống chỉ khi nhận được magic packet cụ thể.

Để bật Wake-on-LAN tạm thời, hãy chạy:

sudo ethtool -s <tên_interface> wol g

Điều này bật WoL cho đến lần khởi động lại tiếp theo. Để xác minh rằng nó hoạt động, hãy chạy:

sudo ethtool <tên_interface>

Nếu bạn thấy Wake-on: g, điều đó có nghĩa là WoL đã được bật thành công. Tuy nhiên, cài đặt do ethtool áp dụng không liên tục và sẽ bị mất sau khi khởi động lại.

Bật Wake-on-LAN vĩnh viễn

Để Wake-on-LAN thực sự hữu ích, bạn cần bật nó ngay cả sau khi máy Ubuntu khởi động lại. Chúng ta có thể thực hiện điều này bằng cách tạo một service systemd tự động chạy lệnh ethtool khi khởi động. Đây là một cách phổ biến và mạnh mẽ để đảm bảo các cài đặt vẫn tồn tại trong những bản phân phối Linux hiện đại.

Đầu tiên, hãy tạo một file service systemd mới. Bài viết sẽ sử dụng nano, một trình soạn thảo văn bản đơn giản, nhưng bạn có thể sử dụng Vi hoặc bất kỳ trình soạn thảo nào khác mà bạn thích:

sudo nano /etc/systemd/system/wol.service

Nếu bạn không chắc chắn ethtool được cài đặt ở đâu, hãy chạy:

which ethtool

Dán nội dung sau vào file service:

[Unit]
Description=Enable Wake On Lan

[Service]
Type=oneshot
ExecStart = <Your filepath> --change <Your ethernet interface name> wol g

[Install]
WantedBy=basic.target

Sau khi bạn đã dán nội dung và thay thế, hãy lưu file và thoát nano. Để thực hiện việc này, hãy nhấn Ctrl + X, sau đó nhấn Y để xác nhận lưu và cuối cùng là Enter để xác nhận tên file.

Cuối cùng, chúng ta cần yêu cầu systemd bật service mới này để nó chạy ở mỗi lần khởi động. Thao tác này tạo ra một liên kết tượng trưng kích hoạt service:

sudo systemctl enable wakeonlan.service

Sau khi bật, bạn có thể tùy chọn khởi động service ngay lập tức mà không cần khởi động lại bằng lệnh sau:

sudo systemctl start wakeonlan.service

Bây giờ, Ubuntu Server hoặc Desktop của bạn sẽ luôn bật Wake-on-LAN trong suốt quá trình khởi động lại.

Sử dụng trình chỉnh sửa kết nối mạng nâng cao

Đối với hầu hết người dùng desktop Ubuntu, trình chỉnh sửa kết nối mạng đồ họa cung cấp cách đơn giản nhất để bật Wake-on-LAN.

Chỉ cần mở cài đặt kết nối mạng nâng cao từ menu ứng dụng.

Mở Advanced Network Connection
Mở Advanced Network Connection

Trong bảng điều khiển Network, bạn sẽ thấy kết nối có dây của mình được liệt kê. Nhấp vào biểu tượng bánh răng và mở cài đặt kết nối.

Mở cài đặt mạng của kết nối Ethernet
Mở cài đặt mạng của kết nối Ethernet

Trong tab cài đặt Ethernet, hãy tìm Wake on LAN. Đánh dấu vào ô có nhãn Magic hoặc MagicPacket và nhấn Apply.

Đánh dấu vào tùy chọn Magic của Wake On Lan
Đánh dấu vào tùy chọn Magic của Wake On Lan

Vậy là xong! Bạn đã bật Wake-on-LAN thành công. Để xác minh, hãy chạy:

sudo ethtool enp0s3

Tìm Wake-on: g trong đầu ra.

 

Nguồn tin: Quantrimang.com: