참고로, 저는 shell script에 대해서는 완전 초짜(1주차)라고 엄숙히 경고하는 바이
며, 본 script의 공개이유는 아래 고수님(엘.배정민.적수님)들의 조언을 유도및 동
참을 얻어 내기 위한 것임을 알려드립니다.
스크립트명: addon
사용법: addon [추가할 유저명](물론, 퍼미션은 700)
패치명: help me!
watch out! 본 예제는 초보의 경우 충분히 검토한 후 적용하시기 바랍니다.
----------------------------------------------------------------------------------
#!/bin/sh
if [ $# = 0 ] # 그냥, addon하면 나오는 부분
then
echo ""
echo "addon is Jazz's user creator"
echo "usage: addon user_name"
echo ""
exit 1
fi
echo ""
echo "Starting addon: Running configure..." # 말장난이 조금 많죠...
echo ""
# 이미 유저가 존재할 수 있으므로 if문을 섰구요.. 유저가 있으면
# 스크립트가 종료됩니다.
if useradd $1
then
passwd $1 # 패스워드 부여!
echo ""
echo "$1 is"
echo "`id $1` &" # 유저를 확인하는 차원에서...
# 저는 내부사용자(같은 서버에 존재하는)가 다른 계정사용자의 공간을 못 침투
하도록 요렇게 운영합니다. # 웹(nobody)을 통해서만 들어올 수 있죠.
chmod 710 /home/$1
chgrp nobody /home/$1
echo "Home Permission=710, Group=nobody tokens updated successfully!"
echo ""
# 보다 편하게 quota 설정을 하기 위한 팁입니다.(jazz.info는 기존에 설정된 유저)
echo -n "Insert quota ID for $1: Ex.[jazz=100M,info=50M,root=unlimit]: "
read ID
# 즉, jazz라고 기입하면 해당 계정사용자는 100M로 quota 설정됩니다.
# root라고 기입하면, 무제한!(case문 사용)
case "$ID" in
jazz)
edquota -p jazz $1 # 즉, $1를 jazz와 같이 quota 적용하라'라
는 뜻 ;;
info)
edquota -p info $1
;;
*)
edquota -p root $1
;;
esac
echo "$1's quota setting tokens updated successfully!"
echo ""
echo "Starting CGI addon: Running configure..."
echo ""
# /etc/skel에 게시판, 방명록을 이미 설치해 놓은(풀어 놓은) 상태에서 아래와 같
이 # 퍼미션만 변경합니다.
# 그러므로, 매번 사용자의 게시판,방명록을 install할 필요가....
# 이 부분은 사용자마다 여러가지 경우가 있으리라 생각됩니다.(응용가능)
chmod 777 /home/$1/public_html/미친게시판/data
chmod 777 /home/$1/public_html/미친게시판/logs
chmod 777 /home/$1/public_html/미친방명록/data/book
echo "$1's CGI setting tokens updated successfully!"
echo ""
echo " +-------------------------------------+"
echo " | Congratulations, addon is complete! |"
echo " +-------------------------------------+"
echo ""
exit
else
echo ""
exit 1
fi
------------------------------------------------------------------------------------
고수님들의 무수히 많은 질타를 부탁드리며, 본 스트립트에서 다루지 못한 아
파치 설정파일인 httpd.conf, 네임서버의 zone 파일생성등을 자동으로 해주는
스크립트 프로젝트를 부탁하는 바입니다. - help me!
너무 속이 보이죠....