tengu_crow: (Default)
[personal profile] tengu_crow
Идея каталогера, который бы сохранял на диске содержимое моей библиотеки (медиатеки? информатеки? дискохранилища?) dvd не отпускала меня с тех самых пор, как я перебрался на убунту. Конечно, Cathy прекрасно работала под wine-ом, и вполне справлялась с теми задачами, которые на нее были возложены еще в старой системе. Некоторое время у меня крутилась в голове идея обобщенного скрипта на Питоне, однако в конце-концов на Хабре появился пост, который расставил все по своим местам. Главной оказалась идея о том, что файловую структуру диска без особых хлопот можно получить через find.

читать дальше в wordpress'e


11го марта я написал на базе того, что было описано на Хабре свой вариант скрипта. Главное отличие в том, что мне хотелось большего автоматизма. Свои диски при записи я как правило называю вполне внятными именами (чего по моим наблюдениям многие не делают), которые пишу маркером на дисках же. Т.е. диск с именем video20100327 будет подписан соответствующе и вполне однозначно привязан к системе обозначений (другое дело что кроме video20100327 на него можно дописать всякой пояснительной информации).

Вот что получилось в моем варианте:
#! /bin/bash

# получаем название диска и путь куда сохранить каталог
# в моем случае - это будет ~/hive/cat

A=$(isoinfo -i /dev/cdrom -d | grep "Volume id" | sed "s/^.*: //g") && \
h=$'/home/vik/hive/cat/' && \

# информируем пользователя о том что и куда пишем
echo $A
echo $h$A

# создаем файл-каталог текущего dvd
# туда складываем заголовок: название диска, дату создания
# и линейку-разделитель

touch $h$A.kat && \
echo 'disk: '$A > $h$A.kat
date +%Y-%m-%d' '%H:%M >> $h$A.kat
echo '=============================================================' >> $h$A.kat

# получаем содержимое диска, сортируем его по порядку,
# обрабатываем его sed'ом - убираем лишнюю информацию
# и лишний кусок пути после чего сливаем содержание в файл-каталог

find /media/cdrom0 | sort | \
                            sed -e '1d' -e 's=/media/cdrom0/==g' \
                                >> $h$A.kat && \

# извлекаем диск - очень удобно когда каталогизируется множество дисков
# если мешает - можно закомментировать.
eject

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

Каталогизация идет примитивно - на панель GNOME уже описанным методом вытащена кнопка. Диск вставляется. Я жду пока система смонтирует его, кликаю по кнопке, пауза... диск сам извлекается обратно. После чего файл перекладывается в нужную папку.

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

Искать можно, например, способом описанном в статье на хабре. Лично я просто пользуюсь grep'ом. Эта система очень хорошо описана в статье про греп и словари - кстати, очень рекомендую.

В приложении к дискам это может выглядеть например так. Мне хочется вспомнить где у меня лежат Карпатские фотографии 2008-го года.
vik@firefly:~/hive/cat$ grep -R 2008.*Карпаты *

(-R означает "искать рекурсивно во всех подкаталогах")

Получаем:
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/DSC08224.JPG
...
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/MOV08356.MPG
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/MOV08356.THM
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/Фото Антона
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/Фото Антона/DSC03273.JPG
...
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/Фото Антона/MOV03416.MPG
gifs20050403trave/FOTO20080620.kat:20080425 - 0503 - Поход в Карпаты/Фото Антона/MOV03416.THM
gifs20050403trave/TRAVE20080711.kat:accounts/20080426 Карпаты Абордажная Команда Boarding Party
gifs20050403trave/TRAVE20080711.kat:accounts/20080426 Карпаты Абордажная Команда Boarding Party/01.JPG
gifs20050403trave/TRAVE20080711.kat:accounts/20080426 Карпаты Абордажная Команда Boarding Party/02.JPG
gifs20050403trave/TRAVE20080711.kat:accounts/20080426 Карпаты Абордажная Команда Boarding Party/03.JPG
...
sper20060105_20081209/SPER20081208.kat:ferbot2/accounts/20080426 Карпаты Абордажная Команда Boarding Party
...

