Skompiluj i zainstaluj sterownik rtl8192cu


15

Czy ktoś może mi pomóc z tym problemem? Jestem nowy w Linuksie, więc nie znam poleceń i nigdy nie zrobiłem czegoś takiego jak instalacja lub kompilacja z wiersza poleceń.

Kupiłem adapter WiFi od Edimax, model EW-7811UN do mojego komputera (nie laptopa, więc nie mam karty wifi, tylko ethernet). Kiedy przeglądam przewodnik na CD, natknąłem się na wersję jądra. Powiedział, że potrzebuję wersji 2.6, ale mam wersję 3.5.0-22-ogólną.

Mam błędy, takie jak brak pliku lub folderu itp. Czy ktoś może mi powiedzieć, gdzie mogę pobrać skompilowany sterownik i gdzie go umieścić? Lub jakieś inne porady. Nie chcę obniżać wersji jądra, gdy nie jest to konieczne.


Wydaje się, że to już nie działa; 13.04, 3.8.0-25-ogólny; sterownik jądra pozwala na połączenie wifi, ale połączenie zostaje zerwane po około 2 minutach; potem próbowałem zbudować sterownik Realtek ze wszystkimi łatami, jakie mogłem znaleźć; kompiluje się, ale połączenie jest tak samo niestabilne jak wcześniej; co więcej, kiedy odłączyłem adapter, wpadłem w panikę jądra, czy coś pomogło?
Antti Haapala

@AnttiHaapala trochę późno, ale wypróbuj jedną z wersji git hub z nowszymi jądrami i włącz moduł z 8192cu zamiast rtl8192cu lub buduj ze sterownikiem ze strony internetowej realtek przy użyciu jądra 3.2LTS
mchid

NP teraz dla mnie teraz, nawet nie wiem już, gdzie to urządzenie, po prostu potrzebowałem go do mojego laptopa po zerwaniu anteny wewnętrznej (teraz naprawionej)
Antti Haapala

Odpowiedzi:


19

Jeśli napotkasz ten problem, działało dla mnie instalowanie następującego sterownika: https://github.com/pvaret/rtl8192cu-fixes

Z pliku README.md :

Instalacja

Upewnij się, że masz niezbędne warunki wstępne:

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

Sklonuj to repozytorium:

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

Skonfiguruj go jako moduł DKMS:

sudo dkms add ./rtl8192cu-fixes

Zbuduj i zainstaluj (ten numer wersji może ulec zmianie, jest to .11 od 7 listopada 2019 r.)

sudo dkms install 8192cu/1.11

Odśwież listę modułów:

sudo depmod -a

Upewnij się, że natywny (i uszkodzony) sterownik jądra jest na czarnej liście:

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

I uruchom ponownie. Jesteś skończony.


1
Dla przypomnienia właśnie to zrobiłem i po wierszu: sudo dkms install 8192cu/1.8dostałem błąd. Że błąd: Error! Could not find module source directory. Directory: /usr/src/8192cu-1.8 does not exist.Okazuje się, że muszę zmienić /usr/src/8192cu-1.8by /usr/src/8192cu-1.9musiał być najnowsza aktualizacja do GIT i instrukcji są nieaktualne przez tę jedną cyfrę.

Zajrzyj do katalogu / usr / src. Zamiast tego możesz mieć wersję 1.9, jeśli pobrałeś najnowszą wersję. ;)
Will Sams,

Działa to dla mnie dobrze dla TL-WN823N V1.2 pod Ubuntu 16.04, Dziękuję bardzo!
Javier Garcia

1
Działa to na Ubuntu 16.10. Jednak pytanie: lsmodpokazuje mi, że nowy sterownik działa zamiast starego (a moje połączenie jest teraz stabilne ...). Jeśli jednak kliknęwizualnie informacje o połączeniu” na pasku Unity, wyświetli się komunikat rtl8192cu(zamiast po prostu 8192cu). Czy ktoś wie, dlaczego tak jest?
Nearoo

13

12.04 i 14.04+: możesz wyświetlić te instrukcje lub po prostu zrobić, co mówię.

