Efter fem mislykkede Arch Linux-installationer har jeg to, der er installeret korrekt. Første gang fungerede netværket fint , og jeg installerede endda Arch Linux over SSH.
Efter opstart fra det installerede system i stedet for live-cden, kan det ikke oprette forbindelse til netværket, jeg får følgende besked, når jeg prøver at pinge noget , selv min router:
connect: Netværket kan ikke nås
I ” Jeg har prøvet at installere Arch igen, fordi intet på Internettet syntes at løse mit problem. Efter installationen får jeg det samme problem.
Det ser ud til, at det ikke lykkes at starte eth0, fordi det går ud.
Kommentarer
Svar
Problemet jeg stod overfor var, at der ikke var nogen eth0
(ud fra hvad jeg kan forstå.) Kør kommandoen ip link
, dette skal output dine grænseflader. Jeg havde ikke eth0
grænsefladen. I stedet havde jeg enp1s8
.
Fordi jeg brugte statisk, kopierede jeg eksempelprofilen med cd /etc/netctl
og derefter cp examples/ethernet-static my-network
. Derefter redigerede jeg my-network
med nano my-network
og ændrede grænsefladen fra eth0
til en1s8
(eller hvad din adapter er i ip link
). Endelig aktiverede jeg den til at bruge den profil ved opstart med netctl enable my-network
.
Aktivering af profilen vil sikre, at den starter ved opstart, men der er ikke behov for at genstarte systemet, skal du bare køre netctl start my-network
for at initialisere det med det samme.
Jeg var i stand til at få hjælp på de officielle Arch Linux-fora, du kan se mit emne der .
Svar
Netværket, der ikke kan nås, betyder, at du ikke har en rute til netværket. Hvis du ikke engang kan pinge den lokale router, har du enten ikke en IP-adresse, ellers er netværksgrænsefladen nede.
netctl
er standardværktøjet til styring af netværksgrænseflader i Arch. Hvis du ikke har indstillet det (eller noget andet), har du ikke noget netværk Ikke engang DHCP.
Kommentarer
- Jeg har kopieret en eksempelfil fra eksempler / ethernet-statisk til ” mit netværk , ændrede den fil og aktiverede den derefter ved opstart med ” netctl aktiverer mit netværk “. Der er heller ingen IP-konflikter på netværket. Det skal være ” Opsæt ”
- For at finde ud af, om du kan nå din standard gateway (dette er ofte din router), skal du indtaste
ip route
. Hvis det viser sig, at du ikke har nogen standardgateway, skal du tilføje en enten pr. DHCP eller medip route add default via xxx.xxx.x.xxx
. For at gøre standardgatewayen permanent skal du tilføje IP til/etc/network/interfaces
.
Svar
Archlinux siger, prøv dhcpcd, hvis dit installationsprogram ikke kan oprette forbindelse automatisk. Dette fungerede på stedet for mig EFTER installationen. Skriv bare” dhcpcd “som en kommando, vent et par sekunder og derefter” ip rute ” eller “ping 8.8.8.8” for at kontrollere, om det fungerer. Jeg brugte endda “watch ip address” for at se, hvor hurtigt disse inet- og inet6-adresser dukker op.
I stedet for at bruge dhcpcd kan jeg også oprette forbindelse fra nul med:
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 er en “Netværksdriver”, siger modinfo. Ved at indlæse dette modul får jeg et eth0-link (nej, ikke se efter det i / dev). “Ip” -kommandoerne aktiverer linket, vælg en adresse og definer et lokalt (subnet) og derefter en standard gateway. Det tog mig lang tid at teste dette (ip link hjælp, ip adresse hjælp, ip rute hjælp …).
Så dette er lærerigt, men “dhcpcd” er hurtigere at skrive og sandsynligvis mere robust. Og du kan stoppe det rent med “dhcpcd -x”.
Med et fungerende ping og spejllisten i /etc/pacman.d/ har du alt hvad du behøver til pacman eller pacstrap.
Og ja, jeg så en kernemeddelelse, der omdøber eth0 til enoxxx, så du skal først kontrollere med “ip link”, hvilke grænseflader der allerede er konfigureret af systemd. Det sker her:
[ 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 i min adresse er bare et hvilket som helst (gratis) nummer, og 192.168.0.1 skal altid være gatewayen. Måske var jeg heldig, men det er en god nyhed, at du kan hacke rundt under systemd og inet6. Jeg vil dog prøve netctl.
Og lige nu har jeg startet med systemd og har dhcpcd startet. Jeg fik adresse .15 på “eno1” og tre inet6-adresser, men bortset fra det er resultatet helt det samme som med ovenstående “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
Svar
Netværksopsætning til ArchLinux er veldokumenteret i ArchLinux wiki ved https://wiki.archlinux.org/index.php/Netctl
En vigtig afklaring af svaret med det højeste antal stemmer – der er INGEN grund til at genstarte. Hvis kun netværksgrænsefladen er til stede, og det korrekte grænsefladenavn og konfiguration bruges i profilfilen i / etc / netcl (lad eksemplet kopiere navnet mynet1), så
netctl start mynet1
starter netværksprofilen mynet1, og netværksruten skal fungere.
Dog
netclt enable mynet1
vil muliggøre, at systemtjenesten startes af systemd servicemanager med hver boot, dvs. den opretter en enhedsfil i /etc/systemd/system/netc@[mynetprofilename ].service med enhedsoplysningerne (enhedsbinding og afhængighed).
Bemærk også, at hvis netværksprofil er ændret, det skal netctl genaktiveres “d.
dhcpcd eth0
?ifconfig eth0 up
allerede gjort? Ser Linux dit netværkskort (modulet er indlæst)? Før noget skal dusystemctl stop netctl-eth0...
enp1s0
(eller hvad fanden er der på dit foto :)).