LINUX.ORG.RU

проблема с отображением размера директорий в dolphin

 


1

1

Если в dolphin выставить внешний вид - «details» и сделать сортировку по размеру («size»), то открыв какой-нибудь не особо быстрый жёсткий диск он начинает сканировать все папки подсчитывая сколько там файлов. Никакого смысла от знания сколько файлов в папке мне вообще нет. Можно это отключить, но оставив работающую сортировку по размеру? Т.е. убрать это сканирование папок на количество файлов?

индексирование отключено (baloo), превьюхи выключены

зы: настройки отображения одинаковые для всех папок, т.е. вариант решения «выставить настройки для каждой папки индивидуально» - не подходит, это костыль

★★

Последнее исправление: devorg (всего исправлений: 2)

Чтобы узнать размер директории, как раз таки нужно пройтись по всем файлам и выдать сумму их размеров. Разве не так?

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

Разве не так?

Ну вообще то не так. Всё есть файл. И «папка» тоже. И она имеет свой собственный размер. Посмотри в mc.

Deleted
()
Ответ на: комментарий от Deleted

Ну чё, тогда и картинка/текст символизирющие папку на экране тоже имеют свой размер в памяти. Потому, щитаю, нужно выводить именно их.

anonymous
()
Ответ на: комментарий от Deleted

mc везде показывает 4096. Как это работает технически, inode вроде бы не хранит таких данных? Ведь чтобы знать размер директории, надо суммировать размеры всех файлов в ней.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

mc везде показывает 4096.

Не везде.

Как это работает технически

«Директория» - это запись в файловой таблице, имеющая атрибуты, а значит имеющая и размер (размер записи).

Deleted
()
Ответ на: комментарий от Deleted

У меня везде, хз почему. Может это причуды фс? Вот что говорит stat:

[alex@archlinux ~]$ stat code
  Файл: code
  Размер: 4096          Блоков: 8          Блок В/В: 4096   каталог
Устройство: 802h/2050d  Inode: 1442702     Ссылки: 13

Вопрос в том, как именно dolphin получает информацию о размере. Там вполне может быть рекурсивное суммирование размера всех файлов в директории, потому что с точки зрения кода это сделать намного проще, чем мучится с обеспечением поддержки разных фс.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

потому что с точки зрения кода это сделать намного проще

С точки зрения кода, dolphin читает «запись» «директории», а поэтому знает её длину без доп действий.

Deleted
()
Ответ на: комментарий от Deleted

Откуда такая инфа? Если смотреть свойства директории, то там именно суммирование размеров, что занимает некоторое время. А в табличном виде подсчёта размера нет и я хз по какому принципу он их сортирует. Потому что у меня директории с 4мб оказываются выше директорий с гигабайтами.

По теме - отключение подсчёта файлов не нашёл.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

Откуда такая инфа?

От туда, что он (dolphin) тебе эту самую запись воспроизводит: имя «директории», дата, права.

Deleted
()
Ответ на: комментарий от Deleted

Если реальный размер файла меньше минимального блока хранения в файловой системе (кластера), то этот файл будет занимать этот кластер целиком и поэтому подсчете этот файл будет размером с кластер.

Поэтому размер директории, как структуры содержащей указатели на другие директории и файлы в ней будет равен размеру кластера.

Так что такой размер директории никакого смысла не несёт. Долфин же подсчитывает суммарный размер вфайлов в ней.

anonymous
()

Гугл говорит что нельзя отключить. Хорошо хоть в отдельный поток вынесли. Но там про старую версию, возможно с тех пор ещё что-то изменилось.

InterVi ★★★★★
()
Ответ на: комментарий от anonymous

Поэтому размер директории, как структуры содержащей указатели на другие директории и файлы в ней будет равен размеру кластера.

Так и есть. В моём случае: 4096 * 8 = 32768кб, столько занимают inode. А реальный размер - десятки гб.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

объясню на пальцах что мне нужно:

захожу я свою фалопомойку через dolphin, там папки в перемешку с файлами (торренты и прочее барахло), вот он сразу начинает сканировать все папки, и это занимает 1-2 секунды, это напрягает, он это делает каждый раз.

Мне бы как в MC, чтобы он показывал какой-то фейковый размер папки, и вообще никогда их не сканировал (без моего разрешения). Но при этом оставив колонку «Size» и чтобы можно было сортировать по ней (оставшиеся файлы).

https://ibb.co/xsdn7Y9

devorg ★★
() автор топика
Ответ на: комментарий от Deleted

Похоже да, надо создать тему там. Спс!

devorg ★★
() автор топика
Ответ на: комментарий от devorg

На кде форуме это уже спрашивали и там ответили что невозможно. Зачем тебе этот фейковый размер? Сортировка по размеру кривая. Просто убери столбец с размером и используй любую другую сортировку.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

Кто спрашивал? В 2013 году? 5 лет уже прошло.

devorg ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.