vsftpd 服務移植出現 500 oops : socket 解決


  • 一開始, 在vsftpd 打印的錯誤是 500 oops : socket

  • 在 vsftpd 源碼里面找到 buildroot-2016.05/output/build/vsftpd-3.0.3/sysutil.c 文件里面有相關錯誤打印。

  • 然后我將相關錯誤碼打印出來:


* #### 發現是 13 號錯誤,沒有訪問權限,EACCES
  • 仔細對比客戶的文件系統和我們的文件系統的區別,發現基本上是一致的。

  • 最后用kernel 4.4.12 去跑我們系統,發現竟然能通過,基本上確認是kernel的問題。

  • 最后實在是沒有辦法,看一下是哪里會返回 EACCES, 然后就在 kernel 源碼的 net 目錄下用 grep EACCES * -R 去查找哪里會返回這個錯誤


* #### 最后修改了 kernel3.2.0/net/ipv4/af_inet.c
  • 里面的相關返回 -EACCES 代碼,把這段代碼注釋以后然后重新運行 vsftpd 后即可正常訪問。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM