Przygotować dysk do zobrazowania przez Clonezilla do użycia na mniejszych dyskach?


19

Powtarzającym się problemem jest to, że komputery, na których budujemy nasze obrazy główne, mogą mieć większe dyski twarde niż dyski niektórych systemów docelowych. Dobrze wiadomo, że Clonezilla nie umieści obrazu dysku na mniejszym dysku.

Oprócz znalezienia dysku fizycznego, który jest mniejszy / mniejszy niż wszystkie nasze systemy docelowe, zastosowałem tę metodę, aby obejść nasz problem:

  1. Po przygotowaniu komputera głównego użyj gparted, aby zmniejszyć partycje, aby wszystkie zmieściły się na dysku o mniejszym rozmiarze.
  2. Utwórz maszynę wirtualną z dyskiem twardym o docelowym rozmiarze.
  3. Utwórz odpowiednie partycje na maszynie wirtualnej, instalując kopię docelowego systemu operacyjnego na maszynie wirtualnej.
  4. Użyj funkcji zapisywania / przywracania partycji w Clonezilla, aby skopiować każdą partycję z komputera głównego na maszynę wirtualną.
  5. Utwórz obraz maszyny wirtualnej. Użyj tego obrazu jako złotego mistrza do obrazowania komputerów.

Czy jest jakiś sposób na użycie gparted (lub innego programu) do zmiany rozmiaru dysku głównego przed klonowaniem? Wiem, jak zmienić rozmiar poszczególnych partycji, ale byłoby to naprawdę bardzo przydatne, gdybym mógł zrobić coś, aby Clonezilla pomyślał, że oryginalny dysk jest mniejszy. W ten sposób mogłem użyć funkcji przywracania dysku, aby utworzyć obraz, który był wystarczająco mały dla wszystkich systemów docelowych.

Z powodu różnych problemów budowanie obrazu głównego bezpośrednio na maszynie wirtualnej nie jest możliwe w naszej sytuacji.


Dlaczego nie skorzystać z narzędzia, które nie ma takich ograniczeń?
joeqwerty

@joequerty: Clonezilla to jedyny znany mi młotek, za który mogę zmusić firmę do zapłaty. Jestem otwarty na inne opcje, jeśli nie mają opłat licencyjnych za liczbę sklonowanych systemów utworzonych z obrazem.
poke

Czy skryptowanie całego procesu instalacji jest opcją? Jeśli możesz wymyślić instalację skryptową dla całego swojego oprogramowania, możesz po prostu wykonać surowe instalacje systemu operacyjnego i uniknąć wszystkich problemów związanych z obrazami.
devicenull

@devicenull: Dobra myśl. Jednak nie uważam tego za wykonalne w naszej sytuacji.
poke

Odpowiedzi:


13

Wewnątrz każdego obrazu clonezilla znajduje się plik o nazwie sda-pt.parted. Możesz edytować rozmiar sektora, /dev/sdaaby był mniejszy niż docelowy dysk twardy.

Oto jak to robimy:

  1. Zainstaluj system operacyjny i programy
  2. Zmniejsz partycję w systemie operacyjnym do najniższej możliwej wartości (najlepiej poniżej 80 działa najlepiej)
  3. Sysprep i klon
  4. Edytować image/sda-pt.parted

Poniżej znajduje się przykład edytowanego sda-pt.partedpliku

Model: ATA ST31000524AS (scsi)
Disk /dev/sda: 78200000s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start    End        Size       Type     File system  Flags
1      2048s    206847s    204800s    primary  ntfs         boot
2      206848s  78135295s  77928448s  primary  ntfs

Oryginalny:

Model: ATA ST31000524AS (scsi)
Disk /dev/sda: 1953525168s

Jest to najbardziej niekonwencjonalny sposób, aby to zrobić, ale jest to jedyny sposób, w jaki mogę zacząć działać poprawnie. Próba użycia opcji „proporcjonalnie zmieniaj tabelę partycji” po prostu nie działała.
DaveTheMinion

5

Podczas tworzenia obrazu głównego zmień rozmiar partycji lub „całkowity obszar wolnego miejsca”, aby był mniejszy niż twój najmniejszy dysk docelowy.

Użyj trybu eksperckiego zamiast początkującego w Clonezilla.

Jeśli masz pewność, że wszystkie dane z obrazu zmieściłyby się na mniejszym dysku, dodaj opcję „-icds”

CloneZilla będzie działał dobrze Obrazowanie na mniejszym dysku niż obraz został utworzony.


2

Druga poprawka podana tutaj działała dla mnie. Plik do edycji to image / sda-pt.parted w samym folderze obrazów.

W tym pliku po prostu zmniejsz liczbę w linii, która mówi

Disk /dev/sda: #########s

Jeśli znasz docelowy rozmiar w bajtach, możesz podzielić przez rozmiar sektora, aby uzyskać żądaną liczbę sektorów. W moim przypadku zbudowałem system 40 GB z partycjami 40 GB, ale był on na dysku 320 GB. Rzeczywiście, wystarczy zmienić rozmiar dysku na sektory 40 GB / 512 (40000000000/512 = 78125000s).

Ewentualnie możesz po prostu spojrzeć na koniec tabeli partycji w tym pliku i użyć liczby nieco większej niż punkt końcowy ostatniej partycji.

Powinienem również zauważyć, że żadna z opcji, które znalazłem, kiedy szukałem, nie pomogła w klonowaniu większych plików na mniejsze dyski („tryb ekspercki”, zmiana rozmiaru itp.). Wydaje się, że najlepszym rozwiązaniem jest zbudowanie obrazu, a następnie dostosowanie rozmiaru dysku tak, aby był jak najmniejszy przed wypchnięciem.


2

Zaczęliśmy używać dysku SSD 64 Gb do tworzenia naszych zdjęć. Mamy dysk zarezerwowany do tego celu. Podczas budowania nowego obrazu najpierw umieszczamy ten dysk w komputerze, aby mógł być używany jako szablon. Uważamy, że pomaga nam to szybciej tworzyć i rejestrować obrazy, a także zapewnia, że ​​powstały obraz będzie pasował do każdego systemu, który mamy w użyciu.



-1

Edycja obrazu / sda-pt.parted w folderze obrazów nie działa z Clonezilla 20170905-zesty .

https://sourceforge.net/p/clonezilla/support-requests/65/

Opcja „-C” dotyczy tylko Partclone. Dlatego nie możesz go znaleźć w trybie eksperckim Clonezilla. Jeśli jednak włączysz „-icds” i „-k1” Clonezilli, użyje opcji „-C” dla partclone podczas uruchamiania partclone.

BTW, przywrócenie obrazu zapisanego na większym dysku na mniejszy może nie działać. Musisz upewnić się, że wszystkie użyte bloki mieszczą się w granicach, a układ tablicy partycji nie może być zbyt skomplikowany, aby Clonezilla mogła sobie z tym poradzić.

Zobacz zaawansowane parametry trybu przywracania: http://clonezilla.org/clonezilla-live/doc/02_Restore_disk_image/advanced/09-advanced-param.php


Zostaw komentarz, jeśli nie podoba ci się odpowiedź.
flywire
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.