dlaczego ten serwer CentOS 7 nie widzi połączeń Wi-Fi?

9

Niedawno zainstalowałem CentOS 7 jako jedyny system operacyjny w Acer Aspire T. Nie ma GUI, ponieważ jest to serwer z interfejsem tylko terminalowym.

Co muszę zrobić, aby CentOS 7 mógł zobaczyć i wyświetlić listę dostępnych połączeń Wi-Fi?

Gdy korzystam z narzędzia wiersza polecenia Network Manager nmcli, otrzymuję następujące informacje, które wskazują, że nmcli ma włączone Wi-Fi, ale nie widzi żadnych połączeń Wi-Fi:

[root@localhost ~]# nmcli general status
STATE         CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
disconnected  none          enabled  enabled  enabled  enabled 
[root@localhost ~]# nmcli connection show
NAME  UUID  TYPE  DEVICE 
[root@localhost ~]# nmcli device status
DEVICE  TYPE      STATE      CONNECTION 
eno1    ethernet  unmanaged  --         
lo      loopback  unmanaged  --         
wlp3s0  wifi      unmanaged  -- 

Następnie sprawdziłem konfigurację zapory ogniowej, która pokazuje, że ssh jest jedyną otwartą usługą w następujący sposób:

[root@localhost network-scripts]# firewall-cmd --list-all
public (default, active)
  interfaces: eno1
  sources: 
  services: dhcpv6-client ssh
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules:  

Co muszę zmienić, aby CentOS mógł widzieć połączenia Wi-Fi? Dostępne są połączenia. Czy zapora ogniowa musi się zmienić? Albo coś innego?


EDYTOWAĆ:

Nie jestem w stanie robić rzeczy, które @TimS. sugerowane, ponieważ następujące narzędzia nie są wstępnie zainstalowane na komputerze i nie są podłączone bezpośrednio do Internetu:

[root@localhost ~]# ifconfig -a
-bash: ifconfig: command not found
[root@localhost ~]# lspci -v
-bash: lspci: command not found  
[root@localhost ~]# iw dev
-bash: iw: command not found
[root@localhost ~]# iwconfig
-bash: iwconfig: command not found  

Jestem w stanie otworzyć nmtui, ale nie jestem pewien, jakie parametry wprowadzić, aby utworzyć nowe połączenie. [root @ localhost ~] # iw dev -bash: iw: polecenie nie znaleziono [root @ localhost ~] # iwconfig -bash: iwconfig: nie znaleziono polecenia

CodeMed
źródło
1
Spróbuj użyć nmtuido skonfigurowania połączenia bezprzewodowego.
Michael Hampton
1
Wifi na serwerze, czy to do domowego laboratorium?
@ yagmoth555 serwer programistyczny.
CodeMed
2
mniam zainstaluj NetworkManager-wifi *
Scott B
Jeśli otworzysz nmtuii nie zobaczysz połączeń, nic więcej nie może dla Ciebie zrobić. Musisz sprawdzić swoją instalację i rzeczywistą dostępność sieci Wi-Fi. Zobacz moją zaktualizowaną odpowiedź.
Pavel Šimerda

Odpowiedzi:

8

Gdy korzystam z narzędzia wiersza polecenia Network Manager nmcli, otrzymuję następujące informacje, które wskazują, że nmcli ma włączone Wi-Fi, ale nie widzi żadnych połączeń Wi-Fi:

Ani trochę. Mówią tylko, że nie skonfigurowałeś żadnego połączenia Wi-Fi. Musisz użyć innych poleceń, aby sprawdzić połączenia Wi-Fi i połączyć się z Wi-Fi.

Upewnij się, że NetworkManager obsługuje Wi-Fi i zarządza urządzeniem bezprzewodowym

wlp3s0  wifi      unmanaged  -- 

To jest problem. Jeśli NetworkManager nie zarządza twoim bezprzewodowym kontrolerem ethernetowym, nie możesz oczekiwać, że zobaczy sieci Wi-Fi i połączy się z nimi. NetworkManager normalnie zarządzałby wszystkimi urządzeniami automatycznie po nowym rozruchu.

Możesz sprawdzić obecność pakietu Wi-Fi. Jeśli nie masz zainstalowanego tego pakietu, nie masz obsługi Wi-Fi w NetworkManager.

rpm -q NetworkManager-wifi

W takim przypadku musisz tymczasowo użyć połączenia Ethernet lub przenieść RPM za pomocą innych środków.

yum install NetworkManager-wifi
systemctl restart NetworkManager

Połącz za pomocą nmcli

Aby wyświetlić dostępne sieci Wi-Fi:

nmcli dev wifi list

Aby połączyć się z siecią Wi-Fi o nazwie TestWifi:

