Складіть і встановіть драйвер rtl8192cu


15

Чи може хтось допомогти мені з цією проблемою? Я новачок в Linux, тому я не знаю команд, і я ніколи не робив чогось типу встановлення чи компіляції з командного рядка.

Я придбав WiFi-адаптер від Edimax, модель EW-7811UN для свого ПК (не ноутбук, тому у мене немає Wi-Fi карти, лише Ethernet). Переглядаючи путівник по CD, я натрапив на версію ядра. Він сказав, що мені потрібна версія 2.6, але у мене є 3.5.0-22-generic.

У мене виникли помилки, як-от у мене немає файлу чи папки тощо. Чи може хтось мені сказати, де я можу завантажити компільований драйвер і куди мені потрібно його поставити? Або якусь іншу пораду. Я не хочу поновлювати ядро, коли це не потрібно.


Здається, це вже не працює; 13.04, 3.8.0-25-родовий; драйвер ядра дозволяє з'єднанню відкривати wifis, але з'єднання розривається через 2 хвилини або близько того; потім я спробував створити драйвер Realtek з усіма патчами, які я міг знайти; він компілюється, але з'єднання настільки ж лускате, як і раніше; Крім того, коли я відключив адаптер, у мене з'явилася паніка ядра, будь-яка допомога?
Антті Хаапала

@AnttiHaapala трохи пізно, але спробуйте одну з версій git hub із новішими ядрами та ввімкніть модуль з 8192cu замість rtl8192cu або побудуйте з драйвером з веб-сайту realtek, використовуючи ядро ​​3.2LTS
mchid

NP зараз для мене, я навіть не знаю, де цей пристрій більше, мені просто знадобився його для свого ноутбука після того, як була розірвана внутрішня антена (зараз виправлено)
Antti Haapala

Відповіді:


19

Якщо ви зіткнулися з цією проблемою, для мене працювало встановлення наступного драйвера: https://github.com/pvaret/rtl8192cu-fixes

З файлу README.md :

Установка

Переконайтеся, що у вас є необхідні передумови:

sudo apt-get install linux-headers-generic build-essential dkms

Клоніруйте це сховище:

git clone https://github.com/pvaret/rtl8192cu-fixes.git

Налаштуйте його як модуль DKMS:

sudo dkms add ./rtl8192cu-fixes

Створіть та встановіть його (цей номер версії може змінитись. Це станом на 07 листопада 2019 року)

sudo dkms install 8192cu/1.11

Оновіть список модулів:

sudo depmod -a

Переконайтесь, що натиснута драйвер ядра в чорному списку:

sudo cp ./rtl8192cu-fixes/blacklist-native-rtl8192.conf /etc/modprobe.d/

І перезавантажити. Ви закінчили.


1
Як замітку, я щойно це зробив і після рядка: sudo dkms install 8192cu/1.8я отримав помилку. Ця помилка полягала в тому, що: Error! Could not find module source directory. Directory: /usr/src/8192cu-1.8 does not exist.виявляється, мені потрібно змінити значення /usr/src/8192cu-1.8На /usr/src/8192cu-1.9Потрібно було нещодавно оновити GIT, і ці інструкції застаріли на одну цифру.

Загляньте в каталог / usr / src. Натомість у вас може бути 1.9, якщо ви завантажили останню версію. ;)
Буде Самс

Для мене це добре працює для TL-WN823N V1.2 під Ubuntu 16.04, дуже дякую!
Хав'єр Гарсія

