Січ 182013
 

Добавляем более одного, два и более IP в CentOS 5

Обычно мы используем на одно устройство по одному IP адресу.
Но допустим Вам необходимо настроить какое то устройство которое подключили удаленно, и оно находится в другой под сети.

У нас есть один IP на интерфейсе eth0:

eth0 Link encap:Ethernet HWaddr 00:26:B9:2A:B9:13
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0

Нам нужен еще один IP на том же сетевом интерфейсе (пусть для определенности это будет 192.168.20.200).
Для этого нужно отправится в директории /etc/sysconfig/network-scripts/

Скопировать существующий интерфейс:

cp ifcfg-eth0 ifcfg-eth0:0

Отредактировать скопированный файл:

nano ifcfg-eth0:0
DEVICE=eth0:0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.20.200
NETMASK=255.255.255.255

После проделанных процедур нужно перезапустить сетевые службы:

service network restart

Выполняем ifconfig и видим, что появился “алиас” eth0:0

eth0:0 Link encap:Ethernet HWaddr 00:26:B9:2A:B9:13
inet addr:192.168.0.200 Bcast:192.168.0.11 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:185 Base address:0xa000

Если потребуется добавить еще несколько IP, то добавляем соответственно файлы ifcfg-eth0:X, где X – 1,2,3 и так далее.
(ifcfg-eth0:1, ifcfg-eth0:2, ifcfg-eth0:3)

Если требуется “навесить” на сетевой интерфейс последовательность из IP-адресов (допустим такой вот диапазон: (192.168.0.200-220), то можно воспользоваться следующей конфигурацией.
Создаем файл /etc/sysconfig/network-scripts/ifcfg-eth0-range0:

IPADDR_START=192.168.0.200
IPADDR_END=192.168.0.220
NETMASK=255.255.255.255
CLONENUM_START=1
NO_ALIASROUTING=yes

Перезапускам сетевые службы:

service network restart

В результате появятся 20 алиасов.

Если Вам необходимо разово добавить адресс из командной строки, достаточно ввести:

ifconfig eth0:0 inet 192.168.0.200/32
Січ 052013
 

Export(Экспорт) MySQL в Excel реализация на PHP

Однажды мне понадобилось записать данные из базы данных MySQL в Microsoft Excel используя PHP скрипт.
Сейчас я продемонстрирую вам код который в дальнейшем поможет Вам.

<?php
mysql_connect(“localhost”,”root”,”root”);
mysql_select_db(“employee”);
$qry_data=mysql_query(“SELECT * FROM personal ORDER BY nip”);

function xlsBOF() {
echo pack(“ssssss”, 0×809, 0×8, 0×0, 0×10, 0×0, 0×0);
return;
}
function xlsEOF() {
echo pack(“ss”, 0x0A, 0×00);
return;
}
function xlsBuatBaris($data, $Col, $Value) {
echo pack(“sssss”, 0×203, 14, $data, $Col, 0×0);
echo pack(“d”, $Value);
return;
}
function xlsBuatLabel($data, $Col, $Value ) {
$L = strlen($Value);
echo pack(“ssssss”, 0×204, 8 + $L, $data, $Col, 0×0, $L);
echo $Value;
return;
}
header(“Pragma: public”);
header(“Expires: 0″);
header(“Cache-Control: must-revalidate, post-check=0, pre-check=0″);
header(“Content-Type: application/force-download”);
header(“Content-Type: application/octet-stream”);
header(“Content-Type: application/download”);;
header(“Content-Disposition: attachment;filename=employee.xls “);
header(“Content-Transfer-Encoding: binary “);

xlsBOF();

xlsBuatLabel(0,0,”DAFTAR DATA PRIBADI”);

xlsBuatLabel(2,0,”NIP”);
xlsBuatLabel(2,1,”NAMA”);
xlsBuatLabel(2,2,”ALAMAT”);
xlsBuatLabel(2,3,”KELAMIN”);
xlsBuatLabel(2,4,”TGL LAHIR”);

$xlsRow = 3;

while($data=mysql_fetch_array($qry_data)){
xlsBuatBaris($xlsRow,0,$data['nip']);
xlsBuatLabel($xlsRow,1,$data['nama']);
xlsBuatLabel($xlsRow,2,$data['alamat']);
xlsBuatLabel($xlsRow,3,$data['kelamin']);
xlsBuatLabel($xlsRow,4,$data['tgl_lahir']);

$xlsRow++;
}

xlsEOF();
exit();
?>
Січ 052013
 

Как сделать beckup для mysql database windows

Сейчас я вам покажу как сделать beckup для mysql database в windows. Для начала откройте cmd в windows.
Пуск -> Выполнить -> cmd

Путь к командам MySQL, указан из текущей конфигурации. В каждом случае он может быть иным. Вам необходимо найти команду mysqldump.exe
C:\Program Files\mysql\bin\mysqldump.exe -uroot -ppassword namedatabase > C:\temp\ws-dump

Вместо пользователя root MySQL, вы можете заменить на ваше имя пользователя и так же поступить и с полем password, заменить пароль и изменить имя вашей базы данных, если все поля вы ввели правильно, то операция будет выполнена успешно, база данных MySQL отправится в C:\temp\ws-dump

Січ 052013
 

Сброс привилегий для MySQL root аккаунта windows, unix, debian, freebsd, centos

Я работал с HeidiSQL фронт-енд для MySQL и каким-то образом удалось удалить все привилегии из базы данных root аккаунта во время редактирования других учетных записей пользователей. Само собой разумеется, ни один из других аккаунтов не имел доступ к административной части MySQL.

Как восстановить доступ к MySQL root аккаунту

К счастью, MySQL предоставляет возможность обойти привилегии для всех учетных записей пользователей, как необходимо в таких ситуациях. Вот шаги, чтобы включить этот параметр:

1. Перейдите в папку установки MySQL.
Возможный путь к MySQL серверу

Windows:
C:/Program Files/MySQL/MySQL Server 5.1
Debian:
/etc/mysql/
FreeBSD:
/var/db/mysql
CentOS:
/etc

Нахождение конфигурационного файла может отличатся.

2. Откройте файл my.ini в вашем текстовом редакторе
В некоторых версиях MySQL этот файл называется my.cnf

3. В [mysqld] данного файла добавьте следующие строки:

skip-grant-tables

4. Перезапустите сервер MySQL, допустим в Service Manager в Windows.

Теперь Вы сможете войти на сервер MySQL с помощью любой из ваших учетных записей, в том числе и root аккаунт. Воспользовавшись вашим любимым инструментом для исправления привилегий таблицы, исправьте root или добавить другие учетные записи пользователей по мере необходимости.

Гру 282012
 

Шлюз Asterisk и Skype через SipToSis под Debian или Ubuntu

ПО:
OS Ubuntu 12.10 или Debian 6.0.6
Клиент Linux Skype Ubuntu

Задача: привязать к Asterisk аккаунт Skype. Для приема звонков из популярного месенжера. И звонить абонентам Skype.
Для такой услуги существует расширение Asterisk производства Digium, но насколько я знаю, выдача лицензий приостановлена, сейчас SIP туннели продаются напрямую из сайта Skype по 5 евро за канал.
Кто любит шару, и не хочет платить там где можно не платить. Существует для решения подобных задач проект SipToSis позволяющий делать то же самое.

Для начала нам необходимо клиент программы Skype. Для Debian мы качаем версию Skype для Ununtu. С SipToSis работает путем взаимодействия с ним через Skype API. Так же необходимо не забывать, что для работы Skype необходима графическая среда. Для запуска его в консольном Linux, будем использовать Xvfb (X Virtual Frame Buffer) и для доступа с другой машины – x11vnc.

Устанавливаем все необходимые приложения:

Для аудио:

sudo apt-get install -y alsa-utils alsa-base alsa-tools

Графический сервер:

sudo apt-get install -y xvfb x11vnc 

Java приложения:

sudo apt-get install -y openjdk-6-jdk 

Графическая оболочка:

sudo apt-get install -y fluxbox

Устанавливаем пакет Skype, который взят с официально сайта и актуален на момент написания статьи:

dpkg -i skype-ubuntu-lucid_4.1.0.20-1_i386.deb

Возможно ругнется на неустановленные зависимости, лечится это:

sudo apt-get -f install

Нам необходимо сделать подгрузку виртуально звуковой карты, она используется в подключении.
Делаем разовую подгрузку в ядро.

modprobe snd-dummy

Или можно подключить в /etc/modules для постоянно загрузки.

nano /etc/modules
в конце файла вписываем
snd-dummy

Данная команда поможет установить необходимые зависимости.

Кочаем SipToSis с сайта разработчика SipToSis Download
Распаковываем архив, делаем запускаемым файл SipToSis_linux

chmod +x /etc/siptosis/SipToSis_linux

Создаем Транк в Астериске

Trunk Name: Skype_to_Sip

username=Skype_to_Sip
type=friend
context=from-internal
secret=skype_call_password
host=dynamic
nat=yes
dtmfmode=auto
canreinvite=no
incominglimit=1
outgoinglimit=1
call-limit=1
busylevel=1

Открываем siptosis.cfg, комментируем блок настроек, начинающийся с #Sample AUTO config with NO registration и убираем комментарии с блока #Sample Asterisk registration example, в нем правим:

host_port=5070
contact_url=Skype_to_Sip@127.0.0.1:5060
from_url=»Skype_to_Sip» 
username=Skype_to_Sip
realm=asterisk
passwd=************
expires=300
do_register=yes
minregrenewtime=120
regfailretrytime=15

Редактируем файл SkypeToSipAuth.props

nano SkypeToSipAuth.props 

Данный файл определяет куда перенаправлять все входящие звонки Skype SIP-пользователю «user2″.
Обязательно, необходимо создать в extensions.conf контекст «Skype», в котором разрешить звонки на этот extension.

*,sip:user2@127.0.0.1:5060

Запускаем маленький скрипт, ставим паузы по 3 секунды, что бы приложения запускались последовательно.

#!/bin/sh
# setting DISPLAY
export DISPLAY=:1
Xvfb ${DISPLAY} -screen 0 800x600x16 &
sleep 3
fluxbox &
sleep 3
echo login1 password1 | skype --pipelogin &
sleep 3
/home/login1/Skype/SipToSis/SipToSis_linux &
sleep 3
x11vnc -display ${DISPLAY} -bg -nopw -listen XXX.XXX.XXX.XXX -xkb

Если вы все сделали правильно, SipToSis запустится и подключиться к Skype. Skype выдаст вопрос – разрешить ли подключение.
Подключаемся с другой машины (в моем случае, с Windows 7 через VNC Viewer), подтверждаем лицензию, настраиваем, отключаем все лишнее.
Я поднял данный клиент на древней машине Seleron 400, 128Мб оперативной памяти, 1Гигобайт винчестер.
Так, что старое железо еще может пригодится.

К сожалению у меня так и не получилось добиться стабильной работы с несколькими аккаунтами. Если у Вас получилось, прошу поделится опытом.