私はFreeBSD 10.3の迷惑なベースイメージを生成するためにパッカーテンプレートを設定しましたが、少なくともMon Oct 3 00:34:41 2016 +0300でうまくいきました。FreeBSD pkgが突然ブートストラップを停止しました
昨日私はこのプロジェクトの作業を続けようとしていましたが、これはもう動作していません。だからここに詳細が来る。
パッカーは、次のスクリプトでbsdinstall(8)
を使ってFreeBSDのインストールに私のスクリプトを実行し、それが何をすべきかを行います。
PARTITIONS="ada0 { 29G freebsd-ufs /, 5G freebsd-swap, 10G freebsd-ufs /var }"
DISTRIBUTIONS="base.txz kernel.txz"
#!/bin/sh
echo 'WITHOUT_X11="YES"' >> /etc/make.conf
echo 'OPTIONS_UNSET=X11' >> /etc/make.conf
echo 'nameserver 8.8.8.8' >> /etc/resolv.conf
cat >> /etc/rc.conf <<EOF
ifconfig_em0="DHCP"
sshd_enable="YES"
dumpdev="NO"
EOF
env ASSUME_ALWAYS_YES=1 pkg bootstrap # <<stops here
pkg update
pkg install -y sudo
[.....snip.....]
reboot
これはメッセージでブートストラップPKGで停止:
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:10:amd64/quarterly, please wait...
Signature for pkg not available.
pkg: Error fetching http://pkg.FreeBSD.org/FreeBSD:10:amd64/quarterly/Latest/pkg.txz.sig: Connection reset by peer
A pre-built version of pkg could not be found for your system.
Consider changing PACKAGESITE or installing it from ports: 'ports-mgmt/pkg'.
私がbsdinstallスクリプトを停止し、chroot /mnt /bin/sh
私は上記のURLからpkg.txz.sig
を問題なく取り出すことができます。
「ピアによって接続がリセットされました」という理由は何ですか?最近、pkg.FreeBSD.orgで何か変更されましたか?
問題について何も見つかりませんでした。
captured trafficを見るとUPD1
- サイトは本当に200OK応答し、その後、pkg.txz.sig
ファイルの接続を切断します。
しかし、この200OKパケットが(失敗した)fetch
マニュアル(成功した)とpkg bootstrap
の両方のための署名ファイルとthey are identicalが含まれてい
両方のセッションが同じであるので、これはネットワークの問題そうではありません。
UPD2
truss
はどちらかnot helpfulました。
だから私はちょうど手動でファイルを取得するために私のbsdinstallスクリプトを変更した回避策として:とにかくダウングレードではありません...私は今、疑うことができる唯一のことは、VirtualBoxのバージョンアップデートです:
[.....snip.....]
#env ASSUME_ALWAYS_YES=1 pkg bootstrap
fetch http://pkg.FreeBSD.org/FreeBSD:10:amd64/quarterly/Latest/pkg.txz
fetch http://pkg.FreeBSD.org/FreeBSD:10:amd64/quarterly/Latest/pkg.txz.sig
pkg add pkg.txz
pkg update
[.....snip.....]
PSオプション。私は一瞬だけ、デバッグ環境を設定した
UPD3
(ISOのチェックサムがそうaccidential変更が不可能な、テンプレートとスクリプトはgitリポジトリであり、テンプレートにハードコードされました)エラーが発生した機能を分離しました。
それはhttp接続(最初のものは、すでに727のバイトを読んでいる間 - それはEOFでなければなりません)から第2のバッファリフィルです...
Hereは、バックトレースとそこに到達するためのブレークポイントを持つ小さなgdbのログです。 システムに作成されたtcpdumpキャプチャを追加しました(wiresharkと互換性があります)。
おそらく[email protected]に問い合わせてください。彼らはpkg.FreeBSD.orgとpkgツールを維持しています。 – arved
これはlibfetchか 'em'ドライバ問題(おそらく+仮想ネットワーキング)のようです。保守担当者に連絡してください –