急急急急!!!帮忙写脚本,谢谢!!!!
1.编写htmon.sh脚本文件,用于检测httpd服务的状态。
(1)使用“service httpd status”命令测试httpd服务的状态,返回值0时表示正常,返回值为非o时表示不正常。
(2)服务状态失常时,通过重定向向追加">>"向"var/log/htmon.log "文件中写入日志记录信息。
(3)使用“service httpd restart ”命令重启httpd服务,并再次执行“service httpd status ”命令查看那httpd服务的状态。
(4)若服务仍然不正常,则使用chkconfig 命令将httpd服务设置为自启动,然后通过shutdown命令重启系统。
(5)将测试完毕后的脚本保存到文件“/opt/htmon.sh”中,病设置计划任务定期执行。每周一至周五每隔十五分钟执行一次监测任务。
2.编写myuadd.sh脚本,用于批量添加用户帐号。
(1)使用read命令提示用户输入用户数量,用户名前缀,失效时间,初始密码等变量信息。
(2)使用while语句循环执行添加用户的命令操作。
(3)使用if语句对用户编号进行判断,对小于10的帐号自动在前缀字符串末尾加上字符"0" 。
3.编写myudel.sh脚本,用于批量删除用户帐号
(1)使用管理员执行脚本时输入的第一个位置参数作为用户名前缀(建议不要短于3个字符,并尽量避免与其它无关用户重叠,以免误删!)
(2)若管理员未指定位置参数,则提示错误后结束程序(可以使用“exit 1 ”语句。1表示脚本推出后返回shell环境的状态值)
(3)使用grep命令.cut命令过滤出passwd文件中使用指定前缀的用户账号名称,结合“-v”选项排除掉root用户。
(4)注意先对“/etc/passwd”.“etc/shadow”.“etc/group”等文件做好备份,以免误删系统用户后用于恢复(删除用户前应进行仔细的核对.确认!)
(5)使用for语句循环执行删除用户帐号的命令操作。
请写详细点,谢谢!!
编写“/etc/init.d/zebra”脚本文件,并添加"x"权限
(1)将启动 终止 查看状态的zebra服务控制语句分别定义为函数。
(2)通过“/usr/local/sbin/zebra -d”命令来启动zebra服务。
(3)通过保存在“/var/run/zebra.pid”文件中的PID号来终止zebra服务的进程。
(4)通过判断当前运行进程中的“zebra -d”信息确定zebra服务的状态,例如先执行“ps aux | grep "zebra -d" | grep -v "grep" &>/dev/null”命令,然后判断其返回状态。
(5)设置case语句,当用户提供的脚本参数($1)是“start”,stop”,“restart”,status”时分别调用对应的函数,否则执行默认操作,显示用法帮助信息后退出....
我是个刚学到这的新手,我很喜欢linux,希望能得到你的帮助!
谢谢.........
(1)使用“service httpd status”命令测试httpd服务的状态,返回值0时表示正常,返回值为非o时表示不正常。
(2)服务状态失常时,通过重定向向追加">>"向"var/log/htmon.log "文件中写入日志记录信息。
(3)使用“service httpd restart ”命令重启httpd服务,并再次执行“service httpd status ”命令查看那httpd服务的状态。
(4)若服务仍然不正常,则使用chkconfig 命令将httpd服务设置为自启动,然后通过shutdown命令重启系统。
(5)将测试完毕后的脚本保存到文件“/opt/htmon.sh”中,病设置计划任务定期执行。每周一至周五每隔十五分钟执行一次监测任务。
2.编写myuadd.sh脚本,用于批量添加用户帐号。
(1)使用read命令提示用户输入用户数量,用户名前缀,失效时间,初始密码等变量信息。
(2)使用while语句循环执行添加用户的命令操作。
(3)使用if语句对用户编号进行判断,对小于10的帐号自动在前缀字符串末尾加上字符"0" 。
3.编写myudel.sh脚本,用于批量删除用户帐号
(1)使用管理员执行脚本时输入的第一个位置参数作为用户名前缀(建议不要短于3个字符,并尽量避免与其它无关用户重叠,以免误删!)
(2)若管理员未指定位置参数,则提示错误后结束程序(可以使用“exit 1 ”语句。1表示脚本推出后返回shell环境的状态值)
(3)使用grep命令.cut命令过滤出passwd文件中使用指定前缀的用户账号名称,结合“-v”选项排除掉root用户。
(4)注意先对“/etc/passwd”.“etc/shadow”.“etc/group”等文件做好备份,以免误删系统用户后用于恢复(删除用户前应进行仔细的核对.确认!)
(5)使用for语句循环执行删除用户帐号的命令操作。
请写详细点,谢谢!!
编写“/etc/init.d/zebra”脚本文件,并添加"x"权限
(1)将启动 终止 查看状态的zebra服务控制语句分别定义为函数。
(2)通过“/usr/local/sbin/zebra -d”命令来启动zebra服务。
(3)通过保存在“/var/run/zebra.pid”文件中的PID号来终止zebra服务的进程。
(4)通过判断当前运行进程中的“zebra -d”信息确定zebra服务的状态,例如先执行“ps aux | grep "zebra -d" | grep -v "grep" &>/dev/null”命令,然后判断其返回状态。
(5)设置case语句,当用户提供的脚本参数($1)是“start”,stop”,“restart”,status”时分别调用对应的函数,否则执行默认操作,显示用法帮助信息后退出....
我是个刚学到这的新手,我很喜欢linux,希望能得到你的帮助!
谢谢.........
作者: hundanclark 发布时间: 2011-05-26
本帖最后由 age 于 2011-6-5 00:45 编辑
2.
复制代码
2.
- #/bin/bash
-
- read -p "请输入用户数量: " num
- read -p "请输入用户前缀: " prefix
- read -p "请输入失效时间: "expire
- read -p "请输入初始密码: " -s passwd
-
- for((i=0;i<$num;i++))
- do
- if [ $i -lt 10]; then
- useradd -e $expire -p $passwd ${prefix}"0"${i}
- else
- useradd -e $expire -p $passwd ${prefix}${i}
- fi
- done
作者: age 发布时间: 2011-06-05
本帖最后由 age 于 2011-6-5 00:45 编辑
3
复制代码
3
- #/bin/bash
-
- passwd_file="/etc/passwd"
- shadow_file="/etc/shadow"
- group_file="/etc/group"
- gshadow_file="/etc/gshadow"
- backup_dir="/media/backup"
-
- if [ $1 == "" ]
- then
- exit 1
- fi
-
- user_list=$(cat /etc/passwd | cut -d : -f 1 | grep -e "^$1" | grep -V "root")
-
- cp $passwd_file $backup_dir
- cp $shadow_file $backup_dir
- cp $group_file $backup_dir
- cp $gshadow_file $backup_dir
-
- for user in "$user_list"
- do
- userdel $user
- done
作者: age 发布时间: 2011-06-05
本帖最后由 age 于 2011-6-5 00:49 编辑
4
复制代码
4
- #/bin/bash
-
- case "$1" in
- start)
- /usr/local/sbin/zebra -d
- ;;
- stop)
- kill -9 /var/run/zebra.pid
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- status)
- zebra安装出错,不确定这里的输出, 留空吧
- *)
- echo "usage: $0 {start|stop|restart|status}"
- esac
作者: age 发布时间: 2011-06-05