Clonezilla thích ứng dụng cho máy tính để bàn?


11

Những gì tôi đang tìm kiếm là một cách để sao chép ổ đĩa cứng (chủ yếu là các phân vùng windows) trong khi vẫn ở bên trong hệ điều hành Ubuntu. Tôi không muốn tạo một phân vùng trên ổ cứng để khởi động và tôi không muốn sử dụng đĩa CD khởi động. Điều duy nhất tôi thậm chí có thể nghĩ là gần gũi là phiên bản ma 32 bit có thể chạy từ máy tính để bàn trong windows.

Nó không phải là clonezilla, nhưng đó là phần mềm nhân bản linux duy nhất tôi đã sử dụng và gần như chỉ sử dụng nó kể từ khi tôi phát hiện ra nó. Nếu không có cách nào để sử dụng clonezilla từ máy tính để bàn, thì tôi sẽ chấp nhận một chương trình thay thế. Điều chính là nó nhân bản ổ đĩa và chạy từ bên trong Ubuntu.

Cảm ơn bạn đã dành thời gian trước

Câu trả lời:


6

Clonezilla sử dụng ddđằng sau hậu trường.

Giới thiệu về đĩa và phân vùng

Toàn bộ đĩa là một thiết bị như thế nào /dev/sda. Đây là đĩa đầu tiên, đĩa thứ hai là /dev/sdb, thứ ba /dev/sdcvv đĩa cũ kết nối thông qua một cáp IDE được đặt tên như hda, hdb, ... Một đĩa có thể có nhiều phân vùng như /dev/sda1. Phân vùng thứ hai trên đĩa /dev/sda/dev/sda2như vậy. Một hình ảnh (bản sao bằng chữ byte) có thể được tạo từ cả phân vùng và đĩa. Lưu ý rằng 512 byte đầu tiên của đĩa chứa MBR (Bản ghi khởi động chính).

Không nên gắn phân vùng khi tạo hoặc khôi phục hình ảnh, nếu không, mất dữ liệu có thể xảy ra khi đọc từ nó (tạo hình ảnh) hoặc lỗi dữ liệu bất ngờ và hỏng dữ liệu nếu bạn đang ghi vào nó (khôi phục từ hình ảnh).

Trong các ví dụ dưới đây, /dev/sda1là phân vùng mà từ đó một hình ảnh sẽ được tạo.

Các phân vùng và thiết bị đĩa trong /devchỉ có thể ghi bởi siêu người dùng (root) và người dùng của disknhóm. Tôi không thích chạy mọi thứ với quyền root, vì vậy để đảm bảo an toàn (ví dụ trong trường hợp bạn mắc lỗi đánh máy), tôi thay đổi nhóm tạm thời thành chính mình, vì vậy tôi có thể đọc và viết cho nó:

sudo chgrp my_user_name /dev/sda1

Nếu bạn bỏ qua lệnh trên, bạn đã thêm tiền tố vào ddcác lệnh bên dưới sudo.

Khái niệm cơ bản

Lệnh cơ bản để tạo hình ảnh từ phân vùng là:

dd if=/dev/sda1 of=disk.img

ifcó nghĩa là "tệp đầu vào", ofcó nghĩa là "tệp đầu ra". Mọi thứ trong Linux là một tập tin, thậm chí cả thiết bị.

Để khôi phục hình ảnh như vậy, hãy chạy:

dd if=disk.img of=/dev/sda1

Thứ tự không quan trọng, bạn cũng có thể đã viết ở trên dd of=/dev/sda1 if=disk.img.

Hình ảnh nén

Vì các phân vùng thường lớn, nên nén dữ liệu trước khi ghi vào hình ảnh:

dd if=/dev/sda1 | gzip > disk.img.gz

Điều này hoạt động bởi vì nếu ofđược bỏ qua, đầu ra được ghi vào "đầu ra tiêu chuẩn" là đường ống dẫn đến chương trình nén gzip. Đầu ra của nó được ghi vào disk.img.

