четверг, 27 мая 2010 г.

Проверка сертификата FTP сервера.

Довелось проверить валидность сертификата на FTP сервере. Раньше такого не делал, так что полез курить ман по openssl. Получись так:
openssl s_client -connect ftp.site.com:21 -starttls ftp
Вообще отличная дока по практическому применению openssl есть тут

On-Line проверка по урлу.

Понадобился on-line инструмент, чтобы проверять страницу по урлу. Пока нашел только от DrWeb

среда, 26 мая 2010 г.

WScript.exe: There is no script engine for file extension ".vbs"

Сегодня устанавливал на одной машинке 3-й сервис пак для винды и наткнулся на проблему с запуском VBS скриптов. У меня есть скриптик, который я когда-то нашел в сети и немного переделал под свои нужды. Этот скрипт понижает приоритет службы "Automatic Windows Updates" до LOW и тем самым избавляет пользователей от тормозов при в первый минут 10 после загрузки компа.

В этой системе файл выглядел как неизвестный и не был ассоциирован с wscript.exe. При попытке выполнить его как wscript.exe wuauserv.vbs выскакивала ошибка, что 'There is no script engine for file extension ".vbs"'

Для решения проблемы нужно найти файлик %WINDIR%\inf\wsh.inf и в контектном меню выбрать "Install". После этого проблемы с запуском .vbs прошли.

Код wuauserv.vbs
Const BELOW_NORMAL = 16384
Const LOW = 64
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set colServices = objWMIService.ExecQuery( _
"SELECT * FROM Win32_Service where name='wuauserv'")
For Each oService in colServices
Set colProcesses = objWMIService.ExecQuery( _
"SELECT * FROM Win32_Process where ProcessId=" & oService.ProcessId )
For Each oProcess in colProcesses
ErrCode = oProcess.SetPriority(LOW)
Next
Next

четверг, 22 апреля 2010 г.

Проделки yum.

Всегда считал, что софт, считающий себя умнее человека - вреден, сегодня лишний раз убедился в этом.
Вчера несколько часов настраивал почту (postfix + sasl + courier-imap + courier-authlib + mysql) на новом сервере (CentOS 5.4 x86_64). Из коробки такая схема не работает, так что пришлось пересобрать часть пакетов. Провозился часов пять, пока настроил и перенес данные со старого сервера, еще раз проверил хождение почты и пошел домой.
Сегодня с утра решил проверить логи:
postfix/smtpd[14124]: fatal: unsupported dictionary type: mysql
postfix/qmgr[14310]: fatal: unsupported dictionary type: mysql
Полез проверять логи yum - ночью запустилось обновление системы и часть моих пересобранныех пакетов было "обновлено". Вредитель нашелся в заданиях рутового крона, раньше вроде в cron.daily было. Чтобы поправить ситуацию в будущем добавил в /etc/yum.conf
[main]
...
exclude=postfix courier-authlib*

четверг, 15 апреля 2010 г.

Обновление прошивки NEC Optiarc AD-7170A

Имеется DVD-RW резак NEC Optiarc AD-7170A с прошивкой версии 1.02. Симптомы: читает и пишет CD-R/RW, но редко читает и пишет только избранные DVD-R/RW. Перед тем как выбросить и купить новый (подумываю попробовать резаки от Lite-On), решил попробовать залить в него обновленную фирмварь. Новая прошивка вливается посредством binflash. Все команды выполняются от root. Проверяем что привод поддерживается прошивальщиком
# necflash -scan
Binflash - NEC version - (C) by Liggy and Herrie
Visit http://binflash.cdfreaks.com

List of supported devices:

Device   : /dev/hda
Vendor   : Optiarc
Model    : DVD RW AD-7170A
Firmware : 1.02
Сначала сохраняем старую версию прошивки
# necflash -v -dump old_firmware_1.02.bin /dev/hda
Новую версию прошивки я брал здесь На время заливки лучше включить режим PIO для сидюка
# hdparm -d0 /dev/hda
Теперь заливаем новую версию
# necflash -v -flash 105bt_orig.bin /dev/hda
После прошивки, перезагружаемся и смотрим результат
# necflash -scan
Binflash - NEC version - (C) by Liggy and Herrie
Visit http://binflash.cdfreaks.com

List of supported devices:

Device   : /dev/hda
Vendor   : Optiarc
Model    : DVD RW AD-7170A
Firmware : 1.05
Хоть на новой прошивке работает немного медленнее, но зато проблем с чтением и записью больше нету.

ALSA в многопользовательской среде

Дома пришлось создать жене отдельного пользователя, чтобы можно было пользоваться одним и тем же софтом и не мешать друг-другу настройками. Все нормально, но вот только неудобно переключаться на соседний сеанс, чтобы выключить музыку или фильм.
Недавно наткнулся на описание плагина softvol для alsa и решил его использовать. Схема работы проста: для каждого пользователя создается отдельный канал в программной громкостью и все они микшируются через dmix.
~/.asoundrc
pcm.!default {
    type            plug
    slave.pcm       "softvol"
}

pcm.softvol {
    type            softvol
    slave.pcm       "plug:dmix"
    
    control {
        name        "Andrey"
        card        0   
    }   
}
После первого использования появится отдельный канал (чтобы он стал доступен уже запущенным приложениям, их нужно перезапустить). Так выглядит alsamixer при работе двух пользователей:


Настройка канала микшера в приложениях:
~/.mplayer/config
ao=alsa
mixer-channel=Andrey

~/.mpdconf
audio_output {
   type       "alsa"
   device     "default"
}
mixer_type    "alsa"
mixer_device  "default"
mixer_control "Andrey"

Чтобы теперь разом отключить звук у другого пользователя достаточно повесить на хоткей amixer set Ann 0%

понедельник, 29 марта 2010 г.

Повреждение FS на ядре под openvz

Поднял новый сервер под ALTLinux Server 4.0.1 (x86_64). Получился вполне приличный тазик, хоть и на десктопном железе:
CPU: AMD Phenom II X4 955
RAM: 8Gb DDR3
MB:  ASUS M4A77TD PRO
HDD: 4xSATA2 WDC WD2502ABYS
Не обошлось без ложки дегтя, гигабитная сетевушка побила файлы при передаче (не сошлась md5) - воткнул завалящийся realtek 8139. Для видео выбрал S3 Trio (это который PCI с одним метром оперативы =) ) На ночь поставил переноситься данные со старого сервера.
С утреца ждал неприятный сюрприз, рассыпались почти все файловые системы и процесс копирования данных накрылся медным тазом. После общения с альтовской багзилой и гуглежом, оказалось что я использую языческое ядро (2.6.18-ovz-smp-alt14 и 2.6.18-ovz-smp-alt26.M40.2 - пробовал оба) и мне следует срочно обратиться к использованию сборки с патчами от redhat (2.6.18-ovz-rhel-alt2.M40.4).
Хотя странно, как тогда глючное ядро вообще могло попасть серверный дистрибутив. Насчет изначальной глючности openvz ядер - верить отказываюсь, т.к. имею опыт с дебиановскими ядрами работа которых проблем не вызывает. К альту у меня вообще много претензий последнее время, начиная их недо-инсталятором. (последний раз ставил через графический режим, так вот дойдя в сетевых настройках до многострочного поля ввода (search domains) оттуда нельзя выбраться табом)

P.S. После смены ядра аптайм перевалил за 20 дней - полет нормальный.