You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 20.04升级至22.04后wifi adapter与bluetooth adapter失效,无法联网求助

Ubuntu 20.04升级至22.04后wifi adapter与bluetooth adapter失效,无法联网求助

Hey there, sorry to hear you're stuck with this frustrating connectivity issue after upgrading. Let's walk through some actionable steps to get your WiFi, Bluetooth, and internet access back up and running.

First: Gather critical hardware info (even without internet)

Before diving into fixes, we need to know exactly what WiFi/Bluetooth hardware your HP Envy has—this will help target the right drivers. Open a terminal and run these commands, then jot down or photograph the output:

  • lspci -nnk | grep -A3 Network (lists PCI-based WiFi adapters, including their hardware IDs)
  • lsusb (lists USB devices, which covers most Bluetooth adapters)

Step 1: Fix USB tethering (your best shot for quick internet)

You mentioned USB tethering didn't work—let's troubleshoot that first, since it's the easiest way to get online for updates:

  1. Double-check your phone settings: Make sure USB tethering is enabled, and your phone is set to "USB Network Sharing" (exact wording varies by brand—look in Settings > Network & Internet > Hotspot & Tethering).
  2. Load required kernel modules: In Ubuntu's terminal, run:
    lsmod | grep rndis
    
    If you get no output, the RNDIS module (needed for USB tethering) isn't loaded. Fix that with:
    sudo modprobe rndis_host
    sudo modprobe usbnet
    
  3. Check for new network interfaces: Run ip link show—look for a new interface name like enp0s20f0u1 (it'll start with en or usb).
  4. Request an IP address manually: If the interface exists but no internet, run:
    sudo dhclient <your-interface-name>
    
    Replace <your-interface-name> with the one you found (e.g., sudo dhclient enp0s20f0u1).

Step 2: Use a Live USB to repair your installed system

If USB tethering fails, boot from your Ubuntu 22.04 Live USB (the same one you used to upgrade) and follow these steps:

  1. Boot into Live mode: Select "Try Ubuntu" instead of "Install Ubuntu". First, check if WiFi works here—if it does, that confirms your hardware is supported, and the issue is missing drivers/kernel modules in your installed system.
  2. Mount your installed system:
    • Run lsblk to identify your main Ubuntu partition (look for a large partition labeled / or ubuntu—e.g., /dev/nvme0n1p2).
    • Create a mount point:
      sudo mkdir /mnt/ubuntu
      
    • Mount your partition:
      sudo mount /dev/your-partition /mnt/ubuntu
      
    • Bind critical system directories to access the installed system's environment:
      sudo mount --bind /dev /mnt/ubuntu/dev
      sudo mount --bind /proc /mnt/ubuntu/proc
      sudo mount --bind /sys /mnt/ubuntu/sys
      
  3. Chroot into your installed system: This lets you run commands as if you're booted into your actual system:
    sudo chroot /mnt/ubuntu
    
  4. Install the correct default kernel for 22.04:
    Your current kernel is 5.13 (from 20.04), but Ubuntu 22.04 uses 5.15 as the default. Install it with:
    apt update
    apt install linux-image-generic linux-headers-generic
    
    Then update GRUB to make sure the new kernel shows up:
    update-grub
    
  5. Install hardware-specific drivers:
    Using the hardware info you gathered earlier, install the DKMS driver package for your WiFi/Bluetooth adapter. For example, if you have a Realtek RTL8822CE adapter, run:
    apt install rtl8822ce-dkms
    
    Replace the package name with the one matching your hardware (common ones include rtl8821ce-dkms, broadcom-sta-dkms, etc.).
  6. Exit and reboot:
    Type exit to leave the chroot environment, then safely unmount the partition:
    sudo umount /mnt/ubuntu/dev
    sudo umount /mnt/ubuntu/proc
    sudo umount /mnt/ubuntu/sys
    sudo umount /mnt/ubuntu
    
    Reboot your laptop, and select the 5.15 kernel from the GRUB menu (it should be the default).

Note on your failed 6.2 kernel install

Manual .deb kernel installs require matching image, headers, and modules packages (all three need the exact same version number). Instead of downloading them manually, using the chroot method above with internet access (from Live mode's WiFi) lets you install kernels via apt, which handles dependencies automatically—this is way more reliable.

If you still run into issues, share the output of the lspci/lsusb commands you ran earlier, and we can narrow down the exact driver you need.

备注:内容来源于stack exchange,提问作者evan54

火山引擎 最新活动