Разные, на мой взгляд, интересные замечания, связанные с компьютерами в частности и техникой вообще.

суббота, 26 февраля 2011 г.

Ошибка Drupal и ImageCache при использовании nginx в качестве проксирующего web-сервера

Есть у меня под присмотром один сервер. Сервер это находится чёрт знает где, а компания, которая предоставляет его довольно жадная. На сервере около 20-ти разнообразных сайтов и на всё про всё 192 метра оперативки. Вот, недавно нагрузка окончательно стала добивать его, поэтому было решено воткнуть nginx как фронтенд как установленному там апачу(изначально не сделал так, потому как там не полноценный сервер, где что хочу, то и творю, а выделенный в chroot на FreeBSD). Собрал, поставил, настроил. Всё хорошо, нагрузка упала, но через некоторое время на части сайтов(те, что с Drupal, как раз) не отображались уменьшенные изображения залитых после перехода на связку nginx+apache картинок.

суббота, 15 января 2011 г.

Управление зонами в BIND9

Давно обещал немного рассказать про организацию своей домашней сети. Надеюсь, в дальнейшем это выльется в цикл статей.
Начнём с DNS.
У меня стоит отдельный роутер и разумеется внутри сети используются так называемые серые ip-адреса. Когда компов мало, можно ходить на них по ip, но я админ ленивый, а потому стараюсь всегда упростить себе жизнь. Ещё один минус связи исключительно по ip-адресам - скрипты. Ну, например, укажу я монтирование удалённого диска в скрипте по ip-адресу, а через пару месяцев захочется мне этот ip сменить(мало ли чего, всякое бывает). Придётся в скрипте править. А если таких скриптов много? Возникает проблема. Чтобы такого не было, лучше настроить связь между компами по именам, тогда при смене ip одного из компов, будет достаточно лишь поправить запись в DNS.

воскресенье, 26 декабря 2010 г.

Весёлый hddtemp.

ВНИМАНИЕ: Диск /dev/sdb не включен в базу данных поддерживаемых приводов.
ВНИМАНИЕ: Но с использованием распространенных параметров он что-то выдает.

Понимаю, что ничего необычного в этом выводе нет, но всё же как-то бросается в глаза фраза "он что-то выдаёт". :) Звучит настораживающе. 

вторник, 21 декабря 2010 г.

Украшаем процесс загрузки в Debian GNU/Linux

Вот тут для welinux.ru описал, как настроил у себя заставку grub2 и usplash на нетбуке под управлением Debian GNU/Linux.
А вот тут можно посмотреть, как оно выглядит.

суббота, 30 октября 2010 г.

Мои пакеты для debian.

Обзавёлся недавно доменом, поднял небольшой сервер и теперь балуюсь со всякими настройками. Пока что там особо ничего интересного нет, но один из планируемых разделов - собранные(или портированные) мной пакеты для debian. Пока что не оформлено в виде отдельного репозитария, в дальнейшем организую, с учётом архтектур и версий дистрибутива(заранее скажу, что поддерживать буду только stable и oldstable для архитектур i386 и x86_64). Пока доступно по адресу http://cppmm.net.ru/debian_packages/
Из планов на будущее, поднять небольшую вику с используемыми мной типичными конфигами и скриптами.
На данный момент скорость почти никакая - всё на стадии разработки, в дальнейшем ситуация улучшится.

четверг, 30 сентября 2010 г.

Автоматическое изменение яркости экрана Asus EeePC 701 4G в Debian

Я обычно работаю на своём нетбуке с яркостью, поднятой на максимум. Но при переходе в режим работы от батареи это даёт очень неслабую нагрузку на неё. Fn-клавиши, конечно, работают, но постоянно повышать/понижать яркость руками лень. Вот я и решил поковырять acpi на предмет автоматизации процесса. В принципе, ничего сложного.
Из man acpid можно узнать принципы работы acpi-скриптов. В /etc/acpi/events/ лежат файлы событий формата
event=событие
action=скрипт, который выполняется на это событие
Чтобы узнать, на какое именно событие реагировать, можно воспользоваться функцией acpi_listen.
В моём случае результат её работы выглядит так при выдёргивании блока питания из розетки:
[root@skynet ~]# acpi_listen
ac_adapter AC0 00000080 00000000
battery BAT0 00000080 00000001
hotkey ATKD 00000051 0000001e
battery BAT0 00000080 00000001
ac_adapter AC0 00000080 00000000
и вот так при подключении:
[root@skynet ~]# acpi_listen
ac_adapter AC0 00000080 00000001
battery BAT0 00000080 00000001
hotkey ATKD 00000050 0000001c
battery BAT0 00000080 00000001
ac_adapter AC0 00000080 00000001
Так как мне надо всего лишь сменить яркость, я не стал заморачиваться на параметры и указал реагировать просто на любые изменения в ac_adapter
Итоговый файл события у меня выглядит так:
[root@skynet ~]# cat /etc/acpi/events/auto_brightness
# /etc/acpi/events/auto_brightness
# Called when ac off and we need to switch brightness down or up when ac on.
#