То есть фотографии (и отчеты, которые попутно нашлись) лежат в бандлах с наклейками "gifs20050403trave" и "sper20060105_20081209" соответственно и называются "FOTO20080620.kat", "TRAVE20080711.kat" и "SPER20081208.kat". Спером у меня называются бэкапы по давней традиции. Снимаем с полки нужные бандлы и достаем соответствующие диски.



Приятная особенность, которая выяснилась по ходу дела. Неделю назад я поставил себе MetaTracker - настольную поисковую систему, вроде GoogleDesktop сотоварищи. Когда понадобилось найти книгу - выяснилось, что он просканировал и мою библиотеку на дисках и искал название в том числе и по ней. В итоге я не покидая из трекера получил все координаты нужного мне источника - поскольку название файла и папка где он лежит прямо указывали на нужный dvd. Plain text традиционно рулит и педалит.

Date: 2010-03-27 05:17 pm (UTC)
From: [identity profile] cymepk.livejournal.com
Осталось добавить в эту стройную систему RFID-метки=)

Date: 2010-03-27 05:34 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Это идея :) С другой стороны позволить соседям у меня за стеной с помощью сканера отслеживать перемещения моих дисков и делать из этого выводы? Кто параноик? Я параноик?

Date: 2010-03-27 05:40 pm (UTC)
From: [identity profile] d7s.livejournal.com
Добавить множество ложных рфидов! Не говоря уже о мерах активного противодействия.

Date: 2010-03-27 05:44 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Угумс. И тасовать их по псевдослучайным законам, маскируясь под белый шум... меня точно тогда загребут. Не ЦРУ, так Желтый Дом :)

Date: 2010-03-27 05:47 pm (UTC)
From: [identity profile] cymepk.livejournal.com
угу, активно и хаотично перемещать их с места на место.
*представил себе Тэнгу, жонглирующего тортами с дисками, дабы сбить с толку соседей

Date: 2010-03-27 05:52 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Торт это хорошее название :))) возьму на вооружение :)))

Тэнгу сейчас может разве что вяло их тасовать (задумчиво выполняет вольт, пролистывает колоду, снимает, рассеянно вытаскивает туза пик из середины колоды... спохватывается и прячет карты). Но вообще да - жонглировать это идея. Однако, боюсь, что время на поиск требуемого диска сильно удлинится (я бы даже сказал может бесконечно удлиниться - тут на ум приходят шеклиевские "Хождения Джоэниса" с их перестраиваемым противошпионским пентагоном, где блукают не столько шпионы, сколько сами служащие).

Date: 2010-03-27 05:45 pm (UTC)
From: [identity profile] cymepk.livejournal.com
оу, у ваших соседей уже есть сканер RFID-меток?=)
В любом случае, им надо еще знать, что означает эта куча меток, лежащих скорее всего в одном месте:)

Date: 2010-03-27 05:48 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
От наших соседей всего можно ждать... (таинственно вращает глазами)... спутники шпионы, допросы на полиграфе...

Я думаю, если они приобрели рфид-сканер, то до всего остального они быстро додумаются. Или решат, что у меня склад попяченной продукции :)))

Date: 2010-03-27 05:52 pm (UTC)
From: [identity profile] cymepk.livejournal.com
да уж... в этом жестоком мире вообще одна надежда на шапочки из фольги. Желательно заземленные=)

Date: 2010-03-27 05:53 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
а ведь таки да. и опять таки можно чужие рфиды попячивать... с другой стороны сканерные ворота по идее на фольгу будут реагировать. на моток провода во всяком случае реагировали.

(no subject)

From: [identity profile] snusmuumra.livejournal.com - Date: 2010-03-27 06:02 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 06:07 pm (UTC) - Expand

Date: 2010-03-27 05:59 pm (UTC)
From: [identity profile] d7s.livejournal.com
НЪТЪ! Шапочка из фольги НЕ СПАСАЕТ!!!!111

(no subject)