1
Це працює на Ubuntu 16.10. Однак питання: lsmodпоказує мені, що новий драйвер працює замість старого (і моє з'єднання стабільне ...). Однак якщо я натискаю "інформацію про з'єднання" візуально на моєму лотку єдності, він говорить, що rtl8192cu(замість просто 8192cu) все ще використовується. Хтось знає, чому це так?
Неару

13

12.04 та 14.04+: ви можете переглянути ці вказівки чи просто виконати, як я кажу.

(використовуйте ці вказівки, коли ваш бездротовий USB-пристрій [rtl8192cu] Ubuntu не розпізнається автоматично)

sudo modprobe rtl8192cu
echo "2001 330D" | sudo tee /sys/bus/usb/drivers/rtl8192cu/new_id
echo "rtl8192cu" | sudo tee -a /etc/modules

Потім відредагуйте /etc/rc.local, відкривши файл улюбленим текстовим редактором, як у цьому прикладі:

sudo gedit /etc/rc.local

переконайтеся, що воно говорить. . .

echo "2001 330D" | tee /sys/bus/usb/drivers/rtl8192cu/new_id

exit 0

Ви можете користуватися бездротовим зв’язком зараз або, альтернативно, переконайтеся, що всі ваші роботи збережені перед введенням:

sudo reboot

Ваш драйвер бездротового зв'язку повинен запуститися автоматично.


Для компіляції та встановлення власного драйвера Realtek 8192cu запустіть наступні команди у відкритому терміналі:

sudo apt-get update && sudo apt-get install git build-essential linux-headers-generic dkms
git clone https://github.com/dz0ny/rt8192cu.git --depth 1
cd rt8192cu
sudo make dkms

Для жорсткого монтажу:

make
sudo make install

замість sudo make dkms.

Щоб увімкнути цей драйвер, використовуйте команду:

sudo modprobe 8192cu

Нарешті, оновіть / etc / модулі за допомогою цієї команди перед перезавантаженням:

echo '8192cu' | sudo tee -a /etc/modules

Суче №1: bernaerts.dyndns.org

Джерело №2: github.com/dz0ny


Це приголомшливо для D-link A-131
mchid

Дуже дякую. Я два дні боровся зі своїм Asus USBN13, перш ніж знайти вашу відповідь. Це спрацювало, коли все інше не вдалося, і я вже збирався здатися.
Swoogan

Чудово, працював для TP-Link TL-WN821N на Xubuntu 12.04 під час першого проходу.
Премек Брада

Я не можу створити джерело драйвера:$ sudo make install install -p -m 644 8192cu.ko /lib/modules/3.13.0-44-generic/kernel/drivers/net/wireless/ install: cannot stat ‘8192cu.ko’: No such file or directory
Енді

@Andy Спочатку біжи make. Потім бігайте sudo make install. Я відредагував відповідь. Дякуємо, що вказали на це.
mchid

4

Взагалі кажучи, будь-який драйвер Linux на постачальницькому компакт-диску був би застарілим, і, в більшості випадків, не варто було б турбуватися. Модуль RTL8192cu є частиною ядра Linux з версії 2.6.38, так що в ідеалі вам потрібно було б лише підключити пристрій, і він буде працювати. На жаль, цей модуль ніколи не працював, і, IMHO, виправлення давно назріло ( звіт про помилку ).

Отже, що вам робити? Підключіть пристрій. Переконайтесь, що менеджер мережі "бачить" бездротові мережі навколо (може також перевірити, чи правильно завантажений правильний модуль lsmod | grep 8192). Спробуйте підключитися до своєї мережі. Якщо це не працює, спробуйте підключитися до будь-якої мережі. Якщо це не працює, на вас впливає помилка, і вам доведеться спробувати драйвер з http://www.realtek.com .

  • Завантажте драйвер звідси та покладіть завантажений файл у свою домашню папку.

  • Чорний список наявного модуля. У вікні термінала запустіть

    gksu gedit /etc/modprobe.d/blacklist.conf, додайте blacklist rtl8192cuдонизу, збережіть та вийдіть, а потім перезавантажте.

  • Витягніть завантажений архів: клацніть правою кнопкою миші, Витягнути тут або запустити

    unzip RTL8192xC_USB_linux_v3.4.4_4749.20121105.zip

  • Встановити. У вікні термінала запустіть

    sudo bash ./RTL8188C_8192C_USB_linux_v3.4.4_4749.20121105/install.sh


Велике спасибі, це краще, але у мене виникла проблема ... Збірка нормальна, але після неї мені потрібно редагувати install.sh або щось подібне, тому що нова папка зі скомпільованим драйвером "заблокована", і я повинен робити chmod 777 у кожній папці і файл для root ... по підручнику без редагування мого ПК заморожений, і мені довелося перезавантажити (після складання рядка драйвера нормально і до рядка з видаленням, вставленням та встановленням драйвера). Чи є у вас якісь ідеї чи ви можете мені допомогти з правами на швидке редагування? Або якийсь простий тут. як це зробити через термінал, а не через install.sh :) Дякую
Maroš Káčko-Donnie Kario

