k001
k001
:...
Back Viewing 40 - 60 Forward
пятиминутка ненависти

Чего только не найдёшь на* этих ваших Интернетах. "Некоторые аббревиатуры мира Linux", ишь, как пафосно-то.

IIRC = If I Recall Correctly - если я переспрошу правильно

Коллеги! Слово "recall" с английского переводится вовсе не как "переспросить".

* -- всегда раздражает, когда вместе со словом "Интернет" используют предлог "на". И ладно бы "на просторах Интернета", так ведь нет, просто "на Интернете". Так часто говорят люди, долго живущие в Америке (потому как "on the Internet"). Но они зато точно знают, что такое recall.

Tags: , ,
CentOS + EPEL

CentOS 5 -- хороший серверный дистрибутив. Хотя бы потому, что его не надо апгрейдить на CentOS 6 через полгода.

С появлением репозитория EPEL он стал ещё и удобным. Кто бы мог подумать, там даже есть пакеты с расширениями Cite и ParserFunctions для MediaWiki!

Ещё бы не было в нём таких замороченных зависимостей.

Tags: ,
your own personal jesus^W dependency hell

CentOS 5 внутри контейнера, серверная система. Хочу ImageMagick (без GUI, просто утилиты командной строки, типа convert).

1. ImageMagick хочет librsvg2. Разумное, понятное желание.

2. librsvg2 хочет gnome-vfs2, ORBit, gconf, libX11 и ещё чёрт знает сколько всего. WTF?

3. gnome-vfs2 хочет gnome-mount, hal. zOMG!

4. hal хочет pm-utils... gnome-mount хочет libgnome, libgnomeui и так далее.

5. pm-utils хочет pciutils.

Чудовищно всё это, товарищи... Да, советы по выбору дистрибутива в комментах мне не нужны.

Linux kernel is huge and bloated

В дополнение к написанному выше. Не все журналисты такие уродцы. К примеру, вот тут lwn.net пишет вполне себе нормально про этот самый раундтейбл.

*** РЕКЛАМА В МОЁМ БЛОГЕ!!! ***
Статья пока только для подписчиков, но я, как подписчик, сделал для вас бесплатную ссылку. Если статья вам понравилась, возможно, имеет смысл оформить подписку на lwn.net.

Tags:
прожурналистов

Всё-таки не зря журналистику ставят в один ряд с проституцией (две древнейшие профессии и всё такое).

Зачитал тут статью на The Register. Зачитал также в некоем блоге её вольное краткое изложение на русском ("Не прошло и пятнадцати лет после дискуссии Линуса Торвальдса и Эндрю Таненбаума о том какое ядро лучше - микроядро или монолитное, как Линус был вынужден заявить, что ядро Linux распухло и плана похудания нет. Конечно, отрадно, что Линус осознал недостатки архитектуры Linux, но вот то, что нет идей как сделать ядро эффективным - это реальная проблема.").

Если бы я там не был, на этом Linux kernel roundtable в Портланде, буквально 10 дней назад, и не видел бы всё своими глазами, и не слышал бы всё своими ушами, то я бы подумал, что Линус точно сошёл с ума!

Надо ли говорить, что на самом деле всё было несколько не так. Впрочем, все цитаты в статье точные.

Как было на самом деле? Ну да, Джеймс был модератором и заготовил несколько злободневных вопросов. Линус ответил, все поржали. Да, ядро распухает. Было бы крайне удивительно, если бы оно худело при одновременном расширении функциональности. Да, есть определённые проблемы. Очень хорошо, что разработчики в курсе, что есть проблемы. Вот, примерно, и всё.

My GTK+ bug in Red Hat bugzilla

В прошлом году, летом ещё, я написал пост "Сатанинские пляски. Исполняет GTK+", а также зафайлил Red Hat bug #459567. И не просто зафайлил, а потратил какое-то время и дал способ более-менее просто, быстро и надёжно воспроизвести этот баг.

