Tôi thường thắc mắc làm cách nào có thể chỉ cần sao lưu bảng phân vùng Linux của tôi và khôi phục lại nó khi cần thiết? Làm thế nào để khôi phục lại bảng phân vùng nếu nó được xóa bởi lỗi trên hệ điều hành Linux? Làm thế nào để sao lưu và khôi phục lại một bảng phân vùng GPT trên Linux? Trước khi thực hiện, bạn cần phải sao lưu dữ liệu và bảng phân vùng đĩa . Điều này rất hữu ích cho: Sao chép phân vùng đĩa cho Linux software RAID trong trường hợp đĩa bị lỗi. Xử lý các bảng phân vùng bị lỗi Xử lý các bảng phân vùng bị xóa do nhầm lẫn , nhưng dữ liệu có thể vẫn còn tồn tại trên đĩa và có thể được truy cập một lần nữa với một bảng phân vùng chính xác. CẢNH BÁO! Những ví dụ này có thể phá hủy máy tính của bạn nếu không thực hiện đúng. HẾT SỨC CẨN THẬN VỚI LỆNH SAU. CHỈ MỘT LỖI SAI XÓT THÌ TẤT CẢ DỮ LIỆU CỦA BẠN SẼ MẤT. Làm thế nào để xem bảng phân vùng hiện tại: Gõ lệnh sau đây để hiển thị phân vùng của từng thiết bị: Mã: fdisk -l fdisk -l /dev/sda Hoặc là: Mã: sfdisk -l sfdisk -l /dev/sda Làm thế nào để sao lưu phân vùng Linux với lệnh sfdisk? Để sao lưu bảng phân vùng /dev/sda, hãy nhập: Mã: sfdisk -d /dev/sda > sda.partition.table.12-30-2015.txt Sao chép sda.partition.table.12-30-2015.txt tới một thư mục chia sẻ gắn kết NFS hoặc một USB. Làm thế nào để khôi phục lại phân vùng Linux với lệnh sfdisk vào đĩa? Chạy lệnh sau: Mã: sfdisk /dev/sda < sda.partition.table.12-30-2015.txt # sfdisk /dev/sda < /path/to/usb/pen/sda.partition.table.12-30-2015.txt Hoặc: Mã: sfdisk -f /dev/sda < /media/usb/sda.partition.table.12-30-2015.txt Làm thế nào để tái tạo một bảng phân vùng đĩa từ /dev/sda tới /dev/sdd với các dạng hình giống nhau không? Điều này rất hữu ích cho các thiết bị Linux dựa trên phần mềm RAID. Giả sử bạn thay thế dev/sdd và bạn muốn xây dựng lại mảng phần mềm Linux RAID. Bước đầu tiên là tái tạo một bảng phân vùng từ đĩa này vào đĩa khác: Mã: sfdisk -d /dev/sda | sfdisk -f /dev/sdd Bây giờ, chạy lệnh sau đây để xác minh rằng cả hai ổ đĩa cứng có cùng một phân vùng: Mã: fdisk -l /dev/sda fdisk -l /dev/sdd Cuối cùng, sử dụng mdadm để quản lý và xây dựng lại thiết bị RAID của bạn: Mã: mdadm --manage /dev/mdX --add /dev/sdd1 mdadm --manage /dev/mdX --add /dev/sdd2 .... .. mdadm --manage /dev/mdX --add /dev/sddN Sử dụng lệnh sau đây để thấy quá trình đồng bộ mảng raid: Mã: watch cat /proc/mdstat Một lưu ý về ổ đĩa với GPT (GUID Partition Table) Từ man page: GPT fdisk (aka gdisk) là một chế độ văn bản trình đơn điều khiển chương trình để tạo và thao tác các bảng phân vùng. Nó sẽ tự động chuyển đổi một bảng phân vùng kiểu cũ Master Boot Record (MBR) hoặc nhãn đĩa lưu trữ BSD mà không có một phân vùng MBR sang định dạng mới Globally Unique Identifier (GUID) Partition Table (GPT), hoặc sẽ load một bảng phân vùng GUID. Khi được sử dụng với tùy chọn dòng lệnh -l, chương trình sẽ hiển thị bảng phân vùng hiện tại và sau đó thoát ra. Hãy để chúng tôi cài đặt gdisk trên Debian hay Ubuntu Linux sử dụng lệnh apt-get: Mã: apt-get gdisk Ví dụ kết quả đầu ra: Mã: Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libicu52 The following NEW packages will be installed: gdisk libicu52 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 6,937 kB of archives. After this operation, 28.7 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/main gdisk amd64 0.8.8-1ubuntu0.1 [185 kB] Get:2 http://security.ubuntu.com/ubuntu/ trusty-security/main libicu52 amd64 52.1-3ubuntu0.4 [6,752 kB] Fetched 6,937 kB in 24s (284 kB/s) Selecting previously unselected package libicu52:amd64. (Reading database ... 65753 files and directories currently installed.) Preparing to unpack .../libicu52_52.1-3ubuntu0.4_amd64.deb ... Unpacking libicu52:amd64 (52.1-3ubuntu0.4) ... Selecting previously unselected package gdisk. Preparing to unpack .../gdisk_0.8.8-1ubuntu0.1_amd64.deb ... Unpacking gdisk (0.8.8-1ubuntu0.1) ... Processing triggers for man-db (2.6.7.1-1ubuntu1) ... Setting up libicu52:amd64 (52.1-3ubuntu0.4) ... Setting up gdisk (0.8.8-1ubuntu0.1) ... Processing triggers for libc-bin (2.19-0ubuntu6.6) ... Đối với RHEL/Centos, sử dụng lệnh: Mã: yum install gdisk Đối với Fedora, sử dụng lệnh: Mã: dnf install gdisk Đối với OpenSUSE, sử dụng lệnh: Mã: yast install gdisk Xin lưu ý rằng lệnh sgdisk làm việc với cả Linux và hệ thống Unix. Làm thế nào để sao lưu bảng phân vùng GPT /dev/sda vào một tập tin? Để lưu dữ liệu phân vùng vào một tập tin sao lưu có tên là /root/sda_partition_table_12_30_2015, chạy các lệnh sau: Mã: sgdisk --backup={/path/to/file} {/dev/device/here} sgdisk --backup=/root/sda_partition_table_12_30_2015 /dev/sda Làm thế nào để khôi phục lại bảng phân vùng GPT từ một tập tin? Để khôi phục lại sử dụng các lệnh sau: Mã: sgdisk --load-backup={/path/to/file} {/dev/device/here} sgdisk --load-backup=/media/usb/sda_partition_table_12_30_2015 /dev/sda Làm thế nào để tái tạo mô hình phân vùng GPT từ /dev/sda tới /dev/sdd ? Cú pháp là: Mã: sgdisk -R {SECOND-DEVICE-NAME-HERE} /dev/sda sgdisk -R /dev/sdd /dev/sda Để chọn ngẫu nhiên GUID trên /dev/sdd, hãy nhập: Mã: sgdisk -G /dev/sdd Cuối cùng, xác minh rằng cả hai ổ đĩa cứng có các lược đồ phân vùng tương tự: Mã: sgdisk -p /dev/sda sgdisk -p /dev/sdd Cuối cùng, sử dụng lệnh mdadm như đã giải thích trước đó để xây dựng lại các mảng RAID trên Linux.