Archive for the ‘ linux ’ Category

VDPAU

Наверное, все уже слышали про новую фишку невидимых дров — VDPAU. Хоть она еще и очень сырая, все же решил поставить, а то HD загружает процессор полностью и он начинает громко шуметь кулером T_T Дрова новые уже давно стоят, эта функция поддерживается со 180-го, а вот mplayer что-то не работал, когда я тестировал его в прошлый раз. Сейчас патчи обновились, и я решил попробовать еще раз.

Дрова: ftp://download.nvidia.com/XFree86/
Патчи: ftp://download.nvidia.com/XFree86/vdpau/

Кто не знает, что делать, вот тут можно почитать руководство.

Сначала mplayer стал ругаться так же, как и в первый раз: Could not find matching colorspace — retrying with -vf scale… Оказалось, что с vdpau не работает рендеринг ass субтитров (точнее, работает, но опцию «ass=1» придется отключить). Впрочем, я так и не понял, в чем была фишка этой опции, т.к. разницы с ней и без нее не увидел никакой. Не помню, зачем я ее включал. Еще на всякий случай можно попробовать -noconfig. Однако, ругаться mplayer перестал.

Изменения действительно весьма ощутимы: 720p загружал процессор на ~20%, и это вместо прежних ~90% ^_^ К сожалению, открываются не все файлы: некоторые проигрываются, некоторые — нет. Так что, штука хорошая и полезная, но будем-c ждать более стабильных версий. Интересно, когда эти патчи доберутся до SVN mplayer’a?

Speed it up!

speedometer

Поставил bootchart, чтобы посмотреть как быстро загружается система. В итоге все закончилось как обычно: просидел весь вечер, копаясь во внутренностях оси… @_@

Итак,

01: Default

1. Default:  0:23
Неплохой результат, если не учитывать, что система свежая и в ней не установлено ничего ненужного. В убунте сколько было — не помню, старых бутчартов не сохранилось. По-моему, где-то в районе 25-28 сек. на относительно чистой системе. Хотя со временем скорость, конечно, упала — на глаз, примерно секунд до 40-45. Тут я вдруг вспомнил, что по дефолту в дебиане всевозможные системы оптимизации не установлены, и что их можно бы и поставить. Предполагаю, что ненужные сервисы уже отключены (либо их вообще нет), а всякие мелкие гайки (типа таймаута в грабе) закручены. Руководствовался я вот этим мануалом:
http://forums.debian.net/viewtopic.php?t=31275

02: Readahead

2. Readahead: 0:21 (-2s)
В ходе загрузки процессор используется не слишком-то активно, а диск сильно загружен (см. диаграмму 1), что не есть хорошо. Readahead, как можно догадаться из названия, заранее загружает необходимые для загрузки файлы в память, и потом они берутся по мере надобности оттуда, а не с винчестера, что ускоряет загрузку. Вы можете увидеть эффект на диаграмме 2: сперва идет кеширование файлов (сильная загрузка винчестера), затем существенно возрастает нагрузка на процессор. В мануале говорится, что это помогает не всем, и иногда это может даже замедлить загрузку на пару секунд, а может и вообще не дать никакого результата. Мне же это дало 2 секунды.

03: Parallel starting

3. Parallel starting: 0:17 (-4s)
Вместо последовательной загрузки сервисов можно включить параллельную, что позволит некоторым сервисам стартовать не дожидаясь друг друга. Говорят, это хорошо для двухъядерных процессоров, но и с одноядерным это явно пойдет на пользу. Обратите внимание, что сперва нужно использовать программу insserv: sudo update-bootsystem-insserv. Это переупорядочит скрипты, чтобы они могли стартовать параллельно, иначе толку не будет. Поскольку речь идет об init скриптах, тут нужно быть аккуратным, иначе могут быть проблемы. CONCURRENCY=shell сработал, но вывод вообщений при загрузке весь сбился и перепутался, поэтому пришлось включить CONCURRENCY=startpar, который у меня работает на 1 секунду дольше, чем shell. Итого еще 4 секунды.

