Po pięciu nieudanych instalacjach Arch Linux, mam dwie poprawnie zainstalowane. Za pierwszym razem sieć działała dobrze , a nawet instalowałem Arch Linux przez SSH.
Po uruchomieniu z zainstalowanego systemu zamiast z Live CD, nie można połączyć się z siecią, pojawia się następujący komunikat, gdy próbuję cokolwiek pingować , nawet mój router:
connect: Sieć jest nieosiągalna
I ” Próbowałem ponownie zainstalować Arch, ponieważ nic w Internecie nie rozwiązało mojego problemu. Po instalacji mam ten sam problem.
Wygląda na to, że nie można uruchomić eth0, ponieważ upłynął limit czasu.
Komentarze
Odpowiedź
Problem, z którym się spotkałem, polegał na tym, że nie było eth0
(z tego, co rozumiem). Uruchom polecenie ip link
, powinno to wypisać twoje interfejsy. Nie miałem interfejsu eth0
. Zamiast tego miałem enp1s8
.
Ponieważ używałem statycznego, skopiowałem przykładowy profil z cd /etc/netctl
, a następnie cp examples/ethernet-static my-network
. Następnie zredagowałem my-network
za pomocą nano my-network
i zmieniłem interfejs z eth0
na en1s8
(lub jakikolwiek inny adapter znajduje się w ip link
). Wreszcie, włączyłem go, aby używać tego profilu podczas uruchamiania z netctl enable my-network
.
Włączenie profilu zapewni, że uruchomi się on podczas rozruchu, ale nie ma potrzeby ponownego uruchamiania system, po prostu uruchom netctl start my-network
, aby natychmiast go zainicjować.
Udało mi się uzyskać pomoc na oficjalnych forach Arch Linux, możesz wyświetlić mój temat tam .
Odpowiedź
Sieć niedostępna oznacza, że nie masz trasa do sieci. Jeśli nie możesz nawet wysłać polecenia ping do routera lokalnego, oznacza to, że nie masz adresu IP lub interfejs sieciowy jest wyłączony.
netctl
to standardowe narzędzie do zarządzania interfejsami sieciowymi w Arch. Jeśli tego (lub czegoś innego) nie ustawisz, nie będziesz mieć żadnej sieci . Nawet DHCP.
Komentarze
- Skopiowałem przykładowy plik z przykłady / ethernet-static do ” moja-sieć , zmodyfikował ten plik, a następnie włączył go podczas uruchamiania z ” netctl włącz moją-siecią „. Nie ma też konfliktów adresów IP w sieci. Powinien być ” Skonfiguruj ”
- Aby dowiedzieć się, czy możesz połączyć się z bramą domyślną (często jest to router), wpisz
ip route
. Jeśli okaże się, że nie masz bramy domyślnej, dodaj ją albo dla serwera DHCP, albo zip route add default via xxx.xxx.x.xxx
. Aby ustawić domyślną bramę jako stałą, dodaj adres IP do/etc/network/interfaces
.
Odpowiedź
Archlinux mówi, spróbuj dhcpcd na wypadek, gdyby twój instalator nie mógł połączyć się automatycznie. To zadziałało na miejscu PO instalacji. Po prostu wpisz” dhcpcd „jako polecenie, poczekaj kilka sekund, a następnie” ip route ” lub „ping 8.8.8.8”, aby sprawdzić, czy to działa. Użyłem nawet „watch ip address”, aby zobaczyć, jak szybko wyskakują te adresy inet i inet6.
Zamiast używać dhcpcd, mogę też połączyć się zero z:
modprobe e1000e ip link set dev eth0 up ip address add 192.168.0.16/24 dev eth0 ip route add 192.168.0.0/24 dev eth0 ip route add default via 192.168.0.1
e1000e to „sterownik sieciowy”, mówi modinfo. Po załadowaniu tego modułu otrzymuję łącze eth0 (nie, nie szukaj w / dev). Polecenia „ip” aktywują łącze, wybierają adres i określają lokalną (podsieć), a następnie bramę domyślną. Testowanie tego zajęło mi trochę czasu (pomoc dotycząca linków IP, pomoc dotycząca adresów IP, pomoc dotycząca tras IP …).
Jest to więc pouczające, ale „dhcpcd” jest szybsze do pisania i prawdopodobnie bardziej niezawodne. Możesz to łatwo zatrzymać za pomocą „dhcpcd -x”.
Z działającym pingiem i listą serwerów lustrzanych w /etc/pacman.d/ masz wszystko, czego potrzebujesz do pacmana lub pacstrapa.
I tak, widziałem komunikat jądra zmieniający nazwę eth0 na enoxxx, więc musisz najpierw sprawdzić za pomocą „ip link”, jakie interfejsy są już skonfigurowane przez systemd. Dzieje się to tutaj:
[ 3.052354] e1000e 0000:00:1f.6 eth0: (PCI Express:2.5GT/s:Width x1) 94:c6:91:a5:39:b8 [ 3.052360] e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection [ 3.052445] e1000e 0000:00:1f.6 eth0: MAC: 13, PHY: 12, PBA No: FFFFFF-0FF [ 3.055917] e1000e 0000:00:1f.6 eno1: renamed from eth0
.16 w moim adresie to dowolna (bezpłatna) liczba, a 192.168.0.1 zawsze powinno być bramą. Może miałem szczęście, ale to dobra wiadomość, że możesz włamać się pod systemd i inet6. Jednak spróbuję netctl.
A teraz załadowałem systemd i uruchomiłem dhcpcd. Otrzymałem adres .15 na „eno1” i trzy adresy inet6, ale poza tym wynik jest taki sam jak przy powyższym „ip” -hack.
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 94:c6:91:a5:39:b8 brd ff:ff:ff:ff:ff:ff inet 192.168.0.15/24 brd 192.168.0.255 scope global noprefixroute eno1 valid_lft forever preferred_lft forever inet6 2a05:41c0:12:bf00::2/128 scope global dynamic noprefixroute valid_lft 2559430sec preferred_lft 572230sec inet6 2a05:41c0:12:bf00:f51e:97c1:de6f:6f49/64 scope global dynamic mngtmpaddr noprefixroute valid_lft 2591994sec preferred_lft 604794sec inet6 fe80::47cf:a2e4:af0b:b7cd/64 scope link valid_lft forever preferred_lft forever default via 192.168.0.1 dev eno1 proto dhcp src 192.168.0.15 metric 203 192.168.0.0/24 dev eno1 proto dhcp scope link src 192.168.0.15 metric 203
Odpowiedź
Konfiguracja sieci ArchLinux jest dobrze udokumentowana na wiki ArchLinux w https://wiki.archlinux.org/index.php/Netctl
Jedno ważne wyjaśnienie odpowiedzi z największą liczbą głosów – tam NIE ma potrzeby ponownego uruchamiania. Jeśli obecny jest tylko interfejs sieciowy, a w pliku profilu w / etc / netcl użyto prawidłowej nazwy i konfiguracji interfejsu (niech przykładowa kopia nosi nazwę mynet1), to
netctl start mynet1
uruchomi profil sieciowy mynet1, a trasa sieciowa będzie działać.
Jednak
netclt enable mynet1
umożliwi uruchomienie usługi systemowej przez systemd menedżer usług przy każdym uruchomieniu, tj. utworzy plik jednostki w /etc/systemd/system/netc@[mynetprofilename].service ze szczegółami jednostki (powiązanie urządzenia i zależność).
Zauważ również, że jeśli profil sieciowy został zmodyfikowany, musiałby mieć możliwość ponownego włączenia netctl „d.
dhcpcd eth0
?ifconfig eth0 up
już gotowe? Czy Linux widzi twoją kartę sieciową (moduły są załadowane)? Przede wszystkimsystemctl stop netctl-eth0...
enp1s0
(lub co do cholery jest na twoim zdjęciu :)).