Просмотр Исходного

{info}Помощь по внедрению пользовательских схем и тюнингу стандартных схем оказывается только на уровнях подписки "*Сопровождение*" и "*Аутсорсинг*".
На подписках "*Стандарт*" и "*Бизнес*" предлагается использовать [стандартные схемы внедрения|CarbonBilling:Описание стандартных схем].{info}

{toc}

h1. Добавьте NAS в список

# В меню "*Оборудование*" \-> "*NAS*" нажмите кнопку "*Добавить*"
\\
\\ !nas_list.png|border=0,width=500!\\
\\
# В открывшейся форме заполните поля *Название*, *IP адрес*, выберите *OSS схему* "*Пользовательская*", укажите *версию "1"* и нажмите "*Сохранить*"
\\
\\ !nas_add_form.png|border=0,width=350!\\
\\
# Обратите внимание, что после сохраненя автоматический должно запониться поле "*OSS Каталог управления*"
\\
\\ !nas_created.png|border=0,width=350!\\
\\
# Перейдите на вкладку "*Управление*" и нажмите кнопку "*rtsh cfg init default v1*"
\\
\\ !nas_management_tab.png|border=0,width=550!\\
\\
# Должно появиться всплывающее окно, через несколько секунд появится надмись "/usr/local/bin/rtsh cfg init default_v1 \[8032\] is finished"
\\
\\ !nas_initiated.png|border=0,width=400! \\ \\
# Подключитесь к серверу по SSH и проверьте что файлы схемы создались: посмотрите какой указан путь до OSS каталога в настройках NAS и подставьте в команду:
{code:title=Пример команды, путь до Вашего NAS уточните в его настройках}chroot /app/asr_billing/ ls -l /var/oss/core/MyNAS/{code}
Вывод должен быть приблизительно следующий:
!nas_list_files.png|border=1!

h1. Кастомизируйте скрипт

{panel}
chroot  /app/asr_billing
{panel}
при создании NAS каталог уже будет с именем, которое вы ввели при создании , т.е

{panel}
/var/oss/core/имя
{panel}
*Шаг *{*}3.* Заходим в каталог

{panel}
cd /var/oss/core/имя
{panel}

*Шаг *{*}4.* Инициализуруем каталог

{panel}
rtsh cfg init default
{panel}

*Шаг *{*}5.* Копируем стандартный файл обработки событий session

{panel}
cp bin/session ubin/
{panel}
*Шаг *{*}5.* Открываем файл обработки событий

{panel}
vim /var/oss/core/имя/ubin/session 
{panel}

или

{panel}
mcedit /var/oss/core/имя/ubin/session 
{panel}
*Шаг *{*}6.* Добавить команды управления в файл session, согласно описанным функциям.

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

{code}
#!/bin/bash
. $(dirname $BASH_SOURCE)/../bin/session

user_accept(){
#здесь пишем команду, с помощью которой можно управлять вашим NAS из консоли биллинга
}
{code}
Обязательными обычно являются следующие состояния: user_add, user_del, user_accept, user_drop. Их описания есть в [статье|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=51708843]

*Шаг *{*}7.* Выставляем права

{panel}
chmod \+x ubin/session
{panel}

h1. Проверьте что получилось

{panel}
rtsh session 10.100.1.2 accept
rtsh session 10.100.1.2 drop
rtsh session 10.100.1.2 redirect
rtsh session 10.100.1.2 redirect_cancel
{panel}

*Шаг *{*}9.* Проверяем авторизацию и управление пользователем.