В итоге имеем ускорение в 6 секунд. Возможно, не так уж и много, но в сравнении с общей скоростью загрузки — очень существенно, все-таки 17 секунд — имхо, довольно быстро. Я не ожидал такого результата. Жаль, что этим процесс загрузки не ограничивается: еще долго стартует гном после логина. Но способа ускорить и его я, увы, не знаю.

Включение dash вместо bash ничего не изменило. Некоторые другие штуки тоже не дали результатов:
Читать далее

Debian post-install setup

На память запишу что нужно ставить после установки системы.

# для видео драйверов:
apt-get install debhelper modutils kernel-package libncurses5-dev fakeroot pkg-config xorg-dev wget linux-headers-`uname -r`

# кодеки
sudo apt-get install libdvdread3 libdvdcss2 totem-gstreamer totem-xine gstreamer0.10-ffmpeg gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse w32codecs

# это чтобы включить по дефолту xine, чтобы смотреть dvd
sudo update-alternatives —config totem

# это чтобы в наутилусе делались нормальные превьюшки, тоже через xine
sudo update-alternatives —config gnome-video-thumbnailer

# шрифты
sudo apt-get install msttcorefonts ttf-arphic-ukai ttf-arphic-uming
sudo fc-cache -f -v

# софт всякий
sudo apt-get install yeahconsole devilspie conky nautilus-open-terminal nautilus-image-converter mencoder mplayer build-essential lm-sensors numlockx polymer qt3-qtconfig flashplugin-nonfree htop

Ubuntu 8.10 -> Debian unstable

debian_banner

В конце концов, я-таки перешел на debian ^_^

Почему? Я начал пользоваться убунтой с версии 6.04. В принципе, меня все устраивало. Поначалу. Однако, вскоре обнаружилось, что в официальных репозах софт иногда бывает немного кривой (с одним audacious сколько мучался), а в неофициальных бывают проблемы с зависимостями. Потом были обновления. С каждым обновлением становилось все хуже. Если первые проходили еще ничего, то потом начали вылезать вообще невероятно идиотские баги. Каждый апдейт я знал, что сейчас что-то сломается и мне придется это чинить. Да и скорость загрузки системы существенно упала вместе с общей отзывчивостью. Помню, 6.10 грузился за 30 секунд… На форуме говорили, что лучше не обновлять систему, а переустанавливать ее. Ну, блин — это что же, специально чтобы подоконникам что-то напоминало о венде, что ли? Где это видано — переустанавливать линукс каждые полгода! Да это чаще, чем мастдай! Я уж не говорю, что это не linux-way и вообще не Ъ.

Короче говоря, апдейт 8.04 > 8.10 стал последней каплей. Попытки перейти на debian я делал уже давно, но все как-то не срасталось. Почему именно дебиан? Это был мой первый дистрибутив Linux и он довольно привычен для меня.

Я скачал образ первого cd testing (там гном, иксы и т.д. — самые популярные пакеты) через jidgo. Установка прошла очень гладко и быстро, накаких проблем не возникло. Наконец-то разбил винч и вынес /home/ в отдельный раздел. Раньше все было на одном, т.к. убунту ставил »на попробовать» и не думал, что останусь. Обновился до unstable. Переместил /home/ куда положено, поустанавливал программы — все завелось, все настройки из убунты успешно перенеслись на новую систему. Кстати, видеодрова я ставил чуть ли не в последнюю очередь, т.к. видео заработало из коробки, да еще и с «моим» разрешением — 1280×1024, что сильно меня удивило. Помнится, раньше live-cd убунты у меня не работали из-за видео. Впрочем, последний раз я ставил линукс в 2006… @_@

В общем, после доработки напильником я совершенно не чувствую никакой разницы — разве что теперь все работает быстрее и так, как мне хочется. Глюков не замечено. Было несколько финтов ушами, про которые я забыл — напишу отдельно.

…хотя насчет вселенной я не уверен

Пару дней назад сломался rtorrent. Причем странно как-то сломался: качает, но медленно. Аплоад завис на 30 КБ/с и выше — ни-ни. Все проверил — ограничения не стоят, все в порядке. Ну, будучи суровым линуксоидом я взял свой спеллбук и потянулся за бубном.

