Как сказать, смонтирован ли каталог удаленно с помощью Java

Существует ли способ определить программно, если конкретный каталог на самом деле удаленно смонтирован? Это может быть сделано с Java, и если не он может быть сделан с собственным кодом C по JNI?

Так как это - Java, который это могло выполнять в соответствии с Linux или Windows или Mac, таким образом, надлежащее решение должно обратиться ко всем этим платформам. (Снова, если его несколько разных решений с C по JNI это в порядке). И могут быть различные случаи как с NFS или самбой или чем-либо еще.

Спасибо.

7
задан Mike Kucera 27 January 2010 в 22:09
поделиться

3 ответа

Для Linux вы можете проанализировать / etc / mtab, чтобы найти тип файловой системы (NFS, SMB и т. Д.), и сопоставить его от известных типов сетевых файловых систем в вашей программе.

Редактировать: столбец 2 - это то, что вы хотите в / etc / mtab

0
ответ дан 7 December 2019 в 18:43
поделиться

Для Linux и, возможно, Macintosh, вы можете использовать системную библиотеку через JNI. Соответствующий системный вызов getmntent , , описанный здесь .

Существует поле в MnTent . Вы можете использовать для проверки, чтобы проверить, если монтификация находится с устройства или сервера, MNT_FSNAME , в аналогичном поле вы можете получить тип файловой системы, `mnt_type"

2
ответ дан 7 December 2019 в 18:43
поделиться

Мне это тоже нужно, и я могу в конечном итоге реализовать это с помощью этой команды:

df -k

Это работает в Linux, Mac OS и Solaris.

Возможно, это что-то еще, что будет добавлено в JDK 7, поскольку они также будут поддерживать символические ссылки.

0
ответ дан 7 December 2019 в 18:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: