我有以下extension.conf
:
exten => XXX,Answer()
exten => XXX,n,Playback(/var/lib/asterisk/sounds/delExtHDD)
exten => XXX,n,System(/bin/sh /etc/asterisk/deletekeys.sh)
exten => XXX,n,Hangup()
chmod脚本为4755,属于root所有。
脚本本身包含以下内容:
#/bin/sh
#/usr/bin/wipe -f -q /XXX
/bin/umount /media/sda/
/sbin/cryptsetup luksClose sda_crypt
显然脚本被执行了,但是它没有卸载文件系统,因此我建议它没有root权限。
如何以root身份执行脚本?
感谢Mat对unix stackexchange的提示!
我编译了一个C程序,可以在https://unix.stackexchange.com/a/369/16009上找到,它以root身份执行脚本。