2014-06-09 10 views
5

My Vagrant VM box jest bardzo powolny, gdy próbuję uruchomić moją aplikację Rails na nim, i domyślam się, że to ze względu na problem z folderem współdzielonym.Uzyskiwanie Rsync 3.0.9 do pracy na Vagrant VM box przez Cygwin na windows 7

Próbuję użyć rsync do obejścia problemu. Zainstalowałem Cygwin i niezbędne pakiety, wstaw C: \ cygwin64 \ bin; jako zmiennej środowiskowej PATH a następnie zmieniło moje Vagrantfile do config.vm.synced_folder, «/ włóczęga», typ „”: «rsync»

Kiedy biegnę włóczęgę się, otrzymuję komunikat o błędzie

$ vagrant up Bringing machine 'default' up with 'virtualbox' provider... "rsync" could not be found on your PATH. Make sure that rsync is properly installed on your system and available on the PATH.

Co jest nie tak? Dziękuję bardzo ... jeśli jest jakikolwiek inny sposób na uruchomienie Vagrant VM box płynnie i szybciej na Windows 7, bardzo chciałbym to usłyszeć.

Odpowiedz

5

Okazało się, że to banda ceglanych ścian trzeba obejść podczas instalowania rsync ustawienie go prawidłowo do Vagrant na Windows 7.

Przede wszystkim Błąd „rsync” nie może być znaleźć na Twojej PATH. Upewnij się, że rsync jest poprawnie zainstalowany w twoim systemie i dostępny na ścieżce PATH. było spowodowane faktem, że

1) zmiennej środowiskowej dla Cygwin został umieszczony w ostatniej kolejności w ścieżce, zmieniłem go na początku ścieżki

2) podczas instalowania Cygwin i rsync, ja zainstalował indywidualne "podpakiety" zamiast instalować wszystko, myśląc, że będzie w porządku. Okazuje się, że się myliłem. Zainstalowałem wszystko w pakiecie administracyjnym i pakiecie sieciowym (nie SRC, ale tylko na pojemnikach), a następnie zaczęło działać. Sugeruję ponowne skonfigurowanie Cygwin i naprawdę spróbować pobrać wszystko, jeśli widzisz ten błąd. (Znalazłem te rozwiązania za pośrednictwem tego posta na SO cygwin + rsync)

Teraz mógłbym pójść do CMD i wpisać rsync, i to pokazałoby się poprawnie. Ale wtedy, kiedy wpadłem vagrant up dał mi kolejny błąd mówiący

There was an error when attempting to rsync a synced folder. Please inspect the error message below for more info.

Host path: /c/Users/xxxxx Guest path: /vagrant Command: rsync --verbose --archive --delete -z --copy-links --chmod=ugo=rwX --no-perms --no-owner --no-group --rsync-path sudo rsync -e ssh -p 2222 -o StrictHostKeyCh /c/Users/xxxx/[email protected]:/vagrant Error: cygwin warning: MS-DOS style path detected: C:/Users/xxxxxxx Preferred POSIX equivalent is: /cygdrive/c/Users/xxxx CYGWIN environment variable option "nodosfilewarning" turns off this warning. Consult the user's guide for more details about POSIX paths: http://cygwin.com/cygwin-ug-net/using.html#using-pathnames Warning: Permanently added '[127.0.0.1]:2222' (ECDSA) to the list of known hosts. rsync: change_dir "/c/Users/xxxxxxx" failed: No such file or directory (2) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at /usr/src/ports/rsync/rsync-3.0.9-1/src/rsync-3.0.9/main.c(1052) [sender=3.0.9]

google rozwiązanie tego błędu i znalazłem to miejsce. https://github.com/mitchellh/vagrant/issues/3230

Then there's a bug with Vagrant and cwrsync that I mentioned in #3086. For now, just edit C:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.5.1\plugins\synced_folders\rsync\helper.rb and add hostpath = "/cygdrive" + hostpath to line 74. It's a terrible solution but quick and simple.

Montaż że helper.rb pliku i dodanie hostpath na linii 74 (po prostu się kilka pustych linii właśnie tam i wklejeniu go) i teraz działa idealnie !!!!

Rsync sprawia, że ​​folder współdzielony soooooo znacznie szybciej na Railsach !!!! Myślę, że warto go ustawić poprawnie. Spróbuj!!

0

Nie jest to jasne z twojej wiadomości, ale myślę, że zainstalowałeś rsync na swoim komputerze (host), podczas gdy musi on zostać zainstalowany na maszynie wirtualnej, którą przywołujesz (gościa).

+0

Wydaje się, że Rsync działa dobrze, gdy "włóczę się" do maszyny wirtualnej. To po prostu blokuje mi robienie "vagrant up" z Vagrantfile edytowanym, aby powiedzieć, że zsynchronizowany folder musi używać "type:" rsync "... T_T –

Powiązane problemy