루트 디렉토리에 common 디렉토리가 있다고 가정하고 그 안에 공개 자료가
있다고 가정.
mount --bind 옵션을 사용하므로, 커널이 2.4.x 이상일때 가능
아래 두개의 스크립을 크론 작업으로 적당히 작업을 걸어주면 된다
예로 00시 부터 08시 까지 공개 자료실을 운영하고 싶을때
마운트 스크립을 00시에 크론작업을 걸고
언마운트 스크립을 08시에 크론작업을 걸면 된다
아래는 스크립
계정내 common 디렉토리 생성 및 마운트 스크립트
----------------------------------------------------------
#!/bin/bash
## common 디렉토리 생성 및 마운트
for home in $(ls -l / |grep ^d|grep "home"|awk '{print $9}');do
for comm in $(ls -l /$home|grep ^d|awk '{print $9}'); do
if [ ! -d /$home/$comm/common ] ; then
mkdir /$home/$comm/common
fi
chmod 777 /$home/$comm/common
mount --bind /common /$home/$comm/common
done
done
언마운트 및 계정내 common 디렉토리 삭제 스크립트
----------------------------------------------------------
#!/bin/bash
## ftp process 닫음
kill -9 $(ftpwho|grep "proftpd:"|awk '{print $1}')
## umount 작업
for home in $(ls -l / |grep ^d|grep "home"|awk '{print $9}');do
for comm in $(ls -l /$home|grep ^d|awk '{print $9}'); do
if [ -d /$home/$comm/common ] ; then
umount /$home/$comm/common
fi
if [ ! -f /$home/$comm/common/* ] ; then
rm -rf /$home/$comm/common
fi
done
done--숭구리당당 숭당당 --;;