Linux下自动安装Proftpd服务脚本

来源:互联网 发布:输入数据生成图表 编辑:程序博客网 时间:2024/05/21 06:44

因为需要用到ftp服务,顺便练习下shell的使用,写了个自动安装脚本,现在共享出来,方便大家

#!/bin/shwget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5rc3.tar.gztar zxvf proftpd-1.3.5rc3.tar.gzcd proftpd-1.3.5rc3./configure --prefix=/usr/local/proftpd --sysconfdir=/etcmakemake install#配置/etc/init.d/proftpd服务,从而可以正常启动content='#!/bin/sh#chkconfig: 345 85 15# ProFTPD 的启动脚本# Author: GP# Email: vsgeping@gmail.com# website: http://www.gplinux.com# 设置变量FTP_BIN=/usr/local/proftpd/sbin/proftpdFTP_CONF=/etc/proftpd.confFTP_PID=/usr/local/proftpd/var/proftpd.pidif [ -f $FTP_PID ]; then # 判断proftpd.pid文件是否存在    pid=`cat $FTP_PID` #如果存在,即执行命令并把结果存入变量pidfiif [ ! -x $FTP_BIN ]; then    echo "$0: $FTP_BIN: 不可执行"    exit 1fi# 获取参数并判断case "$1" instart)if [ -n "$pid" ]; then #如果pid变量的长度非零则为真    echo "$0: proFTPD [PID $pid] 已经在运行,请勿重复启动"    exitfiif [ -r "$FTP_CONF" ]; then #检查配置文件是否存在并且有读权限    echo "正在启动proFTPD服务..."    $FTP_BIN -c $FTP_CONF #加上c参数,指定配置文件else    echo "$0: 不能启动proFTPD服务,原因:proFTPD的配置文件$FTP_CONF有错"fi;;stop)if [ -n "$pid" ]; then #如果pid变量的长度非零则为真    echo "正在关闭proFTPD服务..."    kill -TERM $pid #给父进程发送一个TERM信号,试图杀死它和它的子进程。else    echo "$0: proFTPD没有运行,无法关闭"exit 1fi;;restart)if [ -n "$pid" ]; then #如果pid变量的长度非零则为真    echo "正在重启proFTPD服务..."    kill -HUP $pid #重启该进程else    echo "$0: proFPTD没有运行,无法重启"    exit 1fi;;*)echo "命令用法: $0 {start|stop|restart}"exit 1esacexit 0EOF'echo "$content" > /etc/init.d/proftpdsed -i '/^Group.*nogroup$/s/nogroup/nobody/' /etc/proftpd.confecho "Systemlog       /var/log/proftpd/proftp.log" >> /etc/proftpd.confmkdir -p /var/log/proftpd