И на старуху бывает проруха
Отрелизилась FreeBSD 7.2. Но при сборке ядра всё отваливалось с ошибкой.
cc -c -O -pipe -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Werror /usr/src/sys/dev/ath/if_ath.c -I/usr/src/sys/dev/ath
/usr/src/sys/dev/ath/if_ath.c: In function 'ath_rx_tap':
/usr/src/sys/dev/ath/if_ath.c:3414: error: 'const struct ath_rx_status' has no member named 'rs_flags'
/usr/src/sys/dev/ath/if_ath.c:3416: error: 'const struct ath_rx_status' has no member named 'rs_flags'
После гугления и чтения /usr/src/UPDATING, закомментировал в конфиге ядра строку
device ath_hal
а заодно и прочее, что было связано с atheros (отхерос).
После чего всё собралось.
Данные сетевые карты прямо не могут не доставлять проблем различным unix. Об этом я уже писал в заметках, связанных с установкой linux на ноут.
cowsay
Нашёл ещё одну прикольную прогу. Называется cowsay.
Как переводится, то и делает. Но возможны варианты:
Читать полностью »
kblooger
Оказывается, для KDE есть даже клиент для блогов. Данный пост как раз пишу из него. Называется, он KBlogger. Обитает по адресу http://kblogger.pwsp.net/
Из него можно постить на любой движок, поддерживающий xml-rpc постинг. Это, например, wordpress, ЖЖ. При создании записи можно выбрать черновик или нет, выбрать рубрики, разрешить/запретить комментирование/пингбэки. Можно выбрать дату, когда сообщение станет опубликовано. Есть даже функция предпросмотра, но на ней клиент иногда крашится (альфа версия только, к сожалению)
Можно также редактировать ранее написанные сообщения.
Минус: он при редактировании поста по умолчании использует вкладку “visual editor”, и сбрасывает все написанные руками html теги
Вообщем, интересная штука. Посмотрим, что из неё получится
Установка pecl расширений PHP.
Часть расширений PHP входят в само PHP, и включаются при сборке PHP путём опций –with-ИМЯ.
Но многие расширения в “основу” не входят. Например, imagick, zip, json и т.д. Они входят в репозиторий pecl (PHP Extensions Community Library). Пакеты с такими расширениями называются обычно pecl-имя.
Но не все подобные пакеты бывают в репозитории системы. Либо, если это бинарный дистрибутив, но у вас самосборный PHP? На самом деле всё очень просто.
Если дистрибутив бинарный, то ставим пакет php-devel и пакет pear. Если FreeBSD, Gentoo и т.п. то нужно только pear. В gentoo пакет называется PEAR-PEAR. Собственно после установки просто
pecl install imagick
И расширение imagick будет собрано и помещено куда надо. Останется только дописать в php.ini нужное расширение и всё.
Естественно при таком способе установки, если из репозитория обновить PHP, то расширения не обновятся
Рекурсия…
# killall httpd
killall: error while loading shared libraries: libsepol.so.1: cannot map zero-fill pages: Cannot allocate memory
#
Как осовободить памяти, если даже её для запуска kill нету…
Немного о девайсах
Ни в коем случае не делайте тарбол с корневой системы для переноса, с использованием ключа –one-file-system на рабочей системе . Ибо не udev`ом едины… Можно только с live-cd.
devname(/dev/имя) записи в fstab – зло (вплоть до kernel panic). Перешёл на LABEL записи. Имхо, самое тру
p.s. Корень перевёл на reiser. Сам удивился, но ядро на нём в разы быстрее собирается. Видать в ФС упирается.
p.p.s. Первые два вывода сделаны в результате весьма продолжительного “секса”, во время, собственно, переноса корневой ФС на reiserfs.
p.p.p.s. Grub умеет грузиться с рейзера
Ati и linux
Ни для кого не секрет, что ati не любит линукс. Я имею ввиду производителя видеокарт. Так как последние вечно имеют какие-либо проблемы на уровне драйверов. То с “новым” xorg не работают (причём он для них новый чуть ли не полгода), то с ядром новым, то просто не работают. Ati & Linux уже давно стало притчей во языцех.
Но можно к этому подойти с другой стороны. Существуют открытые драйвера для ati. К примеру, в генту они называются xf86-video-ati, они же xf86-video-radeon.
Эти драйвера не зависят от ядра, и значит не отвалятся при обновлении. Да, их производительнось в 3D приблизительно в 2-3 раза ниже, чем у проприетарных. Но ведь не для игр только созданы компьтеры.
Возьмём ноутбук, предназначенный для работы. Требуется, чтобы всё работало, не глючило и не тормозило. Также необходима возможность горячего подключения второго монитора. А теперь сравним ati и fglrx. Сравню на своём опыте.
Игры нам не нужны, соответственно производительность в 3D не особо важна. А для эффектов compiz хватит и открытых драйверов. В fglrx у меня периодически бывали пляски с цветами. Особенно с compiz. С открытыми, правда у меня compiz не работает, так как драйвера не поддерживают ускорение для моей встроенной видеокарты. Минус? Отнюдь. 70% времени я работаю с 2-мя мониторами в режиме широкого рабочего стола. В ширину получается 2560px. А compiz поддерживает максимум 2048. К тому же у меня и с fglrx дровами compiz дико тормозит (говоря о compiz я имею ввиду встроенный композитинг в kde4)
Зато открытые драйвера намного лучше работают с многомониторной конфигурацией. В fglrx можно запустить ati-control-center и расширить экран на 2 монитора. Но при этом на обоих возможно лишь одинаковое расширение. Но для ноутбука нормальное разрешение 1280×800, а для подключаемого монитора 1280×1024. Либо там, либо там всё будет выглядеть фигово. А открытые драйвера поддерживают xrandr. То бишь ставим пакет xrandr, втыкаем монитор и…
/usr/bin/xrandr --output VGA-0 --auto /usr/bin/xrandr --output VGA-0 --right-of LVDS
… и всё в лучшем виде! xrandr, кстати, поддерживают пока только открытые драйвера, соответственно с nvidia такое не проканает, и придётся через nvidia-settings мышой тыкать, и возможно и иксы перезагружать
“Вы не любите кошек? Вы просто не умеете их готовить”. Вы терпеть не можете ati? Вы просто не умеете их использовать в нужной сфере применения
Настройка bootsplash в gentoo
Решил я облагородить процесс загрузки.
Погуглил, нашёл кучу инструкций, но все какие-то “бородатые”, а те, что не бородатые, те неполные. Пришлось часть додумывать
Делать бутсплеш будем для абстрактного gentoo в вакуме ядра версии 2.6.28. Исходники gentoo-sources. Они содержат необходимые патчи. Если исходники другие, то необходимо наложить патч fbsplash. Ядро собираю через genkernel
Перенос почты с mbox на maildir(sendmail+dovecot)
Встал вопрос миграции. Зачем? Использую я для почты и сайта VDS, он маленький, памяти мало. Почты много. Периодически возникает такая проблема: я долго не проверял почту с одного из компьютеров, и начинаю её качать (за пару дней может быть до 20 мегабайт почты). В то время, пока я качаю почту, новые сообщения в mbox не кладутся, и процессы mail.local висят в памяти, ждут своего часа. Периодически они забивают всю память и становится плохо. Вот чтобы этого не было, я решил использовать maildir.
yakuake
Давно хотел написать, но руки что-то не доходили
Есть такой терминал. Называется yakuake. Название созвучно с quake и не случайно. Принцип у этой проги такой же, как и консоли квейка: нажимаешь кнопку и консоль выезжает сверху экрана.
В yakuake есть поддержка вкладок, поддержка профилей(я настроил профили с разными кодировками), поддержка прозрачности, и собственно является этакой надстройкой над konsole.
Существует этот проект давно, но очень удобным для меня он стал только после того, как я начал использовать KDE 4. Причина в том, что я по долгу службы хожу по многим серверам, причём находиться могу на 10-ти различных одновременно. Чтобы не путать, в KDE 3 у меня были созданы ярлыки для konsole для каждого сервера, в которых были прописаны соответствующие титлы для каждого сервера. А в yakuake приходилось бы вручную обзывать вкладки.
Но в KDE 4 konsole “научился” автоматически обзывать окно по имени хоста либо по имени выполняемого приложения. А yakuake научился использовать это имя окна для название вкладки. Я создаю вкладку, захожу через ssh на какой-либо хост, и вкладка переименовывается в имя этого хоста.
Теперь очень удобно: теперь нету на таскбаре кучи окон konsole, всё на вкладках yakuake. Я назначил выезжание на “Alt+`”, так как у меня обычно левая рука лежит на клавиатуре, а правая на мыши. И после пары дней привыкания, я уже не могу обходиться без этого терминала


