주어진 디렉토리가 다른 마운트 지점 내의 서브 디렉토리 인 유스 케이스를 만족시키는 것은 없습니다. 예를 들어, 호스트 : / real_thing에 대한 NFS 마운트 인 / thing이있을 수 있습니다. / proc / mounts / etc / mtab에서 grep을 사용하면 존재하지 않는 마운트 지점을 찾게되므로 'mount'가 작동하지 않습니다. 예를 들어, / thing / thingy는 마운트 지점이 아니지만 / thing은 호스트 : / real_thing에 마운트됩니다. 여기서 투표 한 가장 좋은 답변은 실제로 "디렉토리 / 볼륨이 마운트되어 있는지 확인하는 가장 좋은 방법"이 아닙니다. 나는 'df -P'(-P POSIX 표준 모드)를보다 깔끔한 전략으로 사용하여 찬성 투표했습니다.
dev=`df -P /thing/thingy | awk 'BEGIN {e=1} $NF ~ /^\/.+/ { e=0 ; print $1 ; exit } END { exit e }'` && {
echo "Mounted via: $dev"
} || {
echo "Not mounted"
}
이것을 실행 한 결과는 다음과 같습니다.
Mounted via: host:/real_thing
실제 마운트 지점이 무엇인지 알고 싶다면 문제 없습니다.
mp=`df -P /thing/thingy | awk 'BEGIN {e=1} $NF ~ /^\/.+/ { e=0 ; print $NF ; exit } END { exit e }'` && {
echo "Mounted on: $mp"
} || {
echo "Not mounted"
}
해당 명령의 출력은 다음과 같습니다.
Mounted on: /thing
이것은 임의의 디렉토리 또는 파일 목록을 통해 chroot 외부, chroot 내에서 마운트 지점을 미러링하는 일종의 chroot를 작성하려는 경우 매우 유용합니다.