创建samba共享文件夹脚本

来源:互联网 发布:好用的看图软件 知乎 编辑:程序博客网 时间:2024/05/16 12:32

创建samba共享文件夹的脚本,也可以删除创建的samba共享文件夹。创建时输入参数为用户名和密码;删除时为用户名。


#!/bin/shDATA_FOLDER_PATH=/var/cache/share_folderSMB_CONFIG=/etc/samba/smb.conf# 检查参数个数if [ $# -ne 2 ] && [ $# -ne 3 ] ; thenecho "ERROR:parameters number is $# !"echo "usage: $0 [add/del] username password"exit 1fiadd_system_user(){useradd $1}del_system_user(){userdel $1rm -rf /home/$1}add_smb_user(){smbpasswd -a $1 -s <<EOF$2$2EOF}del_smb_user(){smbpasswd -x $1}add_smb_config(){mkdir -p $2chown $1:$1 $2echo "[$1]" >> $SMB_CONFIGecho "comment = private homework">> $SMB_CONFIGecho "path = $2" >> $SMB_CONFIGecho "browseable = no">> $SMB_CONFIGecho "public = no">> $SMB_CONFIGecho "printable = no">> $SMB_CONFIGecho "writable = yes">> $SMB_CONFIGecho "write list = $1">> $SMB_CONFIG}del_smb_config(){if [ -d "$DATA_FOLDER_PATH/$user_name" ];thenrm -rf $DATA_FOLDER_PATH/$user_namefistart=`sed -n "/\[$1\]/=" $SMB_CONFIG`end=$(($start+7))if [ -z "$start" ] || [ -z "$end" ];thenecho "Not found line."exit 0fised -i "${start},${end}d" $SMB_CONFIG}option=$1user_name=$2password=$3add_samba_user(){if [ ! -d $DATA_FOLDER_PATH ]; thenmkdir -p $DATA_FOLDER_PATHfiif [ -d "$DATA_FOLDER_PATH/$user_name" ];thenecho "Student data folder $DATA_FOLDER_PATH/$user_name exist"exit 0fiadd_system_user $user_nameadd_smb_user $user_name $passwordadd_smb_config$user_name $DATA_FOLDER_PATH/$user_nameservice smb restart}del_samba_user(){del_system_user $user_namedel_smb_user $user_namedel_smb_config$user_name $DATA_FOLDER_PATH/$user_nameservice smb restart}case "$option" in"add")add_samba_user $1;;"del")del_samba_user $1;;*) echo "parameters error!";;esacexit 0


0 0
原创粉丝点击