From: [identity profile] snusmuumra.livejournal.com - Date: 2010-03-27 06:03 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 06:05 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 06:07 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 06:09 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 06:15 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 07:27 pm (UTC) - Expand

(no subject)

From: [identity profile] cymepk.livejournal.com - Date: 2010-03-27 06:19 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 07:27 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 10:40 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 07:46 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 08:30 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 10:04 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 10:06 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 06:03 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 06:10 pm (UTC) - Expand

(no subject)

From: [identity profile] snusmuumra.livejournal.com - Date: 2010-03-27 06:17 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 07:25 pm (UTC) - Expand

(no subject)

From: [identity profile] snusmuumra.livejournal.com - Date: 2010-03-27 07:41 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 08:46 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 08:30 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 10:03 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 08:50 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 10:39 am (UTC) - Expand

Date: 2010-03-27 05:22 pm (UTC)
From: [identity profile] d7s.livejournal.com
> Диск вставляется. Я жду пока система смонтирует его, кликаю по кнопке, пауза..

Но зачем?

Date: 2010-03-27 05:36 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Кстати, да. Ну... так было проще навскидку. Плюс можно вкушать по ходу дела различные плюшки :)

А как можно было бы сделать иначе? Я просто не уверен что смогу обойти автомонтирование в Убунте.

Date: 2010-03-27 05:39 pm (UTC)
From: [identity profile] d7s.livejournal.com
Во-первых, автомонтирование реализуется десктопным окружением, во-вторых, я помню в гномонастройках автомонтирования возможность автоматически запускать программу/скрипт при обнаружении подключенного диска/флешки/еще какой ерунды. Так что ты бы мог ограничиться ролью CD-changer'а, без тыканья в разные кнопки на всяких панельках.

Date: 2010-03-27 05:47 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Это я как раз знаю. Просто не уверен, что сумею включить его обратно :) Тут с пульс-аудио нехорошо получилось, так я уже берегусь :)

Ага. Клево. Сообразил. Главное опять-таки уметь эту штуку "отключить обратно" :) а то будет случай лисы и винограда - все закаталогизировано... а посмотреть - йок :)

Date: 2010-03-27 05:52 pm (UTC)
From: [identity profile] d7s.livejournal.com
> Тут с пульс-аудио нехорошо получилось, так я уже берегусь :)

С пульсаудио нехоро получалось само собой, но год назад. Что ты с ним сделал? %)

Date: 2010-03-27 05:58 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Удалил. Давно. Сейчас не доходят руки выпилить его так, чтобы система не приволакивала его обратно (знаю, что теоретически она этого не должна делать, если я его запурджил - но делает) и вообще я не уверен, что правильно поступил :) Мучает совесть и по ночам грезится Гарринарт Поттеринг который укоризненно машет палочкой с криком авада кедавра качает головой и объясняет мне как я неправ, что удалил такой подающий надежды харвестер.

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 06:01 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 06:11 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-27 06:13 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-27 07:24 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 08:32 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 10:16 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 10:17 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 10:29 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 10:38 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 10:58 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 11:19 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 11:29 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 11:35 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 11:39 am (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 11:51 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 12:03 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 12:10 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 12:19 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 12:36 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 12:59 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 01:17 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 01:23 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 01:56 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 02:03 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-28 02:21 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-28 02:22 pm (UTC) - Expand

Date: 2010-03-30 01:19 pm (UTC)
From: [identity profile] lstranger.livejournal.com
А я тоже категорически не люблю, когда WM пытается строить из себя венду и самостоятельно автоматически запускать-форматировать-жарить-парить-спинумыть. Поэтому поддерживаю идею нажимать на кнопку. Кстати, в тему автоматизации - пока не разобрался, как KDE4 отучить рисовать сообщение от D-Bus о том, что у меня диск вставлен в привод, мешает очень, выводит огромное окно с сообщением, хотя все службы KDE4 отключены. Отключать D-Bus не идея, потому что ivman через него работает (ага, кстати говоря, ivman всю эту вышеописанную автоматизацию легко делает). Жаль, что KDE3 в убунте 9.10 нету...

Date: 2010-03-30 02:35 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Угумс. "Программа, которая считает себя умнее пользователя" :)

