Аннотация: Мне нужен способ отслеживать точки монтирования cifs, но я не знаю, как это сделать.
Привет,
У меня есть виртуальная машина с 2 процессорами и 1 ГБ ОЗУ, на которой запущен debian 5.
Он монтирует некоторые из общих папок cifs наших пользователей, около 200 точек монтирования cifs.
Имеется запущенный сервер apache, который анализирует этот cif-файл в поисках определенных файлов с именами cv.html и personal_info.txt. В apache есть немного php, чтобы сделать его приятным. ;)
Во время попрошайничества у меня были проблемы и некогда, поэтому секретарь управляет файлом со всеми именами пользователей, а cron читает его, чтобы смонтировать их.
Раз в день все перемонтируется, это из-за какой-то «проблемы с отключением», я не могу понять, как это исправить.
Это мой сценарий: (/var/www/fotos/llistat_personal.txt содержит список имен)
#!/bin/sh
#############################debug
#set -x
#############################
#############################vars
UMOUNT=/bin/umount
MOUNT=/sbin/mount.cifs
CHOWN=/bin/chown
############################
############################functions
log (){
/usr/bin/logger -t `basename $0` $1;
}
desmontar () {
$UMOUNT $1
log "Umounted $1"
}
montar (){
[ -a /var/www/$1 ] && chown -R www-data.www-data /var/www/$1 || mkdir -p /var/www/$1 && chown -R www-data.www-data /var/www/$1 || echo "Error ___ $1"
$MOUNT //fbmfsu/home$/$1/web_pub/ /var/www/$1/ -o user=webpersonal1,pass=XXXXXXX,dom=FBM,uid=33,gid=33,ro,soft,nocase,noexec || echo " Error___mount__$1"
log "Mounted $1 "
}
###########################
###########################main
for i in `ls -l /var/www/personal/|grep ^d|awk '{print $8}'`
do
desmontar $i
done
for i in ` cat /var/www/fotos/llistat_personal.txt |grep -v '^#'| cut -c 1-20`
do
montar $i
done
exit 0
Я знаю, что это плохой сценарий, но я прошу помощи, как его улучшить.
Спасибо.
Вы монтируете только для чтения, поэтому я предполагаю, что вам не нужен доступ для записи.
Почему бы просто не смонтировать //fbmfsu/home$
один раз используя специальную учетную запись службы на вашем файловом сервере с доступом только для чтения ко всем папкам пользователя и создайте множество символических ссылок. Или используйте mod_userdir?
Или в качестве другой альтернативы используйте что-то вроде autofs который автоматически монтирует / размонтирует общие ресурсы при доступе.