Tạo hai 'tập lệnh' đơn giản, tên của tập lệnh không quan trọng (tôi chỉ đơn giản sử dụng wlan) và tôi giả sử chỉ có một giao diện mạng được bật và do đó được gọi là 'eth0' ... Hãy kiểm tra điều này với 'ifconfig' nếu bạn Tôi không chắc chắn. Lưu ý rằng điều này vô hiệu hóa hoàn toàn không dây, không chỉ wlan0. (Chỉ xảy ra sự cố nếu bạn có nhiều giao diện wlan và chỉ muốn tắt các giao diện cụ thể)
Các tập lệnh này có thể dễ dàng được điều chỉnh - theo logic boolean - cho một tình huống trong đó bạn có hai hoặc nhiều giao diện mạng được bật.
Đảm bảo các tập lệnh này có thể thực thi được với 'chmod + x'
/etc/network/ip-up.d/wlan
#!/bin/sh
# If eth0 goes up, disable wireless
if [ "$IFACE" = "eth0" ]; then
dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:false
fi
/etc/network/if-down.d/wlan
#!/bin/sh
# If eth0 goes down, enable wireless
if [ "$IFACE" = "eth0" ]; then
dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:true
fi
Điều này cho phép / vô hiệu hóa không dây trong Trình quản lý mạng thường có thể được tìm thấy dưới dạng chỉ báo hệ thống trong bảng điều khiển Gnome.
Bạn cũng có thể sử dụng 'ifconfig wlan0 down' hoặc 'ifconfig wlan0 up' thay vì đường gửi dbus, nhưng điều này sẽ thân thiện với người dùng hơn và ít can thiệp vào các tiện ích hệ thống của Ubuntu.
Đã thử nghiệm với Ubuntu Desktop 10.10 và sẽ hoạt động với các phiên bản trước hoặc các bản phân phối khác bằng NetworkManager và dbus.