簡體   English   中英

面料sudo權限被拒絕

[英]fabric sudo permission denied

設定:

  • 面料1.9.1
  • 服務器是centOS 7
  • 用戶tester0具有管理員權限,並且在sudoers文件中

問題:當我嘗試在“ / opt /”下創建文件夾時,它返回“權限被拒絕”。

從我的fabfile.py中:

parent_code_dir = '/opt/deploy_dest'
with settings(sudo_user=pt_root_user,warn_only=False):
     sudo("ls /opt/") #this works OK with the sudo command
     sudo("id") #this works OK with the sudo command
     sudo("mkdir -p %s" % parent_code_dir) #this returns the "Permission denied" 

在我的終端中,我看到輸出:

[192.168.1.108] sudo: ls
[192.168.1.108] out: rh
[192.168.1.108] out: 

[192.168.1.108] sudo: id
[192.168.1.108] out: uid=1000(tester0) gid=1000(tester0) groups=1000(tester0),10(wheel)   context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[192.168.1.108] out: 

[192.168.1.108] sudo: mkdir -p /opt/deploy_dest/
[192.168.1.108] out: mkdir: cannot create directory ‘/opt/deploy_dest/’: Permission denied
Fatal error: sudo() received nonzero return code 1 while executing!
Requested: mkdir -p /opt/pt_server/
Executed: sudo -S -p 'sudo password:'  -u "tester0"  /bin/bash -l -c "mkdir -p /opt/pt_server/"

當以tester0訪問時,我可以通過ssh手動創建相同的文件夾sudo mkdir -p /opt/deploy_dest deploy_dest。 但是,當我運行輸出sudo -S -p 'sudo password:' -u "tester0" /bin/bash -l -c "mkdir -p /opt/pt_server/"我得到了相同的錯誤,所以我想我應該更改面料sudo_prefix ..

有更好的解決方案嗎? 我錯過了什么嗎?

這是/ opt /文件夾中的權限問題。 用戶tester0不是root =>他在具有root權限的組輪中,但是在運行sudo -u =>時,由於tester0用戶訪問/ opt /(僅在該組中,但該組不允許寫),因此運行該命令。 一種快速的解決方案是chmod g+w /opt/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM