블록 장치(예: /dev/sda
)가 있는 경우 스크립트에서(즉, 사용자 상호 작용 없이) 해당 파티션의 이름(있는 경우)을 어떻게 확인할 수 있습니까?
답변1
lsblk
관련된 모든 블록 장치를 인쇄합니다. 여기에는 해당 장치의 파티션이 포함됩니다. 물론 장치 자체가 포함되고 lsblk
특정 장치 제외를 허용하지 않으므로 아래 예제 솔루션에서는 inverted 만 사용합니다 grep
.
lsblk -o KNAME -n /dev/mmcblk0 | grep -v "^mmcblk0$"
전체 경로(grep 문자열 생성도 단순화함)의 경우 를 사용할 수 있습니다 -p
. 예를 들면 다음과 같습니다.
lsblk -po KNAME -n /dev/mmcblk0 | grep -v "^/dev/mmcblk0$"
답변2
이를 수행하는 데 사용할 수 있는 도구가 있습니다. 내가 자주 사용하는 도구 중 하나는 fdisk
블록 장치의 파티션을 나열하고 정확한 크기를 알려주는 fdisk입니다. fdisk
는 저장 측면에서 파티션의 내부 속성을 수정할 수도 있는 매우 다재다능한 프로그램이므로 사용할 때 매우 주의해야 합니다.
나열된 파티션을 사용하면 다음 명령을 간단히 실행할 수 있습니다
fdisk -l <name of block device>
. 이 시점에서 찾고 있는 파티션의 정확한 크기, 이름 및 유형을 확인할 수 있습니다. 다른 하드 디스크 관련 목적으로 추가로 사용 하려면 fdisk
다음 man
명령을 사용하여 매뉴얼 페이지를 엽니다 fdisk
.
man fdisk