Шаманил 2 дня. Удалял все торренты, переустанавливал rtorrent, колдовал над конфигом… 0 эффекта. Уже расстроился, идей больше нет. Ну, думаю, остается одно — завтра буду ось на сервере переставлять, коли такая шляпа страшная.

А потом думаю: дай-ка я схожу, скорость померяю. Действительно, http://www.speedtest.net/ выдал 250 kbps. Залезаю в рутер. И что же я вижу? Us Rate (Kbps) — 9!!! Попинал провод ногой, перезагрузил модем — все идеально! И ведь два дня не мог додуматься там посмотреть… (правда я уже и забыл, когда последний раз были проблемы со связью)

Использование IPA в Linux

Иногда возникает необходимость печатать всякие фонетические символы (IPA, International Phonetic Alphabet) на компьютере (например, транскрипцию слова). Символы-то есть, но вот таскать их по одному из «таблицы символов» жутко неудобно. А если надо набрать транскрипцию не пары слов, а пары абзацев (а то и больше), то это занятие вообще превращается в пытку =((

Не стоит отчаиваться, my fellow linguists! Есть способ облегчить ваши муки =) Для этого нам понадобится SCIM. Итак, приступим:

1. Установите пакеты scim и scim-tables-additional:
sudo apt-get install scim scim-tables-additional

2. Запустите scim. В трее должен появиться значок с клавиатурой.

3. Идите в настройки (через правокнопочное меню) — секция IMEngine, раздел Global Setup. Вы увидите список с разными языками (это все работает, ага). Нам надо в самый конец, там будет пункт «Другой», в котором находится нечто с жутким названием IPA-X-SAMPA. Его-то мы и хотим. Отмечаем, сохраняем настройки, перезапускаем SCIM (возможно, придется перезапустить сеанс).

4. Открываем любимый текстовый редактор и жмем [Ctrl]+[Space]. Наблюдаем панельку в правом углу. В ней выбираем метод ввода «IPA-X-SAMPA».

5. Теперь можно печатать! Радуемся (рано) — расположение некоторых символов не слишком логично, например
[ə] - [shift]+[2]
[æ] - [shift]+[[]
[ʌ] - [shift]+[v]

Однако, раскладку можно запомнить и печатать довольно быстро без необходимости куда-либо лезть. [ˈlɪnʊks], однако =)

Поскольку некоторые символы будет трудно найти, рекомендую обратиться сюда: ipasam-x.pdf Обратите внимание, таблица начинается со страницы 16. Не забывайте о верхнем/нижнем регистре!

Таблица взята с сайта http://www.phon.ucl.ac.uk/home/sampa/

Yeah, console!

Должно быть, вы уже слышали о таких вещах, как Tilda или Yakuake — консоли, которые выглядят по подобию игровых и выезжают сверху. Такая консоль — довольно удобная штука, т.к. она всегда запущена и открывается сразу по нажатию кнопки. Однако, обе программы напичканы разными функциями, что не добавляет им скорости и делает их весьма тяжелыми.

Для любителей всего быстрого и минималистичного я расскажу о другой реализации данной задачи. Это yeahconsole. По сути — то же самое, только функция тут одна: выезжающая консоль =)

Табов нет. Прозрачности тоже нет. Зато выглядит, как и подобает: создается ощущение, что экран разделился надвое и его верхнюю часть занимает не эмулятор, а настоящая консоль. Очень по-олдскульному =) Можно прокручивать мышкой.

Вся конфигурация происходит в файле ~/.Xdefaults
Вот мой конфиг:
yeahconsole*consoleHeight: 30
yeahconsole*toggleKey: None+Menu
yeahconsole*foreground: green

Как вы можете заметить, для открытия консоли предназначена комбинация как минимум из 2 кнопок. Если вы хотите использовать одну, то замените одну кнопку на None. Я заюзал клавишу Меню, что между правыми ctrl и alt — никогда не мог понять смысла этой кнопки, а так хоть пользу приносит =)
Больше значений для конфигурации можно найти в манах yeahconsole и xterm (yeahconsole использует xterm по умолчанию). Для того, чтобы настройки вступили в силу, нужно перезапустить иксы. В автозапуск yeahconsole нужно добавлять вручную.