(skorzystaj z tych instrukcji, gdy twoje bezprzewodowe urządzenie USB [rtl8192cu] nie zostanie automatycznie rozpoznane przez Ubuntu)

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

Następnie edytuj plik /etc/rc.local, otwierając plik w swoim ulubionym edytorze tekstu, jak w tym przykładzie:

sudo gedit /etc/rc.local

upewnij się, że to mówi. . .

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

exit 0

Możesz teraz korzystać z połączenia bezprzewodowego lub, alternatywnie, upewnić się, że zapisałeś całą swoją pracę przed wpisaniem:

sudo reboot

Sterownik bezprzewodowy powinien uruchomić się automatycznie.


Aby skompilować i zainstalować zastrzeżony sterownik Realtek 8192cu, uruchom następujące polecenia w otwartym terminalu:

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

Do trudnej instalacji użyj:

make
sudo make install

zamiast sudo make dkms.

Aby włączyć ten sterownik, użyj polecenia:

sudo modprobe 8192cu

Na koniec zaktualizuj / etc / moduły za pomocą tego polecenia przed ponownym uruchomieniem:

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

Souce # 1: bernaerts.dyndns.org

Źródło # 2: github.com/dz0ny


Działa to niesamowicie dla D-link A-131
mchid

Dziękuję bardzo. Walczyłem z moim Asus USBN13 przez dwa dni, zanim znalazłem odpowiedź. Działało, gdy wszystko inne zawiodło i miałem się poddać.
Swoogan

Świetnie, działał dla TP-Link TL-WN821N na Xubuntu 12.04 przy pierwszym przejściu.
Premek Brada

Nie mogę zbudować źródła sterownika:$ 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

@Andy Najpierw biegnij make. Następnie biegnij sudo make install. Zredagowałem odpowiedź. Dzięki za zwrócenie na to uwagi.
mchid

4

Ogólnie rzecz biorąc, jakikolwiek sterownik Linuksa na płycie CD z dostawcą byłby przestarzały i w większości przypadków nie warto się tym przejmować. Moduł RTL8192cu jest częścią jądra Linuksa od wersji 2.6.38, więc idealnie byłoby, gdyby wystarczyło tylko podłączyć urządzenie i działałoby. Niestety, ten konkretny moduł nigdy nie działał i, IMHO, poprawka była już dawno spóźniona ( zgłoszenie błędu ).

Co powinieneś zrobić? Podłącz urządzenie. Sprawdź, czy menedżer sieci „widzi” wokół sieci bezprzewodowe (może również sprawdzić, czy uruchomiono właściwy moduł lsmod | grep 8192). Spróbuj połączyć się z siecią. Jeśli to nie zadziała, spróbuj połączyć się z dowolną siecią. Jeśli to nie zadziała, błąd dotyczy Ciebie i będziesz musiał wypróbować sterownik ze strony http://www.realtek.com .

  • Pobierz sterownik stąd i umieść pobrany plik w folderze domowym.

  • Czarna lista istniejącego modułu. W oknie terminala uruchom

    gksu gedit /etc/modprobe.d/blacklist.conf, dodaj blacklist rtl8192cudo dołu, zapisz i wyjdź, a następnie uruchom ponownie.

  • Wyodrębnij pobrane archiwum: kliknij prawym przyciskiem myszy, Wyodrębnij tutaj lub uruchom

    unzip RTL8192xC_USB_linux_v3.4.4_4749.20121105.zip

  • Zainstalować. W oknie terminala uruchom

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


Dzięki bardzo, jest lepiej, ale mam problem ... Kompilacja jest w porządku, ale potem muszę edytować install.sh lub coś takiego, ponieważ nowy folder ze skompilowanym sterownikiem jest „zablokowany” i muszę zrobić chmod 777 na każdym folderze i plik do rootowania ... samouczek bez edycji mojego komputera zamrożonego i musiałem zrestartować komputer (po kompilacji sterownika ok, a przed wierszem usunięcia, wstawienia i zainstalowania sterownika). Czy masz jakieś pomysły lub możesz mi pomóc w zakresie prawa do szybkiej edycji? Lub jakiś prosty tut. jak to zrobić przez terminal, a nie install.sh :) Dzięki
Maroš Káčko-Donnie Kario

