Понеже не мога да кажа в никакъв случай, че мрежите са ми сила, точно обратното — напълно неук съм, затова ще ти говоря на високо равнище. Какво се прави на ниско, нито знам, нито мисля, че ще имам достатъчно мозък, някога да разбера.
Ще говоря от собствения си опит. Не твърдя, че нещо от написаното е правилно, а само, че е работило за мен и отговаря на собствените ми (никакви) умения.
Първото нещо, преди да започнеш да правиш, каквото и да било е, е да си намериш точния bios за платката си. Пакета трябва да е нещо подобно на firmware-*.rpm.
По личния ми опит (с Дебиан, но не би трябвало да има значение), даже да се ползва по-стар пакет, а не за Цент 8 може да е предимство. Не се притеснявай, тези bios не зависят от версията на ядрото. Те са просто едни „цифрови петна“ (на технически жаргон) и единственото, което прави ядрото е — да ги инжектира в устройството.
Когато вече имаш под ръка съответния пакет, вече може да започваш с експериментите.
Живия Девуан не включва connman или wicd. Но ако в Цент има нещо подобно, първо трябва да го спреш с:
GeSHi (Bash):
# service wicd stop
или
GeSHi (Bash):
# service connman stop
Ако има онова безумие nm, не знам, как се спира. От малкия си опит с него, опитвал съм се да го убивам, какво ли не, пуска се и се пуска самичко. Гнусен вирус. Отървавал съм се от него само като ръчно преименувам команата му. Убивам го и спира да шава.
Следва премахване на приставката за ядрото. Става по обичайния начин с:
GeSHi (Bash):
# modprobe -r mt7921e
или
GeSHi (Bash):
# rmmod mt7921e
Двете комани правят едно и също. Приемам, че mt7921e е приставката, както каза Рей. Но ти това (коя точно е) трябва да си го установил (както си написал) с команда подобна на lspci.
Сега, има го момента, че modprobe-то може да изпищи, че не иска да я маха, защото зависи от други. Махаш първо тях и накрая нашата. В моя случай (но моята платка е най-гадния урод и враг — Броудком) има цели четири такива.
Тук аз даже за по-сигурно премахвам и самия пакет. Понеже никога не съм ползвал Red Hat (като изключим Мандрейк), то не знам точната команда. Но ти трябва да я знаеш. Инструмента е този под yum или каквото е там в CentOS, че май смениха yum-а с няк'во dnf или подобна простотия появила се при нас под помпозното и незаслужено име APT. То може би ще стане и самия yum, ама като инструмент за зависимости, му нямам доверие. И на apt-get не вярвам.
След като е разкаран от паметта и диска, ги връщаме обратно със същите команди. Затова казах, че пакета трябва да ти е под ръка. Желателно е да знаеш, че този bios е работил преди за теб и не е издънка, каквито има много. А пък модпробето е без „ер“.
Както казах, ако проблема е на ниско равнище с нищо не мога да ти помогна. Не разбирам от разбубулечване с gdb, strace и подобните на тях. С писане на Ц имам извънредно малко опит.
Но, ако всичко е наред, трябва да си готов да полетиш. Това ще разберем веднага с:
GeSHi (Bash):
iw dev| grep Interface|cut -d" " -f2
Ако даде отговор, ти си човека.
Сигурно има и по-готина команда, но аз толкова мога bash, толкова пиша. Аз даже съм си го сложил в:
GeSHi (Bash):
wlan0=$(iw dev| grep Interface|cut -d" " -f2)
за по-нататъшна обработка в пакетен режим, но очевидно става и на команден ред.
Това е защото отдавна няма нищо сигурно в ядрото и хич не е ясно, че ще ти раздаде точно wlan0, a не някаква простотия. Имената на всякакви устройства от версия на версия стават все по-закодирани и все по-малко значещи нещо.
Ако сме успели до тук, нека вдигнем мрежата. И започваме с
GeSHi (Bash):
ip link set $wlan0 down
Няма как — първо трябва да се уверим, че е долу.
GeSHi (Bash):
ip link set $wlan0 up
GeSHi (Bash):
iw dev $wlan0 connect MY-ESSID
GeSHi (Bash):
dhclient $wlan0
За последната не съм сигурен в RH, каква е. До някакво време за dhcp не ползваха това. Но каквото там ползват, ползваш го и ти.
Нака видим, какво се е случило:
GeSHi (Bash):
ping 192.168.1.0
Най-вероятно е това, но сам знаеш, как си настроил маршрутизатора да раздава адреси. Аз съм работил и на големшки места, дето се раздаваха десетки и то не макина
GeSHi (Bash):
ping 8.8.8.8
Ненавиждам Гългъл, но е много сигурен за ping-ване.
И накрая нещо наше:
GeSHi (Bash):
ping abv.bg
Ако и това сработи, значи дори DNS е запалил и ние сме в джаза.
Ако е така, можем да минем на нещо по-човешко. А и все по някое време ще загубиш връзка. Това не е кабел и да е сигурна комуникацията.
Вземи под предвид, че agent on можеш да го извикаш само в случай, че ползваш connmanctl в ролята му на командна обвивка, а не команда с параметри. И така:
GeSHi (Bash):
service connman start
За всеки случай:
GeSHi (Bash):
connmanctl enable wifi
после:
GeSHi (Bash):
connmanctl scan wifi
па:
GeSHi (Bash):
connmanctl services
и накрая:
GeSHi (Bash):
connmanctl connect wifi_very_long_hash_managed_or_some_thing
Онова последното дето го написах, си го взимаш от изхода на предпоследното. Неудобно е, защото е гнусна дроб, но пък понеже никога не се променя, става за пакетна обработка.
Наистина по-мързеливо е да ползваш нещо като cmst. Ама поне живия Девуан (минималният
) идва без всякаква графика. Преполагам и Цент е така, като ориентиран по-малко да е работен плот
Ако някъде съм забравил (щото ми омръзна по някое време, a и мязат на коментар) да сложа диез, да знаеш, че всички команди са с администраторски привилегии.
Успех!
п.п. За разлика от Спец, не вярвам, че Цент е лош избор за начинаещ. Това е едно от най-поддържаните дистрота и дава неограничени възможности за професионално развитие;
п.п.п. Забравих, че не е лошо и да разбереш, какво е положението с rfkill.