Fix: Kan inte hitta en giltig baseurl för repo: base



Prova Vårt Instrument För Att Eliminera Problem

Om du är på någon av Linux-distributionerna som använder yum-pakethanteraren, kan det hända att du får ett felmeddelande som läser Kan inte hitta en giltig baseurl för repo: base strax efter installationen av operativsystemet. Detta är oftast ett fel associerat med Fedora, Red Hat och CentOS Linux-distributioner, men du kan också få det när du försöker uppdatera yum på kompatibla versioner av SUSE. Normalt får du bara felet när du försöker uppdatera, men lyckligtvis finns det en ganska enkel väg runt det.



Metod 1: Tvinga yum att hitta en basurl

Det här felmeddelandet indikerar att Yellowdog Updater, Modified (yum), oavsett anledning, inte kan komma åt basen som den använder för att hitta paketinformation. För att reproducera felmeddelandet, kör sudo yum uppdatering eller bara yum uppdatering om du är rotanvändaren. Om den uppdateras den här gången orsakades felet bara av en nätverkshicka och du behöver inte göra något annat.





Å andra sidan kanske du upptäcker att du har reproducerat felmeddelandet. Det första du måste kontrollera är att se till att du är ansluten till nätverket. Du vill vara säker på att du inte upplever ett internetavbrott, vilket är den vanligaste orsaken till detta fel. Om du är på internet och fortfarande inte kan hitta en giltig basurl, försök ping mirrorlist.centos.org och se vad som händer. Tryck på Ctrl + C för att avsluta pingprocessen och se vilka resultat du fick. Om du använder Red Hat eller Fedora, kanske du vill ersätta den spegellista-URL som felet rapporterade till dig istället för den CentOS-URL som vi använde.

Om du inte kan pinga servrarna kan du behöva vänta eftersom de kan uppleva ett tillfälligt avbrott. Annars, om du har nätverksproblem, prova sökvägen visas på bilden och växla ONBOOT = -raden till antingen ja eller nej. Du kanske vill prova båda. När du har ställt in den, kör sudo dhclient så länge du inte arbetar igenom ssh och försök sedan uppdatera yum igen. Om du fortfarande kämpar för att pakethanteraren ska uppdateras, försök sedan redigera filen igen.



Du hittar ett alternativ som heter NM_CONTROLLED, som du bör ställa in på nej. Om du gör detta, se till att ONBOOT = också är inställt på nej. När du ställer in alternativ till nej, se till att du bara skriver orden med gemener eftersom vissa versioner av CentOS och Fedora faktiskt kan ha någon form av skiftlägeskänslighet i detta avseende.

När du har redigerat filen, se till att du har en Ethernet-kabel ansluten till maskinens första nätverksgränssnitt och försök att köra ifdown eth0; om det är eth0 för att återställa nätverket. Användare av CentOS 7, som i vårt exempel, kanske inte kan hitta den här filen eftersom saker ändrades. Om så är fallet kan du försöka leta efter vad som visas i bilden nedan eller något annat som liknar det mönstret. CentOS utvecklare bestämde sig för att göra några ändringar förra gången de uppdaterade den minimala installationskoden, och som ändrade namnet på några av nätverksgränssnitten som ett resultat.

När allt ser bra ut, försök sedan uppdatera yum igen och se om det fungerar.

Metod 2: Avkommentera basurl

I några få sällsynta situationer kan detta fel inte orsakas av ett nätverksproblem. Om du är säker på att du är ansluten och fortfarande inte kan få någonting att fungera öppnar du filen visas på bilden nedan som root-superanvändare med din favorittextredigerare. Återigen, om du inte använder CentOS som vi var, behöver du en enkel namnändring för att hitta rätt fil.

Du bör se en rad som lyder:

baseurl = http: //mirror.centos.org/centos/$releasever/os/$basearch/

Se till att detta inte börjar med en kommentarflagga som # -symbolen. Om det gör det tar du bort det och sparar sedan filen. Försök uppdatera igen. Detta borde ha tvingat systemet att uppdatera ordentligt den här gången, vilket det inte kan göra om det inte hittar den här raden eftersom den var dold av en kommentarflagga.

3 minuter läst