Czy można „zwirtualizować” istniejący komputer?

30

Używam Ubuntu Desktop 12.04 i zastanawiałem się, czy można w jakiś sposób wziąć cały system plików (wszystko pod nim /) i utworzyć z niego ISO. Być może użyje tego ISO jako systemu plików maszyny wirtualnej VBox (oczywiście musiałby to być Ubuntu i prawdopodobnie 12.04).

Zasadniczo spędziłem dużo czasu konfigurując moją maszynę programistyczną, ale muszę móc na niej pracować z dowolnego komputera, na którym się znajduję. Maszyny wirtualne wydają się idealnym rozwiązaniem. Z góry dziękuję!

pnongrata
źródło
7
Inną możliwością (tą, którą polecają moi profesjonalni znajomi) jest uporządkowanie wszystkich plików konfiguracyjnych w taki sposób, aby można było pobrać repozytorium git, uruchomić .sh i mieć praktycznie każdą maszynę debową gotową do pracy.
Mikey
Powiązane: superuser.com/questions/438328/…
Ślimak mechaniczny 1'12

Odpowiedzi:

12

Prawdopodobnie łatwiej byłoby utworzyć nową maszynę wirtualną, zainstalować na niej Ubuntu, a następnie wykonać kopię zapasową okna dewelopera i przywrócić kopię zapasową na maszynie wirtualnej. Dałoby to maszynę wirtualną, którą można uruchomić na dowolnym komputerze, na którym VirtualBox jest lub może być zainstalowany.

To powiedziawszy, czy istnieje powód, dla którego nie można po prostu otworzyć dostępu VNC lub SSH do istniejącego urządzenia deweloperskiego i uzyskać do niego dostęp zdalny? Jeśli to możliwe, może to być prostsza opcja - przynajmniej zaoszczędzi ci trochę cierpienia za każdym razem, gdy chcesz użyć skrzynki programistów z nowej maszyny.

Mam nadzieję że to pomoże!

Aaron Miller
źródło
Dzięki @Aaron Miller (+1) - jakie narzędzie do tworzenia kopii zapasowych możesz polecić i jak to działa? Czy przekształca cały mój komputer w jakiś plik, który można następnie wykorzystać do zastąpienia całego systemu plików na maszynie wirtualnej? Dzięki jeszcze raz!
pnongrata
1
Cieszę się, że mogę pomóc! Jeśli chodzi o narzędzie do tworzenia kopii zapasowych - man tarpolecam tutaj; może nie jest to najbardziej przyjazny interfejs, ale jeśli po prostu spakujesz / w polu dev (upewnij się, że unikniesz / proc, / sys, / dev i / root za pomocą opcji --exclude) i usuniesz wynik z twojego VM, prawdopodobnie będziesz mieć o tym, czego potrzebujesz. (Zastanowiłbym się jednak mocno w twoich butach, czy można po prostu przekazać rzeczy związane z programowaniem bez dotykania reszty - na przykład skopiować / home / nazwę użytkownika i zrobić resztę za pomocą apt, na przykład. Zawsze najlepiej zrobić mówię, że wymaga najmniejszej ilości pracy.)
Aaron Miller
2
Ta sugestia, choć bardzo pouczająca i pomocna, powinna być komentarzem, a nie odpowiedzią. To nie odpowiada na pytanie.
dotancohen
27

możesz zrzucić hd na obraz, a ddnastępnie przekonwertować obraz na vmdk lub cokolwiek innego.

apt-get install qemu (instaluje QEMU na debian / ubuntu)

qemu-img convert imagefile.dd -O vmdk vmdkname.vmdk

zaczerpnięte z: tutaj

d4v3y0rk
źródło
Nie wiem na pewno, czy to zadziała, ale daje +1 i spróbuję.
Mikey
1
Możesz także użyć obrazu w VirtualBox. Ubuntu zwykle instaluje sterowniki dla różnych urządzeń (w przeciwieństwie do systemu Windows), dzięki czemu jest bardziej przenośny, więc na ogół będzie działać.
Ślimak mechaniczny
2
To nie tylko zadziała. Plik / etc / fstab to plik, który system odczytuje, aby wiedzieć, gdzie zamontować dyski. Dyski są przechowywane przez UUID, a kiedy utworzysz nowy dysk, nie będzie tak samo. Będziesz musiał edytować ten plik w nowym systemie, aby to naprawić. Również karty sieciowe zostaną przemianowane (i tak by się stało.)
korylprince
Ponadto, aby utworzyć obraz, należy uruchomić dysk CD na żywo, gdy dysk nie jest podłączony. Zapisz obraz na innym dysku.
nikhil
10

Zrobiłem to wcześniej na komputerze z systemem Windows XP, ale myślę, że możesz to zrobić również w Ubuntu. Ale używa vmware, a nie virtualbox...

Zainstaluj vmware-converter(darmowy produkt) w swoim polu Ubuntu. Następnie przekonwertuj system fizyczny na system wirtualny, po dostosowaniu ustawień konfiguracji.

Następnie masz zwirtualizowany obraz, który można „odtwarzać” vmplayer.

Luis
źródło
1
VirtualBox będzie mógł korzystać z VMDK utworzonych w ten sposób.
bfhd
Nie działa tak dobrze, potrzebujesz serwera vmware w sieci, do którego eksportuje obraz. Nie miałem z tym szczęścia.
nikhil
5

Inną opcją może być sklonowanie systemu operacyjnego na obraz dysku VirtualBox:

vboxmanage createhd --filename foo.vdi --size 10240

modprobe nbd max_part=16
qemu-nbd -c /dev/nbd0 foo.vdi

# create a partition (will automatically produce a new device /dev/nbd0p1)
sfdisk -D /dev/nbd0 <<EOF
,,L,
EOF

mkfs -t ext2 /dev/nbd0p1
mount -o loop /dev/nbd0p1 /mnt

# clone your OS
rsync -aH --exclude mnt --exclude dev --exclude proc --exclude sys / /mnt/

# install the boot loader on the virtual disk
mount --bind /dev /mnt/dev
chroot /mnt grub-install /dev/sda

umount /mnt
qemu-nbd -d /dev/nbd0

rmmod nbd
Ansgar Wiechers
źródło
4

Jest więc jeden z dwóch sposobów, aby to zrobić. Aby utworzyć ISO bezpośrednio, należy użyć Remastersys. Jest to narzędzie, które pozwoli ci stworzyć ISO bieżącego systemu. Następnie możesz uruchomić ISO i uzyskać to środowisko jako LiveCD. Dobry przewodnik można znaleźć tutaj .

Jeśli chcesz zrobić VHD (wirtualny dysk twardy) z dysku fizycznego, to tylko narzędzie, o którym wiem, to disk2VHD . To narzędzie tylko dla systemu Windows. Możesz jednak również użyć narzędzia Linux dd. Jest to poradnik dla dobra znaleźć tutaj .

prateek61
źródło
4

Skopiowano z ( http://karim-ouda.blogspot.com/2011/11/how-to-create-virtualbox-image-from.html )

sudo dd if=DRIVE | VBoxManage convertfromraw stdin FILENAME BYTES

Prawdziwy przykład

sudo dd if=/dev/sda | VBoxManage convertfromraw stdin MyLinuxImage.vdi 120034123776

Uwagi:

  1. Aby uzyskać liczbę bajtów na partycji, możesz użyć następującego polecenia sudo fdisk -l /dev/sda

  2. Musisz użyć / dev / xxx not / dev / xxx1 lub xxx2, aby obraz zawierał rekordy MBR

ossandcad
źródło
0

Aby rozpocząć, możesz utworzyć obraz dysku za pomocą narzędzia partimage w interfejsie wiersza poleceń. Później wyobrażam sobie, że będziesz w stanie uruchomić nowo utworzoną wersję ISO za pomocą VMware.

Korzystanie z Partimage Jeśli używasz Ubuntu 12.04 lub nawet 11.04, Partimage powinien być dostępny w centrum oprogramowania Ubuntu. Ta metoda instalacji pozwoli ci łatwo wyszukać i zainstalować wybrane oprogramowanie.

Krok 1. Otwórz Centrum oprogramowania Ubuntu i zlokalizuj pasek wyszukiwania w prawym górnym rogu okna. Wpisz „partimage” w pasku wyszukiwania, a następnie naciśnij enter. Jako pierwszy wyświetli się pakiet oprogramowania partimage. Z tego wyszukiwania zwracane są również partclone (narzędzie do klonowania i przywracania partycji), partimage-server (użyj partimage w sieci) i partimage-doc (dokumentacja użytkownika obrazu partycji). Będziesz chciał kliknąć zainstalować i pozwolić centrum oprogramowania zainstalować pakiet dla ciebie.

Krok 2. Otwórz terminal i wprowadź następującą komendę „sudo partimage”, a następnie wprowadź hasło i naciśnij enter.

Krok 3. Po wprowadzeniu hasła aplikacja Partimage powinna wyświetlić się w oknie Terminal.

Krok 4. Zrozumienie dostępnych opcji.

* Partition to save/restore -  A list of all available partitions on all drives able to be backed up from or restored to. You may only choose to operate on one partition at a time. 
* Image file to create/use - If creating a new image file enter the path and file name where the created back up will be written. If using an image file to restore a partition or drive enter the path to the mounted drive where the file is located. 
Action to be done: 
    (*) Save partition into a new image file - Choosing this option will tell Partition Image to create a backup .img file from the partition selected in "Partition to save/restore", and write the file to the path entered in "Image file to create/use."
    (  ) Restore partition from an image file - This option will write the image file from the path entered under "Image file to create/use", and write it to the partition and/or drive selected under "Partition to save/restore."
    (   ) Restore an MBR from the image file - This will restore the MBR to the drive selected under "Partition to save/restore" to the image file contained in the path under "Image file to create/use."
[  ] Connect to server - This option will allow you to connect to a remote server to read or write an image file.

Krok 5. Ten ekran jest dość oczywisty. Najpierw będziesz chciał wybrać żądany poziom kompresji, jeśli taki istnieje. Możesz także zmienić sposób podziału obrazu podczas pisania. Domyślnym trybem jest tworzenie plików 2 Gb. Ostatnia opcja daje instrukcje obrazu części, co zrobić, jeśli pomyślnie zakończy zadanie. Wybierz, która opcja jest najbardziej odpowiednia dla Twojej sytuacji.

http://www.ubuntulinuxguide.com

Paul Stine
źródło
Wypróbowałeś swoje rozwiązanie?
user66001,