nmcli --ask dev wifi connect TestWifi

Połącz za pomocą nmtui

Właśnie z powodzeniem próbowałem wyświetlić sieci Wi-Fi w nmtui(nie w CentOS, ale powinno działać). Wystarczy wybrać opcję Aktywuj nowe połączenie , aby wyświetlić listę dostępnych sieci Wi-Fi.

Pavel Šimerda
źródło
Mogą również mieć wpływ ręczne wybory dokonane podczas procesu instalacji GUI. Jeśli wybierzesz WiFi w GUI przed uruchomieniem instalacji. Uważam, że pamiętam, że tego problemu można uniknąć. To samo może dotyczyć innych metod instalacji, takich jak uruchamianie plików i instalacja virt
CodeMed
2

Nawet jeśli Twój system rozpoznaje interfejs bezprzewodowy, nadal potrzebujesz pakietu, aby nim zarządzać. Ogólnie dla CentOS używam dostawcy WPA. Zawiera narzędzia, których użyjesz do włączenia / wyłączenia / etc interfejsu.

Zapis znajduje się tutaj na wiki CentOS.

Możesz pobrać pakiety dostawcy WPA z różnych lokalizacji. Użyłem RPMfind.net .

W celach informacyjnych znajdują się instrukcje dotyczące konfigurowania dostawcy WPA po instalacji. (wzięte z powyższej wiki)

Włączanie wpa_supplicant bez NetworkManager, zaktualizowana wersja

Ta aktualizacja jest prostszą metodą automatycznego łączenia interfejsu Wi-Fi podczas procesu uruchamiania. Oryginalna wersja jest dostępna poniżej w celach informacyjnych.

Dlaczego zaktualizowana wersja?

  • Łatwiejszy do wdrożenia
  • Pełniejsze instrukcje
  • Nie zmienia plików zastąpionych aktualizacjami systemu
  • Obsługuje „serwisowy restart sieci” w celu ponownego nawiązania połączenia

Edytuj plik / etc / sysconfig / network-scripts / ifcfg-

Uruchom iwconfig, aby znaleźć urządzenie Wi-Fi. W tym przykładzie wyjściowym wlan0 jest jedynym, który obsługuje Wi-Fi.

# iwconfig 
lo        no wireless extensions.

wlan0     IEEE 802.11bgn  ESSID:"NETWORKSSID"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 68:7F:74:AD:F3:3C   
          Bit Rate=54 Mb/s   Tx-Power=16 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=50/70  Signal level=-60 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:90   Missed beacon:0

eth0      no wireless extensions.

pan0      no wireless extensions.

virbr0    no wireless extensions.

virbr0-nic  no wireless extensions.

# 

Edytuj ifcfg dla tego interfejsu. Na przykład za pomocą wlan0.

/ etc / sysconfig / network-scripts / ifcfg-wlan0

Sprawdź, czy opcja ONBOOT jest włączona.

ONBOOT="yes"

Edytuj / etc / sysconfig / wpa_supplicant

Upewnij się, że urządzenie znajduje się w wierszu INTERFACES w tym pliku. W tym przykładzie wlan0 jest jedynym urządzeniem obsługiwanym przez wpasupplicant.

# Use the flag "-i" before each of your interfaces, like so:
#  INTERFACES="-ieth1 -iwlan0"
INTERFACES="-iwlan0"

Edytuj /etc/wpa_supplicant/wpa_supplicant.conf

Większość sieci wymaga jednego wpisu w pliku wpa_supplicant.conf, który wygląda następująco. Zastąp NETWORKSSID i NETWORKPSK odpowiednimi wartościami dla każdej sieci. Ułóż je w kolejności, w jakiej mają być używane.

network={
        ssid="NETWORKSSID"
        scan_ssid=1
        key_mgmt=WPA-PSK
        psk="NETWORKPSK"
}

Oto przykład sieci, która nie wymaga klucza współdzielonego. Jeśli pojawi się przed „dowolną” siecią, będzie preferowana w stosunku do innych otwartych sieci.

network={
        ssid="PUBLIC"
        key_mgmt=NONE
}

Ostatnia opcja (której możesz nie wdrożyć) pozwoli ci połączyć się z każdą otwartą siecią. Jest to przydatne w hotelach, ale może umożliwiać połączenia z niepożądanymi sieciami.

network={
        key_mgmt=NONE
}

Utwórz /etc/rc5.d/S09prepnet

Wklej następujący tekst, aby utworzyć nowy plik, który przygotuje uruchomione usługi do połączenia Wi-Fi.

cat > /etc/init.d/prepnet <<EoT
#!/bin/sh

/etc/init.d/messagebus start
/etc/init.d/wpa_supplicant start
killall dhclient >/dev/null 2>&1

