20.2. 블록 장치 및 관련 메타데이터 제거
실행 중인 시스템에서 블록 장치를 안전하게 제거하려면 시스템 메모리 과부하 및 데이터 손실을 방지하려면 먼저 메타데이터를 제거해야 합니다. 스택의 각 계층을 처리하고 파일 시스템부터 시작하여 디스크를 진행합니다. 이러한 조치를 통해 시스템을 일관되지 않은 상태로 만들 수 있습니다.
제거 중인 장치 유형에 따라 특정 명령을 사용합니다.
-
LVM의 경우
lvremove
, Cryostatremove
,pvremove
를 실행합니다. -
소프트웨어 RAID의 경우
mdadm
을 실행하여 배열을 제거합니다. 자세한 내용은 RAID 관리를 참조하십시오. - LUKS를 사용하여 암호화된 블록 장치의 경우 특정 추가 단계가 있습니다. LUKS를 사용하여 암호화된 블록 장치에 대해 다음 절차는 작동하지 않습니다. 자세한 내용은 LUKS를 사용하여 블록 장치 암호화를 참조하십시오.
SCSI 버스를 다시 스캔하거나 운영 체제의 상태를 변경하는 다른 작업을 수행하면 I/O 시간 초과, 장치가 예기치 않게 제거되거나 데이터 손실로 인해 지연이 발생할 수 있습니다.
사전 요구 사항
- 파일 시스템, 논리 볼륨 및 볼륨 그룹이 포함된 기존 블록 장치 스택이 있습니다.
- 제거하려는 장치를 다른 애플리케이션 또는 서비스에서 사용하지 않도록 합니다.
- 제거하려는 장치에서 데이터를 백업했습니다.
선택 사항: 다중 경로 장치를 제거하려면 경로 장치에 액세스할 수 없는 경우 다음 명령을 실행하여 다중 경로 장치의 대기열을 비활성화합니다.
multipathd disablequeueing map multipath-device
# multipathd disablequeueing map multipath-device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이렇게 하면 장치의 I/O가 실패할 수 있으므로 장치를 사용하는 애플리케이션이 종료될 수 있습니다.
한 번에 하나의 계층이 있는 메타데이터를 제거하면 오래된 서명이 디스크에 남아 있지 않습니다.
프로세스
파일 시스템을 마운트 해제합니다.
umount /mnt/mount-point
# umount /mnt/mount-point
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일 시스템을 제거합니다.
wipefs -a /dev/vg0/myvol
# wipefs -a /dev/vg0/myvol
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/fstab
파일에 항목을 추가하여 파일 시스템과 마운트 지점을 영구적으로 연결한 경우 이 시점에서/etc/fstab
을 편집하여 해당 항목을 제거하십시오.제거하려는 장치 유형에 따라 다음 단계를 계속합니다.
파일 시스템이 포함된 LV(Logical volume)를 제거합니다.
lvremove vg0/myvol
# lvremove vg0/myvol
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 볼륨 그룹(VG)에 다른 논리 볼륨이 남아 있지 않은 경우 장치가 포함된 VG를 안전하게 제거할 수 있습니다.
vgremove vg0
# vgremove vg0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PV 장치에서 PV(물리 볼륨) 메타데이터를 제거합니다.
pvremove /dev/sdc1
# pvremove /dev/sdc1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow wipefs -a /dev/sdc1
# wipefs -a /dev/sdc1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PV가 포함된 파티션을 제거합니다.
parted /dev/sdc rm 1
# parted /dev/sdc rm 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 장치를 완전히 지우려면 파티션 테이블을 제거하십시오.
wipefs -a /dev/sdc
# wipefs -a /dev/sdc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 장치를 물리적으로 제거하려면 다음 단계를 실행합니다.
다중 경로 장치를 제거하는 경우 다음 명령을 실행합니다.
장치의 모든 경로를 확인합니다.
multipath -l
# multipath -l
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령의 출력은 이후 단계에서 필요합니다.
I/O를 플러시하고 다중 경로 장치를 제거합니다.
multipath -f multipath-device
# multipath -f multipath-device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
장치가 다중 경로 장치로 구성되지 않았거나 장치가 다중 경로 장치로 구성되어 있고 이전에 I/O를 개별 경로로 전달한 경우 미해결 I/O를 사용하는 모든 장치 경로에 플러시합니다.
blockdev --flushbufs device
# blockdev --flushbufs device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이는
umount
또는 Cryostatreduce 명령이 I/O를 플러시하지 않는 장치에 직접 액세스되는 장치에 중요합니다.SCSI 장치를 제거하는 경우 다음 명령을 실행합니다.
-
시스템의 애플리케이션, 스크립트 또는 유틸리티에서
/dev/sd
,/dev/disk/by-path
또는major:minor
번호와 같은 장치의 경로 기반 이름에 대한 참조를 제거합니다. 이렇게 하면 향후 추가된 다른 장치가 현재 장치에 대해 실수로 발생하지 않습니다. SCSI 하위 시스템에서 장치의 각 경로를 제거합니다.
echo 1 > /sys/block/device-name/device/delete
# echo 1 > /sys/block/device-name/device/delete
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 여기서
device-name
은 이전에 장치가 다중 경로 장치로 사용되는 경우multipath -l
명령의 출력에서 검색됩니다.
-
시스템의 애플리케이션, 스크립트 또는 유틸리티에서
- 실행 중인 시스템에서 물리적 장치를 제거합니다. 이 장치를 제거할 때 다른 장치에 대한 I/O가 중지되지 않습니다.
검증
제거하려는 장치가
lsblk
명령의 출력에 표시되지 않는지 확인합니다. 다음은 출력 예입니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow