Używam maszyny Wirtualnej Ubuntu 12.04 (hashicorp / exact32) za pośrednictwem Vagrant / Virtualbox. Wydaje się, że ma wyjątkowo małą prędkość pobierania w porównaniu do mojego systemu hosta. Oto, co otrzymuję z systemem hosta (OSX) za pomocą speedtest-cli:
Testing download speed........................................
Download: 845.62 Mbits/s
Testing upload speed..................................................
Upload: 296.03 Mbits/s
I to właśnie otrzymuję w systemie gościa (Ubuntu 12.04):
Testing download speed........................................
Download: 12.41 Mbits/s
Testing upload speed..................................................
Upload: 247.64 Mbits/s
Szybkość pobierania hosta jest więc 70 razy większa! Zwykła odpowiedź na te problemy jest następująca:
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
Ale już skonfigurowałem go do mojego pliku Vagrantfile.
Przetestowałem to również na zwykłym Virtualbox i 12.04 (bez Vagrant). Ten sam problem występuje, gdy korzystam z interfejsu NAT. Jednak przejście do trybu zmostkowanego powoduje, że prędkość pobierania jest 20 razy większa. Jest to paskudne, ponieważ Vagrant polega na interfejsie NAT, aby zawsze być eth0.
Używam OSX Mavericks jako systemu hosta. Wersja Virtualbox to 4.3.18.
Jakieś pomysły?
źródło
Am79C973
również, jeśli masz problemyvirtio
.Znalazłem dla mnie prostsze rozwiązanie
Właśnie przełączyłem się na adapter PCNet-Fast III. A prędkość stała się dla mnie wystarczająca (40 Mb / s)
źródło
v.customize ["modifyvm", :id, "--nictype1", "Am79C973"]
.apt-get
Podczas próby pobrania miałem problem z zawieszeniem się. W końcu to zadziała, ale zmiana karty sieciowej jak wyżej rozwiązuje problem.Odpowiedź @ auramo jest przydatna, ale pamiętaj, że określa ona konkretną kartę sieciową: # 1. Na przykład w moim systemie mam wiele interfejsów sieciowych. Musiałem sprecyzować
--nictype4
.Również inni zgłosili korzyści w innym miejscu
natdnshostresolver#
inatdnsproxy#
gdzie#
jest numer identyfikujący twoją kartę sieciową. W moim wygląda to tak:źródło