[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: программистам: отличить друг от друга файловые системы



On Fri, 28 May 2010 21:30:08 +0400
"Dmitry E. Oboukhov" <unera@debian.org> wrote:

> имеем несколько (в пределе два) существующих путей
> 
> /path1/to
> /path2/to
> 
> нужно дать положительный ответ на вопрос: расположены ли оба пути на
> одной файловой системе или же на разных?
> задачу надо решить без парсинга всяких mtab и /proc/filesystems.
> решение задачи нужно в рамках проекта написанного на C потому с
> парсингом завязываться не хочется. но нормального решения не нашел,
> потому спрашиваю, может кто сталкивался?
> 
> 
> первое что пришло в голову это функции statvfs(2) и statfs(2)
> но я написал на них тест: на вход передаем путь, программа печатает
> все содержимое возвращаемой структуры. очень надеялся я на поле "file
> system id", однако на моих хостах где-то в 90% случаев fsid возвращает
> равным нулю даже в некоторых случаях для корневой файловой системы.
> 
> есть ли еще способы различить файловые системы?

ковырни tar, например, у него есть такой флаг "ходить только по одной ФС"


Reply to: