WindowsのCygwinでapt-cygでパッケージをインストールしようとしたらPASVモードで接続できず失敗した時の対処方法。
WindowsのCygwinでapt-cygでパッケージをインストールしようとしたらPASVモードで接続できず失敗した時の対処方法。
環境
Windows10 (32bit) cygwin
手順
apy-cygダウンロード
wget https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg chmod 755 apt-cyg mv apt-cyg /usr/local/bin/
apy-cygでインストール実行
$ apt-cyg install git --2016-08-27 07:46:34-- ftp://cygwin.mirrors.pair.com//x86/setup.bz2 cygwin.mirrors.pair.com (cygwin.mirrors.pair.com)|216.92.2.149|:21 に接続しています... 接続しました。 anonymous としてログインしています... ログインしました! ==> SYST ... 完了しました。 ==> PWD ... 完了しました。 ==> TYPE I ... 完了しました。 ==> CWD (1) /x86 ... 完了しました。 ==> PASV ... 216.92.2.149:49298 へ接続できませんでした: Connection timed out 再試行しています。
見た感じ、ミラーサイトに接続はできているがFTP通信のパッシブモード接続でエラー発生してる。
$ which ftp /cygdrive/c/WINDOWS/system32/ftp
http://iamapen.hatenablog.com/entry/2014/09/12/201331
>WindowsのFTPクライアントはPASVモードに対応していない。
これが原因?
http://hateda.hatenadiary.jp/entry/2012/12/18/220328
ここを参考にapt-cygのミラーサイト変更
$ apt-cyg -m http://ftp.iij.ad.jp/pub/cygwin/ update --2016-08-27 08:11:14-- ftp://cygwin.mirrors.pair.com//x86/setup.bz2 => `.listing' cygwin.mirrors.pair.com (cygwin.mirrors.pair.com) をDNSに問いあわせています... 216.92.2.149 cygwin.mirrors.pair.com (cygwin.mirrors.pair.com)|216.92.2.149|:21 に接続しています... 接続しました。 anonymous としてログインしています... ログインしました! ==> SYST ... 完了しました。 ==> PWD ... 完了しました。 ==> TYPE I ... 完了しました。 ==> CWD (1) /x86 ... 完了しました。 ==> PASV ... 216.92.2.149:41045 へ接続できませんでした: Connection timed out
結局かよ・・
apt-cygのヘルプ見たら下記コマンドで変更できたぽい
$ apt-cyg mirror http://ftp.iij.ad.jp/pub/cygwin/ Mirror set to http://ftp.iij.ad.jp/pub/cygwin/.
再度インストール実行
$ apt-cyg install vim --2016-08-27 08:13:38-- http://ftp.iij.ad.jp/pub/cygwin//x86/setup.bz2 ftp.iij.ad.jp (ftp.iij.ad.jp) をDNSに問いあわせています... 202.232.140.70, 2001:240:bb8f::1:70 ftp.iij.ad.jp (ftp.iij.ad.jp)|202.232.140.70|:80 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 2277285 (2.2M) [application/x-bzip2] `setup.bz2' に保存中 ~省略~ Unpacking... Package xxd requires the following packages, installing: cygwin Package cygwin is already installed, skipping Running /etc/postinstall/vim.sh Package vim installed
インストールできた!