17 мая 2013 г.

Просмотр подробной информации о сетевой карточке в Linux

Недавно нужно было узнать параметры карточки на удаленном сервере (под управлением Linux). А точнее, её модель. Команды

ethtool -i eth0
miitool -vv eth0

показывают версию или драйвера или чипа. Но нашел способ узнать побольше о карточке, как оказалось достаточно очевидный:

lspci -vv | egrep -i --color 'network|ethernet'

Здесь мы получим информацию наподобии такой:

07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

Цифры вначале - адрес устройства на шине PCI. Берем его и пихаем аргументом в команду:

lspci -vv -s 07:00.0

Вот теперь мы можем посмотреть максимум о карточке.

5 апр. 2013 г.

Скрипт для отключения не используемых служб в Windows Server 2012

Удобная штука - скрипты. Можно делать однообразную работу одним кликом или нажатием или вообще планировщиком... Но последний вариант не актуален в этом случае.

Скрипт будет на языке PowerShell и видение того, какие службы не нужные здесь я привёл свое, так что список служб надо подредактировать под свои нужды.

Получить список сервисов с их короткими именами можно командой в оболочке PowerShell:

Get-service

Собсно, сам скрипт:


$DisabledServicesList = @("ALG", "BFE", "BITS", "Browser", "CertPropSvc", "CryptSvc", "defragsvc", "Dnscache", "DPS", "EFS", "FontCache", "gpsvc", "hidserv", "hkmsvc", "IKEEXT", "iphlpsvc", "KeyIso", "KPSSVC", "KtmRm", "lltdsvc", "MMCSS", "MpsSvc", "MSiSCSI", "napagent", "NcaSvc", "Netlogon", "NetTcpPortSharing", "PerfHost", "pla", "PolicyAgent", "PrintNotify", "RasAuto", "RasMan", "RemoteAccess", "RemoteRegistry", "sacsvr", "SCardSvr", "SENS", "SharedAccess", "ShellHWDetection", "SNMPTRAP", "Spooler", "Themes", "TrkWks", "UALSVC", "UI0Detect", "VaultSvc", "vmicheartbeat", "vmickvpexchange", "vmicrdv", "vmicshutdown", "vmictimesync", "vmicvss", "W32Time", "WcsPlugInService", "WdiServiceHost", "WdiSystemHost", "Wecsvc", "wercplsupport", "WerSvc", "WinHttpAutoProxySvc", "wmiApSrv", "WPDBusEnum", "wudfsvc", "wuauserv", "ScDeviceEnum")

$ManualServicesList = @("AeLookupSvc","seclogon", "SstpSvc")

foreach ($service in $DisabledServicesList)
{
Set-Service -name $service -StartupType Disabled
Stop-Service -force -name $service
}
foreach ($service in $ManualServicesList)
{
Set-Service -name $service -StartupType Manual
}
Создаем массив строк с названиями служб, которые хотим вырубить и можно еще второй - какие поставить в Manual. А далее обрабатываем их в циклах.

Для использования или копируем текст скрипта в окно PowerShell (запущенное с администраторскими правами, ессно) или сохраняем как .psc1 и юзаем.

1 апр. 2013 г.

Windows 2012 how to solve issue "The service could not be started either because it is disabled or it has no enabled device associated with it."

Если запуская какой-либо системный апплет в Windows Server 2012 из-под пользователя не Администратор, а другого пусть даже с правами администратора, вы получаете ошибку:

I cannot start c:\windows\system32\services.msc - "The service could not be started either because it is disabled or it has no enabled device associated with it."

И вы не можете ни запустить апплет со службами, ни консоль с правами админа, то это значит, что выключен сервис Application Information. Необходимо залогинится в систему именно Администратором и включить эту службу или через апплет Services или через консоль:

sc config Appinfo start= auto
net start Appinfo


или через PowerShell:

Set-Service Appinfo -startuptype Automatic
Start-Service -name Appinfo

Ошибка в RHEL: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

Ошибка в RHEL6 x64 вида:

/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

возникает, когда вы хотите запустить 32-битное приложение на 64-битной системе без glibc версии х86.Вместе с системой ставится только 64-битная версия этой библиотеки. Решаем:

yum install glibc.i686

На некоторых системах:

yum install glibc.i386

27 мар. 2013 г.

Ошибка при обновлении BIOS сервера Dell в Windows Server 2012