Nie powinieneś chmodniczego, a ja nie zalecałbym grania za zgodą. Po prostu rób to, co napisano powyżej, nic więcej. : ~)
mikewhthing

Hm ... ale mój komputer się zawiesił ... Muszę zrestartować komputer ... Nie mogę nic zrobić, a kiedy uruchomię ponownie, widzę utworzony folder przez instalatora z ikoną kłódki: / PC zawiesza się przed krokiem usuwania, wstawiania i instalowania .. Pokazuje mi, że wymagana jest autoryzacja, ale zawiesza się i muszę zrestartować :( Nie mogę przejść przez to ...
Maroš Káčko-Donnie Kario

Niepewny. Uruchamianie install.shz sudopowinno dać ci odpowiednie uprawnienia.
mikewhthing

może nie miałem uprawnień z powodu zamrożenia komputera ... ale nie wiem, dlaczego się zawiesił: / Czy można to zrobić ręcznie? bez autoinstalacji ... może
napotkam

2

To dobrze działa. Wydawaj tylko, że powinieneś najpierw cd do katalogu.

na przykład.

cd RTL8188C_8192C_USB_linux_v3.4.4_4749.20121105

sudo bash ./install.sh

Jedynym problemem, jaki miałem przy instalacji tą metodą, było to, że jedno ze skompresowanych archiwów wywoływanych przez install.sh miało dodatkowy katalog po rozpakowaniu, więc skrypt instalacyjny nie mógł go znaleźć. Aby rozwiązać ten problem, możesz edytować skrypt instalacyjny lub rozpakować archiwum, skopiować i wkleić katalog znajdujący się na najwyższym poziomie do katalogu, w którym znajduje się skompresowany katalog, usunąć skompresowany katalog i skompresować wklejony katalog przy użyciu poprawnej nazwy. Następnie uruchom sudo ./install.shi powinno działać.
mchid

1

Czy możesz podać szczegółowe informacje na temat poleceń użytych do skonfigurowania sterowników lub podać szczegółowe informacje na temat błędów podczas próby? Odkryłem również: instalując Edimax EW7811 , aby zainstalować sterowniki sekwencyjnie, jeśli instrukcja nie była wystarczająco jasna, spróbuj także użyć paska wyszukiwania, wiele osób zgłosiło również błędy w sterownikach Edimax.

Link do sterowników linuksowych dla Edimax EW7811UN z ich strony internetowej: Pobierz (w przypadku, jeśli masz inny instalator wersji)


Korzystam z niektórych samouczków, ale zawiesiłem się z poleceniem sudo make ... <p> cp: nie je možné stat () `/autoconf_rtl8192c_usb_linux.h ': </p> Tak powiedział terminal. Jest w języku słowackim, ponieważ mam słowacką wersję Ubuntu 12.10 :) Myślę, że możesz ją łatwo przetłumaczyć ..
Maroš Káčko-Donnie Kario

EDYCJA: błędy są tutaj: kario.wz.cz/upload/linux.txt Mam słowacką wersję Ubuntu 12.10, więc błędy też są słowackie :))
Maroš Káčko-Donnie Kario

Spróbuj make cleanprzed pierwszym poleceniem, które rozwiąże problem przez jakiś czas.
Andrew

Zawsze robię czyszczenie przed zrobieniem jak w samouczku, czyste uruchamianie bez błędów, ale popełniam błędy, ale nie wiem, jak je „naprawić”.
Maroš Káčko-Donnie Kario

@ MarošKáčko-DonnieKario powodem, dla którego nie działa, jest to, że począwszy od jądra 3.4 wprowadzono pewne zmiany w nagłówkach jądra i niektóre makra użyte do utworzenia sterownika, które są już nieaktualne, a więc kompilacja powoduje otrzymanie błędów. Możesz budować ze standardowym jądrem LTS 3.2 lub możesz użyć zaktualizowanej wersji DKMS z github, jak opisano w mojej odpowiedzi.
mchid

-2

Pobrałem nowszą wersję sterownika i zainstalowałem ją z: sudo dkms install 8192cu / 1.9

Należy więc pamiętać o instalacji przy użyciu wersji sterownika.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.