[問題] Django使用subprocess的權限問題

作者: fordpines (阿福)   2017-11-05 03:20:50
請問有辦法在popen有sudo的情況下可以繞過shell輸入密碼的步驟 或是讓他用root權限跑嗎?
http://tools.iedb.org/bcell/download/
最近再用django寫網頁 view.py有個地方呼叫另一個py檔(上面的網址)做處理
但因為他是2.x版的 如果不加sudo 就會有print不相容的問題
像這樣
python predict_antibody_epitope.py -m Chou-Fasman -f test/single_sequence.txt
問題部分的程式碼(view.py)在這邊:
https://imgur.com/oMq0qBy
回到要問的問題上面
現在寫的是上傳檔案 用subprocess.popen呼叫指令(-f test/single_sequence.tx
t這部分換掉) 在網頁上顯示stdout的東西
但問題在 如果command那邊是sudo+指令 網頁會一直等不到回傳(waiting for localhost)
但如果把sudo去掉
會變成這樣(藍色的地方 跟上面講的print不能用的警告一樣)
https://imgur.com/iEmtjcj
問題很奇怪 但麻煩萬能的鄉民了
因為他也沒有python3版 也沒有替代的東西 也不知道怎麼辦…
作者: fordpines (阿福)   2017-11-05 03:28:00
下面那張圖綠色部分是那一次上傳生出的指令
作者: djshen (djshen)   2017-11-05 07:32:00
command用python2不行?
作者: yeh6   2017-11-05 09:56:00
echo <password> | sudo -S <command> , 只是密碼明文很好笑
作者: fordpines (阿福)   2017-11-05 12:51:00
原來有python2這招@@謝謝
作者: a0919610611 (熾)   2017-11-06 11:10:00
放環境變數啊 or config file

Links booklink

Contact Us: admin [ a t ] ucptt.com