Gunakan fdisk dan testdisk untuk memulihkan partisi yang hilang atau memulihkan data pada disk data Instance ECS Linux.
Prasyarat
Snapshot telah dibuat untuk disk data yang kehilangan partisi. Jika terjadi error selama pemulihan, gunakan snapshot tersebut untuk mengembalikan (rollback) disk data. Lihat Buat snapshot secara manual dan Kembalikan disk menggunakan snapshot.
Latar Belakang
Alat berikut dapat memulihkan data pada instans Linux.
|
Tool name |
Default installation |
Tool description |
|
fdisk |
Yes |
A partition management tool in Linux. |
|
testdisk |
No |
A tool to restore disk partitions or data in Linux. |
|
partprobe |
Yes |
A tool that lets the kernel reread partition information without restarting. |
Pulihkan partisi atau data
Jika tabel partisi rusak atau data hilang akibat operasi tidak sengaja, anomali program, atau virus, gunakan salah satu metode berikut.
(Opsional) Periksa informasi disk
Periksa informasi disk saat ini:
sudo fdisk -lu
Contoh output:
Disk /dev/vda: 145 GiB, 155692564480 bytes, 304087040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F51132A7-xxxx-xxxx-xxxx-FD0DE6E1210C
Pada contoh ini, disk /dev/vda ditampilkan. Kolom Device tidak ada, yang menunjukkan bahwa tabel partisi rusak.
Gunakan fdisk untuk memulihkan partisi
Pada sebagian besar kasus, partisi disk data menggunakan sektor awal dan akhir default. Jalankan fdisk untuk membuat ulang partisi pada disk data.
Jalankan perintah fdisk /dev/xvdb untuk membuat ulang partisi, lalu pasang (mount) dan verifikasi pemulihan data:
[root@Aliyun ~]# fdisk /dev/xvdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-10485759, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759):
Using default value 10485759
Partition 1 of type Linux and of size 5 GiB is set
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@Aliyun ~]# mount /dev/xvd
xvda xvda1 xvdb xvdb1
[root@Aliyun ~]# mount /dev/xvdb
xvdb xvdb1
[root@Aliyun ~]# mount /dev/xvdb1 /mnt/
[root@Aliyun ~]# ls /mnt/
123.sh configclient data diamond install_edsd.sh install.sh ip.qz
Jika partisi tidak dapat dipasang setelah menjalankan fdisk, atau file tidak terlihat setelah dipasang, gunakan testdisk untuk memulihkan partisi atau gunakan testdisk untuk memulihkan data.
Gunakan testdisk untuk memulihkan partisi
Contoh ini menggunakan disk /dev/xvdb. Untuk memulihkan partisi dengan testdisk, lakukan langkah-langkah berikut:
-
Instal
testdisk.Alibaba Cloud Linux 3, Alibaba Cloud Linux 2, CentOS 6, CentOS 7, atau CentOS 8
sudo yum install -y testdiskUbuntu atau Debian
sudo apt install -y testdisk -
Jalankan testdisk /dev/xvdb. Ganti /dev/xvdb dengan nama perangkat disk data Anda. Pilih Proceed (default) dan tekan Enter.
TestDisk 7.0, Data Recovery Utility, April 2015 Christophe GRENIER <grenier@cgsecurity.org> http://www.cgsecurity.org TestDisk is free software, and comes with ABSOLUTELY NO WARRANTY. Select a media (use Arrow keys, then press Enter): >Disk /dev/xvdb - 5368 MB / 5120 MiB >[Proceed ] [ Quit ] Note: Disk capacity must be correctly detected for a successful recovery. If a disk listed above has incorrect size, check HD jumper settings, BIOS detection, and install the latest OS patches and disk drivers. -
Pilih gaya tabel partisi. Nilai default-nya adalah Intel. Untuk disk GPT, pilih EFI GPT.
TestDisk 7.0, Data Recovery Utility, April 2015 Christophe GRENIER <grenier@cgsecurity.org> http://www.cgsecurity.org Disk /dev/xvdb - 5368 MB / 5120 MiB Please select the partition table type, press Enter when done. >[Intel ] Intel/PC partition [EFI GPT] EFI GPT partition map (Mac i386, some x86_64...) [Humax ] Humax partition table [Mac ] Apple partition map [None ] Non partitioned media [Sun ] Sun Solaris partition [XBox ] XBox partition [Return ] Return to disk selection Note: Do NOT select 'None' for media with only a single partition. It's very rare for a disk to be 'Non-partitioned'. -
Pilih Analyse dan tekan Enter.
Disk /dev/xvdb - 5368 MB / 5120 MiB CHS 652 255 63 - sector size=512 [ Analyse ] Analyse current partition structure and search for lost partitions [ Advanced ] Filesystem Utils [ Geometry ] Change disk geometry [ Options ] Modify options [ MBR Code ] Write TestDisk MBR code to first sector [ Delete ] Delete all data in the partition table [ Quit ] Return to disk selection Note: Correct disk geometry is required for a successful recovery. 'Analyse' process may give some warnings if it thinks the logical geometry is mismatched. -
Jika tidak ada informasi partisi yang ditampilkan, pilih Quick Search dan tekan Enter.
Disk /dev/xvdb - 5368 MB / 5120 MiB - CHS 652 255 63 Current partition structure: Partition Start End Size in sectors No partition is bootable *=Primary bootable P=Primary L=Logical E=Extended D=Deleted >[Quick Search] Try to locate partitionSetelah Quick Search selesai, partisi Linux yang ditemukan ditampilkan (ditandai sebagai Primary bootable, ukuran 10483712 sektor), dan status Struktur menunjukkan Ok.
Disk /dev/xvdb - 5368 MB / 5120 MiB - CHS 652 255 63 Partition Start End Size in sectors >* Linux 0 32 33 652 180 40 10483712 Structure: Ok. Use Up/Down Arrow keys to select partition. Use Left/Right Arrow keys to CHANGE partition characteristics: *=Primary bootable P=Primary L=Logical E=Extended D=Deleted Keys A: add partition, L: load backup, T: change type, P: list files, Enter: to continue -
Pilih partisi dan tekan Enter.
-
Pilih Write untuk menyimpan partisi.
CatatanJika partisi yang diharapkan tidak terdaftar, pilih Deeper Search untuk melanjutkan pencarian.
Setelah memastikan informasi partisi sudah benar, pilih Write untuk menulis struktur partisi ke disk.
Disk /dev/xvdb - 5368 MB / 5120 MiB - CHS 652 255 63 Partition Start End Size in sectors 1 * Linux 0 32 33 652 180 40 10483712 [ Quit ] [Deeper Search] [> Write ] Write partition structure to disk -
Tekan Y untuk menyimpan partisi.
TestDisk 7.0, Data Recovery Utility, April 2015 Christophe GRENIER <grenier@cgsecurity.org> http://www.cgsecurity.org write partition table, confirm ? (Y/N) -
Jalankan partprobe /dev/xvdb untuk merefresh tabel partisi. Ganti /dev/xvdb dengan nama perangkat disk data Anda.
-
Pasang ulang partisi dan verifikasi data.
File
ip.qzdalam output adalah file target yang telah dipulihkan.[root@Aliyun home]# mount /dev/xvdb1 /mnt/ [root@Aliyun home]# ls /mnt/ 123.sh configclient data diamond install_edsd.sh install.sh ip.qz logs lost+found test
Gunakan testdisk untuk memulihkan data
Jika testdisk menemukan partisi tetapi tidak dapat menyimpannya, Anda tetap dapat memulihkan file individual. Lakukan langkah-langkah berikut:
-
Pindai partisi disk dengan testdisk. Lihat Langkah 1 hingga 5 di Gunakan testdisk untuk memulihkan partisi.
-
Tekan P untuk menampilkan daftar file.
File ditampilkan.
* Linux 0 32 33 652 180 40 10483712 Directory / drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 . drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 .. drwx------ 0 0 16384 21-Feb-2017 11:56 lost+found -rw-r--r-- 0 0 1701 21-Feb-2017 11:57 install_edsd.sh -rw-r--r-- 0 0 5848 21-Feb-2017 11:57 install.sh >-rw-r--r-- 0 0 12136 21-Feb-2017 11:57 ip.gz -rw-r--r-- 0 0 0 21-Feb-2017 11:57 test drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 123.sh drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 configclient drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 data drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 diamond drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 logs Next Use Right to change directory, h to hide deleted files q to quit, : to select the current file, a to select all files C to copy the selected files, c to copy the current file -
Pilih file yang akan dipulihkan dan tekan C.
-
Pilih direktori tujuan. Pada contoh ini, file dipulihkan ke /home.
Please select a destination where /ip.gz will be copied. Keys: Arrow keys to select another directory C when the destination is correct Q to quit Directory / drwxr-xr-x 0 0 4096 11-Jan-2017 09:32 . drwxr-xr-x 0 0 4096 11-Jan-2017 09:32 .. dr-xr-xr-x 0 0 4096 25-Jul-2016 16:23 boot drwxr-xr-x 0 0 2940 21-Feb-2017 12:30 dev drwxr-xr-x 0 0 4096 21-Feb-2017 12:12 etc > drwxr-xr-x 0 0 4096 16-Feb-2017 11:48 home drwx------ 0 0 16384 12-May-2016 19:58 lost+found drwxr-xr-x 0 0 4096 12-Aug-2015 22:22 media drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 mnt drwxr-xr-x 0 0 4096 12-Aug-2015 22:22 opt dr-xr-xr-x 0 0 0 16-Feb-2017 21:35 proc dr-xr-x--- 0 0 4096 21-Feb-2017 11:57 root drwxr-xr-x 0 0 560 21-Feb-2017 12:12 run drwxr-xr-x 0 0 4096 12-Aug-2015 22:22 srv dr-xr-xr-x 0 0 0 16-Feb-2017 21:35 sys drwxrwxrwt 0 0 4096 21-Feb-2017 12:34 tmp drwxr-xr-x 0 0 4096 16-Feb-2017 11:48 usr drwxr-xr-x 0 0 4096 16-Feb-2017 21:35 var lrwxrwxrwx 0 0 7 3-May-2016 13:48 bin lrwxrwxrwx 0 0 7 3-May-2016 13:48 lib lrwxrwxrwx 0 0 9 3-May-2016 13:48 lib64 lrwxrwxrwx 0 0 8 3-May-2016 13:48 sbinSetelah penyalinan selesai, terminal menampilkan
Copy done! 1 ok, 0 failed, yang menunjukkan bahwaip.gzberhasil disalin ke direktori tujuan. Daftar direktori mengonfirmasi bahwa file tersebut ada di partisi target:* Linux 0 32 33 652 180 40 10483712 Directory / Copy done! 1 ok, 0 failed drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 . drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 .. drwx------ 0 0 16384 21-Feb-2017 11:56 lost+found -rw-r--r-- 0 0 1701 21-Feb-2017 11:57 install_edsd.sh -rw-r--r-- 0 0 5848 21-Feb-2017 11:57 install.sh -rw-r--r-- 0 0 12136 21-Feb-2017 11:57 ip.gz -rw-r--r-- 0 0 0 21-Feb-2017 11:57 test -rw-r--r-- 0 0 0 21-Feb-2017 11:57 123.sh drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 configclient drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 data drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 diamond drwxr-xr-x 0 0 4096 21-Feb-2017 11:57 logs -
Masuk ke direktori /home untuk memverifikasi bahwa file telah dipulihkan.
File
ip.qztelah berhasil dipulihkan. File tersebut muncul di direktori /home, yang mengonfirmasi pemulihan berhasil.[root@Aliyun /]# ls /home/ admin ip.qz [root@Aliyun /]#
Kesalahpahaman dan praktik terbaik
Kehilangan data pada Instance ECS dapat berdampak serius terhadap bisnis. Bagian ini mencakup kesalahpahaman umum dan praktik terbaik untuk keamanan data.
Kesalahpahaman umum
Alibaba Cloud menggunakan penyimpanan triplicate, yang membuat beberapa pengguna mengasumsikan tidak ada risiko kehilangan data. Namun, penyimpanan triplicate hanya melindungi data di lapisan fisik. Masalah logis seperti virus, penghapusan tidak sengaja, atau kerusakan sistem file tetap dapat menyebabkan kehilangan data. Gunakan snapshot dan geo-redundansi untuk meningkatkan keamanan data. Lihat Keandalan data disk cloud ESSD.
Praktik terbaik
Pemulihan partisi dan data tidak selalu berhasil. Ikuti praktik terbaik berikut untuk memaksimalkan keamanan data dengan snapshot dan backup.
-
Terapkan kebijakan snapshot otomatis
Terapkan kebijakan snapshot otomatis pada disk sistem atau disk data.
PentingSaat disk sistem diganti, instance kedaluwarsa, atau disk dilepas secara manual, snapshot otomatis terkait mungkin juga dilepas. Untuk melepas snapshot otomatis bersama disk, pilih Delete Automatic Snapshots While Releasing Disk di kotak dialog Modify Attributes di Konsol ECS. Untuk mempertahankannya, kosongkan opsi ini. Lihat FAQ Snapshot dan Buat kebijakan snapshot otomatis.
-
Buat snapshot manual
Buat snapshot manual sebelum melakukan operasi berisiko tinggi berikut:
-
Perbarui kernel.
-
Tingkatkan atau ubah aplikasi.
-
Pulihkan data pada disk.
Selalu buat snapshot sebelum memulihkan disk. Lanjutkan pemulihan hanya setelah snapshot selesai.
-
-
Backup OSS, backup offline, dan geo-redundansi
Backup data penting dengan OSS, backup offline, atau geo-redundansi sesuai kebutuhan bisnis Anda.
Referensi
Lihat Best prac