1
我正在嘗試將http服務器添加到基於5.1的自定義ROM中。我設法通過device.mk
中的PRODUCT_COPY_FILES將lighttpd
二進制文件放置在system/xbin
中,並且能夠在eng構建中的設備中成功運行它。服務器正在監聽端口80
。AOSP:Android privilaged端口,文件組和啓動服務
但是在用戶構建中,服務器無法綁定到80
。選中時,文件所有者/組是root/shell。這是80端口不允許的原因嗎?在放置二進制文件時如何更改爲root/root
?有沒有其他方法可以綁定到80
?
EDIT-1
我嘗試另一種選擇是用iptables ..但再次,權限被拒絕。 有什麼辦法可以在android源代碼中添加一個iptable規則並構建?
另外閱讀'更新Linux配置'將端口80標記爲非特權端口..但無法弄清楚如何做到這一點。
在此先感謝。
感謝你的回覆部分。我有幾個其他系統試圖連接到端口80 ..因此這種嘗試。在6個月內,我們會更新這些指向更高的端口。 我嘗試通過su ..但沒有運氣。仍然80端口的權限被拒絕。有趣的是,su也是root:shell。 看起來像改變lighttpd爲根:根是唯一的選擇.. – user2257682
如果在這個Android設備上啓用selinux。你可能也得處理這個問題。 – ApriOri
我使用android_filesystem_config.h管理root:su。也設置權限爲6755.但令我驚訝的是,端口80仍然是不允許的。另外,su不能在system/xbin中設置另一個文件的chown。 哪個方面會成爲垃圾場?正如我所提到的,在eng build port 80是開放的。 SELinux被禁用。 – user2257682