Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  frox
  SARG
  samba & ClamAV
  named
  proftpd
  cacti
  SAMBA+AD+NT ACL
  MySQL
  hylafax
  DDNS+DHCP
  cvsupd
  Samba как PDC
  Основы LDAP
  LDAP+SSL
  LDAP auth
  knockd
  rsync
  MRTG
  Rejik
  Jabber - OpenFire
  Samba(PDC) + Ldap
  squid+AD
  ATSlog
  vsftpd
  LDAP: samba, dns, dhcp
  Free-SA
  cups-samba на samba+AD
  irc + services
  Nagios - мониторинг сети
  TeamSpeak
  icecast2
  verlihub (p2p)
  Icecast2 + Darkice
  OOPS
  vsftpd + mysql
  Amanda
  HAVP
  Рыбалка на FreeBSD
  DNS сервер NSD
  DNS сервер Unbound
  mpd5, msmtp, dynamic ip
  ProFTPd + LDAP
  OpenVPN + LDAP
  Samba (PDC+BDC)
  BIND & AD
  POWERDNS
  3proxy
  eGroupWare
  GLPI
  SugarForge CRM
  Bacula
  Mysql - базовое описание
  Asterisk IP PBX
  Samba & CUPS & AD & ACL
  SMSTools 3
  Samba+ NT ACL
  phpmyadmin
  1С:Предприятие 8.1
  PurefFTPd
  qemu network
  AimSniff
  comms/scmxx
  Zoneminder
  Openfire Jabber Server
  Zoneminder 2
  Принт-Сервер Samba+LPD & AD
  Кластер OpenLDAP 2.4
  Lightsquid
  Установка Zabbix-1.6
  Установка net2ftp
  VSFTPD + AD && MySQL
  Network UPS Tools
  mpd5 L2TP client
  Apache 2.2 as a proxy
  ejabberd+mysql+icq
  HotSpot
  Установка и использование Zenoss на FreeBSD 7.2
  mysql-proxy
  DNS zones
  squid+sams+sqstat
  transmission-daemon
  Squid+AD (group access)
  named 9.7.0
  SysAid Server
  MySQL Master+Master
  proftpd file auth&quota
  usb_modeswitch
  NSDadmin
  iperf Тест скорости между хостами
  Простой факс-сервер mgetty+sendfax
  SQUID-MultiCpuSystem
  vsftpd + system users
  Syslog server
  Температура в серверной
  Nagios+Digitemp
  Avast! FreeBSD
  Настройка git+gitosis
  Firefox SyncServer
  Scan+Print server FreeBSD 9
  proftpd,pgsql,web
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> программы —> Network UPS Tools

Network UPS Tools

Автор: Raven2000.


>>>НОВАЯ ВЕРСИЯ СТАТЬЯ НАХОДИТСЯ ТУТ "Network UPS Tools"<<<

Network UPS Tools представляет собой набор программ, которые обеспечивают общий
интерфейс для мониторинга и администрирование UPS оборудования.

У меня есть APC Smart-UPS 1500VA USB & Serial 230V и к нему подключено 2 сервера один с FreeBSD, второй - c Windows 2003. При выключении питания один штатно выключается (тк к нему подключен дата-кабель от UPS), второй - как получится. Передо мной встала задача - автоматизировать процесс выключения серверов подключенных к одному UPS, при разрядке батареи последнего. Требования к утилите были следующие: умение работать с сетью, наличие интерфейса управления, возможность работы с любыми операционными системами.

Содержание:

  • Установка
         Подключение
         Порт
  • Предварительная настройка
         Директория
         Драйвер
  • Настройка
         Конфигурационные файлы
         Разрешения
  • Запуск сервиса
         Тест
         rc.conf
  • Сетевой сервер
         Клиенты
  • Дополнительно
         SNMP
         Web
  • Заключение
  • Ссылки

    Установка

  • Подключение
    При подключении APC Smart-UPS 1500VA USB & Serial 230V к FreeBSD, UPS определяется так:
    (подключения через USB)
    ugen0: <American Power Conversion Smart-UPS 1500 
    FW:653.12.I USB FW:4.2, class 0/0, rev 1.10/0.06, addr 2> on uhub0
    


    (подключения через COM)
    # dmesg -a | grep sio0
    sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
    sio0: type 16550A
    sio0: [FILTER]
    



    Я остановился на подключении через COM порт, так как выдел в нем более светлое будущее для работы с NUT.

  • Порт
    # cd /usr/ports ; make search name='nut-'
    Port:   nut-2.4.1
    Path:   /usr/ports/sysutils/nut
    Info:   Network UPS Tools
    Maint:  Joerg.Pulz@frm2.tum.de
    B-deps: autoconf-2.62 autoconf-wrapper-20071109 expat-2.0.1 gettext-0.17_1
    gmake-3.81_3 libiconv-1.11_1 libusb-0.1.12_4 m4-1.4.12,1 neon28-0.28.3
    net-snmp-5.4.2.1_3 perl-5.8.9_2 pkg-config-0.23_1
    R-deps: expat-2.0.1 gettext-0.17_1 libiconv-1.11_1 libusb-0.1.12_4 
    neon28-0.28.3 net-snmp-5.4.2.1_3 perl-5.8.9_2 pkg-config-0.23_1
    WWW:    http://www.networkupstools.org/]
    
    # cd /usr/ports/sysutils/nut ;make config
    
    Options for nut 2.4.1
    
    [X] SERIAL  SERIAL support
    [ ] USB     USB support
    [ ] SNMP    SNMP support
    [X] NEON    NEON XML/HTTP support
    [ ] PDU     Powerman PDU support
    [ ] HAL     HAL support
    [ ] IPV6    IPV6 support
    [ ] DEVEL   Install header files
    [X] CGI     Web CGI interface
    


    Уберите лишнее, например IPV6, и SERIAL\USB (зависит от подключаения UPS), поставьте SNMP (если ваш UPS поддерживает такую возможность) и CGI, если требуется мониторить UPS через веб интерфейс. Приступаем к установке.
    # cd /usr/ports/sysutils/nut ;make install clean
    
    Options for libusb 0.1.12_4
    [ ] SGML  Install developer guide from SGML
    
    ~~~~~~~~~~~
    
          This port has installed the following startup scripts which may cause
          these network services to be started at boot time.
    /usr/local/etc/rc.d/nut_upsmon
    /usr/local/etc/rc.d/nut_upslog
    /usr/local/etc/rc.d/nut
    
          If there are vulnerabilities in these programs there may be a security
          risk to the system. FreeBSD makes no guarantee about the security of
          ports included in the Ports Collection. Please type 'make deinstall'
          to deinstall the port if this is a concern.
    
          For more information, and contact details about the security
          status of this software, see the following webpage:
    http://www.networkupstools.org/
    


    Готово, теперь переходим к настройке NUT.

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

  • Директория
    Создадим необходимые директории для драйверов и сервера, куда будут сохраняться данные UPS, и выставим корректные права на директорию.
    # mkdir -p /var/state/ups ;chmod 0770 /var/state/ups
    

    # chown uucp:wheel /var/state/ups
    


  • Драйвер
    Найдем свой драйвер UPS в списке поддерживаемого оборудования.
    # cd /usr/local/etc/nut
    


    Посмотрим, поддерживает ли NUT мое оборудование APC Smart-UPS 1500VA.
    # cat driver.list | grep Smart-UPS
    ## <manufacturer> <model name> <model extra> <driver> ##
    "APC"   "Smart-UPS"             ""      "apcsmart"
    "APC"   "Smart-UPS USB"         "USB"   "usbhid-ups"
    


    Поддержка имеется, поэтому я могу использовать два драйвера для USB и для COM порта. На данный момент буду использовать драйвер "apcsmart".

    Настройка

  • Конфигурационные файлы
    Все конфигурационные файлы находятся в директории /usr/local/etc/nut

    ups.conf - настройки UPS драйвера для сбора данных
    upsd.conf - настройка основного демона upsd для Network UPS Tools
    upsd.users - контроль доступа к UPS демону (профили пользователей)
    upsmon.conf - настройки монитора UPS демона

  • ups.conf
    В этом файле вы указываете свои UPS.
    # cd /usr/local/etc/nut
    # cp ups.conf.sample ups.conf
    


    Добавим UPS и настроим подключение к нему.
    [APC]
    driver = apcsmart
    port = /dev/cuad0
    cable = 940-0024C
    desc = "APC Smart-UPS 1500VA"
    


    Опишим некоторые параметры для использования:

  • [ups_name] - имя используется как адрес вашего UPS. Вы можете его изменить на любое произвольное имя.

  • driver - драйвер, используемый для работы с UPS.

  • port - порт, на котором висит UPS (для подключения через USB, UPS вставляет это значение в auto).
    - Для snmp-ups: имя хоста SNMP агента
    - Для newhidups: значение "auto" для автоматического соединения с USB UPS.

  • desc - описание устройства для себя, чтобы не забыть.

  • sdorder - необязательный элемент. При наличии нескольких UPS подключенных к серверу можно выключать в определенном порядке. используя upsdrvctl можно выключить все 0s или 1s, 2s и тд. Для исключения последовательной остановки используйте -1.

  • nolock - необязательный элемент, его не рекомендуется использовать в его этом конфиге. Он служит для отключения блокировки порта при пользовании утилитой.

  • maxstartdelay - необязательный элемент. Может быть, заданна как глобальная переменная выше вашего первого UPS. Это значение определяет, сколько upsdrvctl будет ожидать окончания запуска драйвера. Данная возможность предоставляет стабильность в работе. Значение по умолчанию равно 45 секундам.

  • cable - Если драйвер UPS требует дополнительных параметров, вы можете указать их здесь. Например, для флага "cable" я ставлю значение 940-0024C. Это индекс вашего кабеля и вы можете посмотреть его тут /usr/local/share/doc/nut/cables. Вы можете не указывать это значение, если ваше подключение к UPS стандартно.

  • upsd.conf
    upsd отвечает за передачу данных от драйвера клиентским программам в сети. upsd должен находится под управлением и по возможности, как единственный источник состояния и мониторинга клиентов, таких как upsmon. upsd использует этот файл для контроля доступа к серверу и для установки других значений различных конфигурации. Этот файл содержит подробные сведения об управлении доступом, таким образом, обеспечивается безопасность. В идеальном случае, только процесс upsd должны иметь возможность прочитать данные из этого файла.

    Создадим конфигурационный файл.
    # cp upsd.conf.sample upsd.conf
    


    Добавим следующие значения:
    LISTEN 127.0.0.1
    LISTEN 192.168.0.2
    


  • Про ACL
    Comment By: Arnaud Quette (aquette) Date: 26/01/2008 20:53
    Message: the ACL mechanism has been removed from NUT 2.3.0 development tree.
    Заменено на TCP wrappers.

    Опишем параметры использования:
  • MAXAGE <seconds> - по умолчанию 15 секунд. Это частота обновления данных клиентов после остановки драйвера UPS. Следует использовать только в том случае, если у вас трудности с обновлением данных. См syslog.

  • LISTEN <address> [<port>] - здесь указывается адрес и порт 3493 (по умолчанию) для прослушивания подключений.

  • MAXCONN <connections> - по умолчанию используется 1024 подключений. Каждый UPS, каждого LISTEN адреса и каждого клиента считается как одно подключение. Если на сервере заполнятся количество подключений, он больше не будет принимать новых входящих клиентских подключений.

  • upsd.users
    Контроль доступа для UPS демона (профили пользователей). Именно в этом файле вы указываете, кто и в какой мере будет контролировать и работать с утилитой.

    # cp upsd.users.sample upsd.users
    # cat upsd.users
    [admin]
    password = admin
    actions = SET
    instcmds = ALL
    
    [monmaster]
    password = bsd
    upsmon master
    
    [monslave]
    password = win2k3
    upsmon slave
    


    Значения:

  • password - пароль пользователя
  • allowfrom - откуда разрешено подключатся

    Каждый UPS монитор может определяться как один из трех возможных типов:
  • upsmon master - полные полномочия управлением питания подключенных к системе UPS под управлением upsmon, эта система отвечает за выключение разряженного аккумулятора.  Выключение происходит после  безопасного выключения всех Slave систем. Если ваш UPS подключен непосредственно к системе через последовательный порт, то для upsmon системы следует определить этот UPS как Master.

  • upsmon slave - эта система, под управлением upsmon и она не выключается непосредственно. Операционная система будет выключена перед отключением питания Master. Используйте этот режим при запуске монитора на других компьютерах работающих на том же UPS. И очевидно, что только один сервер может быть подключен к последовательному порту на UPS, коим будет является Master. Все остальные сервера будут Slave.

  • upsmon monitor-only - при этом режиме будут создаваться уведомления о состоянии или изменении работы батареи, переключении на линию и т.д., но не завершать работу системы.

  • actions - Действия пользователя с применением upsd.
    - SET - изменить значения определенных переменных в UPS
    - FSD - установка флага "принудительного выключения" для UPS

  • instcmds - разрешения пользователю на инициирование конкретных команд. Применяя "ALL" вы разрешаете использовать все команды, Существует множество команд выполните 'upscmd -l' чтобы увидеть, что ваше оборудование поддерживает. Вот, к примеру, несколько команд.

    - test.panel.start      - старт теста передней панели
    - test.battery.start    - старт теста батареи
    - test.battery.stop     - остановка теста батареи
    - calibrate.start       - запуск калибровки батареи
    - calibrate.stop        - остановка калибровки батареи

  • upsmon.conf
    upsmon upsmon предоставляет основные функции, которая собирается найти в программе мониторинга UPS, например это безопасное завершений работы при сбое питания. В многоуровневой схеме утилиты NUT это клиент.
    # cp upsmon.conf.sample upsmon.conf
    # cat upsmon.conf
    MONITOR APC@localhost 1 monmaster bsd master
    #MONITOR APC@localhost 1 monslave win2k3 slave
    MINSUPPLIES 1
    SHUTDOWNCMD "/sbin/shutdown -h +0"
    POLLFREQ 5
    POLLFREQALERT 5
    HOSTSYNC 15
    DEADTIME 15
    POWERDOWNFLAG /etc/killpower
    NOTIFYFLAG ONLINE      SYSLOG+WALL
    NOTIFYFLAG ONBATT      SYSLOG+WALL
    NOTIFYFLAG LOWBATT     SYSLOG+WALL
    NOTIFYFLAG SHUTDOWN    SYSLOG+WALL
    RBWARNTIME 43200
    NOCOMMWARNTIME 300
    FINALDELAY 5
    


    Мы добавили MONITOR в котором указали наши значения. Формат таков:
    MONITOR system powervalue username password type
    


  • MINSUPPLIES - указываем количество блоков питания которые должны получать мощность сохраняя систему запущенной. Большинство систем имеют один БП. Но дорогие сервера, например HP NetServer LH4 могут работать с 2 из 4 БП и ему нужно ставить 2.

  • SHUTDOWNCMD - upsmon выполняет эту команду, когда системе необходимо выключить.

  • NOTIFYCMD - upsmon отправляет сообщение при происшествиях.

  • POLLFREQ - опрос мониторами с частотой (измеряется в секундах) для обычной деятельности. Вы можете отрегулировать это частоту опроса, чтобы upsmon не зашумлял вашу сеть, но не вносите слишком большие значения тк. оно может пропустить отключение питания.

  • POLLFREQALERT - опрос UPS с частотой в секундах. Можно сделать значение поменьше, чем POLLFREQ для лучшей чувствительности работы батареи.

  • HOSTSYNC - как долго upsmon будет ждать перед переходом к следующему upsmon.
    master upsmon  использует это число при ожидании slaves чтобы отключиться после того как он установил флаг принудительное завершение работы (FSD).  И если slaves не отключаться после этого тайм аута, то выключение продолжится без них.

  • DEADTIME - интервал ожидания перед объявлением статуса UPS как «мертвый»
    upsmon требует, чтобы UPS предоставлял свою статус информацию, каждые несколько секунд (см. POLLFREQ и POLLFREQALERT).  Если статус загрузки, UPS помечен fails.  И если оно остается fails более чем DEADTIME секунд, то UPS помечается «мертвый».

  • POWERDOWNFLAG - флаг файла для форсирования завершения работы UPS в master системе.

  • NOTIFYMSG - изменение сообщения, отправленные upsmon при возникновении определенных событий.

  • NOTIFYFLAG - изменение поведения upsmon при возникновении событий NOTIFY.

  • RBWARNTIME - предупреждение замены аккумулятора в секундах.

  • NOCOMMWARNTIME - предупреждение по времени при не общении к UPS в секундах.

  • FINALDELAY - процент батареи, при котором происходит завершение работы системы.

  • Разрешения
    Проверьте разрешения на директорию /var/db/nut текущий пользователь должен быть uucp (или другой NUT_USER) и права 0750:
    # ls -ld /var/db/nut/
    drwxr-x---  2 uucp  wheel  512 Apr 28 16:16 /var/db/nut/
    


    Измените разрешения на конфигурационные файлы: они должны читаться пользователем uucp (или другим пользователем NUT_USER):
    # chown uucp:wheel upsd.conf upsd.users upsmon.conf
    # chmod 0640 upsd.conf upsd.users upsmon.conf
    


    Запуск сервиса

    Он сказал поехали... =)
    # /usr/local/etc/rc.d/nut start
    Network UPS Tools - UPS driver controller 2.4.1
    Network UPS Tools - APC Smart protocol driver 2.00 (2.4.1)
    APC command table version 2.0

    Broadcast Message from root@bsd.ampul.local
    (no tty) at 12:51 MSD...

    Communications with UPS APC@localhost lost

    Detected Smart-UPS 1500 [AS0537130911] on /dev/cuad0
    Starting nut.
    Network UPS Tools upsd 2.4.1
    listening on 192.168.0.2 port 3493
    listening on 127.0.0.1 port 3493
    Connected to UPS [APC]: apcsmart-APC

    Broadcast Message from root@bsd.ampul.local
    (no tty) at 12:51 MSD...

    Communications with UPS APC@localhost established


    Смотрим, что все запустилось нормально и UPS подхватился, все правила подключились и порт слушается. =)

  • Тест
    Теперь потыкаем демон. И посмотрим, запустился ли демон.
    # ps -ax |grep nut
    752 ?? Ss 0:00.32 /usr/local/libexec/nut/apcsmart -a APC
    # ps -ax | grep ups
    754 ?? Ss 0:00.03 /usr/local/sbin/upsd
    761 ?? Ss 0:00.00 /usr/local/bin/upslog -s myups@localhost -l
    /var/log/ups.log -i 300
    768 ?? Is 0:00.00 /usr/local/sbin/upsmon localhost
    771 ?? S 0:00.01 /usr/local/sbin/upsmon localhost


    Все замечательно, демон находится в памяти и ведет логи.

    Теперь проверим свой UPS
    # upsc APC@localhost
    battery.alarm.threshold: 0
    battery.charge: 100.0
    battery.charge.restart: 00
    battery.date: 09/07/05
    battery.packs: 000
    battery.runtime: 1800
    battery.runtime.low: 120
    battery.voltage: 27.54
    battery.voltage.nominal: 024
    driver.name: apcsmart
    driver.parameter.cable: 940-0024C
    driver.parameter.pollinterval: 2
    driver.parameter.port: /dev/cuad0
    driver.version: 2.4.1
    driver.version.internal: 2.00
    input.frequency: 50.00
    input.quality: FF
    input.sensitivity: H
    input.transfer.high: 253
    input.transfer.low: 208
    input.transfer.reason: T
    input.voltage: 220.3
    input.voltage.maximum: 221.7
    input.voltage.minimum: 218.8
    output.voltage: 220.3
    output.voltage.nominal: 230
    ups.delay.shutdown: 090
    ups.delay.start: 000
    ups.firmware: 653.12.I
    ups.id: UPS_IDEN
    ups.load: 026.6
    ups.mfr: APC
    ups.mfr.date: 09/07/05
    ups.model: Smart-UPS 1500
    ups.serial: AS0537130911
    ups.status: OL
    ups.temperature: 027.0
    ups.test.interval: 1209600
    ups.test.result: NO


    Полная картина ясна, но если кому-то нужен более скромный отчет, то выполните следующую команду.
    # upsc APC@localhost ups.status
    OL


  • OL - система работает на линии (on line power)
  • OB - система работает от батареи (on battery)
  • LB - система работает от севшей батареи (low battery)

    Можно посмотреть монитором
    # upsmon
    Network UPS Tools upsmon 2.4.1
    UPS: APC@localhost (master) (power value 1)
    Using power down flag file /etc/killpower
    


    Когда upsmon необходимо быстро выключить локальную систему, она устанавливает флаг "FSD" (forced shutdown - принудительное отключение) для любых UPS, на котором она выполняется в master режиме. Данная возможность используется и для синхронизации slaves компьютеров в том случае,если master UPS передает событие и всем рассылается сообщение о немедленном прекращении работы.Можно вручную вызвать этот режим на master upsmon, запустив другой экземпляр с флагом '-c fsd '. Это полезно, когда вы хотите инициировать shutdown перед критическим этапом.
    Эмулируем падение мощности:
    # upsmon -c fsd
    


    Если система корректно выключилась, то все в порядке.

  • rc.conf
    Для запуска NUT при старте  FreeBSD добавляем в /etc/rc.conf следующее:
    nut_enable="YES"
    nut_upslog_enable="YES"
    nut_upsmon_enable="YES"
    


    Перезагрузим FreeBSD и увидим при загрузке следующее.
    NNetwork UPS Tools - UPS driver controller 2.4.1
    Network UPS Tools - APC Smart protocol driver 2.00 (2.4.1)
    APC command table version 2.0
    Detected Smart-UPS 1500 [AS0537130911] on /dev/cuad0
    Starting nut.
    Network UPS Tools upsd 2.4.1
    listening on 192.168.0.2 port 3493
    listening on 127.0.0.1 port 3493
    Connected to UPS [APC]: apcsmart-APC
    Starting nut_upslog.
    Network UPS Tools upslog 2.4.1
    logging status of myups@localhost to /var/log/ups.log (300s intervals)
    Starting nut_upsmon.
    Network UPS Tools upsmon 2.4.1
    UPS: APC@localhost (master) (power value 1)
    Using power down flag file /etc/killpower


    Сетевой сервер

  • Клиенты
    Подключим второй сервер Windows 2003 St в качестве клиента. Для этого необходимо найти необходимое ПО клиента установить и настроить его. Список клиентских модулей смотрите тут Client projects. Мне был необходим Windows NUT client Необходимо скачать и установить модуль, а так же настроить его под свои параметры и добавить в автозагрузку системы.



    Проведем практические испытания - выключим электричество на входе UPS'а и посмотрим, как отреагирует сервер и клиент.



    Как и было задумано, сперва штатно выключился Windows 2003 slave (при зарядке батареи 10%), а затем - FreeBSD master (при зарядке батареи 5%)
    May 5 14:04:03 bsd upsmon[770]: UPS APC@localhost on battery
    May 5 14:41:43 bsd upsmon[770]: UPS APC@localhost battery is low
    May 5 14:41:43 bsd upsmon[770]: Executing automatic power-fail shutdown

    Broadcast Message from root@bsd.ampul.local
    (no tty) at 14:41 MSD...

    UPS APC@localhost battery is low

    Broadcast Message from root@bsd.ampul.local
    (no tty) at 14:41 MSD...

    Executing automatic power-fail shutdown

    May 5 14:41:43 bsd upsmon[770]: Auto logout and shutdown proceeding

    Broadcast Message from root@bsd.ampul.local
    (no tty) at 14:41 MSD...

    Auto logout and shutdown proceeding

    *** FINAL System shutdown message from root@bsd.ampul.local ***
    System going down IMMEDIATELY

    May 5 14:41:48 bsd shutdown: halt by root:
    May 5 14:42:20 bsd rc.shutdown: 30 second watchdog timeout expired. Shutdown terminated.


    Дополнительно

  • SNMP
    Доступно для снятия данных со специализированных UPS. К сожалению, у меня нет APC AP9606 APC Web/SNMP management card или подобных ему, чтобы я смог бы попробовать данную опцию.
    # man snmp-ups
    


  • Web
    Web-интерфейс проверки статуса UPS. Установим и посмотрим, что upsstats может нам предложить.
    # man 8 upsstats.cgi
    


    upsset.conf - Конфигурация Network UPS Tools для upsset.cgi
    # cp upsset.conf.sample upsset.conf
    # cp upsstats.html.sample upsstats.html
    # cp upsstats-single.html.sample upsstats-single.html
    


    Раскоментируем строчку.
    # cat upsset.conf
    I_HAVE_SECURED_MY_CGI_DIRECTORY
    


    В конфигурационный файл Apache добавим следующее:
    <VirtualHost *:80>
    ServerName ups.mydomain
    ServerAlias ups
    ServerAdmin admin@localhost
    Options Indexes FollowSymlinks MultiViews +ExecCGI
    AddHandler cgi-script .cgi
    DocumentRoot /usr/local/www/nut/
    AccessFileName .htaccess
    </VirtualHost>
    


    И при переходе на ваш адрес у вас должна отобразится страница Network UPS Tools с вкладками Statistics и Settings.
    - Settings – тут вы можете настроит UPS (пользователя берете согласно содержимому upsd.users)
    - Statistics – здесь вы можете просмотреть статус вашего UPS, а так же посмотреть текущее состояние в графическом виде.



    Заключение

    Система поработала в тестовом режиме полторы недели и уже один раз спасла (как раз на праздниках выключали электричество). И после получение питания с UPS(включили электричество) эти два сервера включились самостоятельно (настройка BIOSа) как и положено. =)

    Ссылки

  • Документы # cd /usr/local/share/doc/nut/
  • Network UPS Tools
  • APC Smart-UPS 1500VA USB & Serial 230V
  • FreeBSD Ports nut
  • Network protocol info



    Ссылка на обсуждение: Incorrect URL.

    размещено: 2009-05-11,
    последнее обновление: 2011-06-21,
    автор: Raven2000

    оценить статью:

    Andy, 2009-05-11 в 13:16:38

    Хорошая статья!

    Raven2000, 2009-05-11 в 21:45:51

    Вай спасибо =))) От тебя это как две похвалы ;)

    razor, 2009-05-12 в 10:06:25

    зачот.
    буду знать, что не apcupsd единым ;)

    Salimk, 2009-05-15 в 9:57:48

    Вот не успел,
    я только закончил писать статью про NUT,
    Хотел уже выложить, ладно я не обиделся,
    Raven2000 зачет хорошая статья,
    у меня правда Ups-КА MGE и подключал через USB,
    кому интересно с USB

    #usbdevs -v

    Controller /dev/usb1:
    addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
    port 1 addr 2: low speed, power 20 mA, config 1, EXtreme(0xffff), MGE UPS SYSTEMS(0x0463), rev 1.00
    port 2 powered

    #cp /etc/defaults/devfs.rules /etc/devfs.rules

    #ee /etc/devfs.rules

    [nut_usb=10]
    add path 'ugen0' group wheel user uucp mode 0660


    #ee /etc/devfs.conf
    perm    usb1    0660
    own    usb1    root:uucp


    #ee /etc/rc.conf

    usbd_enable="YES"
    devfs_system_ruleset="nut_usb"


    #/etc/rc.d/devfs restart

    Salimk, 2009-05-15 в 10:15:00

    и еще в upsmon.conf
    NOTIFYCMD "/usr/local/sbin/upssched"

    NOTIFYFLAG ONLINE       SYSLOG+WALL+EXEC
    NOTIFYFLAG ONBATT       SYSLOG+WALL+EXEC
    NOTIFYFLAG SHUTDOWN     SYSLOG+WALL+EXEC
    NOTIFYFLAG LOWBATT      SYSLOG+WALL+EXEC
    NOTIFYFLAG REPLBATT     SYSLOG+WALL+EXEC
    NOTIFYFLAG NOCOMM       SYSLOG+WALL+EXEC
    NOTIFYFLAG COMMBAD       SYSLOG+EXEC
    NOTIFYFLAG COMMOK       SYSLOG+EXEC

    upssched.conf

    CMDSCRIPT /usr/local/scripts/nut_notifycmd.sh

    LOCKFN /var/db/nut/upssched.lock
    PIPEFN /var/db/nut/upssched.pipe
    #  120 (2min)  1500 25min
    AT ONBATT * START-TIMER  earlyshutdown 1500
    AT ONLINE * CANCEL-TIMER earlyshutdown


    И конечно сам скрипт /usr/local/scripts/nut_notifycmd.sh
    Он еще немного сырой, но он работает

    #!/bin/sh

    notify_mail="ВАША_МЫЛО"
    local_machine=$(uname -n)
    cur_date=$(date +%d-%m-%Y/%H:%M)



    case $1 in
           onbattwarn) echo "UPS работает от батарее, выйдите из системы прямо сейчас" | mail -s onbatt_${local_machine} ${notify_mail}
           ;;
       
           ups-back-on-power) echo "Питания от сети ${cur_date}" | mail -s ONLINE_${local_machine} ${notify_mail}
           ;;
       
           replbatt) echo "The UPS battery is bad and needs to be replaced ${cur_date}" | mail -s replbatt_${local_machine} ${notify_mail}
           ;;
       
           lowbatt) echo "Внимания низкий заряд батарее ${cur_date}" | mail -s lowbatt_${local_machine} ${notify_mail}
           ;;
       
           commbad) echo "Внимания потеря сигнала с UPS ${cur_date}" | mail -s "Communications lost to the UPS ${local_machine}" ${notify_mail}
           ;;
           
           earlyshutdown) echo "Принудительное отключения питания ${cur_date}" | mail -s "earlyshutdown ${local_machine}" ${notify_mail}
           /usr/local/ups/sbin/upsmon -c fsd
           ;;
           
           shutdown) echo "Принудительное отключения питания UPS ${cur_date}" | mail -s "shutdown ${local_machine}" ${notify_mail}
           /usr/local/ups/sbin/upsmon -c fsd
           ;;
           
           *) echo Unrecognized command: $1 | mail -s "Unrecognized command ${local_machine}" ${notify_mail}
           ;;
    esac

    Salimk, 2009-05-25 в 9:49:10

    позволяет отключат юпс после завершения работы системы, работает только с COM портом, Usb не хочет т.к usbd отключается раньше времени.
    Эти строки поместите в самый конец /etc/rc.shutdown:

    # Insert other shutdown procedures here

    if [ -f /etc/killpower ]; then
       rm -f /etc/killpower
       /usr/local/libexec/nut/upsdrvctl shutdown MyUPS
    fi

    Пытливый Ум, 2009-09-11 в 1:58:38

    Ещё в rc.conf можно прописать nut_upslog_ups="APC" иначе ups.log будет забит бессмысленными NA NA NA NA

    logging status of >>>myups<<<@localhost to /var/log/ups.log (300s intervals)

    gigzbyte, 2009-09-22 в 13:18:42

    Автору огромное спасибо за статью! Очень понятно и доходчиво :)

    Destroyed, 2009-10-18 в 22:25:41

    Долго я бился с UPS от powercom, но по этой статье оказалось все очень просто. По FreeBSD 6.4 завелся с полпинка. И win клиент пашет и через web сервер тоже все доступно и мониторится. Раньше приходилось через утилитку с сайта powercom мониторить, а теперь перешел на nut.

    Думаю весь офис перевести на мониторинг через nut, который на FreeBSD.

    Огромная благодарность автору за статью.

    hranitel_y2k, 2009-11-07 в 21:34:32

    Спасибо за статью! Как раз собирал настраивать NUT c  UPS PCM, теперь будет быстрее и проще.

    someday, 2009-11-20 в 23:11:26

    ОГРОМНОЕ СПАСИБО!!!
    Наконец-то нашел толковое описание нута. Правда настраивал на gentoo сабж KRAULER D550, но описание конфигов подошло 100%.
    Еще раз спасибо!

    zloidemon, 2010-01-02 в 1:24:42

    ошибочка...
    FINALDELAY это отвечает через сколько выполниться SHUTDOWNCMD, но хотелось бы узнать как указать процент при котором начать отключение...

    Artemka, 2010-01-11 в 15:38:27

    Огромное спасибо за статью наконецто разобрался с Winpower (Взял и удалил его))) и поставил NUT, Может каму нужне вот ещё статейка неплохаяя для UPS PowerMust http://dng.kiev.ua/node/18

    Phantom_Rat, 2010-01-28 в 1:35:57

    Network UPS Tools - UPS driver controller 2.4.1
    Network UPS Tools - Generic HID driver 0.34 (2.4.1)
    USB communication driver 0.31
    No matching HID UPS found
    Driver failed to start (exit status=1)

    Модель Back-UPS CS 650 думал поднять дома, из за отсутсвия драйвера сижу в пролете))

    Vadim, 2010-04-05 в 15:12:16

    to Phantom_Rat, это из-за доступа к usb-портам, в FreeBSD по умолчанию только root имеет доспуп к /dev/usb/*
    я решил таким способом (он кстать описан выше), но:

    # cat /etc/devfs.rules
    [nut_usb=10]
    add path 'usb/*' mode 0600 user uucp

    # cat /etc/rc.conf | grep devfs
    devfs_system_ruleset="nut_usb"

    # cat /usr/local/etc/rc.d/nut | grep REQUIRE
    # REQUIRE: NETWORKING
    # REQUIRE: devfs


    DarkAGeS, 2010-04-29 в 17:49:24

    пока не сделал
    # cd /usr/local/etc/nut
    # cp hosts.conf.sample hosts.conf
    # ee /usr/local/etc/nut/hosts.conf
    и не прописал в hosts.conf строку
    MONITOR APC@localhost "UPS"
    cgi-скрипт upsstats.cgi не хотел работать.

    еще пара добавлений:
    1) скрипт upsset.cgi не принимал логин и пароль в опере. в ИЕ6 все норм
    2) советовал бы вебморду настраивать не как в статье, потому что как то это показано нетолково. Можно просто скопировать скрипты в папку, где разрешено их исполнение, и куда ходить можно только с определенных ip или по паролю, и запускать их напрямую:
    # cp -R /usr/local/www/cgi-bin/nut /usr/local/www/apache22/cgi-bin/nut/
    # rm -r /usr/local/www/cgi-bin
    # rm -r /usr/local/www/nut
    в настройках apache в разделе "/usr/local/www/apache22/cgi-bin":
       #Allow from all
       Allow from НУЖНЫЙ-IP-АДРЕС
    убедиться, что присутствует строчка
    ScriptAlias /cgi-bin/ "/usr/local/www/apache22/cgi-bin/"
    теперь обращаться к скриптам можно по адресам
    http://192.168.200.2/cgi-bin/nut/upsstats.cgi
    http://192.168.200.2/cgi-bin/nut/upsset.cgi

    gyurza2000, 2010-09-16 в 23:37:52

    Ещё в rc.conf можно прописать nut_upslog_ups="APC" иначе ups.log будет забит бессмысленными NA NA NA NA
    всё равно NA NA

    Sailor_Leviafan, 2010-10-25 в 0:22:05

    Raven2000, подпиши, пожалуйста, источник красивой вебморды статистики, указанной на последней картинке. В NUT 2.4.1 имеется весьма безрадостная таблица. Столбы радуют.

    Raven2000, 2010-10-25 в 8:49:02

    2 Sailor_Leviafan
    Этот график сам NUT представляет, читай всю главу "Web" там все показано, что делать.

    risk94, 2010-12-05 в 12:38:57

    В общем:
    Официальная документация не совсем актуальна. Если у кого-то какие-то вопросы возникают - подписывайтесь на рассылку - поддержка очень быстрая. Ребатам респект!

    risk94, 2010-12-06 в 18:45:09

    В случае с SHUTDOWNCMD "/sbin/shutdown -h +0" система будет просто остановлена. Чтобы системы выключилась необходимо: SHUTDOWNCMD "/sbin/shutdown -p +0"

    S-tri-G, 2010-12-10 в 12:53:34

    А ни кто не озадачивался графиком истории напруг???
    Дефолтная морда статична... хотелось бы видеть во времени поведение сети/аккумов...

    Chukcha, 2011-05-19 в 14:26:05

    > Установим и посмотрим, что upsstats может нам предложить.

    Похоже, автор упустил из виду одну "мелочь" - что это и откуда этот upsstats берется?
    Этот пакет или что, где его взять?
    Гугл ничего вразумительного не сказал.
    Кто-то знает ответ?

    Chukcha, 2011-05-19 в 15:08:11

    Да - и чуть было не забыл поблагодарить автора статьи: с полной уверенностью уверяю, что лучше статьи по настройке NUT на просторах Интернет не существует, эта - самая полная и продуманная.
    Остальные - дешевые полуграмотные бестолковые поделки.

    Chukcha, 2011-05-19 в 15:09:56

    Да - и чуть было не забыл поблагодарить автора статьи: с полной уверенностью уверяю, что лучше статьи по настройке NUT на просторах Интернет не существует, эта - самая полная и продуманная.
    Остальные - дешевые полуграмотные бестолковые поделки.

    Chukcha, 2011-05-19 в 16:00:21

    Да - и чуть было не забыл поблагодарить автора статьи: с полной уверенностью уверяю, что лучше статьи по настройке NUT на просторах Интернет не существует, эта - самая полная и продуманная.
    Остальные - дешевые полуграмотные бестолковые поделки.

    DarkAGeS, 2011-05-19 в 21:57:51

    upsstats это cgi-программа, идущая в комплекте с пакетом nut

    Stronger412, 2011-07-27 в 14:32:09

    Народ, я конечно понимаю что совсем туплю, но не могли бы вы распсать "для дурака" как и что делать с пользователями? Который день бъюсь - нифига не стартует... Система OpenBSD 4.5 сижу под рутом по ssh (если это важно), упс APC Smart по USB.
    ups.conf
    user=root
    driver = apc
    port = auto
    serial = 1234567890
    [apc]
    driver = usbhid-ups
    port = /dev/ugen0.00
    pollfreq = 60

    Если строку с юзером убираю то upsdrvctl start выдает ошибку, а стартует только так upsdrvctl -u root start
    Народ, очень очень нид хелп......

    german, 2012-12-27 в 20:43:41

    Прикрутил к MEV-1000 ERT LT от N-Power, через вэб-морду все мониторит )) доволен как слон ))

    german, 2012-12-27 в 20:46:13

    в догонку:
    # uname -a FreeBSD 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Thu Jun 16 11:26:25 UTC 2011 + nut-2.6.5_1
    Ура ура ура


    Оставьте свой комментарий:
    Ваше имя:   *
    e-mail:  
    жирный
    наклонный
    подчёркнутый
    ссылка
    цвет
    Нынешний год:   *
     


  • Хостинг HOST-FOOD

    2014-07-27, lissyara
    gmirror

    Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
    2013-08-20, zentarim
    Scan+Print server FreeBSD 9

    Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
    2011-11-20, BlackCat
    Разъём на WiFi-карту

    Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
    2011-09-14, manefesto
    Настройка git+gitosis

    Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
    2011-08-14, zentarim
    Wi-FI роутер + DHCP + DNS

    Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
    2011-06-15, -ZG-
    Охранная система на FreeBSD+LPT

    В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
    2011-03-13, terminus
    ng_nat

    Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
    2011-02-20, Капитан
    Nagios+Digitemp

    Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
    2011-02-17, Le1
    Zyxel Configuration

    Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
    2011-02-16, fox
    hast carp zfs ucarp cluster

    HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
    2011-02-04, BlackCat
    Восстановление ZFS

    История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
    2011-02-03, Капитан
    1-Wire

    Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
    2011-01-28, Капитан
    Температура в серверной

    Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
    2011-01-21, m4rkell
    Syslog server

    Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
    2011-01-07, lissyara
    Canon/gphotofs

    Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
    2010-12-13, Al
    IPSec

    Описание принципов работы IPSEC и способов аутентификации.
    2010-12-07, manefesto
    FreeBSD on flash

    Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
    2010-12-05, Fomalhaut
    root ZFS, GPT

    Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
    2010-09-05, Cancer
    Настройка аудиоплеера на ximp3

    Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
    2010-08-31, Cancer
    Установка и настройка OpenVPN

    На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
    2010-08-25, manefesto
    freebsd lvm

    Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
    2010-04-30, gonzo111
    proftpd file auth&quota

    Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
    2010-04-22, lissyara
    tw_cli

    Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
    2010-04-14, fox
    MySQL Master+Master

    MySQL (Master Master) and (Master Slave) Как настроить репликацию…
    2010-03-22, Mufanu
    named 9.7.0

    Система доменных имен (Domain Name Service, DNS) - одна из тех незаметных, закулисных программ, которым не уделяется и половины того внимания, которого они заслуживают.
    2010-03-09, terminus
    DNS zones

    Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
    2010-03-09, aspera
    Squid+AD (group access)

    Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
    2010-03-02, BlackCat
    Шлюз: Часть 4

    Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
    2010-03-01, BlackCat
    Шлюз: Часть 3

    Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
    2010-03-01, BlackCat
    Шлюз: Часть 2

    Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
    2010-03-01, BlackCat
    Шлюз: Часть 1

    Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
    2010-02-23, Morty
    darkstat

    Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
    2010-01-23, gonzo111
    squid+sams+sqstat

    Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
    2009-12-19, schizoid
    mpd5 + radius + ng_car + Abills

    Настройка pppoe-сервера с биллинговой системой Abills и шейпером ng_car
    2009-11-16, lissyara
    UFS->ZFS

    Удалённая миграция с UFS на ZFS. Загрузка с раздела zfs. Настройка для работы с малым количеством памяти под архитектурой i386.
    2009-11-13, gx_ua
    fusefs-ntfs

    Установка, настройка и использование fusefs-ntfs, драйвер NTFS, предназанченного для монтирования NTFS разделов под FreeBSD
    2009-11-12, Morty
    LiveCD

    Создание собственного LiveCD с необходимыми вам изменениями, автоматизирование данного процесса, а так же вариант скоростной сборки СД.
    2009-09-27, lissyara
    Samba как PDC

    Контроллер домена - аналог M$ NT4 домена под самбой, без использования LDAP и прочей хиромантии. Просто и быстро =)
    2009-08-30, terminus
    ipfw nat

    Подробное руководство по ipfw nat, сложные случаи конфигурации.
    2009-08-24, levantuev
    HotSpot

    Установка Hotspot системы в общественное заведение.
    2009-08-18, lissyara
    diskless

    Создание бездисковых терминалов под управлением FreeBSD - с загрузкой по сети. Используются для старта rdesktop и подключения к виндовому серверу терминалов.
    2009-07-29, BAV_Lug
    Видеонаблюдение

    Настройка бюджетного варианта видеонаблюдения на удаленном объекте
    2009-07-22, Cancer
    OpenLDAP адресная книга

    Настройка и создание адресной книги на базе OpenLDAP + phpLDAPadmin
    2009-06-30, SergeySL
    AimSniff

    Руководство по созданию системы мониторинга ICQ-переписки на базе AimSniff, использующей базу данных MySQL для хранения и Web-интерфейс WAS (Web Aim Sniff) для просмотра перехваченных сообщений
    2009-06-25, atrium
    Управление правами доступа

    Полномочия пользователей и файлов, принадлежащих им, формирует концепцию ОС UNIX.
    2009-06-16, DNK
    Exim+PgSQL

    Установка почтовой системы exim+pgsql на FreeBSD 7.1
    2009-05-30, mvalery
    HDD(mbr) -> HDD(gpt)

    Как разбить диск размером более 2TB на разделы, сделать загрузочным, а затем перенести на него информацию с рабочей системы — донора.
    2009-05-22, Cancer
    SendXMPP

    Отправка сообщений на Джаббер сервер по средствам SendXMPP
    2009-05-11, Raven2000
    Network UPS Tools

    Network UPS Tools представляет собой набор программ, которые обеспечивают общий интерфейс для мониторинга и администрирование UPS оборудования.
    2009-04-29, m0ps
    IPSEC over GRE with RIP

    Пример IPSEC over GRE и динамическим роутингом (RIP), с ADSL в качестве последней мили на оборудовании Cisco.
    2009-04-24, WhiteBear777
    qemu network

    Появилась необходимость поставить на БСД эмулятор(qemu) и настроить в качестве гостевой ОС Windows XP, предоставив ей выход в локалку и в сеть internet...
    2009-04-22, vp
    freebsd + huawei 162 gsm modem

    В статье описывается простой способ подключения модема huawei 162 к freebsd + первичная настройка smstools
    2009-04-12, mvalery
    Мониторинг RAID

    Мониторинг из командной строки RAID компаний AMCC 3ware, HighPoint, Dell (Perc 5/i и PERC 6/i) и LSI (MegaRAID SAS 8408E и SAS1078)
    2009-04-09, texnotronic
    RAID1 via LAN

    Функциональности DRBD во FreeBSD можно добиться примонтировав блочное устройство по сети при помощи GEOM Gate (ggate) и добавив его в зеркало с локальным диском средствами gmirror.
    2009-04-03, Raven2000
    Оптимизация хоста для CMS

    В последнее время на старый и не очень быстрый ПК (Celeron 800 RAM 256) мною было навешано с десяток сайтов и некоторые были из серии тяжелых CMS. И так нам дано FreeBSD 7.1 и ~10 сайтов/CMS.
    2009-04-01, atrium
    VSFTPD + AD && MySQL

    Настройка самого безопасного сервера FTP - vsftpd.
    2009-03-31, Dron
    Peoplenet + C-motech (3G)

    Описание подключения к сети Peoplenet посредством 3G модема С-motech CCu-650U на FreeBSD
    2009-03-25, lissyara
    mod_auth_external

    mod_auth_external - авторизация пользователей в apache c помощью внешней программы - например, системных пользователей.
    2009-03-24, gx_ua
    Lightsquid

    Частично lightsquid может заменить sams: быстрая и простая инсталляция, быстрый парсер, cgi скрипт для динамической генерации отчета, нет привязки к БД, различные графические отчеты, мультиязычный инт
    подписка

        вверх      
    Статистика сайта
    Сейчас на сайте находится: 17 чел.
    За последние 30 мин было: 58 человек
    За сегодня было
    4131 показов,
    531 уникальных IP
     

      Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
      Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

    © lissyara 2006-10-24 08:47 MSK

    Время генерации страницы 0.1134 секунд
    Из них PHP: 59%; SQL: 41%; Число SQL-запросов: 80 шт.
    Исходный размер: 234069; Сжатая: 41575