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

{toc}
h1. Определиние способа добавления диска
В старых версиях Carbon PL5 для БД биллинга не создавалось отдельного раздела, она располагалась в */mnt/var*. Однозначно убедиться какая установка у Вас, Вы можете следующим способом:
Выполните команду
{code}grep '/mnt/db' /etc/fstab{code}
В зависимости от вывода команды, на старых установках в ответ не вернётся ни чего, на новых - строка с параметрами монтирования раздела, например:
* старая установка
{panel}\[root@vm_old ~\]# grep '/mnt/db' /etc/fstab
\[root@vm_old ~\]#{panel}
* новая установка
{panel}\[root@vm_new ~\]# grep '/mnt/db' /etc/fstab
UUID=893c80de-0c62-4442-a19a-7a972f2854ff /mnt/db ext4 nodiratime,noatime,async,data=journal 1 2
\[root@vm_new ~\]#{panel}

h2. Добавление диска на новых установках
h2. Добавление диска на старых установках
# Добавьте диск и разметьте раздел по статье документации "[CarbonBilling:Подготовка нового диска]"
# Смонтируйте его в директорию */mnt/db*
{code}mount /dev/sda3 /mnt/db{code}
# Создайте структуру каталогов
{code}cat /app/01_*.list | while read -r app; do mkdir -p /mnt/db/app/$app/db; done{code}
# Остановите все контейнеры и размонтируйте разделы
{code}/etc/init.d/auditd stop
/etc/init.d/rsyslog stop
/etc/init.d/apps stop
/etc/init.d/apps destroy{code}
# Смонтируйте разделы заново, чтобы подключились ранее созданные папки
{code}/etc/init.d/apps build{code}
# Перенесите данные на новый раздел
{code}mv /mnt/var/app/asr_billing/var/db/* /mnt/db/app/asr_billing/db/{code}
# Зайдите в контейнер биллинга
{code}chroot /app/asr_billing/{code}
# Убедитесь что по старому пути не осталось данных
{panel}\[root@vm_old ~\]# ls -l /var/db/
итого 0{panel}
# Удалите папку и создайте вместо неё символьную ссылку на новое расположение данных
{code}rm -rf /var/db
ln -s ../../mnt/db/ /var/db{code}
# Выйдите из контейнера биллинга и убедитесь что символьная ссылка создана правильно:
{panel}\[root@vm_old ~\]# ll /app/asr_billing/var/db/billing.gdb.stop
\-rw\-rw\-\-\-\- 1 495 496 57704448 Апр 7 14:21 /app/asr_billing/var/db/billing.gdb.stop{panel}
# Запустите все контейнеры
{code}/etc/init.d/auditd start
/etc/init.d/rsyslog start
/etc/init.d/apps start{code}