Чтобы не писать для каждой гостевой машины по два скрипта, для монтирования и демонтирования разделов или директорий, создал один универсальный для всех. Сохраняем представленный ниже скрипт в директории «/etc/vz/scripts
» под именем «mount
» и назначаем ему права на выполнение. Далее, в директории «/etc/vz/conf
» создаем симлинки скрипта под именем «VEID.mount
» и «VEID.umount
», где VEID – идентификатор гостевого хоста. В этой директории создаем еще один файл под именем «VEID.fstab
», где прописываем монтируемые разделы в формате «fstab». Обратите внимание, что точки монтирования должны указываться с корневого раздела «/» гостевого хоста.
Собственно сам скрипт:
- #!/bin/bash
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- source /etc/vz/vz.conf
- source ${VE_CONFFILE}
- FSTAB="$(dirname $0)/${VEID}.fstab"
- ACTION="$(basename $0 | sed -r 's/^[^\.]+\.//')"
- if [ -e "$FSTAB" ]
- then
- if [ $ACTION = "mount" ]
- then
- cat "$FSTAB" | sed -r "/^(#|$)/d" | \
- awk -v VE_ROOT="${VE_ROOT}" '{ print "-t " $3 " -o " $4 " " $1 " " VE_ROOT $2; }' | \
- xargs -n 1 -d'\n' -I{} sh -c 'echo mount {}; /bin/mount {};'
- elif [ $ACTION = "umount" ]
- then
- cat "$FSTAB" | sed -r "/^(#|$)/d" | \
- awk -v VE_ROOT="${VE_ROOT}" '{ print VE_ROOT $2; }' | \
- xargs -n 1 -d'\n' -I{} sh -c 'echo umount {}; /bin/umount {};'
- fi
- fi
- exit 0
Комментариев нет:
Отправить комментарий