NEOPbx — small businessNEOPbx — малый бизнес

small

CPU: Intel Atom N270 1.6 GHz
RAM: 1 Gb
HARD DRIVE: SSD 32Gb
LAN: WAN 1GB

+ поддерживает до 50 одновременных разговоров
+ энергопотребление 60 ВТ.
+ рекомендуется для небольших офисов, турагенств, мини-отолей, филиалов

ЦЕНА: 16 990 Р.NEOPbx-small

Назначение: для небольших офисов
CPU: Intel Atom N270 1.6 GHz
RAM: 1 Gb
HARD DRIVE: SSD 32Gb
NETWORK: WAN 1GB

+ поддерживает до 50 одновременных разговоров
+ энергопотребление 60 ВТ.

ЦЕНА: 18 990 Р.

Переназначаем клавиши на клавиатуре в Mac OS

Работая удаленно с Linux серверами мне понадобилось переназначить клавишу, которая выглядит на беспроводной клавиатуре так: key

В стандартной клавиатуре Windows на ее месте расположена клавиша Ё в русской раскладке, и ` — в английской. Если вы программист — то без «обратной тильды» в Linux тяжело работать. В решении данной проблемы вам поможет приложение keyremap4macbook.

KeyRemap4MacBook — утилита для переназначения клавиш. Содержит перечень вариантов, среди которых нужно найти подходящие и отметить их галочками.Работая удаленно с Linux серверами мне понадобилось переназначить клавишу, которая выглядит на беспроводной клавиатуре так: key

В стандартной клавиатуре Windows на ее месте расположена клавиша Ё в русской раскладке, и ` — в английской. Если вы программист — то без «обратной тильды» в Linux тяжело работать. В решении данной проблемы вам поможет приложение keyremap4macbook.

KeyRemap4MacBook — утилита для переназначения клавиш. Содержит перечень вариантов, среди которых нужно найти подходящие и отметить их галочками. (далее…)

Консольный менеджер ssh сессий

Когда количество серверов начинает зашкаливать, возникает необходимость их организовать. Каждый раз забивать ip адрес нет никакого желания, особенно если делаешь это по 50 раз за день. К сожалению функции стандартного Терминал-а мне не подошли, так как времени на открытие новой сессии через стандартное меню уйдет даже больше, чем если набирать «ssh [email protected] -p3322». За насколько минут я написал небольшой скрипт, который выводит список серверов с возможностью выбора к какому нужно подключиться. Выглядит это примерно так:

servers

В данном примере если сервер выбран из подсети 192.173.0. — подключение будет по порту 3322. Сам скрипт, который вы можете доработать по своему желанию такой:
#!/bin/sh
ARRAY=('192.168.0.100' '192.173.0.1' '192.173.0.163' '192.173.0.166' '192.173.0.167' '192.173.0.168' '192.173.0.169')
SERVERS=${#ARRAY[@]}
echo "Выбери сервер:"
for (( i=0;i<$SERVERS;i++)); do
    echo $i\) ${ARRAY[${i}]}
done 

read choice

echo "Соединяемся с ${ARRAY[${choice}]}"
net=$(echo ${ARRAY[${choice}]} | awk 'BEGIN {FS="."} {print $1"."$2"."$3"."}')
if [ $net == "192.173.0." ]; then
ssh [email protected]${ARRAY[${choice}]} -p3322
else
ssh [email protected]${ARRAY[${choice}]}
fi
done

Когда количество серверов начинает зашкаливать, возникает необходимость их организовать. Каждый раз забивать ip адрес нет никакого желания, особенно если делаешь это по 50 раз за день. К сожалению функции стандартного Терминал-а мне не подошли, так как времени на открытие новой сессии через стандартное меню уйдет даже больше, чем если набирать "ssh [email protected] -p3322". За насколько минут я написал небольшой скрипт, который выводит список серверов с возможностью выбора к какому нужно подключиться. Выглядит это примерно так:

servers

В данном примере если сервер выбран из подсети 192.173.0. - подключение будет по порту 3322. Сам скрипт, который вы можете доработать по своему желанию такой:
#!/bin/sh
ARRAY=('192.168.0.100' '192.173.0.1' '192.173.0.163' '192.173.0.166' '192.173.0.167' '192.173.0.168' '192.173.0.169')
SERVERS=${#ARRAY[@]}
echo "Выбери сервер:"
for (( i=0;i<$SERVERS;i++)); do
    echo $i\) ${ARRAY[${i}]}
done 

read choice

echo "Соединяемся с ${ARRAY[${choice}]}"
net=$(echo ${ARRAY[${choice}]} | awk 'BEGIN {FS="."} {print $1"."$2"."$3"."}')
if [ $net == "192.173.0." ]; then
ssh [email protected]${ARRAY[${choice}]} -p3322
else
ssh [email protected]${ARRAY[${choice}]}
fi
done

