Данная заметка в большей степени "шпаргалка для себя" , за более полной информацией советую обратиться к замечательной статье неизвестного автора,
по которой я и писал эту заметку.


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

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

Создать пару ключей можно командой gpg --gen-key или, для ленивых, воспользоваться мастером создания ключей графической утилиты seahorse (вас попросят ввести срок годности ключа, можно поставить бесконечность, пароль и такую информацию, как имя ключа и ваш e-mail):

Для просмотра закрытых и открытых ключей служат соответственно команды
gpg --list-secret-keys и gpg --list-keys

Теперь зашифровать файл можно командой:
gpg -er [имя ключа/получатееля] ./test.file

А расшифровать командой:
gpg -d test.file.gpg > test.file

Настроим доступ к удаленному серверу по ssh без пароля.

Делается эта нехитрая операция в три команды:

1) Создаем на локальном компьютере A пару ключей пользователя a:

a@A:~> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/a/.ssh/id_rsa):
Created directory '/home/a/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/a/.ssh/id_rsa.
Your public key has been saved in /home/a/.ssh/id_rsa.pub.
The key fingerprint is:
3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 a@A

2) На удаленном сервере B создаем директорию ~/.ssh в домашнем каталоге удаленного пользователя b:
a@A:~> ssh b@B mkdir -p .ssh
b@B's password:

3) Заливаем открытый ключ на сервер B:

a@A:~> cat .ssh/id_rsa.pub | ssh b@B 'cat >> .ssh/authorized_keys'
b@B's password:

Всё, теперь можно логиниться без ввода пароля:

a@A:~> ssh b@B hostname
B
[по мотивам статьи на linuxproblem.org "SSH login without password"]

И настроим доступ по ssh без пароля к роутеру Linksys WRT54GL.


Активируем демон sshd через веб-интерфейс роутера (вкладка Administration -> Services, SSHD ставим "Enable") и в поле "Authorized Keys" вбиваем содержимое файла ~/.ssh/id_rsa.pub (открытый ключ нашего локального пользователя a).

Готово, можно логиниться на роутер:
ssh -l root [ip роутера]

Зайдя в очередной раз в свой веб-альбом на Picasa обнаружил необнадеживающую надпись наверху страницы:
"Вы используете браузер, который поддерживается не полностью. Некоторые функции могут работать не совсем правильно, но испытать программу все-таки можно."
Или в английском варианте:
"You are using a browser that is not fully supported. Some features may not work too well, but you are welcome to have a look around."

Скрин прилагается:
В итоге была значительна урезана функциональность picasa, совсем не работал javascript. Это по меньшей мере странно, т.к. я пользуюсь последней версией firefox.

Грешил было на noscript, однако опытным путём выяснилось, что виноват старый (но добрый) Flash Player 7. Непонятно для чего, но google видимо проверяет его версию (хотя на picasa я что-то flash не замечал).

Выход: поставить не совсем стабильный ешё Flash Player 9, либо вовсе отказаться от Flash Player (удивительно, но совсем без него picasa работает!).

В google groups обсуждают данное явление, но похоже в гугле сами ещё не до конца понимают в чём проблема.

В общем неприятный косяк от google.

iPod Shuffle Database Builder (текст касается последней на тот момент версии - rebuild_db-1.0-rc1) - отличная утилита на языке python, которая позволяет заливать музыку на ваш iPod Shuffle как на обычную флэшку, после чего все залитые аудиофайлы автоматически добавляются в плейлист запуском всего одной команды (никаких вам iTunes и прочих менеджеров плейлистов).
Расскажу как я ей пользуюсь, возможно что-то вам покажется лишним, но преимущества и суть её работы думаю будет ясна.

