UbuntuおよびDebianシステムで「apt-mirror」を使用してローカルリポジトリを設定する


今日のトラフィックとカジュアルなインターネット速度が、通常のインターネットクライアントであっても、10代のギガで瞬く間に測定される場合、LANにローカルリポジトリキャッシュを設定する目的は何でしょうか。

その理由の1つは、ローカルキャッシュからパッケージをプルする際のインターネット帯域幅と高速性を低下させることです。しかし、また、もう1つの大きな理由はプライバシーです。組織のクライアントがインターネットに制限されているが、そのLinuxボックスでは、ソフトウェアとセキュリティに関する定期的なシステム更新が必要であるか、新しいソフトウェアパッケージが必要であると想像してみてください。さらに詳しく説明すると、プライベートネットワーク上で実行され、制限されたネットワークセグメントに対してのみ秘密の機密情報を含み、提供するサーバーは、パブリックインターネットに公開されるべきではありません。

これは、LAN上にローカルリポジトリミラーを構築し、このジョブのエッジサーバーを委任し、キャッシュミラーからソフトウェアを引き出すように内部クライアントを構成する必要がある理由のほんの一部です。

Ubuntuは、ローカルキャッシュを公式のUbuntuリポジトリと同期するための apt-mirror パッケージを提供します。ミラーは、 HTTP または FTP サーバーを介して構成して共有できます。ローカルシステムクライアントを含むソフトウェアパッケージ。

完全なミラーキャッシュを実現するには、サーバーにローカルリポジトリ用に予約された少なくとも 120G の空き領域が必要です。

  1. Min 120G free space
  2. Proftpd server installed and configured in anonymous mode.

ステップ1:サーバーを構成する

1.最初に行うことは、Ubuntuアーカイブミラーページにアクセスしてを選択することにより、現在地に最も近く、最速のUbuntuミラーを特定することです。

国がより多くのミラーを提供している場合は、ミラーアドレスを特定し、 ping または traceroute の結果に基づいていくつかのテストを実行する必要があります。

2.次のステップは、ローカルミラーリポジトリを設定するために必要なソフトウェアをインストールすることです。 apt-mirror および proftpd パッケージをインストールし、proftpdをスタンドアロンシステムデーモンとして構成します。

$ sudo apt-get install apt-mirror proftpd-basic

3.次に、 apt-mirror サーバーを構成します。最寄りの場所を追加して、 /etc/apt/mirror.list ファイルを開いて編集します(ステップ1 )–デフォルトのミラーが十分に高速であるか、そこにいない場合はオプションです急いで–そしてパッケージをダウンロードするシステムパスを選択してください。デフォルトでは、 apt-mirror はローカルキャッシュに/var/pool/apt-mirror の場所を使用しますが、このチュートリアルでは、change system path and point setを使用します。 /opt/apt-mirror の場所へのbase_path ディレクティブ。

$ sudo nano /etc/apt/mirror.list

また、クライアントが使用している Ubuntu のバージョンに応じて、cleanディレクティブの前に他のソースリスト( Debian ソースを含む)のコメントを解除したり追加したりできます。必要に応じて、 12.04 からソースを追加できますが、ソースを追加するにはより多くの空き容量が必要になることに注意してください。

Debian ソースリストについては、DebianWikiまたはDebianソースリストジェネレータにアクセスしてください。

4.ここで行う必要があるのは、パスディレクトリを作成し、 apt-mirror コマンドを実行して、公式の Ubuntu リポジトリをローカルミラーと同期することだけです。

$ sudo mkdir -p /opt/apt-mirror
$ sudo apt-mirror

ご覧のとおり、 apt-mirror は、ダウンロードされたパッケージの総数とそのサイズを示すアーカイブのインデックス作成とダウンロードを続行します。ご想像のとおり、 110〜120 GB は、ダウンロードに時間がかかるほどの大きさです。

lsコマンドを実行して、ディレクトリの内容を表示できます。

最初のダウンロードが完了すると、それ以降のダウンロードは少なくなります。

5. apt-mirror がパッケージをダウンロードしている間に、 Proftpd サーバーを構成できます。最初に行う必要があるのは、次のコマンドを実行してproftpdの匿名構成ファイルを作成することです。

$ sudo nano /etc/proftpd/conf.d/anonymous.conf

次に、次のコンテンツを anonymous.conf ファイルに追加し、proftdサービスを再起動します。

<Anonymous ~ftp>
   User                    ftp
   Group                nogroup
   UserAlias         anonymous ftp
   RequireValidShell        off
#   MaxClients                   10
   <Directory *>
     <Limit WRITE>
       DenyAll
     </Limit>
   </Directory>
 </Anonymous>

6.次のステップは、コマンドを発行してバインドマウントを実行することにより、 apt-mirror パスをproftpdパスにリンクすることです。

$ sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/  /srv/ftp/

確認するには、パラメータやオプションを指定せずに mount コマンドを実行します。

$ mount

7.最後のステップは、システムの再起動ミラーキャッシュディレクトリもftpサーバーに自動的にマウントされた後、 Proftpd サーバーが自動的に起動することを確認することです。道。 proftpdを自動的に有効にするには、次のコマンドを実行します。

$ sudo update-rc.d proftpd enable

apt-mirror キャッシュをproftpdで自動的にマウントするには、 /etc/rc.local ファイルを開いて編集します。

$ sudo nano /etc/rc.local

exit 0 ディレクティブの前に次の行を追加します。また、マウントを試みる前に 5秒の遅延を使用します。

sleep 5
sudo mount --bind  /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/

Debian リポジトリからパッケージをプルする場合は、次のコマンドを実行し、上記の rc.local ファイルの適切な設定が有効になっていることを確認してください。

$ sudo mkdir /srv/ftp/debian
$ sudo mount --bind /opt/apt-mirror/mirror/ftp.us.debian.org/debian/ /srv/ftp/debian/

8.毎日の apt-mirror 同期の場合、毎日午前2時に実行するシステムスケジュールジョブを作成することもできます。 crontabコマンドを実行し、好みのエディターを選択してから、次の行構文を追加します。

$ sudo crontab –e

最後の行に次の行を追加します。

0  2  *  *  *  /usr/bin/apt-mirror >> /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu/apt-mirror.log

これで、毎日午前2時に、システムリポジトリキャッシュが Ubuntu の公式ミラーと同期され、ログファイルが作成されます。

ステップ2:クライアントを構成する

9.ローカルの Ubuntu クライアントを構成するには、クライアントコンピューターで /etc/apt/source.list を編集して、 apt-mirror <のIPアドレスまたはホスト名を指すようにします。/b>サーバー– httpプロトコルをftpに置き換えてから、システムを更新します。

deb ftp://192.168.1.13/ubuntu trusty universe
deb ftp://192.168.1.13/ubuntu trusty main restricted
deb ftp://192.168.1.13/ubuntu trusty-updates main restricted
## Ad so on….

10.リポジトリを表示するには、実際にブラウザを開いて、FTPプロトコルを使用してドメイン名のサーバーIPアドレスを指定します。

同じシステムが Debian クライアントとサーバーにも適用されます。必要な変更は Debianミラーソースリストだけです。

また、新しい Ubuntu または Debian システムをインストールする場合は、インストーラーが使用するリポジトリーを要求するときに、ftpプロトコルを使用してローカルミラーを手動で提供します。

独自のローカルミラーリポジトリを持つことの素晴らしい点は、常に最新の状態であり、ローカルクライアントがアップデートやソフトウェアをインストールするためにインターネットに接続する必要がないことです。

全著作権所有。 © Linux-Console.net • 2019-2022