GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara memindahkan partisi di GNU/Linux?

Cara manual dengan dd dan fdisk:

# fdisk -l /dev/sdb | grep sdb3
/dev/sdb3        73402368  1953525167   940061400   83  Linux

# fdisk /dev/sdb
Command (m for help): d
Partition number (1-4): 3
Command (m for help): n
Partition number (1-4, default 3): 3
First sector (73385984-1953525167, default 73385984): 
Using default value 73385984
Last sector, +sectors or +size{K,M,G} (73385984-1953525167, default 1953525167): 
Using default value 1953525167
Command (m for help): w
The partition table has been altered!

# fdisk -l /dev/sdb | grep sdb3
/dev/sdb3        73385984  1953525167   940069592   83  Linux

# dd conv=notrunc bs=512 iflag=fullblock if=/dev/sdb3 count=100 skip=$((73402368-73385984)) seek=0 2> /dev/null | file -s -
/dev/stdin: LUKS encrypted file, ver 1 [aes, cbc-essiv:sha256, sha1] UUID: af1c47f0-4ca5-4ea7-a091-065bd263653f

# dd conv=notrunc bs=512 iflag=fullblock if=/dev/sdb3  skip=$((73402368-73385984)) seek=0 of=/dev/sdb3

# file -s /dev/sdb3
/dev/sdb3: sticky LUKS encrypted file, ver 1 [aes, cbc-essiv:sha256, sha1] UUID: af1c47f0-4ca5-4ea7-a091-065bd263653f

Sekarang menunggu sekitar 2 jam. (lebih terlihat seperti 18j...)

Catatan:ini hanya memindahkan data ke belakang, bukan ke depan.

Menjeda:

# pidof dd
907
# kill -STOP 907
# cat /proc/907/fdinfo/1
pos:    586921398272
flags:  0100001

# kill -9 907

remember 586921398272/512 = 1146330856

Melanjutkan:

dd conv=notrunc bs=512 iflag=fullblock if=/dev/sdb3  skip=$((1146330856+73402368-73385984)) seek=1146330856 of=/dev/sdb3

sfdisk , yang dimaksudkan untuk menjadi fdisk yang dapat skrip, sejak beberapa versi memiliki --move-data pilihan. Contoh dari halaman manual mereka:

echo '+100M,' | sfdisk --move-data /dev/sdc -N 1

Anda selalu dapat menggunakan dd .

  • Boot dari liveCD (atau cara lain yang memastikan partisi tidak terpasang)
  • dd if=/dev/sdc2 of=somefile bs=1M untuk membuat salinan partisi pada file.
  • fdisk (atau apa pun yang Anda suka) untuk menghapus partisi
  • fdisk (atau apa pun yang Anda suka) untuk membuat partisi di tempat yang Anda inginkan.
  • dd of=/dev/sdc2 if=somefile bs=1M untuk memulihkan konten dari file.

Linux
  1. Cara Memindahkan Swap Dari Partisi Disk ke Volume LVM di Linux

  2. Bagaimana cara mengaktifkan partisi swap linux?

  3. Bagaimana cara mengubah partisi swap di Linux?

  1. Partisi drive di Linux dengan GNU Parted

  2. Cara mempartisi disk di Linux

  3. Cara Mengelola Partisi Swap di Linux

  1. Bagaimana cara mengganti hard drive di Linux

  2. Cara memindahkan file di Linux

  3. Cara mempartisi dan memformat drive di Linux