1) Монтируем iPod, делаем Back Up всех файлов и трём на нём всё, кроме каталога /iPod_Control/iTunes и файлов в нём (rebuild_db не умеет сам создавать базы с нуля, так что оставим старые от iTunes).
2) Кидаем файл rebuild_db.py из архива rebuild_db в корневой каталог iPod. Я так же переименовал его в update.now, т.к. в некоторых файловых менеджерах можно назначить программу, запускаемую при выборе файла какого-либо расширения (в данном случае - .now).
3) Создаем каталоги в корневой директории вашего плеера, например для музыки (Music) и для подкастов (Audiobooks), а так же для документов (Documents).
4) Создаем скрипт, которым будем запускать обновление базы, я использую такой:


#!/bin/sh
# Переходим в каталог iPod
cd /media/usbdisk
# Обновляем базу
python ./update.now -r Music Audiobooks | zenity --list --column="iPod Update DB" --height=600 --width=600
# Выходим из каталога (освобождаем девайс для размонтирования)
cd /
# TODO Здесь можно поставить umount


Этот скрипт нужно запускать после добавления/удаления музыки на iPod (и как я уже сказал в некоторых файловых менеджерах можно привязать запуск этого скрипта к двойному клику по файлу update.now).

Обращу внимание на команду обновления базы. Здесь я указываю программе индексировать только директории Music и Audiobooks (при чем именно в таком порядке, а не в алфавитном, таким образом подкасты будут всегда в конце плейлиста). При этом файлы из каталога Documents добавляться в базу не будут, таким образом в нем можно хранить и аудиофайлы, не предназначенные для проигрывания.

Отмечу, что т.к. в базу нельзя например добавлять файлы с русскими буквами в именах, rebuild_db заменит все неправильные с её точки зрения символы на символы подчеркивания.

Вывод команды rebuild_db я перенаправляю в графическое окно, созданное утилитой zenity (стандартным виджетом списка). Данный процесс можно лицезреть на скриншоте:


Можно также соорудить такой забавный хак: создать каталог Favourites и запускать команду обновления в скрипте таким образом:
python ./update.now -r Music Audiobooks Favourites Favourites Favourites.
Теперь файлы из этого каталога в режиме плеера Shuffle ("в случайном порядке") будут звучать в три раза чаще.

Для универсальности рекомендую закинуть в корень iPod и exe-файл rebuild_db.exe, чтобы была возможность на любой системе обновить базу. Если это unix-система и на ней установлен python - запускайте update.now, если оффтопик - rebuild_db.exe, однако о гибкости можно забыть, в базу будут добавлены абсолютно все аудиофайлы, содержащиеся на плеере, в алфавитном порядке.

Итак, есть желание "сграбить" AudioCD (легально купленный) под Linux для прослушивание например на флэш-плеере.
Есть множество вариантов решения данной задачи, расскажу на каком остановился я и почему.

Формат.

Для сжатия полученных треков мной был выбран аудиоформат AAC.
Связано это с тем, что во всех тестах популярнейший MP3 показывает худшие показатели из всех более-менее распространенных на сегодняшний день кодеков. Так же я вынужден был отказаться от Ogg Vorbis из-за неповсеместной поддержки его в нужных мне устройствах воспроизведения (пример - iPod или Sony PSP). С wma всё ясно думаю всем, продолжать нет смысла.

Кодек.

Здесь мой выбор пал на Nero Digital Audio. По тем же тестам он выглядит предпочтительнее open-source кодека FAAC, к тому же существуют некоторые проблемы с воспроизведением файлов, сжатым кодеком FAAC, на плеерах iPod. Архив Nero Digital Audio с бинариками под Linux и оффтопик можно бесплатно скачать с официального сайта.

Grip.



И уже для непосредственного извлечения дорожек с AudioCD я использую удобную графическую программу Grip. Вкладка с настройки для Nero Digital Audio - на скриншоте (как видно, я выставил качество выше среднего - 80% и совместимый с iPod профиль LC AAC, все равно дополнительные HE1 и HE2 профили имеет смысл использовать лишь на низких битрейтах).


 

Copyright © 2007 DamnSmallBlog. Content is licensed under Creative Commons Attribution-Noncommercial.

Design: GeckoandFly and Blogcrowds.