Увы :( KDE не моя среда :( А общие советы типа покопаться где-нибудь в настройках или конфигах уже наверное опробованы. Кстати, чем KDE показывает эти сообщения? :)

Date: 2010-03-31 09:33 am (UTC)
From: [identity profile] lstranger.livejournal.com
KDE4 - это plazma, там дофига настроек спрятано подальше, у мелкомягких учатся, не иначе. Те настройки, что смог найти - убрал, это было отключение всех служб, кроме hotkeys. Видимо, что-то спрятанное есть, надеюсь, оно всё же отключаемое.
Показывает - просто окошко выводит вверху справа, наверху окна сообщение, что появилось (например: "диск Backups"), ниже предлагает его открыть (когда DVD вставляю, то там ещё и поиграть предлагает). Приходится на него мышой и нажимать "Esc", тогда пропадает.

Date: 2010-03-30 06:29 pm (UTC)
From: [identity profile] d7s.livejournal.com
Во-первых, автоматизация это хорошо, во-вторых она достаточно настраиваема. В-третьих, тенгу нажимал кнопку не чтобы смонтировать, а чтобы запустить свой скрипт каталогизации, как я понял, а это выглядит как лишнее действие.

Какое окно с сообщением имеется в виду? У меня вот единственные нотификейшены о девайсах показывает виджет device notifier (внезапно, правда?), а его можно убрать с десктопа. А вот d-bus трогать не надо, это системная служба сообщений, на ней работает чуть менее чем все.

P.S. И что же, в этих ваших огромнейших репозиториях убунты нет кде3? Это удивительно.

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-30 06:33 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-30 06:39 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-30 06:46 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-30 07:38 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-30 07:54 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-30 08:00 pm (UTC) - Expand

(no subject)

From: [identity profile] tengu-crow.livejournal.com - Date: 2010-03-31 04:32 am (UTC) - Expand

(no subject)

From: [identity profile] lstranger.livejournal.com - Date: 2010-03-31 10:17 am (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-31 11:20 am (UTC) - Expand

(no subject)

From: [identity profile] lstranger.livejournal.com - Date: 2010-03-31 12:05 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-31 12:57 pm (UTC) - Expand

(no subject)

From: [identity profile] lstranger.livejournal.com - Date: 2010-03-31 01:34 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-31 04:47 pm (UTC) - Expand

(no subject)

From: [identity profile] lstranger.livejournal.com - Date: 2010-03-31 02:22 pm (UTC) - Expand

(no subject)

From: [identity profile] d7s.livejournal.com - Date: 2010-03-31 04:49 pm (UTC) - Expand

Date: 2010-03-27 06:36 pm (UTC)
From: [identity profile] 715.livejournal.com
Только музыкальную базу храню в "Меломании" (тучи дисков), да и то все подумываю о нескольких терабайтных винтах.

Date: 2010-03-27 07:23 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Ну... тут кому - что. (с интересом) А операционка? :)

Date: 2010-03-28 02:10 pm (UTC)
From: [identity profile] 715.livejournal.com
Вин ХП СП2. Ты вот часто обращаешься к своим архивам файловым? Имхо, если не связано с работой (даже не знаю с какой), в хранении и каталогизации нуждаются только музыка, изображения и документы. Кино - нет смысла, оно и так везде есть и его ВСЕГДА можно найти. Тоже страдал, записывая кино на болванки, теперь сую их в печку СВЧ или стреляю с рогатки :)

Date: 2010-03-28 02:19 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Именно под музыку, изображения и документы система и заточена. Кино - это приятное дополнение. Кроме того кино-кину рознь. Съемки минобороны ТАКР "Кузнецов" или Battlefield Vietnam не в каждом торренте найдешь.

February 2026

S M T W T F S
1234567
891011121314
1516171819 2021
22 232425262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 15th, 2026 11:36 pm
Powered by Dreamwidth Studios