Как создать alias с помощью ifconfig в MacOS

Иногда возникает необходимость создать alias сетевого интерфейса в Mac. Для этого можно использовать следующую команду:

sudo ifconfig en0 alias 192.168.0.101 255.255.255.0

Чтобы удалить alias:

sudo ifconfig en0 -alias 192.168.0.101

Клавиша insert в Mac OS X или как выделить файлы в mc

Работая удаленно через ssh с Linux-серваками в файловом менеджере midnight commander(mc) часто возникает необходимость выделить некоторые файлы. Но тут возникает проблема — в беспроводной клаве Apple нет такой клавиши. Чтобы обойти это достаточно использовать комбинацию Ctrl+TРаботая удаленно через ssh с Linux-серваками в файловом менеджере midnight commander(mc) часто возникает необходимость выделить некоторые файлы. Но тут возникает проблема — в беспроводной клаве Apple нет такой клавиши. Чтобы обойти это достаточно использовать комбинацию Ctrl+T

Простой скрипт для создания резервных копий для Windows

Собственно сам скрипт ниже. Для его работы должны быть установлены архиватор 7-zip и утилита forfiles. Скрипт представляет из себя bat(cmd) файл, который архивирует указанный каталог, и скидывает его в сетевое хранилище. Время хранения копии в данном примере 10 дней.

net use Y: /delete /y
net use Y: \\192.168.0.250\backups\1c backup1c /USER:backup1c
IF EXIST Y:\backup (GOTO CREATE_BACKUP) ELSE (GOTO ERROR)
:CREATE_BACKUP
set Backup=Y:
Y:
%Backup%
for /d %%z in (*) do f:\forfiles.exe /p %%z /d -10 /m *.7z /c "cmd /c del /f /a @file"
"f:\Program Files\7-Zip\7z.exe" a -t7z Y:\backup\8\%DATE%.7z  E:\Buhgalteria\1C\1c8
F:
NET USE Y: /delete /y
:ERROR
exit

Собственно сам скрипт ниже. Для его работы должны быть установлены архиватор 7-zip и утилита forfiles. Скрипт представляет из себя bat(cmd) файл, который архивирует указанный каталог, и скидывает его в сетевое хранилище. Время хранения копии в данном примере 10 дней.

net use Y: /delete /y
net use Y: \\192.168.0.250\backups\1c backup1c /USER:backup1c
IF EXIST Y:\backup (GOTO CREATE_BACKUP) ELSE (GOTO ERROR)
:CREATE_BACKUP
set Backup=Y:
Y:
%Backup%
for /d %%z in (*) do f:\forfiles.exe /p %%z /d -10 /m *.7z /c "cmd /c del /f /a @file"
"f:\Program Files\7-Zip\7z.exe" a -t7z Y:\backup\8\%DATE%.7z  E:\Buhgalteria\1C\1c8
F:
NET USE Y: /delete /y
:ERROR
exit

NEOPbx / Elastix cluster module

Customer VID Ltd.
Project NEOPbx
State Frozen
Description Develop module to manage the cluster on basis heartbeat

clusterЗаказчик ООО ВИД
Проект NEOPbx
Статус Заморожен
Назначение Разработать модуль для управления кластером на основе heartbeat

cluster

Установка zabbix agentd в Centos

Установка zabbix-агента на сервере происходит очень просто. Для начала скачаем сам zabbix агент с официального сайта, выбрав необходимую нам версию. В моем случае это будет версия для Linux 2.6.23 i386.

Далее распакуем его в домашний каталог и скопируем необходимые файлы в систему.

[[email protected] zabbix]# tar -xzvf zabbix_agents_2.0.4.linux2_6_23.i386.tar.gz
[[email protected] zabbix]# cp ./sbin /usr/local/
[[email protected] zabbix]# cp ./bin /usr/local/
[[email protected] zabbix]# cp ./usr/local/conf/zabbix_agentd.conf /usr/local/etc

Установка zabbix-агента на сервере происходит очень просто. Для начала скачаем сам zabbix агент с официального сайта, выбрав необходимую нам версию. В моем случае это будет версия для Linux 2.6.23 i386.

Далее распакуем его в домашний каталог и скопируем необходимые файлы в систему.

[[email protected] zabbix]# tar -xzvf zabbix_agents_2.0.4.linux2_6_23.i386.tar.gz
[[email protected] zabbix]# cp ./sbin /usr/local/
[[email protected] zabbix]# cp ./bin /usr/local/
[[email protected] zabbix]# cp ./usr/local/conf/zabbix_agentd.conf /usr/local/etc

