在UNIX系统中,超级用户掌握着系统的所有权限,关机命令也是其中非常重要的一项权限。但在某些情况下,我们非常希望普通用户也能执行关机命令,而不具备其它的超级权限。
为了使普通用户具备关机权限,我们需要创建一个专门进行关机的用户,将它的sh修改为我们指定的关机程序。具体操作如下:
首先,我们在UNIX系统中正常建立一halt用户,在建立时我们可以设置该用户为无口令用户。然后,用 vi 编辑器修改 /etc/passwd 文件。将我们刚建立的 halt 用户一行的内容修改为:
halt:x:0:1:/etc:/etc/halt
即该用户具有超级用户权限,但是它的启动目录为/etc,执行的sh为我们指定的可执行程序/etc/halt,该执行文件的内容如下:
HALT_TERMINAL=`tty`
case "$HALT_TERMINAL"
in
/dev/tty0[1-9]|/dev/tty1[012])
w-h | fgrep -v halt > /dev/null
if [ $? = 0 ]
then
clear
echo "\n\n\n\n\n\n"
setcolor red black
echo " [ 普通用户关机程序 ] ** 警告** "
setcolor yellow black
echo "以下用户未退出系统无法自动关机。请选择关机方式:\n"
echo " 注册用户注册终端号"
w -h | fgrep -v halt | awk '{print " " $1 " " $2}'
echo " \n\n "
echo " 1: 中断关机程序。"
echo " 2: 系统强行关闭计算机。(可能会造成数据丢失)\n\n"
while true
do
echo -n " 请选择:"
read select
if test"$select"= 1
then
setcolor white black
clear
exit 1
else
if test "$select"=2
then
setcolor white black
/etc/haltsys
fi
fi
done
else
cd /usr/tmp
rm -f *
cd
/etc/haltsys
fi
echo "\n\n 普通用户关机程序不能在终端上运行!!"
esac
exit
将以上内容用vi编辑器编辑保存为 /etc/halt,并将该文件的权限修改为一般用户可读可执行即可。
这样,一般用户只需在“Login:”状态下输入halt 用户名,即可实现系统的自动关闭。当然,若此时系统中有其它用户尚未退出,则会给出提示信息,而不会自动强行关闭系统。另外该关机用户在终端上不能关闭系统,这也提高了系统的安全性。该方法在SCO Open UNIX 5.0操作系统中试验通过。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 伊能静.1989-悲伤的茱丽叶【飞鹰唱片】【WAV+CUE】
- 黑神话二郎神脸模再次COS自己:霸气侧漏 颜值超高!
- 《黑神话》萍萍演员再晒COS:国庆皮肤限时返场!
- 《暗黑4》资料片IGN 8分:新增内容令人相当满意!
- 《一人一首成名曲·怀旧篇 3CD》[WAV+CUE][1.5GB]
- 《张信哲 粤语精选集 从开始到现在 2CD》[WAV+CUE][780MB]
- 《中国歌典 1950-1999年代经典歌曲 10CD》[FLAC/分轨][3.5GB]
- 群星.2024-流水迢迢影视原声带【诗和远方】【FLAC分轨】
- 蓝心湄.1999-心湄看新湄【SONY】【WAV+CUE】
- FINE乐团.2022-宇宙神经【FLAC分轨】
- 万代南梦宫逼迫中国选手弃权《铁拳》比赛 国籍不符合资格
- 《黑神话》官方手办引热议:真的很好看真的买不起
- 《黑神话:悟空》取景地灵岩寺现巨型悟空!挥舞大棒超帅气
- 秦咏.1997-歌咏诗情·历年名曲典故【音乐谷】【WAV+CUE】
- 群星.1997-纯电影·电影歌曲剧照纪念篇【新艺宝】【WAV+CUE】