Linux 怎麼用Shell腳本來執行su - 並且輸入密碼得到root權限
PHP中文网
PHP中文网 2017-04-17 14:33:25
[Linux讨论组]

如題,我怎麼一行命令執行 su - 並且輸入密碼得到root權限

下面這樣不行

$ echo "mypassword" | su -
su: Sorry
PHP中文网
PHP中文网

认证0级讲师

全部回复(3)
高洛峰

可以使用expect脚本

#!/usr/bin/env expect

spawn su

expect "Password:"

send "Your Password\r" # 不要丢了 '\r'

interact
PHPz

echo "password" | sudo -S 试试

大家讲道理

这样是不行且不应该的,考虑一下如果能通过这样提权,那系统的root权限将能被任何人获取。

一般如果脚本需要root权限的话,我们都是一开始直接以root的身份执行脚本,而不是先以自己的id运行, 然后再在某个需要权限的操作的时候通过su或者sudo切换身份。

另,如果需要以root身份执行,并且可以被普通权限的用户执行,调用,可以考虑为该执行文件设置setuid

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号