event=ac_adapter.*
action=/etc/acpi/auto_brightness.sh
Теперь надо написать непосредственно скрипт, меняющий яркость взависимости от того, есть питание или нет. Здесь есть два пути - смотреть напрямую в /proc и парсить то, что там имеется или воспользоваться готовой функцией из acpi-support. Я выбрал второй вариант. Для тех, кому больше по душе первый, текущее положение адаптера отображается в /proc/acpi/ac_adapter/AC0/state

Я же использую функцию getState() из /usr/share/acpi-support/power-funcs. Она при вызове передаёт переменной STATE либо значение AC, либо BATTERY в зависимости от режима работы нетбука.
Осталось только найти способ менять яркость. Тут тоже всё просто. Пробежался быстро по тем же acpi'шным скриптам и выяснил, что уровень яркость указывается в /sys/class/backlight/eeepc/brightness. От 1 до 15, где 15 - максимально яркое, 1 соответсвенно тусклое.
Итоговый скрипт получился такой:
[root@skynet ~]# cat /etc/acpi/auto_brightness.sh
#!/bin/bash

. /usr/share/acpi-support/power-funcs

getState

if [ "$STATE" = "AC" ]
then
    echo 15 > /sys/class/backlight/eeepc/brightness
else
    echo 1 > /sys/class/backlight/eeepc/brightness
fi
Всё. Рестартим acpid и радумаемся.

воскресенье, 29 августа 2010 г.

Userfrendly OS

Я тут рассказывал, как ставил Fedora 13 на ноут для тестов. Протестил, всё отлично работает. но хозяевам нужна была на этом компе Vista, которая шла вместе с ноутом. Вот, небольшая оценка времени, затраченного на обустройстов первой и второй системы.
Тестовая площадка - ноутбук MSI PR200
Обновления и установка софта зависят от скорости интернета - 256 кбит/с
--
Fedora GNU/Linux 13
Время установки - 30 минут(получаем вполне юзабельную систему, в которой есть всё, кроме офиса и проигрывания mp3).
Настройка сети(wi-fi) - 5 минут.
Настройка дополнительных репозитариев - 10 минут.
Полное обновление системы - 40 минут.
Установка нужного софта(проприетарные кодеки, skype, OO.o, разные программы для тестирования железа) - 10 минут.
Настройка панелей, рюшечек, компиза и прочего - 20 минут.
Итого - 1 час 55 минут до полностью рабочей системы.
--
Windows Vista Home Basic
Время установки - 1 час(получаем систему, в которой не работает ничего кроме блокнота с разрешением 800х600, без звука, без сети).
Установка драйверов - 30 минут на скачивание на другом компе(сеть не поднялась из коробки), 30 минут на установку(с учётом перезагрузок). Камера не завелась, bluetooth не завёлся, звук не завёлся. Ещё +30 минут на танцы с бубном.
Настройка сети(wi-fi) - 15 минут(оказалось не так просто найти, где же прописывать сети со скрытым SSID и вспоминать, какое же шифрование TKIP или AES - все три мои linux-машины, это автоматом определяют).
Базовое обновление(только обновления безопасности и важные багфиксы) - 3 часа(причём после того, как всё скачалось и устанавливается - ноут неюзабелен).
Установка нужного софта(кодеки, firefox, skype, OO.o, разная мелочь) - 30 минут(разумеется установка не автоматическая, надо сидеть и периодически нажимать "Далее").
Итого - 6 часов 15 минут.
--
Выводы делайте сами.