Этим летом деятели из редхата ту багу потихоньку закрыли, пользуясь тем, что Fedora 9 уже не поддерживается. Пишут, мол, если воспроизводится, переоткрой. А я уже перешёл с Гнома на XFCE. Но добрался-таки -- воспроизвёл, переоткрыл.

Теперь жду, что напишут, мол, Федора 10 уже закончилась, поэтому закрываем.

Что я могу сказать по этому поводу окромя ненормативной лексики? Нельзя так работать! Я им баг на тарелочке с голубой каёмочкой, а они мне WONTFIX. Ай-яй-яй!

compact firefox/thunderbird sqlite databases (Linux-only)

Собственно, скрипт. Якобы улучшает время загрузки и работы Firefox (версий, начиная с 3.0). В комментах можете написать, что он там вам напоказывал. Перед применением настоятельно рекомендую остановить Firefox и Thunderbird и забекапить ваши профили (~/.mozilla/firefox и ~/.thunderbird).

#!/bin/bash
# Compact sqlite tables used by Firefox and Thunderbird
#
# For best results, stop Firefox/Thunderbird before using
#

for F in ~/{.mozilla/firefox,.thunderbird}/*.default/*.sqlite
do
        echo "Compacting $F..."
        ls -sh $F | awk '{printf "from %s\t", $1}'
        sqlite3 $F "vacuum;"
        ls -sh $F | awk '{print "to "$1}'
done
Idea via [info]dixi@lj via [info]lykoz@lj. Для Виндов, по идее, тоже можно подобный батник написать.

windows 7

Все хвалят Windows 7. Я не видел, поэтому хвалить (или ругать) не стану. Мне вот что подумалось (в рамках conspiracy theories).

Майкрософт, кажется, использует стратегию выпуска плохих и не очень плохих версий Windows по очереди. Поясню. Сначала выпускается новая версия (скажем, Windows 3.0), которая совершенно отвратительна. Продают её в основном за счёт грамотного продвижения, тратя большие деньги на рекламу. Потом плохую версию более-менее доводят до ума и выкатывают на рынок (в нашем примере это Windows 3.10-3.11). На фоне предыдущей отвратительной версии новая, неплохая, выглядит совершенно великолепной. Дальше всё повторяется.

Последний виток этого расколбаса -- Windows Vista (плохая) и Windows 7 (объективно неплохая, на фоне предыдущей -- фантастика и совершенство).

Возможно, и Mac OS X так же развивается, тут мне не хватает данных. Возможно, что и современные десктопные Линукс-дистрибутивы идут этим путём -- понавтыкают всяких усовершенствований, в следующей версии доводят их до ума.

Возможно, всё это бред сонного меня.

Tags: ,
перфоманс тестинг ин прогресс

Я тут вчера, вооружившись большим компьютером и ядром 2.6.31, мерял производительность network namespaces с помощью netperf.

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

Меряю я, значит, меряю, а получается всё время какая-то ерунда! То побыстрее, то помедленнее, то ступеньками -- каждый следующий прогон на 5 mbps хуже предыдущего. Интуитивно поставил между прогонами паузу на 2 минуты, вроде стало почти хорошо, но всё равно какие-то есть флуктуации.

И сегодня только выяснил, в чём дело. Оказывается, процессоры перегревались и включался throttling (это когда перегревшийся процессор специально пропускает такты, чтобы, значит, совсем не сгореть). Именно поэтому пауза и помогала -- собственно, процессор чуток остывал (иногда не успевал). А у нас ещё в этом месте солнце светит через окна в полный рост, поэтому жарко, несмотря на обилие кондиционеров. Ну вот я и мерял, по сути, температуру в комнате...

Пошёл к админам, взял самый большой и шумный вентилятор, который смогли найти, поставил в большой компьютер, меряю заново, теперь уже результаты стабильные.

Собственно, к чему пишу?
1. И на старуху бывает проруха, как говорил друг моего детства Коля Остен-Бакен...
2. Следите за троттлингом (dmesg | tail), а то потеряете день, как я.
3. Большинству результатов измерений, которые вы видите в разных публикациях и т.п., доверять категорически нельзя, ибо большинство измеряющих не настолько въедливы и скрупулёзны, чтобы выяснить, что мешает, как мешает, почему мешает и как померять правильно.

Tags: , ,
wpa_supplicant suxx

Как я уже писал, тут в отеле интернет платный (12 баксов в день, да и то не в день, а до следующего полудня), но ловится какой-то FreeDowntownWiFi.

Так вот, я вчера ужасные проблемы с ним имел, то и дело интерфейс опускается, а потом dhcp клиент долго не может получить снова IP. Я его и так, и эдак, и к окну уже пересел, но, в общем, имел интернет кусками по 10 минут.

А сегодня попробовал не использовать wpa_supplicant, а просто засетапить всё через iwconfig, благо в Генту переключение с одной схемы на другую -- это редактирование пары строчек в конфиге.

И вот я уже сижу час, а интернет ни разу не отваливается!

Из чего делаю вывод, что wpa_supplicant -- редкостная дрянь. Ну или в Gentoo он какой-то кривой. Рекомендация -- по возможности (если точки доступа открытые) им не пользоваться.

PS про NetworkManager я знаю, если что.

последствия и выводы

Последствия
Забавно, что после перехода с ~/.xinitrc на ~/.Xclients у меня сменился моноширинный шрифт. Нет, даже не моноширинный шрифт, а шрифт, используемый в строке статуса и строке ввода Vimperator. Больше, вроде бы, ничего вообще не поменялось. fc-match monospace показывает одно и то же. Даже не представляю, куда копать.

Выводы
В Линуксе всё совсем не так, как было раньше. Но я всё ещё пока могу понять, как это работает.

Tags: ,
sound device perms part III aka The Solution

Ага, ну вот я и дорешал проблему.

Оказалось, что виной всему мой ~/.xinitrc! Дело в том, что xinit подпёрт для ConsoleKit в нескольких местах. Одно из таких мест -- запуск бинаря ck-xinit-session, который делается в /etc/X11/xinit/xinitrc-common, который сорсится из /etc/X11/xinit/xinitrc.

Так вот, если есть пользовательский ~/.xinitrc, то /etc/X11/xinit/xinitrc уже не используется (решает, что использовать, а что нет, скрипт startx), соответственно ck-xinit-session не вызывается, и ConsoleKit ничего про иксы не знает.

Фикс в моём случае такой:

mv ~/.xinitrc ~/.Xclients
chmod u+x ~/.Xclients


Сижу и думаю, баг это или моя ошибка...

sound device perms part II

Продолжение душещипательной истории про ConsoleKit, HAL, ACL и т.п.

Вводная. Я не использую *DM (то есть графический логин), а логинюсь в консоли, после чего пишу startx. Ну вот привык я так, нравится мне. На первых 8 консолях висят getty, а на девятой запускается сессия X Window.

Так вот, когда я переключаюсь в эту девятую консоль, какие-то демоны (замуровали!) убирают у меня все пермиссии на звуковые устройства из ACL! То же самое происходит, когда я переключаюсь в консоль, где есть getty и никто не залогинен. И, конечно, даже если я руками добавлю себе прав, после переключения консолей она пропадает!

Теперь хотя бы понятно, что надо делать -- как-то научить startx (или xinit, или X), чтобы он рассказывал всем этим демонам, что эту консоль занимает $USER. Очевидно, он этого не рассказывает.

Update: а вот и баг нашёлся, якобы пофикшенный в 2007 году. Надо разбираться, какого рожна не работает.

Tags: , ,
ConsoleKit HAL ACL etc wtf

Раньше, когда ты логинился, специальный PAM модуль выставлял всякие пермиссии для тебя, в частности, для устройств звуковой карты (/dev/audio, /dev/mixer, /dev/dsp, /dev/snd/*). Всё достаточно просто конфигурировалось в /etc/security/console.perms.d/.

Теперь это делают ConsoleKit вместе с HAL, причём выставляют не пермиссии, а дополнительные ACL. Как они это делают, выяснить за 15 минут я не смог.

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

Чудовищно...

Update: за 20 минут я вроде выяснил, правда, очень в общем виде. Там несколько демонов для этого дела, в частности console-kit-daemon и hal-daemon (последний ещё получает сообщения от ещё одного демона -- udev). Полиси по саунд девайсам прописано в /usr/share/hal/fdi/policy/10osvendor/20-acl-management.fdi и далее в /usr/share/PolicyKit/policy/org.freedesktop.hal.device-access.policy. Как видите, там ещё какой-то PolicyKit участвует. Застрелиться и не жить!

linux + alcatel ot-i650

Ну вот, блин, купил себе новый телефончик, и на тебе :(

git-svn

А ведь работал кто-то с git-svn?

Правда ли, что после каждого git-svn fetch надо делать git-svn rebase -l?

Update: вопрос снят. В моём случае надо просто делать git-svn rebase.

Tags: ,
{} в шелле

Когда делаешь что-то в командной строке, много писать не хочется. Особенно если оно похоже. Слава Всевышнему, есть оператор {}. Например, вот:

$ echo {suse-{10.3,11.1},fedora-10}-x86{,_64}
suse-10.3-x86 suse-10.3-x86_64 suse-11.1-x86 suse-11.1-x86_64 fedora-10-x86 fedora-10-x86_64

Tags: , ,
вебкам из мобильника

Мой Алкатель OT-C701 может, в частности, работать вебкамом. Для этого подключаем его по USB к компу и в появившейся на экране (мобильника) менюшке выбираем "хочу вебкам". После чего в dmesg появляется примерно следующее:

uvcvideo: Found UVC 1.00 device OT-C701/ (0e8d:0004)
uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
input: OT-C701/ as /devices/pci0000:00/0000:00:1a.7/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3:1.0/input/input15
usb 1-6.1.3: New USB device found, idVendor=0e8d, idProduct=0004
usb 1-6.1.3: New USB device strings: Mfr=6, Product=7, SerialNumber=8
usb 1-6.1.3: Product: OT-C701/
usb 1-6.1.3: Manufacturer: Alcatel
usb 1-6.1.3: SerialNumber: 53....10743....


Посмотреть на картинку с вебкама достаточно просто:

mplayer -tv driver=v4l2:width=640:height=480:outfmt=yuy2 -vo xv tv://

Возможно, предварительно придётся сделать
chown $USER /dev/video0

Не то чтобы какой-то рокет саенс, но просто чтобы командную строку mplayer'а не забыть.

PS а ещё он умеет работать как MicroSD кард-ридер, ну и как обычный телефон-модем.

Tags:
RHEL6 kernel

Я тут долго думал и пришёл к выводу, что RHEL6 будет иметь ядро 2.6.27 (то же, что и в Fedora 10). На это меня навело то, что 2.6.27 is a long-term maintained kernel (as declared by the -stable team), а также то, что в Федоре 10 давно не обновлялось ядро (а раньше оно вроде постоянно обновлялось).

Если кто может эти мои домыслы подтвердить (хотя бы неофициально) или опровергнуть -- высказывайтесь. Это для нас достаточно важно.

Tags: , ,
where has my free space gone?

Вот как изящно люди решают чужие проблемы. У тебя OpenVZ ядро? All bets are off. Всё.

И нет чтобы хотя бы поинтересоваться, что говорит ему df -i!

Это я регулярно наблюдаю. Наверное, причина в том, что df требует особой опции, чтобы рассказать про иноды. А мог бы и по дефолту показывать. Наверное, в UNIX Hater's Handbook про это есть.

Back Viewing 40 - 60 Forward