Showing posts with label Настройки. Show all posts
Showing posts with label Настройки. Show all posts

Monday, July 23, 2007

Массовая конвертация ID3v1 и ID3v2 тэгов

Вопрос возник после заинтересованности в Music Player Daemon. Большинство музыки у меня в кодировке koi8-r и тем самым при добавлению в базе выходили кракозябры вместо русских названий песен и исполнителей.
Для конвертации понадобилось Java приложение ID3iconv. Скачать его можно отсюда.
Использовать её нужно командой:
java -jar путь/до/jar_файла путь_к_фалйам

Но что делать если нужно это сделать массово? Предположим что у нас есть в районе 100 файлов раскинутых ну к примеру по 50 папкам. Нужно делать рекурсию. Сначала расскажу об несокльких неудачных попытках.
1. Идея состояла в том чтобы список файлов передавать как /*/*.mp3 - Т.е. заходя в любую папку и меняя там все файлы...Но по запросу можно понять что мы можем зайти только в 1 директорию, т.е. Music/a/ в случае же если попробовать зайти через рекурсию в /Music/a/b то java машина может выдать ошибку о том, что аргумент слишком длинный.
2. Связка ID3iconv и find - По своету vonderer'a решил попробовать промутить скрипт, который бы перекодировал бы все найденные файлы в результате поискового запроса.
java -jar /home/id3iconv-0.2.1.jar -e cp1251 `find /D/Music/Russian/Ария/ -name *mp3`
Идея была убита тем что в результате выполения скрипта каждый пробел означал переход на новый файл. Т.е. файл 01 - Track01.mp3 Расценивался как 3 файла. Есстественно не обработанными оказывались все файлы.
3. Идея. Выполение скрипта на найденные файлы. Казалось бы всё что сделано просто поменяли местами предыдщуий алгоритм.
find /D/Music/ -name '*.mp3' -exec java -jar /home/id3iconv-0.2.1.jar -e cp1251 {} \;
Такую идею я позаимствовал у сообщества любителей MacOS ( http://www.macfaq.ru/index.php/Русские_Теги_в_iTunes ) Как ни странно но данный способ сработал. Все файлы были
переконвертированы в нормальный вид:-) При моей библиотеке в 70 Гб, данная функция оказалась просто необходимой при добавлении в базу mpd

Monday, March 5, 2007

Настройка Локальной Сети в Slackware

"Ох, мой родной любимый слакварь, я тебя всё таки воскресил..."
Именно эту фразу я произнёс буквально несколько минут назад. Но она не совсем точна:-) Воскресил я не саму слаку а локалку.
Всё началось с того, что в 1 прекрасный день я с ужасом обнаржуил что моя сетевуха приказала долго жить и ушла в мир иной:-( В тот же день и мой монитор отправился жить на тот свет...(Интересная последовательность событий:-)). Ну да ладно про сгоревшее и ушедшее прекратим, начнём про самое интересное.
Так уж получилось что мне в то время срочно был необходим доступ в Интернет (ну а как ещё бывает, когда всё сгорит?:-)), в итоге через 2 дня я сидел уже перед новым монитором в Windows и спокойно делал свои необходимые дела. Дела сделал, решил настроить монитор и сетевуху в слаке.

Для сетевой картый драйвера нашлись быстро (Asus NX1001). Проблем с установкой не возникло, всё довольно таки легко и просто:-) А вот с настроечкой локальной сети пришлось помучаться. Об этом и будет пост:-)

1.Вся настройка локальной сети может провестить командами:
1) ifconfig - назначаем маршруты для интерфейсов. Тут же "поднимаем" сетевой интерфейс. В случае если распределние IP-адрессов у вас просиходит через DHCP сервер, то пропиывать маршруты вам не придёться, только поднять интерфейс ifconfig интерфейс up. Если же вы хотите сами настроить (это куда полезнее, не всё то хорошо, что настраивается утилитами), то пишеться она так:
ifconfig <интерфейс> <ваш ip> netmask <маска_сети> up


2) netconfig. Настройка домена, IP-адресса, DHCP сервера. В случае если вы получаете IP через DHCP то ifconfig выполнять не надо. После того как настроите DHCP сразу вводите команду dhcpcd.

Вот этими 2 нехитрыми командами должна подниматься локальная сеть. По крайней мере по большинству руководств именно так. Однако есть небольшие "Но".

2. В принципе выполнив вышеуказанные команды (и прописав все маршруты! их вам должен дать провайдер!)вы уже должны иметь доступ по локальной сети. Но тут я столкнулся с проблемой. Я не мог попасть на домены, которые находились у меня в локальной сети. Хотя возможно и мог бы, если бы знал их IPшники. Первая же мысль неправильная работа DNS.
Все адресса к DNS серверам находятся в файле /etc/resolv.conf
root@home:/etc# cat resolv.conf
search corbina.net
nameserver 195.14.50.1
#nameserver 195.14.50.3
nameserver 195.14.50.21

search - это то доменное имя которое будет принято по умолчанию. Пример - в моей локальной сети есть форум находящийся по адрессу - http://homenet.corbina.net. Если я введу в адрессной строке homenet, то меня автоматически переадрессиует на homenet.corbina.net.
nameserver - это адресса до ДНС-серверов.
Первую строку вам автоматически пропишется при настройке DHCP. И, как утверждают, все необходимые адресса. Не тут то было:-) Именно на этом у меня всё и стояло. После прописывания дополнительных DNS всё заработало.

/*Комментируем стоит DNS который даётся на форуме провайдера, так что если у Вас когда нибудь будет схожая проблема в Лиунксе, мой вам совет - не слушайте провайдера:-) Проверьте всё сами посмотрев состояние подключения к локальнйо сети из под Windows:-)*/


