帮忙看看,这个小脚本的一个困惑

sh/bash/dash/ksh/zsh等Shell脚本
回复
xzt41
帖子: 11
注册时间: 2010-01-08 23:05

帮忙看看,这个小脚本的一个困惑

#1

帖子 xzt41 » 2010-03-27 23:48

#!/bin/bash
echo "job begain at :"
date
$AMBERHOME/exe/sander -O -i heat.in -o heat.out -p com_solvated.prmtop -c min.rst -r heat.rst -x heat.mdcrd -ref min.rst
$AMBERHOME/exe/sander -O -i density.in -o density.out -p com_solvated.prmtop -c heat.rst -r density.rst -x density.mdcrd -ref heat.rst
$AMBERHOME/exe/sander -O -i equil.in -o equil.out -p com_solvated.prmtop -c density.rst -r equil.rst -x equil.mdcrd
echo "done !"
date
这是我些的一个小脚本, 现在的困惑是我想在后面加一句关机的命令,让程序运行完后自动关机。可是我在后面直接加入shutdown -h now 后,因为权限限制,要输入密码。怎么办,这个问题怎么解决,高手帮帮忙
头像
adam8157
帖子: 2794
注册时间: 2009-03-05 16:31
联系:

Re: 帮忙看看,这个小脚本的一个困惑

#2

帖子 adam8157 » 2010-03-28 0:14

sudo -S

或者这个脚本就用root或sudo运行
xzt41
帖子: 11
注册时间: 2010-01-08 23:05

Re: 帮忙看看,这个小脚本的一个困惑

#3

帖子 xzt41 » 2010-03-28 8:48

adaml 写了:sudo -S

或者这个脚本就用root或sudo运行
不行,不能用root 用户运行,因为我的环境变量在root下不起作用。有没有其他办法
JiangHui
论坛版主
帖子: 21308
注册时间: 2007-08-02 20:29
系统: 窓辺とうこ

Re: 帮忙看看,这个小脚本的一个困惑

#4

帖子 JiangHui » 2010-03-28 8:59

用sudo执行,环境变量还是原来那个用户的
头像
jxcangel
帖子: 2
注册时间: 2010-03-31 14:32

Re: 帮忙看看,这个小脚本的一个困惑

#5

帖子 jxcangel » 2010-03-31 14:43

只有普通用户权限,但硬是要用root权限才有的操作,这个似乎非常困难,如果真的可以这么做了,也就完全没有安全性可言了。
这种情况下,大概只能2选1,要么用root权限运行这个脚本,要么在普通权限里面删除掉需要root权限的操作。
但是如果知道root的密码的话,倒是可以用 Expect 来模拟 su 的操作,获取到完整的root环境。
在网上找一下 expect 的教程吧,我这里这是给你一个思路。
xzt41
帖子: 11
注册时间: 2010-01-08 23:05

Re: 帮忙看看,这个小脚本的一个困惑

#6

帖子 xzt41 » 2010-04-06 23:36

jxcangel 写了:只有普通用户权限,但硬是要用root权限才有的操作,这个似乎非常困难,如果真的可以这么做了,也就完全没有安全性可言了。
这种情况下,大概只能2选1,要么用root权限运行这个脚本,要么在普通权限里面删除掉需要root权限的操作。
但是如果知道root的密码的话,倒是可以用 Expect 来模拟 su 的操作,获取到完整的root环境。
在网上找一下 expect 的教程吧,我这里这是给你一个思路。
首先非常感谢你的帮助,你给的思路不懂是什么意思?expect模拟root是什么意思。我想怎么能吧密码放在我的bash脚本里面,让程序运行到sudo shutdown这一步的时候,脚本里面不是有密码吗,怎么能让脚本像人一样吧密码输入进去实行关机。
我非得用普通用户执行这个关机命令,就如你所说,只有普通用户权限,但硬是要用root权限才有的操作。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 帮忙看看,这个小脚本的一个困惑

#7

帖子 eexpress » 2010-04-06 23:44

是 echo xxxx|sudo -s yyyy
● 鸣学
xzt41
帖子: 11
注册时间: 2010-01-08 23:05

Re: 帮忙看看,这个小脚本的一个困惑

#8

帖子 xzt41 » 2010-04-07 12:03

eexpress 写了:是 echo xxxx|sudo -s yyyy
什么啊?,xxx, yyy是什么,,你这个是干什么的?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 帮忙看看,这个小脚本的一个困惑

#9

帖子 eexpress » 2010-04-07 12:17

-S 打错了。就是读入密码。 xxxx密码,yyy是执行命令。
● 鸣学
bigarmy
帖子: 2
注册时间: 2007-07-24 10:06

Re: 帮忙看看,这个小脚本的一个困惑

#10

帖子 bigarmy » 2010-04-08 11:12

用root执行visudo
在里面设置一下权限
bigarmy ALL=(root) NOPASSWD: /sbin/shutdown *

就是允许bigarmy这个账户执行shutdown命令,带任何参数,不需要输入密码
回复