Khắc phục sự cố WiFi trên Ubuntu: Hướng dẫn toàn diện

Ubuntu là một hệ điều hành mã nguồn mở mạnh mẽ, miễn phí, được ưa chuộng bởi cả người mới bắt đầu và các chuyên gia. Tuy nhiên, đôi khi người dùng có thể gặp phải các vấn đề về kết nối WiFi. Bài viết này sẽ cung cấp các giải pháp chi tiết để khắc phục các sự cố WiFi phổ biến trên Ubuntu, giúp bạn nhanh chóng kết nối lại với mạng.

Sự cố kết nối WiFi có thể xuất phát từ phần cứng hoặc phần mềm. Dưới đây là một số giải pháp hữu ích nếu bạn gặp sự cố khi kết nối với mạng WiFi trên Ubuntu.

Lưu ý quan trọng: Một trong những nguyên nhân phổ biến gây ra sự cố WiFi là card không dây Broadcom. Mặc dù Broadcom là một phần của Linux Foundation, nhưng việc hỗ trợ driver của họ không phải lúc nào cũng hoàn hảo. Một vấn đề khác có thể liên quan đến mã hóa TKIP.

Cài đặt Driver WiFi từ Ubuntu ISO

Trong trường hợp Ubuntu không nhận diện được mạng WiFi hoặc gặp lỗi trong quá trình kết nối, bạn có thể thử cài đặt hoặc cài đặt lại driver WiFi từ file Ubuntu ISO. Để thực hiện việc này, bạn cần tải xuống file Ubuntu ISO tương ứng với phiên bản Ubuntu đang sử dụng. Bạn có thể tải trên một thiết bị khác hoặc sử dụng kết nối Ethernet trên máy tính Ubuntu của bạn.

Sau khi tải xuống, hãy đặt file ISO vào thư mục Home trên Ubuntu. Tiếp theo, mở Terminal và nhập các lệnh sau để mount file ISO Ubuntu vào một ổ đĩa ảo:

sudo mkdir /media/cdrom
sudo mount -o loop ubuntu-*.iso /media/cdrom

Sau đó, mở Software & Updates từ bảng điều khiển. Trong cửa sổ mới, chọn hộp kiểm CDrom with Ubuntu [phiên bản] và nhập mật khẩu khi được yêu cầu.

Cuối cùng, nhấp vào tab “Additional Drivers”, chọn tùy chọn Wireless Network Adapter và nhấp vào Apply Changes.

Vấn đề 1: Thiết bị không được phát hiện

Nếu Ubuntu (hoặc bất kỳ bản phân phối Linux nào khác) không phát hiện được thiết bị không dây của bạn, hãy mở Terminal và nhập lệnh sau:

sudo lsusb

… nếu bạn đang sử dụng card/dongle WiFi USB và:

sudo lspci

… nếu bạn có card không dây tích hợp bên trong máy tính.

Nếu kết quả trả về tương tự như ảnh chụp màn hình bên dưới, thì bạn đã gặp may: Ubuntu có thể tìm thấy card không dây. Nó thường được xác định bằng Network Controller hoặc Ethernet Controller.

Kết quả lệnh lspci cho thấy card mạng không dâyKết quả lệnh lspci cho thấy card mạng không dây

Trước đây, nhiều bản phân phối Linux gặp khó khăn trong việc tìm kiếm card không dây. Tuy nhiên, việc hỗ trợ phần cứng đã được cải thiện đáng kể, nên đây không còn là một vấn đề phổ biến.

Các lệnh bổ sung

Bạn cũng có thể sử dụng lệnh sau để kiểm tra xem hệ thống có nhận diện được thiết bị không dây hay không. Lưu ý rằng bạn có thể cần cài đặt lshw trước khi sử dụng lệnh này:

sudo apt-get install lshw
lshw -C network

Kết quả trả về sẽ có dạng như sau:

*-network
       description: Wireless interface
       product: PRO/Wireless 3945ABG [Golan] Network Connection
       vendor: Intel Corporation

Nếu hệ thống tìm thấy card không dây, bạn có thể tiếp tục cài đặt driver/module như mô tả bên dưới.

Vấn đề 2: Thiếu Module Driver

Sau khi xác nhận rằng Ubuntu có thể “nhìn thấy” card không dây bằng các lệnh lsusb hoặc lspci, bạn có thể cho rằng firmware đang hoạt động, nhưng hệ thống không biết cách tương tác với card. Lúc này, bạn cần cài đặt driver hoặc module.

Mở Terminal và nhập lệnh sau:

sudo lsmod

Danh sách các module đang được sử dụng trên hệ thống UbuntuDanh sách các module đang được sử dụng trên hệ thống Ubuntu

Lệnh này sẽ hiển thị danh sách các module đang được sử dụng. Để kích hoạt module cho card không dây của bạn, hãy nhập lệnh sau, thay thế modulename bằng tên chipset của bạn:

sudo modprobe modulename

