新しいFreeBSD11.2マシンでは、私の/usr/ports
フォルダは空です。
ランニング:
portsnap fetch extract
…as ハンドブックで説明 結果として私の/usr/ports
コンテンツのギグ付き。
Postgres データベースサーバーなど、 Ports Collection から1つだけ必要な場合、この膨大なダウンロードは、ネットワークトラフィック、ディスクスペース、および時間の不必要な浪費です。
➥インストールするポートを1つだけダウンロードする方法はありますか?
そうでない場合、Portsコレクションのサブセットを1つだけダウンロードする方法はありますか?たとえば、databases
サブコレクションだけを取得すると、最終的には/usr/ports/databases
?
extract
portsnap
ではできません。すでにスナップショットを作成している場合(すでにダウンロードしている場合)、extract
ポートツリーの一部のみを実行できます(portsnap extract databases/postgresql11-server
)、 見る man portsnap
:
path For extract command only, operate only on parts of the ports tree starting with path. (e.g. portsnap extract sysutils/port would extract sysutils/portsman, sysutils/portsnap, sysutils/portupgrade, etc.)
svn
これらの大きなファイルをフェッチしたくない場合は、svn
の代わりにportsnap
を使用できます。
svn checkout https://svn.freebsd.org/ports/head/databases/postgresql11-server
ハンドブックの関連部分 を参照してください。
svn
は基本システムの一部です(/usr/bin/svnlite
-エイリアスを使用するか、svn
をsvnlite
)に置き換えることができるため、インストールする必要はありません devel/Subversion 。
はい、それは簡単です。あなたが見ているのはハンドブックのまさにその章にあります。
ポートツリーをインストールする必要があります。ハンドブックでその方法が説明されています。 portsnap
と、ソース管理からツリー(またはパッケージ間の依存関係がこれに反するものの、その一部)をチェックアウトする2つの方法があります。 (PC-BSD/TrueOSユーザーはSubversionの代わりにgitを使用します。)
目的のポート/パッケージの個々のディレクトリに移動し、make fetch
を実行してソースアーカイブをフェッチし、make extract
を実行してコンテンツを抽出します。最終的には、ポートツリースケルトンが作成され、そのポートのファイルのみが存在します。
Handbookが§4.5.1.1で説明しているように、フェッチは/usr/ports/databases
などのより高いレベルで実行することもできます。