Bunların hiçbiri, verilen bir dizinin başka bir bağlama noktası içindeki bir alt dizin olduğu kullanım koşullarını karşılamıyor. Örneğin, barındırmak için bir NFS bağlayıcısı olan / şey olabilir: / real_thing. Grep'i / proc / mounts / etc / mtab veya 'mount' komutunda kullanmak işe yaramayacak çünkü varolmayan bir montaj noktası arayacaksınız. Örneğin, / thing / thingy bir bağlama noktası değildir, ancak / thing ana bilgisayara monte edilmiştir: / real_thing. Burada oylanan en iyi cevap aslında "bir dizinin / volümün monte edilip edilmediğini belirlemenin en iyi yolu" DEĞİLDİR. Daha temiz bir strateji olarak 'df -P' (-P POSIX standartlar modu) kullanarak lehte oy kullanırdım:
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"
}
Bunu çalıştırmanın sonucu şöyle olacaktır:
Mounted via: host:/real_thing
Gerçek bağlama noktasının ne olduğunu bilmek istiyorsanız, sorun değil:
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"
}
Bu komutun çıktısı:
Mounted on: /thing
Bazı rasgele dizin veya dosya listesi aracılığıyla chroot içindeki montaj noktalarını chroot dışındaki montaj noktalarını yansıtan bir chroot türü oluşturmaya çalışıyorsanız, bu çok yararlıdır.