EoT
chmod a+rx /etc/init.d/prepnet
ln -s /etc/init.d/prepnet /etc/rc3.d/S09prepnet
ln -s /etc/init.d/prepnet /etc/rc5.d/S09prepnet

Skonfiguruj usługi do uruchamiania podczas rozruchu

Wklej następujące polecenia, aby skonfigurować usługi.

chkconfig messagebus off
chkconfig wpa_supplicant off
chkconfig NetworkManager off
chkconfig network on

Uruchom ponownie, aby włączyć

Przy następnym ponownym uruchomieniu połączenie Wi-Fi zostanie włączone po uruchomieniu usług sieciowych.

Dodawanie lub edycja sieci Wi-Fi

Jeśli chcesz dodać lub edytować sieć Wi-Fi, wprowadź niezbędne zmiany w pliku wpa_supplicant.conf.

/etc/wpa_supplicant/wpa_supplicant.conf

Następnie uruchom ponownie wpa_supplicant i usługi sieciowe.

service wpa_supplicant restart
service network restart
Tim S.
źródło
Dziękuję, ale w tej sytuacji nie wydaje się to możliwe. Proszę zobaczyć EDYCJA do mojego OP. Gdybym miał wypróbować twoje podejście, musisz wyjaśnić, które rpmpliki należy pobrać na inny komputer i przenieść ręcznie SCPz innego komputera na ten odłączony serwer. Zastanawiam się jednak, dlaczego nie możemy po prostu użyć narzędzi, które są fabrycznie zainstalowane w CentOS 7. Czy sugerujesz podejście CentOS 6, którego narzędzia zostały zastąpione innymi narzędziami w CentOS 7?
CodeMed
CentOS jest binarnie kompatybilny z RHEL (zbudowany z tego samego kodu źródłowego). Jest to system operacyjny na poziomie korporacyjnym zaprojektowany przede wszystkim dla systemów klasy serwerowej, więc nie oczekują, że ludzie będą go używać na laptopach i Wi-Fi. Dlatego dystrybucje takie jak Fedora są znacznie łatwiejsze - zawierają już wymagane typy pakietów. Jeśli CentOS 7 zawiera te pakiety, to dla mnie wiadomość (jeszcze go tu nie wdrożyliśmy), ale być może było dość zapotrzebowania na ludzi korzystających z niego z tych samych powodów, o których wspomniałeś.
Tim S.
1
Pełna odpowiedź zawierałaby listę plików, które muszę pobrać na inny komputer, a następnie ręcznie przenieść do tego devbox. Czy są to pliki RPM? Jeśli tak, to skąd je wziąć? Jakie są imiona?
CodeMed
Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
slm
Zaktualizowałem moją odpowiedź z instrukcjami konfiguracji i linkiem do pobrania wraz z oryginalnym adresem URL.
Tim S.
1

czasami trzeba zainstalować sterownik, aby go wykryć, ponieważ centos domyślnie instaluje tylko autoryzowane sterowniki open source. szukaj rpm lub zajrzyj na stronę producenta części dla sterownika Linux Centos

użytkownik222066
źródło
0

Oto moje doświadczenie z następujących powodów:

  1. Jeśli masz połączenie z siecią Wi-Fi po zainstalowaniu CentOS 7.

  2. Po przejściu CentOS 7 w tryb uśpienia LUB przypadkowym wyłączeniu z powodu braku prądu LUB ponownie uruchomiłeś i zalogowałeś się w CentOS 7

a jeśli twoje wifi nie działa.

Nie instaluj dodatkowego modułu jądra / nie instaluj żadnych nowych pakietów / nie rób żadnych poprawek.

Po prostu zamknij i uruchom ponownie w CentOS 7. Twoje wifi znów zacznie działać.

Zrozumiałem to po 6 godzinach poprawek i wypróbowałem wszystko

rammayur
źródło
0

Cześć, spędziłem wczoraj cały wieczór próbując zmusić WIFI do pracy po przeczytaniu dokumentu technicznego po dokumencie technicznym W końcu natknąłem się na dokument, w którym wspomniano o błędzie w cent os 7 z wtyczką NetworkManager-wifi domyślnie nie dołączoną ... Ostatnią rzeczą, którą zrobiłem zeszłej nocy, było wykonanie całkowicie czystej instalacji (było to już wcześniej, ale tak bardzo majstrowałem, że straciłem orientację). Więc dziś rano miałem nową instalację Cent OS 7 skonfigurowaną jako serwer WWW, Zainstalowałem NetworkManager-WIFI rpm z pendrive'a, zrestartowałem komputer i voila to samo co połączenie, które ustawiłem w instalacji. Połączyło się od razu.

Patrick Smit
źródło