Archive for Январь, 2013

Установка smokeping на windows

// Январь 25th, 2013 // No Comments » // monitoring, Network, windows

Что такое smokeping?

Smokeping — отличный инструмент измерения времени отклика (сетевых задержек) от серверов ping-а и некоторых других сервисов, и отображения их на графиках. К сожалению, она была доступна только для Linux/Unix, с помощью некоторых манипуляций можно заставить ее работать под Microsoft Windows!

SmokePing роскошный инструмент измерения задержки. Он может измерять, хранить и отображать задержка, задержки прохождения и потери пакетов. SmokePing использует RRDtool для поддержки хранения данных и отрисовки красивых графиков, с детализацией информации до минуты, состояния каждого сетевого подключения.

Что нужно для установки?

  • Perl. Мой выбор использовать ActivePerl, для работы требуется версия Perl 5.8, но она уже давно морально устарела, предпочтительно использовать Perl 5.10 (с более поздними версиями возможно не соберется RRDtool), но тут тоже ждет маленькая проблема Activestate старые версии отдает только за деньги =( вот локальная копия Perl 5.10
  • модуль RRDs для Perl — прямые ссылка для Perl 5.8 и Perl 5.10 и локальные копии Perl 5.8, Perl 5.10
  • fping для windows и локальная копия
  • WEB-сервер. Под Windows есть уже готовые сборки Apache+MySQL+PHP, например WAMP или AppServ, я буду использовать последний.
  • Smokeping, я буду использовать на данный момент последнюю стабильную версию smokeping 2.6.8 или тут.

(далее…)

Linux: Установка загрузчика GRUB на программный RAID

// Январь 23rd, 2013 // 1 Comment » // boot-loader, grub, linux, md, RAID, recovery

Имеем два диска собранные в зеркало, через dm:
/dev/sda1 + /dev/sdb1 => /dev/md0
/dev/sda5 + /dev/sdb5 => /dev/md1

Проверяем есть ли активный раздел:

# file -s /dev/sda
/dev/sda: x86 boot sector; partition 1: ID=0xfd, starthead 32, startsector 2048, 1169408 sectors; partition 2: ID=0x5, starthead 12, startsector 1173502, 76949506 sectors
# file -s /dev/sdb
/dev/sdb: x86 boot sector; partition 1: ID=0xfd, active, starthead 32, startsector 2048, 1169408 sectors; partition 2: ID=0x5, starthead 12, startsector 1173502, 76949506 sectors, code offset 0x63

как видно, на диске sda не указан активный раздел и не установлен загрузчик.
Что бы указать раздел активным, например первый:

# fdisk /dev/sda
...
Command (m for help): m
Command action
   a   toggle a bootable flag
...
   w   write table to disk and exit

Command (m for help): a
Partition number (1-9): 1

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

Установка GRUB2:
В Debian и прочих Ubuntu достаточно ввести:

# dpkg-reconfigure grub-pc

два раза нажать OK и выбрать звездочками оба диска и еще раз ОК
или:

# grub-install /dev/sda
# grub-install /dev/sdb

если еще выполнить:

# update-grub

изменится меню (конфигурационный файл), появится возможность выбора диска для загрузки ОС.

Старый GRUB:

# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> root (hd1,0)
grub> setup (hd1)

Результат работы будет такой:

   grub> root (hd1,0)
   root (hd1,0)
    Filesystem type is ext2fs, partition type 0xfd
   grub> setup (hd1)
   setup (hd1)
    Checking if "/boot/grub/stage1" exists... no
    Checking if "/grub/stage1" exists... yes
    Checking if "/grub/stage2" exists... yes
    Checking if "/grub/e2fs_stage1_5" exists... yes
    Running "embed /grub/e2fs_stage1_5 (hd1)"...  15 sectors are embedded.
   succeeded
    Running "install /grub/stage1 (hd1) (hd1)1+15 p (hd1,0)/grub/stage2 /grub/grub.conf"... succeeded
   Done.
   grub> quit
   quit

Проверим результат:

# file -s /dev/sda
/dev/sda: x86 boot sector; partition 1: ID=0xfd, active, starthead 32, startsector 2048, 1169408 sectors; partition 2: ID=0x5, starthead 12, startsector 1173502, 76949506 sectors, code offset 0x63
# file -s /dev/sdb
/dev/sdb: x86 boot sector; partition 1: ID=0xfd, active, starthead 32, startsector 2048, 1169408 sectors; partition 2: ID=0x5, starthead 12, startsector 1173502, 76949506 sectors, code offset 0x63

Замена сбойного диска в программном RAID-массиве

// Январь 23rd, 2013 // 12 комментариев » // linux, md, RAID, recovery

Изначально имеем два диска /dev/sda и /dev/sdb, собранные в RAID1, по типу:
/dev/sda1 + /dev/sdb1 => /dev/md0
/dev/sda5 + /dev/sdb5 => /dev/md1

Диск /dev/sda вышел из стоя:

# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sdb5[0]
      1950708 blocks super 1.2 [2/1] [U_]

md0 : active raid1 sdb1[0]
      584692 blocks super 1.2 [2/1] [U_]

—-

Нужно извлечь сбойный sda из массива, для этого помечаем его сбойным для всех массивов:
(далее…)

Debian не определил сетевую карту Realtek 8139

// Январь 14th, 2013 // No Comments » // Debian, harware, linux, Операционные системы

Внезапно, но почему-то карта не определилась, и отзывалась не своим именем:

# lspci -vvv

02:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8039 (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. Device 8039 (rev 10)
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- ...
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1+,D2+,D3hot+,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-

Лечится ручной загрузкой модуля:

modprobe 8139too

после перезагрузки:

# lspci -vvv

02:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 32 (8000ns min, 16000ns max)
        Interrupt: pin A routed to IRQ 7
        Region 0: I/O ports at a000 [size=256]
        Region 1: Memory at e5000000 (32-bit, non-prefetchable) [size=256]
        [virtual] Expansion ROM at 10200000 [disabled] [size=64K]
        Capabilities: [50] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: 8139too

nginx хост по умолчанию / nginx default host

// Январь 14th, 2013 // No Comments » // nginx, WWW

При конфигурации nginx с несколькоми виртуальными хостами/сайтами сайт по умолчанию явно не указан.
Для определения исправим конфиг, например /etc/nginx/sites-available/default, найдем строку:

server {
    listen   80; ## listen for ipv4

и заменим на:

server {
    listen   80 default; ## listen for ipv4

Теперь все обращения к вебсерверу с несуществующим адресом или напрямую по IP будут попадать на страницу указанную в default.