Далее отредактируем файл /etc/local/etc/zabbix_agentd.conf. Для этого откроем его в любом удобном вам редакторе и найдем параметр Server=127.0.0.1. Где 127.0.0.1 заменим на IP-адрес вашего zabbix сервера. Сохраняем файл и выходим.

Дальше необходимо добавить нового пользователя zabbix:

[[email protected] zabbix]# useradd zabbix

После этого создадим файл /etc/init.d/zabbix_agentd со следующим содержимым:

#!/bin/bash
#
#       /etc/rc.d/init.d/zabbix_agentd
#
# Starts the zabbix_agentd daemon
#
# chkconfig: - 95 5
# description: Zabbix Monitoring Agent
# processname: zabbix_agentd
# pidfile: /tmp/zabbix_agentd.pid

# Modified for Zabbix 2.0.0
# May 2012, Zabbix SIA

# Source function library.

. /etc/init.d/functions

RETVAL=0
prog="Zabbix Agent"
ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"

if [ ! -x ${ZABBIX_BIN} ] ; then
        echo -n "${ZABBIX_BIN} not installed! "
        # Tell the user this has skipped
        exit 5
fi

start() {
        echo -n $"Starting $prog: "
        daemon $ZABBIX_BIN
        RETVAL=$?
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/zabbix_agentd
        echo
}

stop() {
        echo -n $"Stopping $prog: "
        killproc $ZABBIX_BIN
        RETVAL=$?
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/zabbix_agentd
        echo
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  reload|restart)
        stop
        sleep 10
        start
        RETVAL=$?
        ;;
  condrestart)
        if [ -f /var/lock/subsys/zabbix_agentd ]; then
            stop
            start
        fi
        ;;
  status)
        status $ZABBIX_BIN
        RETVAL=$?
        ;;
  *)
        echo $"Usage: $0 {condrestart|start|stop|restart|reload|status}"
        exit 1
esac

exit $RETVAL

Сохраняем файл /etc/init.d/zabbix_agentd и выполняем команду, которая включит агента в автозагрузку:

[[email protected] zabbix]# chkconfig zabbix_agentd on

После чего zabbix_agentd можно запускать

[[email protected] zabbix]# /sbin/service zabbix_agentd start

Если установка прошла успешно вы увидите надпись
Запускается Zabbix Agent:                                  [  OK  ]

Если нет — проблему можно увидеть в логах сервера. По-умолчанию /tmp/zabbix_agentd.log.
Далее отредактируем файл /etc/local/etc/zabbix_agentd.conf. Для этого откроем его в любом удобном вам редакторе и найдем параметр Server=127.0.0.1. Где 127.0.0.1 заменим на IP-адрес вашего zabbix сервера. Сохраняем файл и выходим.

Дальше необходимо добавить нового пользователя zabbix:

[[email protected] zabbix]# useradd zabbix

После этого создадим файл /etc/init.d/zabbix_agentd со следующим содержимым:

#!/bin/bash
#
#       /etc/rc.d/init.d/zabbix_agentd
#
# Starts the zabbix_agentd daemon
#
# chkconfig: - 95 5
# description: Zabbix Monitoring Agent
# processname: zabbix_agentd
# pidfile: /tmp/zabbix_agentd.pid

# Modified for Zabbix 2.0.0
# May 2012, Zabbix SIA

# Source function library.

. /etc/init.d/functions

RETVAL=0
prog="Zabbix Agent"
ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"

if [ ! -x ${ZABBIX_BIN} ] ; then
        echo -n "${ZABBIX_BIN} not installed! "
        # Tell the user this has skipped
        exit 5
fi

start() {
        echo -n $"Starting $prog: "
        daemon $ZABBIX_BIN
        RETVAL=$?
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/zabbix_agentd
        echo
}

stop() {
        echo -n $"Stopping $prog: "
        killproc $ZABBIX_BIN
        RETVAL=$?
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/zabbix_agentd
        echo
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  reload|restart)
        stop
        sleep 10
        start
        RETVAL=$?
        ;;
  condrestart)
        if [ -f /var/lock/subsys/zabbix_agentd ]; then
            stop
            start
        fi
        ;;
  status)
        status $ZABBIX_BIN
        RETVAL=$?
        ;;
  *)
        echo $"Usage: $0 {condrestart|start|stop|restart|reload|status}"
        exit 1
esac

exit $RETVAL

Сохраняем файл /etc/init.d/zabbix_agentd и выполняем команду, которая включит агента в автозагрузку:

[[email protected] zabbix]# chkconfig zabbix_agentd on

После чего zabbix_agentd можно запускать

[[email protected] zabbix]# /sbin/service zabbix_agentd start

Если установка прошла успешно вы увидите надпись
Запускается Zabbix Agent:                                  [  OK  ]

Если нет — проблему можно увидеть в логах сервера. По-умолчанию /tmp/zabbix_agentd.log.