LINUX.ORG.RU
ФорумTalks

Идеи по иерархии и именованию файлов?

 , ,


1

2

Задумался над вопросом, а какие подходы существуют к иерархии и именованию пользовательских файлов (речь о /home). Какие плюсы и минусы у тех или иных подходов размещения всех тех многочисленные файлов: музыки, фильмов, книг, загрузок из интернета, собственных проектов и прочего.

С удовольствием бы прочитал какую-нибудь книгу с фундаментальными исследованиями по этому вопросу, но, так понимаю, таких не пишут.

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

Интересующие принципы иерархичности: удобная и понятная иерархия, позволяющая быстро и интуитивно найти нужный файл без прибегания к средствам поиска. Например нужно ли делать дерево каталогов с большой глубиной или же с малой, но размещая в каждой директории множество файлов? Как решать вопрос, когда по смыслу файл подходит в два места каталога? Вручную прокидывать сим/хардлинки? Стоит ли складывать все файлы, доступ к которым хотелось бы иметь из-под разных пользователей/ОС (музыка, фильмы, книги) вне /home или же всё-таки класть в /home и chmod'ом расшаривать доступ?

Принципы именования: быстрое нахождение файла как при работе в файловом менеджере, так и в консоли, удобочитаемость, пригодность для массовой обработки утилитами. Именовать файлы по-русски или по-английски? В каких случаях разделять слова подчёркиваниями, а в каких дефисами? Как быть с файлами, полученными через торренты, которые обычно хочется переименовать/переместить, но при этом сохранить файл на раздаче? Опять же вручную прокидывать линк? Чуть ли не самый важный вопрос: как писать комментарии к файлам на уровне файловой системы? Создавать текстовый файлик и класть его рядом с файлом? Но для этого придётся каждый одиночный файл прятать в отдельную директорию, чтобы комментарий был рядом. Как решить вопрос с отображением комментария напротив файла в команде ls -l? Писать свой враппер-велосипед?

Хотелось бы решить эти вопросы максимально просто, изящно и быстродейственно без всяких семантических десктопов.



Последнее исправление: D_Lans (всего исправлений: 2)
Ответ на: комментарий от Kindly_Cat

Просто сделай как можешь и всё.

Как могу — не нравится, а как сделать, чтобы нравилось, не знаю.

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

Раз никто ещё не написал, то напишу я. Поищи на тему файловых систем на тегах. Я как-то хотел таким заняться для мультимедии, но ниасилил. Как теперь обстоят дела в этой сфере не знаю. Может, местные аналитики поделятся историями успеха.

Хм, интересное предложение. Вообще о таких ФС не слышал. Но достаточно компромиссное: в идеале хотелось бы остаться на своей няшной ext4.

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

Как хранить, отображать и искать документы уже известно - ищи работы по поиску документов в сети интернет (каталоги, поисковики и т.п.). Таких работ масса. Смысл один и тот же, только объекты разные (вебсайты vs файлы).

Во-первых как в таком случае решить вопрос с добавлением этой самой мета-информации к файлам? Всё вручную? Хотелось бы большей автоматизации.

Во-вторых мне бы не хотелось видеть у себя в системе тяжелого демона, висящего фоном и постоянно хрустящего диском и что-то индексирующего. Хотя, если он будет будить компьютер по ночам и делать свои дела, пока я сплю, – почему бы и нет?

Можно начать с патчинга любой fs

Слишком хардкорно.

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

кстати, погляди в сторону strigi, а потом в сторону nepomuk.

Я указал в первом посте, что хотелось бы обойтись без семантических десктопов, к тому же KDE'шных.

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

Удобным является то, к чему ты привык. Как в интерфейсе, так и в файловой системе. Даже если ты называешь каталоги md5-хешами самого большого файла в них, за пару недель ты будешь в них ориентироваться за секунды.

Спасибо, Кэп.

Но суть в том, что привыкнуть можно ко всему. А более удачный вариант в далёкой перспективе может обеспечить более эффективную работу. Я возможности своего варианта уже исчерпал, поэтому в этой теме ищу ещё идеи.

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

А более удачный вариант в далёкой перспективе может обеспечить более эффективную работу.

Только в первое время (до привычки) и при обмене с другими пользователями. После привыкания уже нет разницы.

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

Cпроблема древовидной иерархией не решаема. надо переходить на графовидную структуру данных.

Внезапно! я так и сделал.

Помыкавшись по закладкам в браузере, программам для хранения инфы в древовидном формате (Mars Notebook для оффтопа, CherryTree, и т.д.) пришёл к такой софтине как Personal Brain (не реклама).

Там мощные возможности по организации сложных графов с информацией, можно даже прикреплять файлы... но это 1. Проприетарно. 2. Неудобно. 3. На Java. 4. Нельзя писать свои плагины. 5. Из пункта 4 => неавтоматизируемый бекап базы, что меня обескураживает.

Хотелось бы найти как минимум такую же по возможностям программу, но при этом легковесную, с консольным интерфейсом, возможно размещающую файлы на уровне ФС.

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

Ну что мешает взять готовые концепции:

1. команда file - выдает тип файла

2. всякие ffmpeg, id3tag - мета-инфа по типу данных

3. самое крутое это знать что внутри документов: doc2txt в помощь

В итоге, это будет аналог индексатора в винде - он занимается практически тем же. При этом появляется возможность делать full search по любым метаданным.

Проблема в том, что чтобы это реализовать на уровне ядра в принципе много ума не надо. Только распухнет метаинфа по FS и потеряется гибкость настройки (хотя как карты ляжут). С юзерспейса можно сделать конфигуратор, который под каждого пользователя будет снимать и записывать только необходимую для этого информацию. Тем не менее, уже имеются решения в виде locate, slocate и т.п., можно взглянуть на них: взять и сделать свой каталог. Плюс юзерспейс можно реализовать независимым от типа фс, что для мультиплатформы немаловажно.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.