

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon EBS 볼륨 크기 조정 후 파일 시스템 확장
<a name="recognize-expanded-volume-linux"></a>

[EBS 볼륨 크기 증가](requesting-ebs-volume-modifications.md) 후 파일 시스템을 새롭게 더 큰 크기로 확장하려면 파티션과 파일 시스템을 확장해야 합니다. 볼륨이 `optimizing` 상태가 되자마자 이 작업을 수행할 수 있습니다.

## 시작하기 전 준비 사항
<a name="extend-file-system"></a>
+ 변경 사항을 롤백해야 하는 경우에 대비하여 볼륨의 스냅샷을 생성합니다. 자세한 내용은 [Amazon EBS 스냅샷 생성](ebs-creating-snapshot.md) 단원을 참조하십시오.
+ 볼륨 수정이 성공했으며 `optimizing` 또는 `completed` 상태인지 확인합니다. 자세한 내용은 [Amazon EBS 볼륨 수정 진행 상황 모니터링](monitoring-volume-modifications.md) 단원을 참조하십시오.
+ 볼륨이 인스턴스에 연결되어 있고 포맷 및 탑재되었는지 확인합니다. 자세한 내용은 [연결된 볼륨 포맷 및 탑재](ebs-using-volumes.md#ebs-format-mount-volume) 단원을 참조하십시오.
+ (**Linux 인스턴스에만 해당) Amazon EBS 볼륨에서 논리 볼륨을 사용하는 경우, 논리 볼륨 관리자(LVM)를 사용하여 논리 볼륨을 확장해야 합니다. 이 작업을 수행하는 방법에 대한 지침을 알아보려면 문서 [LVM을 사용하여 Amazon EBS 볼륨의 파티션에 논리 볼륨을 생성하려면 어떻게 해야 합니까?](https://repost.aws/knowledge-center/create-lv-on-ebs-partition)의 **LV 확장** 섹션을 참조하세요.

## Linux 인스턴스
<a name="extend-linux"></a>

**참고**  
다음과 같은 지침에서는 Linux용 **XFS** 및 **Ext4** 파일 시스템을 확장하는 프로세스를 안내합니다. 다른 파일 시스템을 확장하는 방법에 대한 자세한 내용은 해당 설명서를 참조하세요.

볼륨에 파티션이 있으면 파티션을 먼저 확장해야 Linux에서 파일 시스템을 확장할 수 있습니다.

### EBS 볼륨의 파일 시스템 확장
<a name="extend-file-system"></a>

크기가 조정된 볼륨의 파일 시스템을 확장하려면 다음 절차를 따르세요.

디바이스 및 파티션 이름 지정은 Xen 인스턴스와 Nitro System에 구축된 인스턴스에 따라 다릅니다. 인스턴스가 Xen 기반인지 Nitro 기반인지 여부를 확인하려면 [Amazon EC2 하이퍼바이저 유형](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#instance-hypervisor-type)을 참조하세요.

**EBS 볼륨의 파일 시스템을 확장하려면**

1. [인스턴스에 연결합니다](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html).

1. 필요한 경우 파티션 크기를 조정합니다. 그렇게 하려면 다음을 수행하세요.

   1. 볼륨에 파티션이 있는지 확인합니다. **lsblk** 명령을 사용합니다.

------
#### [ Nitro instance example ]

      다음 예제 출력에서 루트 볼륨(`nvme0n1`)에는 2개의 파티션(`nvme0n1p1` 및 `nvme0n1p128`)이 있는 반면 추가 볼륨(`nvme1n1`)에는 파티션이 없습니다.

      ```
      [ec2-user ~]$ sudo lsblk
      NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
      nvme1n1       259:0    0  30G  0 disk /data
      nvme0n1       259:1    0  16G  0 disk
      └─nvme0n1p1   259:2    0   8G  0 part /
      └─nvme0n1p128 259:3    0   1M  0 part
      ```

------
#### [ Xen instance example ]

      다음 예제 출력에서 루트 볼륨(`xvda`)에는 1개의 파티션(`xvda1`)이 있는 반면 추가 볼륨(`xvdf`)에는 파티션이 없습니다.

      ```
      [ec2-user ~]$ sudo lsblk                
      NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
      xvda    202:0    0  16G  0 disk
      └─xvda1 202:1    0   8G  0 part /
      xvdf    202:80   0  24G  0 disk
      ```

------
      + 볼륨에 파티션이 있으면 다음 단계(2b)를 계속합니다.
      + 볼륨에 파티션이 없으면 2b, 2c 및 2d 단계를 건너뛰고 3단계를 계속 진행합니다.
**문제 해결 도움말**  
명령 출력에 볼륨이 표시되지 않으면 볼륨이 [인스턴스에 연결](ebs-attaching-volume.md)되어 있고 [포맷 및 탑재](ebs-using-volumes.md#ebs-format-mount-volume)되었는지 확인합니다.

   1. 파티션을 확장해야 하는지 여부를 확인합니다. 이전 단계의 **lsblk** 명령 출력에서 파티션 크기와 볼륨 크기를 비교합니다.
      + 파티션 크기가 볼륨 크기보다 작은 경우 다음 단계(2c)를 계속 진행합니다.
      + 파티션 크기가 볼륨 크기와 같은 경우, 파티션을 확장할 필요가 없습니다. 2c단계와 2d단계를 건너뛰고 3단계로 계속 진행하세요.
**문제 해결 도움말**  
볼륨이 여전히 원래 크기를 반영하는 경우 [볼륨 수정이 성공했는지 확인합니다](monitoring-volume-modifications.md).

   1. 파티션을 확장합니다. **growpart** 명령을 사용하여 디바이스 이름과 파티션 번호를 지정합니다.

------
#### [ Nitro instance example ]

      파티션 번호는 `p` 뒤에 오는 숫자입니다. 예를 들어 `nvme0n1p1`의 경우 파티션 번호는 `1`입니다. `nvme0n1p128`의 경우 파티션 번호는 `128`입니다.

      `nvme0n1p1`이라는 파티션을 확장하려면 다음 명령을 사용합니다.

**중요**  
디바이스 이름(`nvme0n1`)과 파티션 번호(`1`) 사이의 공백에 유의하세요.

      ```
      [ec2-user ~]$ sudo growpart /dev/nvme0n1 1
      ```

------
#### [ Xen instance example ]

      파티션 번호는 디바이스 이름 뒤의 번호입니다. 예를 들어 `xvda1`의 경우 파티션 번호는 `1`입니다. `xvda128`의 경우 파티션 번호는 `128`입니다.

      `xvda1`이라는 파티션을 확장하려면 다음 명령을 사용합니다.

**중요**  
디바이스 이름(`xvda`)과 파티션 번호(`1`) 사이의 공백에 유의하세요.

      ```
      [ec2-user ~]$ sudo growpart /dev/xvda 1
      ```

------
**문제 해결 팁**  
`mkdir: cannot create directory ‘/tmp/growpart.31171’: No space left on device FAILED: failed to make temp dir`: 크기 조정을 수행하는 데 필요한 임시 디렉터리를 생성하기 위해 볼륨에 여유 디스크 공간이 부족함을 나타냅니다. 디스크 공간을 확보한 다음 다시 시도합니다.
`must supply partition-number`: 잘못된 파티션을 지정했음을 나타냅니다. **lsblk** 명령을 사용하여 파티션 이름을 확인하고 디바이스 이름과 파티션 번호 사이에 공백을 입력해야 합니다.
`NOCHANGE: partition 1 is size 16773087. it cannot be grown`: 파티션이 이미 전체 볼륨을 확장하고 확장할 수 없음을 나타냅니다. [볼륨 수정이 성공했는지 확인합니다](monitoring-volume-modifications.md).

   1. 파티션이 확장되었는지 확인합니다. **lsblk** 명령을 사용합니다. 이제 파티션 크기가 볼륨 크기와 같아야 합니다.

------
#### [ Nitro instance example ]

      다음 예제 출력은 볼륨(`nvme0n1`)과 파티션(`nvme0n1p1`)이 동일한 크기(`16 GB`)임을 보여줍니다.

      ```
      [ec2-user ~]$ sudo lsblk
      NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
      nvme1n1       259:0    0  30G  0 disk /data
      nvme0n1       259:1    0  16G  0 disk
      └─nvme0n1p1   259:2    0  16G  0 part /
      └─nvme0n1p128 259:3    0   1M  0 part
      ```

------
#### [ Xen instance example ]

      다음 예제 출력은 볼륨(`xvda`)과 파티션(`xvda1`)이 동일한 크기(`16 GB`)임을 보여줍니다.

      ```
      [ec2-user ~]$ sudo lsblk               
      NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
      xvda    202:0    0  16G  0 disk
      └─xvda1 202:1    0  16G  0 part /
      xvdf    202:80   0  24G  0 disk
      ```

------

1. 파일 시스템을 확장합니다.

   1. 확장해야 하는 파일 시스템의 이름, 크기, 유형 및 탑재 지점을 가져옵니다. **df -hT** 또는 **lsblk -f** 명령을 사용합니다.

------
#### [ Nitro instance example ]

      **df -hT** 명령에 대한 다음 예제 출력은 `/dev/nvme0n1p1` 파일 시스템의 크기가 8GB이고 유형이 `xfs`이며 탑재 지점이 `/`임을 보여줍니다.

      ```
      [ec2-user ~]$ df -hT
      Filesystem      Type  Size  Used Avail Use% Mounted on
      /dev/nvme0n1p1  xfs   8.0G  1.6G  6.5G  20% /
      /dev/nvme1n1    xfs   8.0G   33M  8.0G   1% /data
      ...
      ```

------
#### [ Xen instance example ]

      **df -hT** 명령에 대한 다음 예제 출력은 `/dev/xvda1` 파일 시스템의 크기가 8GB이고 유형이 `ext4`이며 탑재 지점이 `/`임을 보여줍니다.

      ```
      [ec2-user ~]$ df -hT
      Filesystem      Type   Size    Used   Avail   Use%   Mounted on
      /dev/xvda1      ext4   8.0G    1.9G   6.2G    24%    /
      /dev/xvdf1      xfs    24.0G   45M    8.0G    1%     /data
      ...
      ```

------
      + 파일 시스템 크기가 볼륨 크기보다 작은 경우 다음 단계(3b)를 계속합니다.
      + 파일 시스템 크기가 볼륨 크기와 같은 경우, 확장할 필요가 없습니다. 이 경우에는 나머지 단계를 건너뜁니다. 파티션 및 파일 시스템은 이미 새 볼륨 크기로 확장되었습니다.

       

   1. 파일 시스템을 확장하는 명령은 파일 시스템 유형에 따라 다릅니다. 이전 단계에서 기록한 파일 시스템 유형에 따라 다음 올바른 명령을 선택합니다.
      + **[XFS 파일 시스템]** **xfs\$1growfs** 명령을 사용하여 이전 단계에서 기록한 파일 시스템의 탑재 지점을 지정합니다.

------
#### [ Nitro and Xen instance example ]

        예를 들어 `/`에 탑재된 파일 시스템을 확장하려면 다음 명령을 사용합니다.

        ```
        [ec2-user ~]$ sudo xfs_growfs -d /
        ```

------
**문제 해결 팁**  
`xfs_growfs: /data is not a mounted XFS filesystem`: 잘못된 탑재 지점을 지정했거나 파일 시스템이 XFS가 아님을 나타냅니다. 탑재 지점과 파일 시스템 유형을 확인하려면 **df -hT** 명령을 사용합니다.
`data size unchanged, skipping`: 파일 시스템이 이미 전체 볼륨을 확장하고 있음을 나타냅니다. 볼륨에 파티션이 없는 경우 [볼륨 수정이 성공했는지 확인합니다](monitoring-volume-modifications.md). 볼륨에 파티션이 있는 경우 2단계에서 설명한 대로 파티션이 확장되었는지 확인합니다.
      + **[Ext4 파일 시스템]** **resize2fs** 명령을 사용하여 이전 단계에서 기록한 파일 시스템의 이름을 지정합니다.

------
#### [ Nitro instance example ]

        예를 들어 `/dev/nvme0n1p1`이라는 이름으로 탑재된 파일 시스템을 확장하려면 다음 명령을 사용합니다.

        ```
        [ec2-user ~]$ sudo resize2fs /dev/nvme0n1p1
        ```

------
#### [ Xen instance example ]

        예를 들어 `/dev/xvda1`이라는 이름으로 탑재된 파일 시스템을 확장하려면 다음 명령을 사용합니다.

        ```
        [ec2-user ~]$ sudo resize2fs /dev/xvda1
        ```

------
**문제 해결 팁**  
`resize2fs: Bad magic number in super-block while trying to open /dev/xvda1`: 파일 시스템이 Ext4가 아님을 나타냅니다. 탑재 지점과 파일 시스템 유형을 확인하려면 **df -hT** 명령을 사용합니다.
`open: No such file or directory while opening /dev/xvdb1`: 잘못된 파티션을 지정했음을 나타냅니다. 파티션을 확인하려면 **df -hT** 명령을 사용합니다.
`The filesystem is already 3932160 blocks long. Nothing to do!`: 파일 시스템이 이미 전체 볼륨을 확장하고 있음을 나타냅니다. 볼륨에 파티션이 없는 경우 [볼륨 수정이 성공했는지 확인합니다](monitoring-volume-modifications.md). 볼륨에 파티션이 있는 경우 2단계에서 설명한 대로 파티션이 확장되었는지 확인합니다.
      + **[기타 파일 시스템]** 사용 중인 파일 시스템의 설명서에서 지침을 참조하세요.

   1. 파일 시스템이 확장되었는지 확인합니다. **df -hT** 명령을 사용하여 파일 시스템 크기가 볼륨 크기와 같은지 확인합니다.

## Windows 인스턴스
<a name="extend-windows"></a>

Windows 인스턴스에서 파일 시스템을 확장하려면 다음과 같은 방법 중 하나를 사용합니다.

------
#### [ Disk Management utility ]

**디스크 관리를 사용하여 파일 시스템을 확장하려면**

1. 중요한 데이터가 저장된 파일 시스템을 확장하려면 먼저 변경 내용을 롤백해야 할 경우를 대비하여 파일 시스템이 저장된 볼륨 스냅샷을 생성하는 것이 바람직합니다. 자세한 내용은 [Amazon EBS 스냅샷 생성](ebs-creating-snapshot.md) 섹션을 참조하세요.

1. 원격 데스크톱을 사용하여 Windows 인스턴스에 로그인합니다.

1. [**실행(Run)**] 대화 상자에 **diskmgmt.msc**를 입력하고 Enter 키를 누릅니다. 디스크 관리 유틸리티가 열립니다.  
![\[Windows Server 디스크 관리 유틸리티\]](http://docs.aws.amazon.com/ko_kr/ebs/latest/userguide/images/Expand-Volume-Win2008-before.png)

1. **디스크 관리(Disk Management)** 메뉴에서 **작업**, **디스크 다시 스캔(Rescan Disks)**을 선택합니다.

1. 확장된 드라이브를 오른쪽 클릭하여 컨텍스트 메뉴를 열고 **볼륨 확장(Extend Volume)**을 선택합니다.
**참고**  
다음과 같은 경우 [**볼륨 확장**]이 비활성화(회색으로 표시)될 수 있습니다.  
할당되지 않은 공간이 드라이브에 인접하지 않습니다. 할당되지 않은 공간이 확장할 드라이브의 오른쪽에 인접해야 합니다.
볼륨은 마스터 부트 레코드(MBR) 파티션 스타일을 사용하며 이미 크기가 2TB입니다. MBR을 사용하는 볼륨의 크기는 2TB를 초과할 수 없습니다.  
![\[Windows Server 디스크 관리 유틸리티\]](http://docs.aws.amazon.com/ko_kr/ebs/latest/userguide/images/Expand-Volume-Win2008-before-menu.png)

1. **Extend Volume(볼륨 확장)** 마법사에서 **다음**을 선택합니다. **MB 단위로 공간 크기 선택(Select the amount of space in MB)**에 볼륨 확장에 적용할 메가바이트 수를 입력합니다. 일반적으로 최대 사용 가능한 공간을 설정합니다. **선택(Selected)** 아래에 강조된 텍스트는 추가되는 공간의 양이며, 볼륨의 최종 크기가 아닙니다. 마법사를 완료합니다.  
![\[Windows Server 볼륨 확장 마법사\]](http://docs.aws.amazon.com/ko_kr/ebs/latest/userguide/images/Extend-Volume-Wizard-Win2008.png)

1.  AWS NVMe 드라이버가 없는 인스턴스에서 NVMe 볼륨의 크기를 늘릴 경우 Windows에서 새 볼륨의 크기를 확인할 수 있도록 인스턴스를 재부팅해야 합니다. AWS NVMe 드라이버 설치에 대한 자세한 내용은 [AWS NVMe 드라이버](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/aws-nvme-drivers.html)를 참조하세요.

------
#### [ PowerShell ]

PowerShell을 사용하여 Windows 파일 시스템을 확장하려면 다음 절차를 따릅니다.

**PowerShell을 사용하여 파일 시스템을 확장하려면**

1. 중요한 데이터가 저장된 파일 시스템을 확장하려면 먼저 변경 내용을 롤백해야 할 경우를 대비하여 파일 시스템이 저장된 볼륨 스냅샷을 생성하는 것이 바람직합니다. 자세한 내용은 [Amazon EBS 스냅샷 생성](ebs-creating-snapshot.md) 섹션을 참조하세요.

1. 원격 데스크톱을 사용하여 Windows 인스턴스에 로그인합니다.

1. 관리자 권한으로 PowerShell을 실행합니다.

1. `Get-Partition` 명령을 실행합니다. PowerShell은 각 파티션에 해당하는 파티션 번호, 드라이브 문자, 오프셋, 크기 및 유형을 반환합니다. 확장할 파티션의 드라이브 문자를 확인해 둡니다.

1. 다음 명령을 실행하여 디스크를 다시 검색합니다.

   ```
   "rescan" | diskpart
   ```

1. **<drive-letter>** 대신 4단계에서 확인한 드라이브 문자를 사용하여 다음 명령을 실행합니다. PowerShell은 파티션의 최소 및 최대 허용 크기를 바이트 단위로 반환합니다.

   ```
   Get-PartitionSupportedSize -DriveLetter <drive-letter>
   ```

1. 파티션을 지정된 용량으로 확장하려면 **<size>** 대신 볼륨의 새 크기를 입력하여 다음 명령을 실행합니다. 예를 들어 `KB`, `MB` 및 `GB`로 크기(예: `50GB`)를 입력할 수 있습니다.

   ```
   Resize-Partition -DriveLetter <drive-letter> -Size <size>
   ```

   파티션을 사용 가능한 최대 크기로 확장하려면 다음 명령을 실행합니다.

   ```
   Resize-Partition -DriveLetter <drive-letter> -Size $(Get-PartitionSupportedSize -DriveLetter <drive-letter>).SizeMax
   ```

   다음 PowerShell 명령은 파일 시스템을 특정 크기로 확장하기 위한 전체 명령 및 응답 흐름을 보여줍니다.  
![\[PowerShell을 사용하여 파티션 확장 - 특정\]](http://docs.aws.amazon.com/ko_kr/ebs/latest/userguide/images/ebs-extend-powershell-v3-specific.png)

   다음 PowerShell 명령은 파일 시스템을 사용 가능한 최대 크기로 확장하기 위한 전체 명령 및 응답 흐름을 보여줍니다.  
![\[PowerShell을 사용하여 파티션 확장 - 최대\]](http://docs.aws.amazon.com/ko_kr/ebs/latest/userguide/images/ebs-extend-powershell-v3-max.png)

------