安装 200 个 cifs 安装点会耗尽所有 CPU。这是正确的吗?

安装 200 个 cifs 安装点会耗尽所有 CPU。这是正确的吗?

摘要:我需要一种方法来监控 cifs 挂载点,但我不知道如何做。

你好,

我有一台运行 Debian 5 的虚拟机,配备 2 个 CPU 和 1Gb RAM。

它挂载了我们的一些用户的 cifs 共享文件夹,大约有 200 个 cifs 挂载点。

有一个正在运行的 apache 服务器,它分析此 cifs 以查找名为 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

我知道这是一个糟糕的脚本,但我在这里寻求帮助以改进它。

谢谢。

答案1

您正在以只读方式安装,因此我认为您不需要写权限。

为什么不//fbmfsu/home$使用文件服务器上具有只读访问权限的特殊服务帐户挂载一次,以访问所有用户的文件夹并创建大量符号链接呢?或者使用mod_userdir

或者作为另一种选择,使用类似自动文件系统在访问时它将自动挂载/卸载共享。

相关内容