Để khôi phục hình ảnh nén như vậy, hãy chạy:

gunzip -c disk.img.gz | dd of=/dev/sda1

Đây gunziplà lệnh ngược của gzip. -clàm cho đầu ra được ghi vào đầu ra tiêu chuẩn là đường ống dẫn ddlệnh. Bởi vì ifđược bỏ qua dd, đầu vào được đọc từ "đầu vào tiêu chuẩn" là đầu ra của gunzip.

Đọc từ một hình ảnh mà không khôi phục nó

Hình ảnh không nén có thể được gắn để bạn có thể đọc từ nó. Nếu bạn đã nén hình ảnh phân vùng của mình, hãy giải nén chúng trước ( disk.img.gzsẽ bị xóa, disk.imgsẽ được tạo. Hãy chắc chắn có đủ dung lượng!):

gunzip disk.img.gz

Ngoài ra, giải nén hình ảnh mà không chạm vào hình ảnh:

gunzip -c disk.img.gz > disk.img

Bây giờ tạo một thư mục mà đĩa có thể được gắn và gắn hình ảnh chỉ đọc ( ro):

sudo mkdir /mnt/wind
sudo mount -o ro disk.img /mnt/wind

Bây giờ bạn có thể xem các tập tin của bạn trong /mnt/wind. Khi hoàn tất, ngắt kết nối nó và xóa điểm gắn kết lỗi thời:

sudo umount /mnt/wind
sudo rmdir /mnt/wind

Kích thước nhỏ hơn, sử dụng CPU nhiều hơn, thời gian sao lưu và khôi phục lâu hơn

Nếu thời gian không phải là vấn đề và bạn không có nhiều dung lượng lưu trữ, bạn có thể sử dụng bzip2định dạng nén. Đơn giản chỉ cần thay thế gzipbằng bzip2ở trên. Việc sử dụng .bz2phần mở rộng cho các tệp nén bzip2 là phổ biến , vì vậy hãy làm như vậy.


Là clonezilla sử dụng dd thì đó thực sự là những gì tôi đang tìm kiếm. Tôi giả sử các lệnh trong bài đầu tiên là hợp lệ vì tôi đang chuyển từ đĩa sang đĩa. Cảm ơn bạn đã làm rõ.
Ctuchik

Câu trả lời đầu tiên là đúng, nhưng không đề cập đến phương pháp đường ống. Tôi đã có nhu cầu sao lưu đĩa 20 GB chỉ với 150 MB dữ liệu từ ổ flash 4GB chạy tinycorelinux. Rõ ràng, dữ liệu không nén 20GB sẽ không phù hợp với điều đó, vì vậy tôi phải sử dụng phương pháp đường ống này.
Lekensteyn

@Lekensteyn Cách tuyệt vời để tiết kiệm không gian bằng phương pháp đường ống. Cảm ơn vì sự sáng suốt
Amey Jah

Sau khi viết xong, câu trả lời là - KHÔNG :) Ngoài ra "Không nên gắn phân vùng khi tạo hoặc khôi phục hình ảnh (...)" vì vậy không có cách nào để tạo hình ảnh của phân vùng / đĩa hệ thống.
Bucic

Cảm ơn bạn đã hướng dẫn rất giáo dục. Tôi đã chạy các lệnh này, với nén, nhưng tệp hình ảnh hóa ra lớn hơn hệ thống của tôi (!). Bạn có biết tại sao? @Lekensteyn
Heisenberg

4

Bạn có muốn sao chép một đĩa cứng sang đĩa khác không? Có một số cách để làm điều đó. Tôi thường thích lệnh dd. Xin lưu ý rằng để sử dụng lệnh này, bạn sẽ cần truy cập sudo.

  1. Để sao chép Đĩa cứng 1 vào Đĩa cứng 2. Lưu ý rằng Đĩa cứng 2 phải có kích thước lớn hơn đĩa cứng 1. Nếu đĩa cứng nguồn của bạn là sda và đĩa cứng đích là sdb thì bạn có thể sao chép tất cả nội dung của sda sang sdb bằng cách sử dụng sau chỉ huy.

    dd if=/dev/sda of=/dev/sdb
    
  2. Để sao chép toàn bộ đĩa cứng 1 vào hình ảnh, sử dụng lệnh sau. Lưu ý rằng ~ / đĩa1.img phải nằm trên các đĩa khác nhau

    dd if=/dev/sda of=~/disk1.img
    
  3. Để sao chép phân vùng đơn thành hình ảnh, sử dụng lệnh sau. Lưu ý rằng tập tin hình ảnh không nên nằm trên cùng một phân vùng.

    dd if=/dev/sda1 of=~/drive1.img
    
  4. Để khôi phục hình ảnh, sử dụng lệnh sau.

    dd if=drive1.img of=/dev/sda1 - For Partition
    dd if=disk1.img of=/dev/sda   - For whole hard disk
    
  5. Bạn cũng có thể tiết kiệm không gian bằng cách nén tệp hình ảnh.

    gzip disk1.img  - This will generate disk1.img.gz
    bzip2 disk1.img - This will generate disk1.img.bz2
    

Lịch sự: Sao lưu Linux : Bản sao đĩa cứng với "dd"


Tôi thực sự muốn đi từ ổ này sang ổ kia. Điều chính tôi cần làm việc, là đăng ký được duy trì trên các ổ đĩa windows sau khi sao chép. Vấn đề của tôi với DD là tôi đã nghe những câu chuyện mà có thể mất một thời gian đặc biệt dài để nhân bản, đôi khi trong một ngày. Tôi chỉ đơn giản là không có loại thời gian đó để lái xe sao chép. Với ghost tôi biết trung bình là khoảng 2-3 giờ (tôi sử dụng máy Windows của đồng nghiệp). Tôi thực sự không cần chức năng chụp ảnh, mặc dù thật tuyệt khi biết rằng đó là một khả năng. Nếu DD đáp ứng những yêu cầu đó mặc dù tôi chắc chắn sẽ cung cấp cho nó một shot.
Ctuchik

@Ctuchik dd sẽ chỉ sao chép từ byte sang byte. Vì vậy, IMO nên bảo vệ registry vì nó tạo bản sao chính xác của đĩa cứng. Mặc dù tôi không biết điều gì sẽ ảnh hưởng nếu cửa sổ duy trì thông tin đĩa cứng trên registry. Bởi vì tôi nhớ rằng các cửa sổ có hồ sơ khởi động trong đó nó thực sự ghi nhớ thông tin khởi động và đĩa cứng của bạn. Hãy thử và cho chúng tôi biết.
Amey Jah

@Ctuchik Tôi đã đọc một số. Có vẻ như các cửa sổ đủ thông minh (: P) để phát hiện đĩa cứng mới. Vì vậy, nếu bạn sao chép đĩa cứng, hãy đảm bảo bạn đã gỡ bỏ đĩa cứng cũ và kết nối mới nhất. Tùy thuộc vào cấu hình và vị trí mbr trước đây của bạn, bạn có thể phải thực hiện fixmbr hoặc fixboot bằng windows cd. Thực hiện theo chủ đề này để được giải thích thực tế và quy trình nhân bản xp (sử dụng dd) justlinux.com/forum/showthread.php?threadid=134457
Amey Jah

Ok, có thể là một vài ngày trước khi tôi phải làm một bản sao cho một khách hàng, nhưng nếu tôi làm, sau đó tôi sẽ cập nhật chủ đề này với kết quả. Cảm ơn bạn đã trả lời nhanh chóng.
Ctuchik

Khi tôi khôi phục hình ảnh sang đĩa mới (lớn hơn), tôi phải kích hoạt lại WinXP. Chỉ cần nhớ rằng một cái gì đó như thế có thể xảy ra.
Lekensteyn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.