Рейтинг:1

Драйвер Wi-Fi с двойной загрузкой MediaTek

флаг tr

Итак, у меня есть Zephyrus G15 с двойной загрузкой, Ubuntu 21.10 и Windows 10.

Когда я впервые загрузил Ubuntu, драйверы отлично работали с моей картой Wi-Fi MEDIATEK Corp. Но Windows не может правильно подключиться к моему маршрутизатору. Поэтому я удалил и переустановил драйверы окна для моей карты Wi-Fi. Это сработало, но теперь, когда я вернулся в Ubuntu, я не могу подключиться к Wi-Fi, даже к сети Ethernet.

sudo lshw -c сеть:

       описание: Контроллер Ethernet
       продукт: Realtek Semiconductor Co., Ltd.
       поставщик: Realtek Semiconductor Co., Ltd.
       физический идентификатор: 0
       информация о шине: pci@0000:03:00.0
       версия: 05
       ширина: 64 бита
       часы: 33 МГц
       возможности: pm msi pciexpress msix vpd bus_master cap_list
       конфигурация: задержка=0
       ресурсы: ioport: d000 (размер = 256) память: fc800000-fc80ffff память: fc810000-fc813fff
  *-сеть НЕЗАЯВЛЕНА
       описание: Сетевой контроллер
       продукт: MEDIATEK Corp.
       поставщик: MEDIATEK Corp.
       физический идентификатор: 0
       информация о шине: pci@0000:04:00.0
       версия: 00
       ширина: 64 бита
       часы: 33 МГц
       возможности: pciexpress msi pm cap_list
       конфигурация: задержка=0
       ресурсы: iomemory:fc0-fbf iomemory:fc0-fbf iomemory:fc0-fbf memory:fc20300000-fc203fffff memory:fc20400000-fc20403fff memory:fc20404000-fc20404fff

lspci

03:00.0 Контроллер Ethernet: Realtek Semiconductor Co., Ltd. Устройство 8162 (версия 05)
04:00.0 Сетевой контроллер: устройство MEDIATEK Corp. 7961

lspci -nnk | группа 0280 -A3

04:00.0 Сетевой контроллер [0280]: Устройство MEDIATEK Corp. [14c3:7961]
    Подсистема: Устройство AzureWave [1a3b:4680]
    Модули ядра: mt7921e
05:00.0 Контроллер энергонезависимой памяти [0108]: Устройство SK hynix [1c5c:174a]

uname -r

5.13.0-19-общий

больше информации

https://paste.ubuntu.com/p/9Sz5G6xm33/

Возможно ли, что моя установка Windows могла повлиять на мой Ubuntu? Я загрузил Ubuntu с флешки, и драйвера работали нормально. Я даже пытался обновить ядра безрезультатно.

что это значит, когда он говорит: сеть НЕВОСТРЕБОВАН

Спасибо

