码迷,mamicode.com
首页 > 系统相关 > 详细

Linux下普通用户修改时间问题!

时间:2015-04-16 10:29:51      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:expect   linux   用户   密码   sodu   

            今天公司突然要把所有测试环境ROOT密码收回,只发放普通用户权限。因为测试环境要经常改时间来测试,Linux下普通用户无修改时间权限。原本我的思路是写一个脚本(自动sodu到ROOT用户执行修改时间在切换回普通用户)脚本如下:

#!/bin/bash

exp () {

expect -c "

spawn su - root -c \"$2\"

expect \": \"

send \"$1\r\"

expect eof

"

}

echo "时间格式:‘2015-01-01 12:30:00‘"
echo "可以使用shift+backspace删除错误输入。
"
read -p "请输入将要修改的时间
:" tmp_date
#if [ -n $tmp_date ] ;then
# echo "请输入时间
"
#fi
echo $tmp_date

export
if [ -n "$tmp_date" ] ;then
exp "111111" "date -s ‘$tmp_date‘"
else
echo "请输入将要修改的时间。
"
exit 1
fi

今天上网无意当中看到原来还可以这么玩,不用写脚本什么的那么麻烦。
由root用户执行chmod 4755 /bin/date
 备注:也就是给date命令增加s权限位即设置setuid(4000),这样普通用户就可以执行date命令了,缺点也是很明显的,相当于去掉了date命令的root权限限制。

本文出自 “handong_fly” 博客,请务必保留此出处http://6864153.blog.51cto.com/6854153/1633263

Linux下普通用户修改时间问题!

标签:expect   linux   用户   密码   sodu   

原文地址:http://6864153.blog.51cto.com/6854153/1633263

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!