Вам chmodнічого не слід робити , і я б не рекомендував грати з дозволу. Просто робіть те, що розміщено вище, нічого іншого. : ~)
mikewever

Хм .. але мій комп'ютер заморозився ... мені доведеться перезавантажити .. я нічого не можу зробити, і коли я перезавантажуюсь, я бачу створену папку інсталятором із піктограмою блокування: / ПК замерзає перед кроком із видаленням, вставленням та встановленням .. Він показує мені, що потрібна авторизація, але вона зависає, і мені доведеться перезавантажити :( Я не можу пройти через це ...
Maroš Káčko-Donnie Kario

Не впевнений. Запуск install.shз даними sudoповинен дати вам правильні дозволи.
mikewever

можливо, я не мав прав через заморожування ПК ... але я не знаю, чому він замерз: / чи можливо це зробити вручну? без автоматичного встановлення ... можливо, я знайду деякі проблеми під час процесу чи щось подібне ..
Maroš Káčko-Donnie Kario

2

Це добре працює. Тільки видайте, ви повинні спочатку перейти до каталогу.

напр.

cd RTL8188C_8192C_USB_linux_v3.4.4_4749.20121105

sudo bash ./install.sh

Єдиною проблемою, яку я мав встановити за допомогою цього методу, було те, що один із стислих архівів, викликаний install.sh, мав додатковий каталог, коли його не було стиснуто, тому сценарій встановлення не міг його знайти. Щоб виправити цю проблему, ви можете відредагувати скрипт встановлення або розпакувати архів, скопіювати та вставити каталог, знайдений на верхньому рівні, у який знаходиться стислий каталог, видалити стислий каталог та стиснути вставлений каталог, використовуючи відповідне ім’я. Потім запустіть sudo ./install.shі це має працювати.
mchid

1

Чи можете ви надати детальну інформацію про те, які команди ви використовували для настройки драйверів, або бути конкретними щодо помилок при спробі? Я також виявив: встановлюючи Edimax EW7811 , щоб встановити драйвери послідовно, якщо керівництво недостатньо зрозуміло, спробуйте також скористатися панеллю пошуку, багато хто повідомив про помилки і на драйверах Edimax.

Посилання на драйвери Linux для Edimax EW7811UN з їх веб-сайту: Завантажте (у випадку, якщо у вас є інший інсталятор версії)


Я використовую кілька підручників, але я заморозив команду sudo make ... <p> cp: nie je možné stat () `/autoconf_rtl8192c_usb_linux.h ': </p> Це те, про що говорив термінал. Це по-словацьки, тому що у мене є словацька версія Ubuntu 12.10 :) Я думаю, що ви можете легко перекласти її ..
Maroš Káčko-Donnie Kario

EDIT: тут є помилки: kario.wz.cz/upload/linux.txt У мене є словацька версія Ubuntu 12.10, тому помилки є і в словацькій
мові

Спробуйте make cleanперед першою командою, яка вирішує проблему деякий час.
Андрій

Я завжди роблю чистоту перед тим, як робити, як у підручнику, чистий запуск без помилок, але роблю помилки, але я не знаю, як їх "відремонтувати" ..
Maroš Káčko-Donnie Kario

@ MarošKáčko-DonnieKario причина цього не працює в тому, що, починаючи з ядра 3.4, відбулися деякі зміни в заголовках ядра та деякі макроси, які використовуються для створення драйвера, який тепер амортизується, і таким чином складання призводить до отриманих помилок. Ви можете побудувати за допомогою стандартного ядра LTS 3.2 або використовувати оновлену версію DKMS від github, як описано у моїй відповіді.
mchid

-2

Я завантажив нову версію драйвера та встановив її за допомогою: sudo dkms install 8192cu / 1.9

Отже, майте на увазі, щоб встановити, використовуючи версію драйвера.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.