The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Как получить список свободных инодов на си?, !*! co6aka, 12-Янв-04, 20:59  [смотреть все]
Собственно сабж! Подскажите плс если можно поподробнее я только учусь.
  • Как получить список свободных инодов на си?, !*! Murr, 01:08 , 13-Янв-04 (1)
    Вопрос некорректен.

    Какова конечная цель?

    • Как получить список свободных инодов на си?, !*! co6aka, 16:31 , 13-Янв-04 (2)
      FreeBSD 4.8 мне надо получить номера свободных инодов для того, что бы просмотреть их данные. Ну грохнул я дофига чего(файлы большие и их много ) :( ... Ищу описание ffs(видно плохо ищу, толкового ничего...).  Пока я знаю что при удалении стирается значение di_mode(в моем случае это не кретично) и количество ссылок в di_nlinc приравнивает нулю еще меняет время изменения методанных. Но материал у меня старый и куций ... Какие записи еще изменяются я пока
      не знаю, стираются ли блоки косвенной адресации... в общем пока много чего не знаю. И Си я почти не знаю, и руки у меня кривые, и вообще с моими вопросами в больницу!

      PS: Конечная цель: ----> Мне надо восстановить файлы.

      • Как получить список свободных инодов на си?, !*! Murr, 16:49 , 13-Янв-04 (3)
        ffs описана у Макьюзика.

        Можешь посмотреть код восстановления файлов на ext2 (часть Midnight Commander). Будет довольно полезно, т.к. ffs от ext2 мало чем отличается.

        А некорректен изначально потому, что на всех современных файловых системах нет никаких списков i-узлов, они выделяются динамически (и inode map может быть truncated).

      • Как получить список свободных инодов на си?, !*! ChiP, 01:06 , 14-Янв-04 (4)
        >FreeBSD 4.8 мне надо получить номера свободных инодов для того, что бы
        >просмотреть их данные. Ну грохнул я дофига чего(файлы большие и их
        >много ) :( ... Ищу описание ffs(видно плохо ищу, толкового ничего...).
        > Пока я знаю что при удалении стирается значение di_mode(в моем
        >случае это не кретично) и количество ссылок в di_nlinc приравнивает нулю
        >еще меняет время изменения методанных. Но материал у меня старый и
        >куций ... Какие записи еще изменяются я пока
        >не знаю, стираются ли блоки косвенной адресации... в общем пока много чего
        >не знаю. И Си я почти не знаю, и руки у
        >меня кривые, и вообще с моими вопросами в больницу!
        >
        >PS: Конечная цель: ----> Мне надо восстановить файлы.

        Попробуй посмотреть в сторону /usr/ports/sysutils/ffsrecov/ Однако, она работает только с ufs1.

        Удачи!

        • Как получить список свободных инодов на си?, !*! co6aka, 22:08 , 14-Янв-04 (5)
          В частности количество инодов постоянно с создания файловой системы.
          в моем разделе их должно быть 23604590 если не ошибся в подсчетах.
          Если стандартным вызовом нельза получить список, то можно ли как-то иначе его получить? По идее надо перебрать все иноды... (насколько я понимаю так работает debugfs, но она только под linux)Но вот как это сделать... исходники fsck'а помогли бы но я их опять не могу найти.
          ffsrecov вещь хорошая, я бы сказал необходимая, но ...

          ffsrecov -p -o 364576 /dev/ad0s1d
          ошибка симентации (core dumped)
          и
          qbic# ffsrecov -p /dev/ad0s1d
          WARNING: field fs_bmask is invalid, superblock may be corrupt.
          doesn't have magic
          field fs_bmask does not match parent value.
          sblkno:     77204    cblkno:       8    iblkno:   77208    dblkno:       8
          cgoffset:   77212    size:             8    dsize:    77220    ncg:          8
          bsize:        77224    fsize:            8    frag:     77228    minfree:      8
          maxcontig:  77244    maxbpg:       8    fsbtodb:      8    nindir:       8
          csaddr:     77276    cssize:       8    cgsize:   77280    ncyl:     77288
          cpg:            8    ipg:      77292    fpg:          8    flags:        0
          inodefmt: -159010699

          fsmnt:
          time:  Thu Jan  1 21:26:56 1970 UTC

          не думаю что именно такие данные в суперблоке.
          При этом fsck говорить что все впорядке да и монтируется все ок.
          Или в 4.8 уже по умолчанию ufs2 воткнули, а я и не заметил...

          PS:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру