Чтобы не писать для каждой гостевой машины по два скрипта, для монтирования и демонтирования разделов или директорий, создал один универсальный для всех. Сохраняем представленный ниже скрипт в директории «/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
Комментариев нет:
Отправить комментарий