Sprawdź, czy coś jest zamontowane


1

Chcę sprawdzić, czy coś jest zamontowane lub nie /mnt/MyCloud. Próbowałem:

  • if mountpoint -q /mnt/MyCloud; then
  • if mountpoint -q "/mnt/MyCloud"; then
  • Edytować: if mount | grep /mnt/MyCloud > /dev/null; then

Oboje idą do else (zwraca fałsz, chyba)

Jaki jest właściwy sposób sprawdzenia takiej rzeczy?

Odpowiedzi:


1

Zgodnie z mountpoint strona man:

STATUS WYJŚCIA

Zero, jeśli katalog lub plik jest punktem montowania, niezerowy, jeśli nie.

Według twojego fragmentu powiedziałbym, że sprawdzenie jest wykonane poprawnie. Ponadto wypróbowałem go za pomocą mountpoint mój i zwraca to, czego się oczekuje.

#!/bin/bash

if mountpoint -q /home; then
  echo "It's a mountpoint"
fi

Po uruchomieniu kod drukuje frazę. Jeśli nie masz takiego zachowania, to:

  • Sprawdź, czy opakowanie, które zawiera mountpoint jest skorumpowany.
  • Sprawdź man strona twojego polecenia. Kod powrotu może się różnić między różnymi dystrybucjami.
  • Sprawdź, czy tak tak właściwie punkt montowania. Możesz uruchomić nagiego mount polecenie i sprawdź, czy znajduje się na liście aktualnie zamontowanych punktów. Zauważ, że nie zamontowany punkt zwróci niezerowy kod zgodnie z dokumentacją, nawet jeśli katalog / plik istnieje.

Dzięki! Wygląda na to, że nie jest to punkt montowania. Uruchomiłem ten skrypt - github.com/Zacho2/PiCloud/blob/master/picloud.sh - linie 40-44 montują mój NAS do / mnt / MyCloud, i jeśli przejdę do / mnt / MyCloud i utworzę plik, to utworzy go na NAS, więc nie jestem pewien, dlaczego „zamontuj” go nie wyświetla.
Amit

1
Po szybkim obejrzeniu kodu dołącza linię do /etc/fstab plik, ale go nie montuje. Musisz go zamontować ręcznie, określając punkt montowania za pomocą mount /mnt/MyCloud lub montując wszystkie swoje punkty mount -a.
nKn

Ok, więc mount -a jest droga, niestety, urządzenie jest zajęte i używane przez PID kernel, więc nie będzie się montować
Amit
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.