Окт 062013
 

Как посмотреть содержимое папки через командную строку в Unix подобных система.

Чтобы вывести содержимое папки (папки и файла) можно использовать команду:

ls -la — выводит содержимое текущей папки, тоесть той, в которой вы сейчас находитесь.

ls -la /path/to/folder/ — выводит содержимое папки, которая имеет пкть »/path/to/folder/», но при этом не переходит в эту папку!

Чтобы перейти в другую папку:

cd /path/to/folder/ — перейти в папку »/path/to/folder/».

cd .. — перейти на уровень вверх.

cd /- перейти в корень диска.

Окт 062013
 

Как создать и удалить папку через командную строку в Unix подобных системах.

Чтобы создать папку из командной строки надо использовать команду:

# mkdir new_folder_name

«new_folder_name» — надо заменить на имя создаваемой папки (директории).

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

# rm -r folder_name

«folder_name» — надо заменить на имя удаляемой папки (директории) или файла.
Ключ «-r» — рекурсивно удаляет всё содержимое папки и саму папку.

Окт 052013
 

Как создать .tar.gz или .tar.bz2

tar -cvf file.tar /full/path — создать .tar

tar -czvf file.tar.gz /full/path — создать .tar.gz (архив)
tar -cjvf file.tar.bz2 /full/path — создать .tar.bz2 (архив)

Синтаксис этих примеров:
tar [-ключи] [название архива] [путь, что запаковать]

Как открыть (распаковать) .tar

Чтобы распаковать запаковыный .tar:

tar -xvf file.tar.gz

Синтаксис:
tar [-ключи] [название архива]

В файлах .tar можно хранить несколько папок (структуру папок и файлов).
Лучше использовать с ключами для архивации файла .tar, чтобы в результате получились файлы с расширением .tar.gz (файл .tar сжатый архиватором gzip) или .tar.bz2 (файл .tar сжатый bzip2).
bzip2 лучше сжимает, но с gzip более распространён, поэтому лучше сжимать этим архиватором.
Если у вас установлен WinRAR, то проблем с открытием .tar.bz2 и .tar.gz не будет.

Дек 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Гигобайт винчестер.
Так, что старое железо еще может пригодится.

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

Дек 232011
 

Red Hat/Fedora Core/CentOS Linux

В Red Hat/Fedora Core/CentOS Linux- подобных наберите следующую команду чтобы получить список установленных программ

# rpm -qa | less

Debian Linux

В Debian Linux список установленных пакетов можно увидеть так:

# dpkg —get-selections

Ubuntu Linux

В Ubuntu Linux список установленных программ смотрим так:

# sudo dpkg —get-selections

FreeBSD

В FreeBSD установленные программы можно посмотреть так:

# pkg_info | less
# pkg_info apache

Используйте команду pkg_version чтобы показать общий список версий всех установленных пакетов в FreeBSD:

# pkg_version | less
# pkg_version | grep ‘lsof’

OpenBSD

В OpenBSD команда use pkg_info так же ведет себя как и в FreeBSD и покажет список установленных пакетов:

# pkg_info | less
# pkg_info apache