그래서 HP 노트북에 Pop-OS를 설치했는데 인터넷에 연결하면 비행기 모드를 활성화하는 것 밖에는 할 수 없고 "Wi-Fi가 있는지 확인하세요" 아래에 "Wi-Fi 어댑터를 찾을 수 없습니다"라는 메시지가 표시됩니다. Fi 어댑터는 연결하고 켜졌습니다. "내 질문은 이것이 무엇을 의미하며 어떻게 해결하는지입니다.
Wi-Fi 어댑터: 10ec:c821
uname -a: Linux pop-os 5.8.0-7642-generic #47~1614007149~20.19~82fb226-Ubuntu SMP Tue Feb 23 02:59:01 UTC x86_64 x86_64 x86_64 GNU/Linux
노트북 모델: HP 노트북 15-ef0xxx
답변1
이 글을 읽어보셨나요?https://support.system76.com/articles/wireless
운영 체제가 노트북에서 사용 가능한 무선 네트워크 인터페이스를 찾을 수 없습니다. 가능한 이유:
1.) 무선 네트워크 인터페이스가 전혀 없거나(아주 오래되었거나 값싼 노트북 모델의 경우 여전히 그럴 수 있음) 무선 네트워크 인터페이스에 결함이 있을 수 있습니다. 다른 운영 체제에서 랩톱을 사용하고 있으며 무선 네트워크 인터페이스가 해당 운영 체제와 호환됩니까?
2.) 노트북에는 모든 무선 송신기를 비활성화하는 물리적 스위치가 포함되어 있을 수 있으며 해당 스위치는 현재 "비활성화" 위치에 있을 수 있습니다. 이러한 스위치는 노트북 내부 키보드의 특정 키 입력을 인식하기 위해 ACPI 펌웨어에 구현될 수도 있습니다. Wi-Fi 및 Bluetooth를 비활성화하는 데 사용할 수 있는 특정 스위치나 키가 있는지 확인하려면 노트북의 하드웨어 설명서를 읽고 시도해 보세요.
3.) 현재 설치되지 않은 펌웨어 패키지가 필요하기 때문에 무선 네트워크 인터페이스가 작동하지 않을 수 있습니다. 이 문제는 다른 컴퓨터를 사용하여 USB 플래시 드라이브에 올바른 펌웨어 파일을 다운로드한 다음 펌웨어 파일을 /lib/firmware/
노트북의 해당 디렉터리에 복사하여 해결할 수 있습니다.
4.) 무선 네트워크 인터페이스는 Linux 배포판의 기본 커널에 아직 표준 드라이버가 없는 새로운 유형일 수 있습니다. Linux 배포판에는 이와 같은 상황을 위한 추가 드라이버가 DKMS 패키지로 패키지되어 있을 수 있지만 올바른 패키지가 인식되도록 하려면 먼저 무선 칩을 식별해야 합니다.
먼저, 노트북 모델과 해당 무선 칩(있는 경우)을 식별해야 합니다. 다음 명령의 결과를 추가하려면 질문을 편집하십시오.
cat /sys/class/dmi/id/product_name
위 명령은 노트북 모델을 식별해야 합니다.
lspci -nn
이 명령은 노트북의 모든 PCI/PCIe 하드웨어 장치 목록을 생성해야 합니다. 무선 네트워크 인터페이스를 가리키는 라인을 식별할 수 있으면 해당 라인만 게시할 수 있습니다. 이 줄의 숫자나 코드를 놓치지 마십시오. 무선 네트워크 칩의 유형을 최대한 정확하게 식별하는 데 사용할 수 있습니다.
lsusb
이 명령은 노트북에 있는 모든 USB 연결 하드웨어 장치 목록을 개별적으로 생성해야 합니다. (예, 하드웨어 장치는 노트북 내부에 있을 수 있지만 여전히 USB를 통해 연결될 수 있습니다.)
lspci -nn
명령은 lsusb
해당 하드웨어 버스의 표준 인터페이스만 사용하여 하드웨어 장치를 식별하므로 드라이버가 아직 설치되지 않은 장치에 대한 기본 정보를 제공할 수 있습니다.
의견에서 PCI 공급업체를 언급하셨습니다. 장치 ID는 10ec:c821입니다. Realtek RTL8821CE가 될 것입니다. 귀하의 의견에 따르면 귀하는 커널 버전 5.8을 사용하고 있으므로 이는 사례 #4입니다.
커널 드라이버는 rtw88
RTL8821 시리즈 무선 칩을 지원할 수 있었지만 RTL8821CE는 아직 커널 5.8에서 지원되지 않습니다. 분명히 이 지원은 5.9 커널 시리즈에 추가되었으므로 대부분 누락되었습니다.
사용 가능한 드라이버가 있는 타사 저장소가 있지만 소스 코드 형식이므로 커널용으로 빌드해야 합니다. 이를 위해서는 많은 패키지를 설치하고 많은 단계를 실행해야 합니다.지침은 여기에서 찾을 수 있습니다(Ubuntu의 경우, Pop에서도 작동함).
간단히 말해서 드라이버 설치 단계는 다음과 같습니다.
sudo apt-get update
sudo apt install git build-essential dkms
git clone https://github.com/tomaspinho/rtl8821ce
cd rtl8821ce
chmod +x dkms-install.sh
chmod +x dkms-remove.sh
sudo ./dkms-install.sh
커널 버전 5.10 이상을 사용하도록 시스템을 업데이트하면 더 이상 이 타사 드라이버가 필요하지 않으며 결국 새 커널 버전에서 작동하기에는 너무 오래된 드라이버가 됩니다. 이때 를 사용하여 삭제할 수 있습니다 cd rtl8821ce; sudo ./dkms-remove.sh
.
시스템에서 UEFI를 사용하는 경우 드라이버를 설치하기 전에 보안 부팅을 비활성화하거나 MOK 키(시스템 소유자 키)를 생성 및 설치하거나 시스템의 보안 부팅 키를 완전히 제어해야 합니다. 그렇지 않으면 보안 부팅 키를 사용할 수 없습니다. 커널 모듈을 직접 만든 부팅 키입니다. 이러한 옵션 중에서 보안 부팅을 비활성화하거나 MOK를 생성하는 것이 일반적으로 가장 쉽습니다.
내가 아는 한, MOK 생성 프로세스는 Debian/Ubuntu/Pop_OS에서 시작할 수 있습니다:
sudo update-secureboot-policy
보안 부팅을 비활성화할지 아니면 MOK를 생성할지 묻는 메시지가 표시됩니다. MOK 생성을 선택하면 다음에 시스템을 재부팅할 때 필요한 일회용 암호를 설정하라는 메시지가 표시됩니다.
(MOK 설정 프로세스는 MOK 관리자 프로그램이 해당 입력이 침입자에 의해 손상되지 않을 것이라고 합리적으로 확신할 수 있는 시작 시에만 발생할 수 있습니다.)