或只有root可以嗎? 我想通過調用setuid/setgid從.sh腳本 更改非root用戶的uid/gid。可能嗎?任何用戶都可以使用setuid()/ setgid來更改uid/gid嗎?
0
A
回答
0
默認情況下,只有root可以使用setuid/setgid。也許與selinux或類似的東西。
0
對於sh(1)(Bourne shell)沒有setuid或setgid命令可用。實際上,setuid(2)和setgid()是僅在編程語言(如C或Perl)中可用的系統調用(以及幾乎除shell腳本外的任何代碼)。即使可用,當調用非root用戶時,調用的實用程序也會受到限制。這些調用沒有給予真實用戶不可用的特權。
還有文件模式setuid(setuid bit設置)或setgid(意思setgid位設置);但這些僅適用於二進制可執行文件,而不適用於sh腳本*。
對於普通用戶來說,不用重新輸入密碼即可從腳本中以不同的用戶身份運行命令,請使用sudo(8)命令。 Sudo需要由系統管理員進行配置。
還有其他方式充當不同的用戶;但都涉及調用超級用戶祝福(設置了setuid bit)的外部可執行文件,或者讓其他用戶的進程執行任務。
另請參見
sudo(8) sudo命令
setuid(2)的setuid的系統調用
setuid bit訪問模式
* Setuid on Shell Scripts
How can I get setuid shell scripts to work?
相關問題
- 1. setuid或setgid失敗
- 2. linux id和setuid/setgid
- 3. AOSP setgid/setuid沒有效果
- 4. 任何人都可以用vector和class來幫助我嗎?
- 5. 任何人都可以使用mysql workbench 5.2來使用mamp?
- 6. 任何Texter用戶都可以回答這個問題嗎?
- 7. 任何用戶都可以訪問%APPDATA%文件夾嗎
- 8. Nodejs:使用setuid/setgid後監聽端口80
- 9. Lotus Domino以外的其他任何IDE都可以使用嗎?
- 10. 任何人都可以使用以下JScript幫助我嗎?
- 11. Firebase用戶標識可以更改嗎?
- 12. 任何人都可以幫我使用Facebook的Iframe標籤嗎?
- 13. 任何人都可以幫我使用jQuery選擇器嗎?
- 14. 任何人都可以幫我使用JQuery動畫嗎?
- 15. 使用tee的奇怪:任何人都可以解釋嗎?
- 16. 任何人都可以幫助我使用C++類嗎?
- 17. 任何人都可以在VS2012的C++/CLI中使用System.Windows.Input.ICommand嗎?
- 18. 任何人都可以獲得MacPorts的Mercurial包來使用MercurialEclipse插件嗎?
- 19. 任何人都可以使用泄漏? (來自儀器)
- 20. 任何人都可以解釋OAuth嗎?
- 21. 任何人都可以幫助我嗎?
- 22. 任何人都可以處理它嗎?
- 23. 任何人都可以糾正它嗎?
- 24. 可以使用NameIdentifier和IdentityProvider(WIF)聲明來唯一標識任何用戶嗎?
- 25. 任何事件都可以通過jQuery來改變隱藏的輸入嗎?
- 26. 我可以使用setuid或sticky來創建由某個用戶創建的PHP文件嗎?
- 27. 任何人都可以改變這種方法嗎?
- 28. 任何人都可以請幫我改正這段代碼嗎?
- 29. 我可以使用線程來更改GTK圖像嗎?
- 30. 可以使用XSL/XML來更改iPhone UI /功能嗎?