Someone avatar
флаг my
Пожалуйста, отредактируйте свой вопрос, чтобы включить вывод `lspci -nnk | grep 0280 -A3`, за которым следует `uname -r`
Telegonicaxx avatar
флаг tr
готово, я добавляю вывод
Someone avatar
флаг my
Можете ли вы [править] включить вывод `sudo dmesg | grep mt792`?
Telegonicaxx avatar
флаг tr
Ого, какой умный, не додумался поискать в логе название карты. Но вывод ничего не дает.
Telegonicaxx avatar
флаг tr
Но я попытался сделать ``sudo dmesg | grep -i mediatek```, что дало: [ 2.002089] usb 1-4: Производитель: MediaTek Inc.
Someone avatar
флаг my
Это не удастся. Mediatek — это название компании, а не вашей беспроводной карты :)
Telegonicaxx avatar
флаг tr
Давайте [продолжим это обсуждение в чате](https://chat.stackexchange.com/rooms/133248/discussion-between-telegonicaxx-and-someone).
Рейтинг:2
флаг tr

будущий человек с той же проблемой.

Я узнал, в чем проблема. Моя карта WIFI — MediaTek Wi-Fi 6 MT7921, которая в настоящее время поддерживается ядром Linux 5.16, плохо поддерживается ядром 5.13, которое поставляется с моей Ubuntu 21.10.На самом деле при первой загрузке он работает очень плохо, а при следующей загрузке вообще не будет работать.

Таким образом, решение состоит в том, чтобы перейти на новое ядро ​​с помощью команд:

# скачать файлы ядра, заголовки, модули... и т.д.
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16/amd64/linux-headers-5.16.0-051600_5.16.0-051600.202201092355_all.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16/amd64/linux-headers-5.16.0-051600-generic_5.16.0-051600.202201092355_amd64.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16/amd64/linux-image-unsigned-5.16.0-051600-generic_5.16.0-051600.202201092355_amd64.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.16/amd64/linux-modules-5.16.0-051600-generic_5.16.0-051600.202201092355_amd64.deb

теперь установите ядро ​​в вашей системе:

sudo dpkg -i *.deb

исправить сломанные зависимости:

sudo подходящая установка -f

Вы можете перезагрузиться сейчас, и это может сработать, если вы не используете безопасную загрузку.

Однако если да, то вам нужно отключить его или подписать ядро ​​самостоятельно. я следил за этим гид. Но базовый шаг подписи ядра таков:

сделать файл с именем mokconfig.cnf с текстом:

# Это определение предотвращает сбой следующих строк, если HOME не
# определенный.
ГЛАВНАЯ = .
СЛУЧАЙНЫЙ ФАЙЛ = $ENV::HOME/.rnd 
[требуется]
отличительное_имя = req_distinguished_name
x509_extensions = v3
string_mask = только utf8
подсказка = нет

[ req_distinguished_name ]
countryName = <ВАШ код страны>
stateOrProvinceName = <ВАШЕ состояние>
localityName = <ВАШ город>
0.organizationName = <ВАША организация>
commonName = Ключ подписи безопасной загрузки
emailAddress = <ВАШ адрес электронной почты>

[ v3 ]
subjectKeyIdentifier = хэш
authorKeyIdentifier = идентификатор ключа: всегда, эмитент
basicConstraints = критический,CA:FALSE
расширенное использование ключа = подписание кода, 1.3.6.1.4.1.311.10.3.6
nsComment = "Сгенерированный сертификат OpenSSL"

части файла <> с вашей информацией. Обязательно используйте только два символа для страны, штата и города, например: US CA LA.

Создайте открытый и закрытый ключи для подписи ядра:

openssl req -config ./mokconfig.cnf \
        -новый -x509 -newkey rsa:2048 \
        -узлы -дни 36500 -выход DER \
        -keyout "MOK.priv" \
        -выход "МОК.дер"

Преобразуйте ключ также в формат PEM (для mokutil требуется DER, для sbsign — PEM):

openssl x509 -in MOK.der -inform DER -outform PEM -out MOK.pem

Зарегистрируйте ключ для установки прокладки:

sudo mokutil --import MOK.der

Перезагрузите систему. Вы столкнетесь с синим экраном инструмента под названием MOKManager. Выберите «Зарегистрировать MOK», а затем «Просмотреть ключ». Убедитесь, что это ваш ключ, который вы создали на шаге 2. После этого продолжите процесс, и вы должны ввести пароль, который вы указали на шаге 4. Продолжайте загрузку вашей системы.

Убедитесь, что ваш ключ зарегистрирован через:

sudo mokutil --list-enrolled

Подпишите установленное ядро ​​(оно должно находиться в /boot/vmlinuz-[KERNEL-VERSION]:

sudo sbsign --key MOK.priv --cert MOK.pem /boot/vmlinuz-[ВЕРСИЯ ЯДРА]-поверхность-linux-surface --output /boot/vmlinuz-[ВЕРСИЯ ЯДРА]-поверхность-linux-поверхность. подписал
sudo cp /boot/initrd.img-[KERNEL-VERSION]-surface-linux-surface{,.signed}
sudo update-grub

теперь можно перезагрузиться =)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.