Uniвсячина

понемножку о Linux и программировании

Идентификация разделов дисков by UUID

Иногда на Debian Linux всплывает глюк (возможно это глюк контроллера) — при загрузке он меняет местами винты. Как следствие, ОС не может найти root-раздел и вываливается в busybox. Одно из решений, отказаться от идентификации разделов через /dev/sdXN.

Рецепт прост:

  1. Запускаем /sbin/blkid и смотрим UUID для каждого раздела.
  2. В /etc/fstab вместо /dev/sdaN прописываем UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX (кавычки не ставим).
  3. В /boot/grub/menu.lst найти строчку (закомментированную) kopt=root=/dev/sdaN ro и заменить её на kopt=root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ro.
  4. Запустить /sbin/update-grub.
  5. Перезагрузиться.

Настройка аттрибутов модуля XVideo (Xv) в Xorg

После апгрейда на то ли Ubuntu 7.10, то ли Ubuntu 7.04, у меня все видеоролики стали выводится в очень темной гамме. Как удалось выяснить опытным путем, такой эффект давал только вывод через Xv (XVideo).

Недавно нашел решение этой проблемы:

sudo apt-get install xvattr
xvattr

Смотрим минимальные, максимальные и текущие значения аттрибутов XV_BRIGHTNESS, XV_CONTRAST. И меняем на желаемые. В моем случае оказалось, что стоит очень низкая яркость. После установки её в нейтральное положение все начало показываться весьма достойно.

xvattr -a XV_CONTRAST -v 4096
xvattr -a XV_BRIGHTNESS -v 0

Виртуализация для частного хостинга

Недавно, в очередной раз надо было перенести все сайты с одного сервера на другой. Ситуация рядовая. Бывает клиент переезжает в другой датацентр, бывает покупает другой сервер. И даже несмотря на то, что у меня обычно на это уходит не более 3-4 часов, все равно это порядком надоедает и утомляет. Последний раз я решил придумать что нибудь, чтобы облегчить себе труд :)

Подумалось мне, что было бы неплохо переносить образ разделов сервера целиком, без всякой перенастройки. Естественно, при удаленном администрировании, просто взять образ винта и впихнуть на новый сервер – это верный путь к KVM и загрузки с LiveCD. Потому что перед загрузкой и IP надо сменить, да и банально образ может не полезть на винт. Поэтому решил пойти другим путем – запихнуть все что у меня крутится на сервере в какой нибудь виртуализатор.

Выбор пал на Xen. Поставил xen-ядро, поднял dom0 и начал думать, как это все настроить, чтобы и работало, и мне было удобно. Делать одну виртуальную машину, где будет работать всё-всё-всё не хотелось. Причин тому несколько, но основная – нужно было предусмотреть вариант, когда для каждого клиента пользующегося сервером, можно было бы выделить отдельную виртуальную машину с ограниченными ресурсами. Но зачем каждому клиенту настраивать свою почтовую подсистему и сервер баз данных, когда это все можно настроить один раз и для всех?

В итоге, получилось что то такое:

Архитектура хостинга

Ffmpeg в Debian Etch

Маинтейнеры в Debian как обычно жгут.

Ставим apt-get install ffmpeg и по ffmpeg -formats видим, что поддержки кодеков *amr** нет (а они очень нужны, чтобы кодировать видео в формат .3gp). Собираем из исходников (полученных по apt-get source ffmpeg) дебиановский пакет и опа – по умолчанию кодеки есть.