Od dłuższego czasu korzystam z VirtualBox na pulpicie. Po niedawnym zakupie notebooka chcę mieć możliwość zabrania ze sobą maszyny wirtualnej Ubuntu, a zmiany, które wprowadzę w notebooku, zostaną przeniesione na pulpit i odwrotnie, kiedy przyjadę / wyjdę z domu. System operacyjny hosta to Windows 7 na obu komputerach, na którym działa VirtualBox 4.
Moją pierwszą myślą było zsynchronizowanie samych plików dysków wirtualnych. Moim narzędziem z wyboru byłaby rsync
jego wersja Cygwin, wykorzystująca --inplace
opcję ograniczenia zapisu w jak największym stopniu. Byłoby to jednak niewykonalne: powstrzymałoby mnie to od osobnej pracy na maszynach wirtualnych, ponieważ rsync
nie miałbym możliwości wykrycia konfliktów i ich prawidłowego scalenia bez znajomości systemów plików znajdujących się w kontenerach.
Następną opcją byłoby rsync
połączenie uruchomionych maszyn. Czy to zadziałałoby bez zbędnego zarządzania pakietami? Czy musiałbym robić coś ręcznie oprócz aktualizacji, takich jak nowe jądro lub sterowniki? Czy jest jakieś inne rozwiązanie, które mogłoby działać lepiej?
źródło
Odpowiedzi:
Korzystanie
rsync
z operacji dwukierunkowych jest trudne; Proponuję spojrzeć na tounison
jako alternatywę. Będzie działać w obie strony i powie ci, co zamierza zrobić, zanim to zrobi, a także wykryje pliki zmanipulowane jednocześnie po obu stronach.Uruchomienie synchronizacji poza maszyną wirtualną spowoduje problemy, które opisujesz. Wyniki podczas uruchamiania w maszynie wirtualnej będą w dużej mierze zależeć od tego , co synchronizujesz.
/etc
podobnie jak dom, powinna synchronizować większość danych konfiguracyjnych i nadal mieć niewielki wpływ na to, co robi menedżer pakietów. Ale jeśli zainstalujesz jakieś oprogramowanie na jednej maszynie wirtualnej, będziesz musiał ręcznie zainstalować je również na drugiej maszynie i prawdopodobnie powinieneś zsynchronizować dopiero po wykonaniu tej czynności, na wypadek gdyby aktualizacja zmieniła jakiś plik konfiguracyjny.źródło
Zastanów się, czy w ogóle nie próbować „synchronizować” maszyny wirtualnej.
Pomyśl o tym: nie synchronizujesz komputera i notebooka w ten sposób. Traktujesz je jako osobne maszyny i korzystasz z usług takich jak Dropbox, Google Apps itp., A nawet z pamięci USB do pracy na swoich plikach. Podobnie traktuj dwie maszyny wirtualne Ubuntu jako osobne komputery i korzystaj z usług takich jak Ubuntu One i wyżej, aby synchronizować ważne pliki.
Jeśli martwisz się o synchronizację zainstalowanego oprogramowania, możesz użyć
aby uzyskać listę oprogramowania specjalnie zainstalowanego na jednym komputerze, a następnie zainstalować to samo oprogramowanie na drugim.
źródło