Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> 獲取Android源碼時如何解決【fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)】的問題

獲取Android源碼時如何解決【fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)】的問題

編輯:Android開發實例

背景:
在Linux環境下(虛擬機為 VirtualBox)獲取Android源代碼的時候,

使用命令:repo init -u git://android.git.kernel.org/platform/manifest.git 時提示下列錯誤:
 fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)


機器以及軟件環境:
公司內網+代理+VirtualBox+Linux


發生問題的原因:
用一句話來概括就是聯網出現問題,因為僅僅在網絡設定裡面設定代理還不夠,我們需要用某種fanqiang工具來實現代理的操作。

根據以上原因重新整理出步驟:
1、安裝所需軟件:
sudo apt-get install git-core curl


2、設置工具repo的存放目錄並將其加入環境變量內:
mkdir ~/bin
PATH=~/bin:$PATH

3、下載repo的腳本並將其模式改為可執行:

curl http://android.git.kernel.org/repo > ~/bin/repo

chmod a+x ~/bin/repo


4、創建下載源代碼的目錄

mkdir ~/source

cd ~/source

5、開始repo操作

repo init -u git://android.git.kernel.org/platform/manifest.git

如果是在正常網路不用代理的情況下一般repo都會成功。

但由於公司特殊的網絡環境,導致在repo的時候發生fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)的問題。


這個時候可繼續以下的步驟能解決這個問題:

-------------------------------------------------------------------------

1、安裝corkscrew

sudo apt-get install corkscrew


2、在任意目錄建立任意文件

例如:    ~/bin/proxy-hoge-user.sh

添加如下內容並保存:

1 #!/bin/bash
2  CORKSCREW=`which corkscrew`
3  $CORKSCREW proxy.hoge.com 8080 $1 $2 ~/bin/user-pwd

其中:

proxy.hoge.com為代理的服務器,

8080為代理的端口,

~/bin/user-pwd為存放代理的用戶名和密碼的文件。

需要根據自己的情況進行設定。


3、新建存放代理的用戶名和密碼的文件

~/bin/user-pwd

格式為

<username>:<password>

例如 user:pwd


4、改文件屬性

chmod 755 ~/bin/proxy-hoge-user.sh

chmod 600 ~/bin/user-pwd


5、添加環境變量GIT_PROXY_COMMAND

sudo vi ~/.bashrc

添加如下命令:

export GIT_PROXY_COMMAND=~/bin/proxy-hoge-user.sh

保存退出。

source ~/.bashrc

-------------------------------------------------------------------------

這樣然後重新再source目錄下進行repo操作就能成功了。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved