Размеры папок: учитывать хардлинки

Вам не хватает чего-то в Far? Вы считаете, что вашу идею стоит услышать? Пишите сюда.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Размеры папок: учитывать хардлинки

Post by DkmS »

При подсчёте размеров папок, похоже, никак не учитываются hardlink'и файлов. Когда их, линков, немного, то наплевать, а вот, например, в Висте разработчики решили ими активно попользоваться (в паках \System32, \SysWOW64 ФАР показывает по 2-3 линка для очень многих файлов). В итоге сумма объёмов всех папок и файлов и свободного места заметно превышает объём раздела, на котором установлена Vista (у меня разница больше 10 Гб).
Есть ли какая-то возможность положение исправить?

P.S. Системный Explorer, кстати, ведёт себя столь же глупо :cry:
User avatar
Smitis
Posts: 1639
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 20 times
Been thanked: 41 times

Post by Smitis »

DkmS
И что же с ними делать? Не учитывать? Тогда опять будет несоответствие - объём занятый файлами будет показываться меньше, чем на самом деле.
Разум когда-нибудь победит.
Tonal
Posts: 73
Joined: Sat 27 Oct, 2007 14:42
Location: Новосибирск
Contact:

Post by Tonal »

А как ты себе это представляешь?
Насколько я понимаю, hardlink - это когда на одни и те же данные файла ссылаются записи из нескольких директорий. Причём они равноправные, т.е. нет какой-то одной директории где файл "по настоящему" живёт. :-)

Ну и в данных нет обратных ссылок, только счётчик.

Так что, чтобы по честному подсчитать объем файлов на разделе, с учётом hardlink-ов, нужно для каждого файла узнать не является ли он линком другого.
А это довольно дорого получается...
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Smitis wrote:И что же с ними делать? Не учитывать?
Если вопроса не читать, то и делать ничего не надо, да.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Tonal wrote:А как ты себе это представляешь?
Представляю, что при подсчёте размера папок размер каждого файла поделится на количество ссылок (похоже, это количество довольно легко может быть получено). Можно, конечно, параметр какой-то придумать, т.к. для разных целей можно считать по-разному...
User avatar
zg
zero-gravity
Posts: 5878
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 155 times
Contact:

Post by zg »

DkmS wrote:Представляю, что при подсчёте размера папок размер каждого файла поделится на количество ссылок (похоже, это количество довольно легко может быть получено). Можно, конечно, параметр какой-то придумать, т.к. для разных целей можно считать по-разному...
а если есть файл => два хардлинка. один внутри искомой папки, другой — нет. фигню ж получим.

а вообще: тему — закрыть, автора — забанить.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

zg wrote: тему — закрыть, автора — забанить.
Странно, как ты ещё не удавился :P
User avatar
zg
zero-gravity
Posts: 5878
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 155 times
Contact:

Post by zg »

DkmS wrote:Странно, как ты ещё не удавился
от того что я удавлюсь — людей без мозгов меньше не станет.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

zg wrote:от того что я удавлюсь — людей без мозгов меньше не станет.
Как раз на единицу это множество и уменьшишь - пользу человечеству принесёшь. :roll:
Tonal
Posts: 73
Joined: Sat 27 Oct, 2007 14:42
Location: Новосибирск
Contact:

Post by Tonal »

DkmS wrote:
Tonal wrote:А как ты себе это представляешь?
Представляю, что при подсчёте размера папок размер каждого файла поделится на количество ссылок (похоже, это количество довольно легко может быть получено).
Да легко. Я написал как - полным сканом всего раздела.

Если я не прав, и есть гораздо более быстрый способ, попробуй сам его реализовать, а потом можно будет и пач оформить - Фар то нонича открытый. :-)

Будет обкатанный код, на любом языке, с переводом на С++ и пачем могу помочь. :-)
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Tonal wrote: Если...
Добавь к панели колонку "LN" и полюбуйся.
Tonal
Posts: 73
Joined: Sat 27 Oct, 2007 14:42
Location: Новосибирск
Contact:

Post by Tonal »

DkmS wrote:Добавь к панели колонку "LN" и полюбуйся.
Ну и что с того, что ты знаешь количество?
Какой смысл этого знания?
Как ты его будешь использовать?

Линки, при копировании между разделами, например, не учитываються.
Т.е. ориентируясь на размер не учитывающий линков, ты можешь прикинуть, "влезет или нет", а если будет по твоему, то это станет невозможно. :-)
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Слушай, всё понял про твои возможности, спасибо.
User avatar
t-rex
Страшный и ужасный
Posts: 4907
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 6 times
Contact:

Post by t-rex »

DkmS
Ты тупой?
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Неа, это просто ты мудак. Да ещё и активный - лезешь, куда не просят и где сказать ничего не можешь.
Post Reply

Return to “Предложения и идеи”