Tôi không biết tại sao, nhưng như bạn đã đề cập, đôi khi khi wifi bị lỗi, người quản lý mạng không tìm thấy mạng nữa.
Tôi nghĩ rằng vấn đề là trình quản lý mạng, sau khi bị lỗi kết nối wifi, không làm mới danh sách wifi (và có vẻ như trình quản lý mạng đã che giấu mạng có vấn đề). Trình quản lý mạng không có tùy chọn menu quét lại và việc tắt và bật hộp kiểm không dây trên menu trình quản lý mạng sẽ không bắt buộc quét wifi mới (như khởi động lại dịch vụ).
Khi người quản lý mạng mất kết nối wirele của tôi và nó không tìm thấy wifi của tôi nữa (và tôi biết rằng wifi đang hoạt động), tôi thực hiện lệnh:
sudo iwlist wlan0 scan
Nó thực hiện quét wifi trên giao diện wlan0 (wlan0 là tên của giao diện không dây trong máy tính xách tay của tôi) và nó hiển thị cho bạn các mạng không dây có sẵn, nhưng như một trình quản lý mạng hiệu ứng phụ sẽ tự động làm mới danh sách của nó và tìm thấy mạng bị mất.
Tôi thích thực hiện lệnh thủ công khi sự cố này xảy ra (kết nối lại mạng không đảm bảo khôi phục lại kết nối và một số chương trình sẽ cần phải được khởi động lại).
Nhưng, như bạn đã đề cập, bạn có thể ghi lại nó và bạn có thể làm điều đó mà không cần kiểm tra kết nối (quá trình quét cập nhật danh sách wifi của bạn nhưng nó không đóng kết nối không dây hiện tại của bạn, nếu bạn được kết nối).
Nếu bạn thích, bạn có thể kiểm tra khả năng kết hợp bằng ping hoặc iwconfig và nếu bạn không được kết nối thì khởi chạy quét.
Cái gì đó như:
#!/bin/bash
if ! ping -c 1 -W 1 your_router_ip &> /dev/null
then
iwlist wlan0 scan
fi
Nhưng hãy nhớ rằng tập lệnh này phải được sudo hoặc thực thi với quyền root. Nó chỉ gửi 1 ping với thời gian chờ 1 giây.