Собственно после этих 2 настроек локальная сеть у Вас должна работать. Чувствую что, что то важное пропустил, но щас уже не помню (зло берёт - сил нет). Так что если что то упустил - просьба поправить или добавить:-)

Friday, February 9, 2007

Настройка VPN

На многих форумах уже отмечали любовь всех линуксоидов к VPN.
Попробуем разобраться:

Инструментарий который нам понадобиться: в принципе не так уж и много всего лишь 2 пакета: pptp и ppp. Второй пакет у вас должен быть уже установлен в системе. pptp придёться ставить самим:)
Итак пакеты мы поставили. Что дальше? Идём в каталог /etc/ppp/ и если там ещё не создан, то создаём каталог peers. В нём в свою очередь создаём текстовый файл (Именно этот файл и будет именем вашего соединения), ну назовём к примеру его Internet. Пример своего привожу ниже:
root@corbina:/etc/ppp/peers# cat Internet

name тут ваш логин
remotename PPTP
debug
lock
noauth
nobsdcomp
nodeflate
defaultroute
#updetach
nodetach
noproxyarp
pty "/usr/sbin/pptp адресс до VPN сервера --nolaunchpppd"

Теперь в каталоге /etc/peers/ изменим файлы: ip-up, ip-down и chap-secrets.
В первых 2-х нам будет необходимо прописать все маршруты.
В up для соединения, в down для разрыва. строки должны быть вида:

/sbin/route add -host 195.14.50.1 gw 10.220.0.17 eth0
/sbin/route add -host 195.14.50.3 gw 10.220.0.17 eth0

Ваши маршруты вам должен дать провайдер.
В chap-secets указываеться логи и пароль для соединения. Запись должна иметь аткой вид:
"логин" * "пароль" * (Внимание кавычки стоят не случайно).

Вот в принципе и всё. теперь запускаем pppd call Internet - и соедиение должно подняться. Но я столкнулся здесь с проблемой. Но она вроде бы связана только с моим провайдером. Выдвалась ошибка о том, что невозможно переписать маршрут default.
Перелазил кучу форумов, досканально изучил все мануалы лежажие на форуме моего провайдера. В пустую. Только потом мне ответили что совсем недавно мой провайдер начал экономить на адрессах. Решением проблемы стало банальное удаление default из таблицы маршрутизации и прописание дополнительного маршрута до VPN сервера. В итоге строка получила такой вид:
route add Здесь_пишем_ адресс_до_VPN gw Шлюз dev eth0.
После чего VPN всё таки поднялся:)
Что удивительно, что в Windows у меня частенько VPN просто отключался (Район то подключили но не руками), в Linux'е же всё просто великолепно:) Если что-то упустил или кому то есть что добавить, то милости просим:)