Если при запуске DUP пакета на сервере Dell PowerEdge 1950 (а возможно и на других моделях) получаете ошибку:

"An error has occurred the Dell Instrumentation Driver (HAPI) could not be loaded."

то, значит, у вас стоит в Disabled сервис Application Experience. Запустите этот сервис (из-под cmd администратора)

sc config AeLookupSvc start=auto
net start AeLookupSvc

И обновление через DUP должно заработать.

22 мар. 2013 г.

Звонки в Asterisk через PSTN (ТфОП) с помощью Grandstream Handy Tone HT503

В общем, необходимо подключить обычную телефонную линию (ТфОП, PSTN) к Asterisk для возможности принимать и совершать вызовы через неё.

В этой статье изложу свой опыт - для памятки и вдруг кому-нибудь еще поможет.

Как подключить аналоговую линию в цифровой астериск? Вариантов нашлось три:
  • VoIP-гейтвей
  • PCI-карточка с хотя бы одним портом FXO
  • небольшая волшебная коробочка под названием Grandstream Handy Tone HT503
1й вариант отвергли, т. к. гейт дорог и в его функционал не будет реализован на его стоимость. 2й вариант был отвергнут, т. к. на материнской плате сервера нет обычного PCI-порта... и еще потому, что настраивать карточки расширения имеет смысл, если у нас несколько линий аналоговой/цифровой телефонии FXO/E1. Самым простым и экономичным вариантом оказался номер 3 (стоимость его 50-70 долл).

Итак, разберемся с терминологией. Если по-простому, то:
  • FXO - это интерфейс, к которому подключается PSTN, т. е. сама телефонная линия.
  • FXS - интерфейс для подключения обычного аналогового телефона для использования его в VoIP-телефонии.
  • E1 - интерфейся цифровой телефонии, используются в крупных организациях с множеством цифровых каналов.
Для наших задач возможно подошло бы и другое устройство подобного типа, НО из представленных на нашем рынке устройств, только HT503 имело FXO-порт. Большинство таких устройств имеют только 1 или несколько FXS-портов. Они нам НЕ подходят! Называются они ATA - Analog Telephone Adapter. (в HT503, к слову, также есть один FXS порт, так что он тоже ATA, но не только).

Моменты, которые необходимо учитывать при настройке HT503:
  • подключение чекез WAN или LAN
  • настройка аналоговых параметров ТфОП на странице Advanced Settings (зависят от страны)
  • параметры отсылки DTMF-сигналов для голосовых меню входящих и исходящих вызовов
  • региональные параметры детектирования busy-сигнала ТфОП. Если задать неверные - HT503 не будет детектировать момент завершения входящего вызова вызывающим абонентом
  • Настройки сопротивления ТфОП
  • приоритеты кодеков
  • настройка экстеншна Unconditional Call Forward to VOIP для диалплана Астериска

В общем, распаковываем коробку, подключаем к HT503 БП, затем

18 мар. 2013 г.

Настройка abrt (automatic bug reporting tool) в RHEL6

abrtd - демон, который следит за крэшами программулин и в случае крэша делает core dump и сохраняет всякий другой полезный в отладке stuff. И - самое полезное - от может уведомлять нас сразу же о проблеме и даже аплоадить дебаг инфу на багзиллу или нужный ftp/scp сервер.

Постановка задачи - настроить в abrt отправку писем при обнаружении крэша кастомного софта на сервере.

Для начала установим необходимые пакеты.

yum install abrt-addon-ccpp abrt-addon-python abrt-cli abrt-plugin-logger abrt-plugin-mailx abrt-tui abrt

Если это для вас важно, то следует заметить, что установка abrt меняет kernel core_pattern:

cat /proc/sys/kernel/core_pattern

/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e

Добавим в автозагрузку демона abrtd:

chkconfig abrtd on
chkconfig abrt-ccpp on
chkconfig abrt-oops on

Конфигурационные файлы abrt находятся в директориях:
  • /etc/libreport/ - хранит конфиги связанные с репортами
  • /etc/libreport/events.d/ - здесь лежат описания ивентов и реакции на них
  • /etc/libreport/events/ - описание т. н. репортеров
  • /etc/libreport/plugins/
  • /etc/abrt/ - конфиги самого демона abrtd
  • /etc/abrt/plugins/ - конфиги плугинов abrt.
Нас все конфиги не интересуют, потому перечислю, что нужно поменять: