Właśnie zainstalowałem moją pierwszą instancję Ubuntu Server (12.04) i od razu napotkałem następujące problemy:
- Uruchomiony
apt-get install
lubupdate
nie działa (patrz poniżej) - Uruchomienie
ifconfig
powoduje powstanie osobliwych adresów IP zaczynających się od,10.x.x.x
a mój router w ogóle nie widzi serwera na stronie „Podłączone urządzenia” (to Netgear klasy konsumenckiej)
Po uruchomieniu apt-get
otrzymuję ponad 50 następujących błędów:
Failed to fetch <some-http-url>. Temporary failure resolving <blah>.ubuntu.com
Przeczytałem o tym błędzie dla 12.04 i znalazłem podobne posty na tym forum i na temat błędu serwera, które zalecały przejście do /etc/resolv.conf
i dodanie wpisu:
nameserver 8.8.8.8
Ku mojemu zdziwieniu odkryłem, że /etc/resolv.conf
jest to dowiązanie symboliczne wskazujące na inne miejsce i musiałem je najpierw usunąć, a następnie utworzyć nowy z wpisem wskazanym powyżej.
Zrestartowałem serwer i spróbowałem uruchomić apt-get
ponownie, te same wyniki.
Jak rozpocząć diagnozowanie problemu (jestem stosunkowo nowym użytkownikiem Linux / Ubuntu)?
Dodatkowe informacje, które mogą pomóc:
- W rzeczywistości jest to maszyna wirtualna działająca jako system gościa VirtualBox
- Fizyczny host, na którym działa ta maszyna wirtualna, to mój laptop, który ma połączenie bezprzewodowe; Zastanawiam się, czy (jakoś) laptop łączy się z siecią bezprzewodowo, ale może VBox VM i / lub system operacyjny serwera Ubuntu nie są skonfigurowane do łączności bezprzewodowej, więc nic nie „przechodzi”?
Z góry dziękuję za wszelkie wskazówki!
Edytuj :
Oto migawka ustawień sieciowych mojej maszyny wirtualnej (tylko Karta 1 zawiera informacje wypełniające jej pola, więc zakładam, że moja maszyna wirtualna ma tylko 1 kartę):
Oto dane wyjściowe, gdy uruchamiam ifconfig
z terminala:
A oto dane wyjściowe, gdy uruchamiam route
z terminala:
Bieganie ping google.com
:
źródło
dig <blah>.archive.ubuntu.com
, dig @ 8.8.8.8 <blah> .archive.ubuntu.com` idig @8.8.8.8 archive.ubuntu.com
. Jaka jest zawartość <blah>? Czy możesz pingować <blah> .archive.ubuntu.com z hosta twojej maszyny wirtualnej?HWAddr
Jest chyba OK, aby pokazać, ponieważ każda VM dostaje swój unikalny adres MAC.fe80::..
adres jest link-local IPv6 której nie mogę się z Tobą skontaktować w sprawie. A od w ping jest serwerem, który pingujesz, a nie bramą, więc niczego nie zdradza.Odpowiedzi:
Krótko mówiąc: problem dotyczy sieci.
Sposób, w jaki widzę scenariusz, wygląda następująco:
Teraz, aby poprawnie zobaczyć, gdzie jest problem, w tym przypadku musimy najpierw sprawdzić z sieci zewnętrznych do sieci wewnętrznych.
Upewnij się, że router ma dostęp do Internetu. Możesz użyć tego samego hosta lub innego podłączonego do niego urządzenia, aby to sprawdzić.
Upewnij się, że host ma dostęp do Internetu przez router lub inne źródło. Aby sprawdzić, wystarczy wysłać do ping google.com na przykład tak:
ping google.com
.Jeśli punkty 1 i 2 są dobre (Twój router działa świetnie i ma dostęp do Internetu, a Twój host ma dostęp do Internetu), to kontynuujemy z Gośćmi i Virtualbox. Warto przeczytać, w jaki sposób obsługiwane jest wsparcie bezprzewodowe w VirtualBox, czytając kartę Wi-Fi na Ubuntu Virtualbox
Najpierw musimy poznać następujące informacje:
W środowisku virtualbox nie ma połączenia bezprzewodowego. Wszystkie połączenia „wirtualne” odnoszą się do połączeń kablowych / przewodowych. Kiedy więc włączysz kartę sieciową w swoim wirtualnym gościu, tworzysz wirtualne połączenie przewodowe , a nie wirtualne połączenie bezprzewodowe .
Połączenie wirtualne z hosta do gościa jest niezależne od typu połączenia, z którym host jest połączony (fizycznie podłączony). Jeśli host jest podłączony za pomocą połączenia przewodowego lub bezprzewodowego, nie ma to wpływu ani nie wpływa na połączenie wirtualne utworzone z hosta na gościa, ponieważ połączenia przewodowe i bezprzewodowe są używane w taki sam sposób w gościu. Coś podobnego do następującego obrazu:
Jeśli gospodarz nie ma dostępu do Internetu, gość go nie będzie miał. To samo dotyczy tego, że jeśli twój host ma dostęp do Internetu, a twoje połączenie z hosta do gościa pozwala na dzielenie się internetem, to najprawdopodobniej gość będzie miał również internet (domyślne zachowanie w Virtualbox).
Będę używać Virtualbox 4.1.20, który wygląda inaczej niż ten, którego używasz (Może być taki sam, nie wiem). Dodam obraz sieci, aby pomóc i pokazać różnice:
Będę używać Ubuntu 12.04 jako hosta i gościa (działa tak samo w 12.10 lub 13.04). W przypadkach, gdy Windows jest hostem, musisz upewnić się, że zapora sieciowa nie blokuje określonego portu, z którego będzie korzystał gość.
Zakładam, że host nie korzysta z serwera proxy, tylko podłączony bezpośrednio do routera za pośrednictwem połączenia bezprzewodowego / przewodowego.
Dane wyjściowe gościa są następujące w przypadku ifconfig i route:
Teraz do punktów, które chcesz rozwiązać:
Pozwól mi najpierw wspomnieć, że punkt 3 będzie niemożliwy, chyba że domysł Virtualbox obsługuje przekierowanie portów. Router będzie widział tylko przelewy wykonane od gościa, tak jakby były to przelewy wykonane z faktycznego hosta. Zatem bez przekazywania (który jest nieco obsługiwany w najnowszej wersji) router nigdy nie zobaczy maszyny wirtualnej, tylko hosta.
Istnieją oczywiście sposoby obejścia tego problemu, takie jak nakazanie gospodarzowi przekazywania rzeczy gościowi za pośrednictwem silnika virtualbox. Lub konfigurowanie (myślę, że łatwiej) gościa do przekierowania portów. Na przykład to:
Mając to na uwadze, wykonujemy następujące czynności w Gość:
Sprawdź, czy gość ma dostęp do Internetu przy użyciu wspólnego
ping google.com
podejścia.Jeśli ping działa, to wiemy, że istnieje połączenie internetowe. Problemem może być rozwiązanie witryny docelowej.
Spróbuj wykonać następujące czynności:
/etc/init.d/network restart
i / lubdhclient
Sprawdź, czy
/etc/network/interface
jest poprawne. Mój przykład to:Zmień typ adaptera w Opcjach sieci w oknie konfiguracji Virtualbox.
Sprawdź, czy klient Ubuntu Desktop lub inny system operacyjny działa poprawnie. (W tej chwili mam tylko obraz ISO Desktop 12.10 i 12.04).
źródło
ping google.com
na maszynie wirtualnej gościa wydaje się działać normalnie, więc jakie inne testy mogę wykonać, aby potwierdzić, że faktycznie uzyskuję dostęp do Internetu? (2) Mam tylko/etc/init.d/networking
(nienetwork
) usługę, a kiedy próbuję ją ponownie uruchomić, pojawia się ostrzeżenie, że jest przestarzała. (3) Mójetc/network/interface
plik wygląda dokładnie tak jak twój. (4) Jaki typ adaptera powinienem wypróbować i jakie kolejne ustawienia? (5) Do ustalenia ...ping
wydawał się zaczynać i zachowywać się, jakby działał dobrze. Zaktualizuję moje oryginalne pytanie z zrzutem ekranu wyjścia, daj mi znać, czy jest to „normalne” wyjście ping i wskazuje na udane połączenie inet.Jest to zdecydowanie problem z siecią. Aby to potwierdzić, spróbuj najpierw pingować adresy IP w sieci lokalnej:
(który prawdopodobnie jest adresem IP twojego routera)
a następnie pingowanie adresów IP w „świecie zewnętrznym”
Ponadto nawet jeśli używasz maszyny wirtualnej na laptopie, który łączy się przez Wi-Fi, nie musisz konfigurować Wi-Fi na maszynie gościa - VirtualBox emuluje „przewodową” kartę sieciową, więc system operacyjny gościa myśli, że działa na maszynie który jest podłączony do sieci LAN za pomocą kabla.
Konfigurowanie sieci w VirtualBox to szeroki temat (chociaż typowe konfiguracje zwykle działają od razu po wyjęciu z pudełka), musisz upewnić się, że twoja maszyna wirtualna ma kartę sieciową skonfigurowaną we właściwościach maszyny wirtualnej itp.
Więcej informacji można znaleźć na stronie http://www.virtualbox.org/manual/ch06.html .
Domyślna konfiguracja VirtualBox (NAT) tworzy „prywatną” sieć między hostem a maszynami gości, przy czym maszyna hosta przekazuje cały ruch przychodzący z maszyny gościa na zewnątrz i wysyła odpowiedzi z powrotem do gościa (podobnie jak router łączy się z laptopem Internet). Gość nie ma indywidualnego adresu IP w sieci LAN i nie można uzyskać do niego dostępu spoza laptopa, ale można uzyskać dostęp do Internetu od gościa, ponieważ pakiety są tłumaczone na sieć LAN przez komputer hosta, a następnie na router przez Internet. To wyjaśnia, dlaczego nie widzisz osobnego urządzenia w ustawieniach routera
źródło
apt-get
działa? Jeśli maszyna wirtualna może odbierać przychodzące połączenie sieciowe,apt-get
nie powinno być problemu z pobieraniem treści ze zdalnych adresów URL ... tak? Dzięki jeszcze raz!ifconfig
iroute
poleceń i tam też po wyniki.Oto, co zauważam z twojego pytania:
Powiedziałbym, że jest problem z usługą nazw domen w rozwiązaniu tego adresu, nie na twoim komputerze. Nie ma nic specjalnego w wyszukiwaniu domen w przeciwieństwie do pingowania. Twoja sieć musi działać, ale jest skonfigurowana.
Sugeruję zmianę źródeł oprogramowania, aby używały innego archiwum Ubuntu, być może po prostu archive.ubuntu.com.
źródło
Oto, co zadziałało dla mnie:
próba skonfigurowania połączenia bezprzewodowego nie działała,
dodając szczegóły właściwości sieci na maszynie Wirtualnej Ubuntu i zmiana w systemie Windows tak samo nie działała
chociaż host był bezprzewodowy, gość (maszyna wirtualna Ubuntu) działa tak, jakby był połączony wirtualnym kablem, więc następujące rozwiązanie rozwiązało problem:
okno maszyny wirtualnej Ubuntu> Urządzenia> Sieć> Ustawienia sieciowe ...> zaznacz pole wyboru Kabel podłączony
źródło
/etc/resolv.conf
jest dowiązaniem symbolicznym i będzie dowiązaniem symbolicznym po jego usunięciu, ponieważ resolvconf zawsze go resetuje.Jeśli chcesz korzystać z Google DNS, dodaj następujące wiersze do
/etc/resolvconf/resolv.conf.d/head
:Jeśli chcesz, aby router wykrył twoją maszynę wirtualną, powinieneś użyć „Bridged adapter”. W kartach sieciowych zmień pole z napisem „NAT” na „most zmostkowany”. Jeśli ustawisz go jako most zmostkowany, maszyna wirtualna otrzyma adres IP itp. Z serwera DHCP. Jeśli router nie ma takiego lub nie masz go w swojej sieci, Virtualmachine nie może automatycznie pobrać ustawień i musisz określić je ręcznie.
Nie jestem pewien, czy to
<blah>.ubuntu.com
nie rozwiązuje problemu, ale proponuję spróbować innego lustra.Używam
mirrors.ubuntu.com/mirrors.txt
, który zawsze zawiera najbliższe możliwe lustra. Aby go użyć, dodaj te linie do/etc/apt/sources.list
:Jeśli chcesz mieć również backporty, dodaj również następujące linie:
Dla mnie http://mirrors.ubuntu.com/mirrors.txt zawiera:
ponieważ jestem w Finlandii.
źródło
Ten link zawiera samouczek na temat łączenia się z sieciami bezprzewodowymi za pomocą wiersza polecenia: http://www.linuxjournal.com/content/wi-fi-command-line .
Możesz jednak przywrócić
resolv.conf
plik.źródło
resolv.conf
? Dzięki (+1)!Dobrze. Małe pytanie! Czy możesz korzystać z Internetu w przeglądarce? Jeśli tak, spróbuj: Spróbuj zmienić serwer, wybierając menedżera aktualizacji, definicje, pobieranie z, a następnie wybierz serwer bardziej blisko Ciebie. a następnie spróbuj ponownie sprawdzić swoje aktualizacje.
Myślę, że to błąd. Spróbuj mi powiedzieć, czy to działa.
źródło
Pracuję również na Ubuntu Desktop i serwerze na VirtualBox. I miałem taki sam problem jak ty. Moje obejście nie polegało na skonfigurowaniu karty sieciowej w VirtaulBox jako NAT, ale jako Bridged Adapter.
Mam nadzieję, że to pomoże !;)
PS: z linku Serghey opublikowanego (instrukcja VirtualBox):
„Mostowanie sieciowe Jest to przeznaczone do bardziej zaawansowanych potrzeb sieciowych, takich jak symulacje sieciowe i uruchamianie serwerów u gościa. Po włączeniu VirtualBox łączy się z jedną z zainstalowanych kart sieciowych i bezpośrednio wymienia pakiety sieciowe, omijając stos sieciowy hosta.”
źródło
Ten problem jest zasadniczo spowodowany przydzieleniem tych samych adresów IP zarówno do adaptera WiFi hosta (przez serwer DHCP routera Wi-Fi), jak i interfejsu gościa (przez serwer DHCP VirtualBox w sieci Nat).
Z dokumentacji VirtualBox na temat zintegrowanego serwera DHCP Dostrajanie silnika NAT VirtualBox :
Patrząc na adres IP karty WiFi twojego hosta, przekonasz się, że adres przypisany do niego również pochodzi z
10.0.2.0/24
zasięgu sieci.To jest powód tego problemu, ponieważ teraz sterownik Nat dla VirtualBox jest zdezorientowany faktem, że adresy hosta i gościa pochodzą z tej samej podsieci.
Aby to naprawić, możesz zmienić podsieć obsługiwaną przez serwer DHCP VirtualBox za pomocą polecenia VBoxManage (gdy maszyna wirtualna jest wyłączona):
I dobrze jest iść (ponieważ 198.162.0.0 prawie nigdy nie jest używany na serwerach DHCP w urządzeniach sieciowych SOHO).
źródło
Musisz zainstalować „VirtualBox Oracle VM VirtualBox Extension Pack”.
Najpierw uruchom
VBoxManage --version
na terminalu Ubuntu (I'm on Mint). Następnie pobierz pakiet rozszerzeń, który jest zgodny z wersją VBox, ze strony https://www.virtualbox.org/wiki/Downloads .W VBox kliknij Ctrl+ G(„Preferencje”) i przewiń w dół do karty „Rozszerzenie”. Kliknij „Dodaj nowy pakiet”, następnie dodaj pobrany plik i pozwól mu zainstalować.
Spróbuj!
źródło