среда, 18 февраля 2009 г.

Настройка Xorg и шрифтов

Полезная ссылка
http://citkit.ru/articles/369/ - хороший рассказ про системы шрифтов в Linux
http://rootshell.be/~sda00/fnt.html - еще одна
http://wiki.archlinux.org/index.php/Xorg_Font_Configuration_(Русский) - очень полезные примеры настройки

воскресенье, 15 февраля 2009 г.

Микрофон, alsa и IseWM

После настройки alsaconf не работает запись звука. Выкрутил в alsamixer микрофон по максимуму, и все равно не пишет ничего "arecord test.wav". На вкладке Capture (переход по Tab-у) то же навыкручивал на максимум все что касается микрофона и Capture. Не работает. Оказалось, надо же было еще на Capture нажать пробел, для того, что бы активировать захват. При этом еще появилась подпись
L.....R
CAPTURE

суббота, 14 февраля 2009 г.

Установка WineX

WineX ныне зовется Cedega. Ссылки на исходники и инструкции есть на
http://www.cedega.com/development/cvs/
Если коротко, то всего три шага:
1. cvs -d:pserver:cvs@cvs.transgaming.org:/cvsroot login
2. When prompted for the password enter "cvs"
3. cvs -z3 -d:pserver:cvs@cvs.transgaming.org:/cvsroot co winex

либо весь архив целиком http://www.cedega.com/downloads/source.html (читаем лицензию и соглашаемся кнопкой I AGREE в самом низу)
FAQ по установке и настройке:
http://www.opennet.ru/base/faq/winex_faq.txt.html
http://ru.wikibooks.org/wiki/LOR-FAQ-Wine
http://www.linux.org.ru/wiki/en/Wine/Cedega
http://www.xakep.ru/post/17532/default.asp

http://fedoranews.org/hoyt/wine/
Затем в каталоге исходника делаем:
autoconf
Он создает configure:
configure --with-x и прочие полезные опции
Устанавливаем командой:
./tools/wineinstall
И вот тут фиг что вышло. Сначала пошел configure по новой, затем началась сборка по новой и вывалилась по ошибке отсутствия файла. (make depmod)
тестируем:
wine regedit

пятница, 13 февраля 2009 г.

ltsp и usb мышь (не идет вниз)

Столкнулся с странным поведением usb мыши(hid). Влево-вправо еще кое как двигалась, немного вверх, а вниз не двигалась вообще. Оказалось что конфликт драйверов обычной usbmouse и usbhid.
После выгрузки usbmouse и "перезагрузки" все заработало как надо.
modprobe -r usbmouse
modprobe -r usbhid
modprobe usbhid

четверг, 12 февраля 2009 г.

ltsp, firefox и ограничение пользователей

Понадобилось в firefox ограничить доступ пользователей к настройкам, скачиванию файлов и т.д.
Нашлось дополнение Public Fox. Оно ограничивает изменение настроек и главное - блокирует about:config. Так же в файле профайла .../chrom/userChrome.css добавил строчки для отключения меню:
#toolbar-menubar {
display: none !important;
}
(кажется не ошибся, писал по памяти)
Еще отключу ctrl и alt в иксах (в киоске не нужны).
Осталось придумать способ ограничить аппетиты firefox на память.

Интересные ссылки

http://www.michurin.com.ru/xorg.shtml - мысли по использованию удаленного запуска программ в Иксах запущенных в уже имеющихся. (матрешка)

http://rus-linux.net/papers/xwin/X-Window.html - хорошо описаны этапы запуска Иксов

http://avreg.net/howto_icewm.html - Установка и настройка IceWM в минимальной конфигурации.

http://faqs.org.ru/softw/system/icewm.htm - Неофициальные Вопросы и Ответы по IceWM

http://mydebianblog.blogspot.com/2006/10/icewm.html - IceWM Window Manager: Ледяной десктоп антарктических пингвинов

http://www.opennet.ru/cgi-bin/opennet/man.cgi?topic=ssh&category=1 - О SSH по русски

ltsp и "залипание" клавиш на терминале

Настроил с помощью ltsp "интернет-киоск" для пользователей. Ltsp с не стандартным запуском X-ов (без запроса авторизации с сервера). Т.е. иксы запускаются сами по себе, а дальше устанавливается соединение по "ssh -X" с сервером (в chroot каталог), и из него запускается Icewm+firefox. Все отлично запустилось, chroot является некоторой защитой от излишне продвинутых хацкеров. НО! Стали заметны самопроизвольные "залипания" клавиш. Т.е. вдруг начинается автоповтор клавиши, которую уже отпустили и так до тех пор, пока не нажмешь другую клавишу. Особенно проблемно залипание ctrl.
А всего-то и надо было запускать "ssh -n"
Цитата:
"-n Перенаправляет стандартный ввод из /dev/null (фактически, предотвращает чтение из стандартного ввода). Это должно использоваться когда ssh выполняется в фоновом режиме. Типичный трюк используемый для запуска Х11 программ на удаленной машине. Например, ssh -n shadows.cs.hut.fi emacs & запустит emacs на shadows.cs.hut.fi , и соединение X11 будет автоматически перенаправлено через зашифрованный канал. Программа ssh будет переведена в фоновый режим. (Это не работает, если ssh нужен запрос пароля или парольной фразы; также смотри параметр -f.)"

Пока до меня не "дошло", что все дело в ssh запуске графических приложений, успел полностью переделать ltsp, поставить самое свежее ядро и т.д. В результате потратил несколько дней и приобрел бесценный опыт.

вторник, 10 февраля 2009 г.

ltsp и Slackware 12.2

Понадобилось сделать свой аналог ltsp на Slackware. В оригинальной версии ltsp 4.2 были замечены отваратительные "заскоки" драйвера клавиатуры - самопроизвольные "залипания" клавиш.
Взял из Slackware пакеты a,n,x и повыкидывал из них все лишенее. Зате из ltsp перетянул настройки (/etc и некоторые файлы из /bin /sbin на отсутствие которых ругалось при загрузке вроде /sbin/pci_scan, ltsp_mount и т.д.)

При попытке старта иксов (сделал симлинки startx на /etc/screen.d/startx) ругнулось:
Fatal server error: Could not open default font 'fixed'
надо бы обновить кэш шрифтов fc-cache, НО, файловая система ro. Значит копируем из нашей рабочей системы /var/cache/fontconfig в соответствующий каталог ltsp имитируя выполнение кэширования (а можно на время настройке ать полный доступ к файловой системе)

Попытка установить и запустить в chroot blackbox то же выдала интересный глюк:
couldn't load default font
Естественное желание рыть в сторону шрифтов окончилось не удачно. Что только со шрифтами не делал, все без толку. Оказалось (опять помог strace), blackbox очень хотел увидеть /usr/shart/X11/locale. Скопировал в "песочницу" каталог и все заработало. И шрифты нашлись!

среда, 4 февраля 2009 г.

8139too и Transmit timed out (NETDEV WATCHDOG: eth0:)

Имеем старый компьютер (Pentium 188Mhz) и сетевую карту на чипе rtl8139c. При достаточно большом сетевом потоке через карту получаем "замирания" и глюки сети.

NETDEV WATCHDOG: eth0: transmit timed out
Transmit timed out
eth0: Transmit timeout, status 0c 0005 c07f media 00. (что то вроде этого)

Как оказалось, проблема была в настройке BIOS, а именно:
PCI IRQ из "edge" установить в "level". И все!


Сей благословенный совет нашел здесь:
http://lkml.indiana.edu/hypermail/linux/kernel/0403.1/1537.html

OK, just for completeness, this issue has been resolved.

In my BIOS, there was an option:

PCI IRQ (edge/level)

It was set to 'edge'. Setting to 'level' fixed the problem - the
8139too.c driver is perfectly OK (I am now on 2.6.4 with no
problems).

I would like to thank OGAWA Hirofumi for the time and debugging code
he done for me, and also successfully pinpointing the problem and
giving me an idea of what was going on and what to look for to fix
it.

8139too и опция media

Понадобилось загрузить драйвер для сетевой карты 8139too с особыми параметрами, т.е. с опцией media и force-duplex. В дeскрипторе драйвера (modinfo -p 8139too) сказано, что биты 4,5,9 меняют состояние. НО! Пока не выставишь биты 0-3 в "1", не будет никакого эффекта от применения опции media (в дeскрипторе об этом ни слова) Т.е.
Предположим, хотим стартануть карту в "10Mbps half-duplex"

modprobe -v 8139too media=0 --- не работает (биты 0-3 в "0")
modprobe -v 8139too media=15 --- работает (биты 0-3 в "1", а остальные "0")

понедельник, 2 февраля 2009 г.

initramfs распаковат, изменить, запаковать

С помощью этих командой можно посмотреть структуру существющего initramfs:

mkdir /tmp/initramfs
cd /tmp/initramfs
gunzip -c -9 /boot/initrd.img-2.6.18-1-686 | \
cpio -i -d -H newc --no-absolute-filenames


А запаковать обратно измененный можно командой:

cd /tmp/initramfs
find . | cpio -o -H newc | gzip -9 > /boot/initrd.img-2.6.18-1-686

Взято здесь http://www.opennet.ru/base/sys/initrd_intro.txt.html - хорошая статья