Linux リポジトリのローカルミラーを作成する方法
search cancel

Linux リポジトリのローカルミラーを作成する方法

book

Article ID: 233873

calendar_today

Updated On:

Products

Endpoint Protection

Issue/Introduction

Symantec Endpoint Protection (SEP) Linux リポジトリのローカルミラーを作成したい。

Environment

SEP 14.3 RU2 以上の Linux エージェント

Cause

インターネットに接続されていないマシンで SEP Linux エージェントをインストールおよび更新する場合、SEP Linux リポジトリのローカルミラーが必要な場合があります。

Resolution

リポジトリのミラーリング

必要なものはインターネットに接続された Linux シェルのコマンドライン (bashなど) だけです。物理的な Linux マシンや VM (例:Linux 用の Windows Subsystem) 、または最も単純なケースでは Windows 用の Cygwin Terminal でもかまいません。以下の 2 行のシェルスクリプトは、14.3 RU5 リポジトリ全体を、現在の作業ディレクトリにミラーリングします。

repo=https://linux-repo.us.securitycloud.symantec.com/SAL/1.1
wget -q -x -N -nH -i $repo/latest.txt

注: このページの例では /SAL/1.1 が使用されており (Symantec Agent for Linux v1.1)、SEP 14.3 RU5 のリポジトリブランチです。異なるバージョンをミラーリングする場合は、必ずパスを変更してください。リポジトリブランチの名前は以下のとおりです。

SEP 14.3 RU1 から RU3:
/sep_linux/14.3RU1/ 
/sep_linux/14.3RU2/
/sep_linux/14.3RU3/

SEP 14.3 RU4:
/SAL/1.0/

SEP 14.3 RU5:
/SAL/1.1/

SEP 14.3 RU6:
/SAL/1.2/

SEP 14.3 RU8:
/SAL/1.3/


例えば rhel8 のみのリポジトリ構造をミラーリングするには:

repo=https://linux-repo.us.securitycloud.symantec.com/SAL/1.1/
wget -q -x -N -nH $(printf "$repo/%s\n" `curl -s $repo/latest.txt | grep rhel8`)

現在サポートされている Linux の識別子は以下の通りです。

amazonlinux
amazonlinux2
debian9
debian10
rhel6
rhel7
rhel8
rhel9
sles11
sles12
sles15
ubuntu14
ubuntu16
ubuntu18
ubuntu20
ubuntu22

このリポジトリミラーは、ファイルフォルダとして、またはローカルの ftp/web サーバー経由でコピー/共有することができます。Web サーバーのセットアップや cron を使ってミラーを最新に保つ例を含む、より詳細な手順については CentOS/RHEL 7 と 8 で Linux のローカルリポジトリを作成する をご確認ください。

重要: Ubuntu または Debian 上のクラウド管理システム用のインストールにローカルリポジトリを使用する予定の場合、次のコマンドを実行してメタデータを利用できるようにする必要があります。

find /path/to/mirror/* -type d -name sep_linux | xargs -i{} ln -sf "{}" "{}_cdm"

Cygwin を使用している場合、上記のリンクコマンドで適切な NTFS シンボリックリンクを作成するには、Windows の CYGWIN 環境変数に winsymlinks:nativestrict を設定する必要があります。

パッケージのみダウンロードする

パッケージのみを現在の作業ディレクトリにダウンロードし *.rpm パッケージのリポジトリ構造を複製する必要がない場合:

repo=https://linux-repo.us.securitycloud.symantec.com/SAL/1.1/
wget -q $(printf "$repo/%s\n" `curl -s $repo/latest.txt | grep rhel8.*rpm`)

Ubuntu18 などの *.deb パッケージの場合:

repo=https://linux-repo.us.securitycloud.symantec.com/SAL/1.1/
wget -q $(printf "$repo/%s\n" `curl -s $repo/latest.txt | grep ubuntu18.*deb`)

Linux エージェントのオフラインインストールパッケージの作成 に記載されているように、特定の Linux バージョン用のパッケージを解凍した LinuxInstaller スタブと手動で組み合わせてオフラインインストーラを作成することが可能です。

 

SEP LinuxInstaller コマンドとローカルリポジトリのミラーリングの併用

  • h (--local-repo) オプションを使用します。(SEP for Linux 14.3 RU1では、-h と -local-repo オプションが正しく動作しません。SEP Linuxは、-h と -local-repo引数を使用してもPublicリポジトリへの接続を継続します)

SEP Linux Agent をインストールし、ローカルフォルダまたはファイル共有にあるローカルリポジトリミラーを使用するように設定するには、以下の手順を行います。

./LinuxInstaller -- -h file:///path/to/SAL/1.1/

HTTPS の Web サーバで共有されたミラーを使用する場合:

./LinuxInstaller -- -h https://path/to/SAL/1.1/

注: 参照するリポジトリフォルダのバージョン (上記の例では /SAL/1.1/ の 14.3RU5) は、LinuxInstaller のバージョンと一致している必要があり、一致しない場合は "No packages found that need update" が返されます。例えば LinuxInstaller のバージョンが 14.3 RU2 の場合、リポジトリ URL に /sep_linux/14.3RU2/ を使用します。

Additional Information