파티션을 디스크 끝으로 이동

파티션을 디스크 끝으로 이동

Promox에 Debian 11을 실행하는 가상 머신이 있습니다. 디스크 공간을 늘려야 해서 Proxmox GUI에서 디스크 크기를 조정했습니다. 하지만 이제 루트 파티션을 확대해야 합니다. 루트 파티션이 디스크의 마지막 파티션인 경우에는 문제가 되지 않지만 이제는 디스크 중간에 있는 파티션입니다. 루트 파티션의 크기를 조정하기 전에 스왑 파티션을 디스크 끝으로 이동해야 합니다. 하지만 다음 두 가지 조건이 충족되어야 합니다.

  1. 스왑 파티션은 동일한 크기를 유지해야 합니다
  2. 최종 스왑 파티션은 디스크 레이아웃과 올바르게 정렬되어야 합니다.

헤드리스 장치를 개발 중이므로 CLI를 사용해야 합니다. 이별이 나에게 준 것은 다음과 같습니다.

(parted) print
Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 68.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  2097kB  1049kB                        bios_grub
 2      2097kB  33.3GB  33.3GB  ext4
 3      33.3GB  34.4GB  1022MB  linux-swap(v1)        swap

(parted) print free
Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 68.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
        17.4kB  1049kB  1031kB  Free Space
 1      1049kB  2097kB  1049kB                        bios_grub
 2      2097kB  33.3GB  33.3GB  ext4
 3      33.3GB  34.4GB  1022MB  linux-swap(v1)        swap
        34.4GB  68.7GB  34.4GB  Free Space

기존 스왑 파티션을 삭제하고 swapoff /dev/sda3parted에서 사용하고 삭제해야 하는 것으로 알고 있습니다.

내 질문은: 이 디스크의 끝 부분과 정확히 같은 크기로 올바르게 정렬된 스왑 파티션을 만들려면 무엇을 입력해야 합니까?

참고: 저는 스왑을 파일로 바꾸고 싶지 않습니다.

답변1

정렬을 위해 다음과 같은 플래그를 사용할 수 있습니다.

parted /dev/sda --align optimal

그런 다음 단위를 첫 번째 단계로 설정하십시오.

unit MiB
print

개인적으로 저는 pdisk이 문제를 처리하는 스크립트를 가지고 있으며 parted이를 비대화형으로 실행합니다.

#!/bin/sh
#
dev="$1"
shift
test 0 -eq $# && set -- print
parted "$dev" --align optimal unit MiB "$@"

그런 다음

pdisk /dev/sda [<command>]

관련 정보