Ví dụ, nếu chipset không dây của bạn là “RT2870”, lệnh sẽ là:

sudo modprobe rt2800usb

Sau đó, chạy lại lệnh lsmod để kiểm tra xem module đã được load thành công hay chưa.

Tự động Load Module khi Khởi Động

Trong một số trường hợp hiếm hoi, module có thể không tự động load khi khởi động hệ thống. Để khắc phục điều này, bạn có thể buộc module load vĩnh viễn bằng cách thực hiện các bước sau:

  1. Mở file /etc/modules bằng trình soạn thảo văn bản Nano:

    sudo nano /etc/modules
  2. Thêm tên module của bạn vào cuối file và lưu lại.

  3. Khởi động lại máy tính và kiểm tra xem card không dây đã có thể tìm thấy các mạng và cho phép bạn kết nối như bình thường hay chưa.

Nếu bạn gặp khó khăn, hãy lặp lại quy trình. Ubuntu cung cấp một số trang trợ giúp hữu ích trong tài liệu trực tuyến: https://help.ubuntu.com/stable/ubuntu-help/net-wireless-troubleshooting-hardware-check.html.en

Ngoài ra, bạn có thể sử dụng tính năng trợ giúp tích hợp trong Terminal bằng cách nhập:

man lsusb
man lspci

Vấn đề 3: Sự cố DNS

Mặc dù hiếm khi xảy ra, nhưng sự cố DNS cũng có thể là nguyên nhân gây ra các vấn đề về kết nối WiFi. Để kiểm tra xem DNS có phải là nguyên nhân hay không, hãy mở Terminal và nhập lệnh sau để xác định nguồn gốc của DNS:

nmcli device show wlan1 | grep IP4.DNS

Lệnh này sẽ hiển thị địa chỉ LAN của router. Nếu nó không hoạt động, bạn có thể cần thay đổi “wlan1” thành tên interface mạng không dây của bạn. Lệnh sau cũng có thể được sử dụng để xác định interface:

ip address

Sau khi có thông tin này, hãy thử ping địa chỉ mạng LAN của router:

ping [địa chỉ LAN của router]

Nếu ping thành công, hãy thử ping các DNS server của Google:

ping 8.8.8.8

Dựa trên kết quả của các lệnh ping này, bạn có thể xác định vị trí của sự cố DNS. Nếu tất cả các thiết bị trong mạng gia đình hoặc văn phòng đều gặp lỗi khi tải trang, hãy thay đổi DNS của router thành Google DNS (8.8.8.8 và 8.8.4.4) hoặc OpenDNS. Tham khảo hướng dẫn của nhà sản xuất router để biết cách thực hiện việc này, thường thông qua trang quản trị của router, có thể truy cập bằng cách nhập 192.168.0.1 (hoặc địa chỉ tương tự) vào trình duyệt web.

Nếu sự cố DNS chỉ xảy ra với Ubuntu, hãy làm theo các bước sau bằng giao diện Network Manager:

  1. Nhấp chuột phải vào biểu tượng Network Manager trên thanh taskbar.
  2. Chọn Edit Connections.
  3. Chọn kết nối WiFi của bạn.
  4. Chọn tab IPv4 Settings.
  5. Thay đổi Method thành DHCP Addresses Only.
  6. Thêm 8.8.8.8, 8.8.4.4 vào hộp DNS servers. Lưu ý sử dụng dấu phẩy để phân tách các địa chỉ IP và không sử dụng dấu cách.
  7. Nhấn Save, sau đó chọn Close.

Cuối cùng, khởi động lại máy tính hoặc Network Manager từ Terminal:

sudo service network-manager restart

Vấn đề 4: Không có Network Manager

Trong trường hợp bạn đã gỡ bỏ Network Manager (cố ý hoặc vô tình), bạn sẽ rơi vào tình huống khó khăn: không có Internet và không có Network Manager để thiết lập kết nối.

Giả sử gói network-manager vẫn còn trong cache của apt, bạn có thể mở Terminal và nhập:

sudo apt-get install network-manager

Nếu bạn đã xóa cache này, bạn có thể sử dụng cáp Ethernet để kết nối và chạy lại lệnh trên.

Nếu không có cách nào ở trên hoạt động, bạn cần chỉnh sửa file cấu hình mạng. Bài viết này sử dụng gedit làm trình soạn thảo văn bản, nhưng bạn có thể sử dụng bất kỳ trình soạn thảo nào khác.

sudo gedit /etc/network/interfaces

Sửa đổi file để có nội dung như sau:

auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet dhcp
wpa-essid [tên mạng WiFi của bạn]
wpa-psk [mật khẩu WiFi của bạn]

Sau đó, bạn có thể khởi động lại interface mạng bằng cách nhập các lệnh sau:

sudo ifdown wlan0 && sudo ifup -v wlan0

Xem thêm:

  • [Cách khắc phục sự cố Ubuntu không khởi động](liên kết đến bài viết liên quan)