無料ではなくデフォルトのリポジトリを含む Debian ローカルリポジトリを作成します。

無料ではなくデフォルトのリポジトリを含む Debian ローカルリポジトリを作成します。

サブリポジトリを持つローカルリポジトリを作成し、main, non-freeそのためにビルドする方法は?key.gpg

フォルダを準備しました。/srv/dists/buster

ベストアンサー1

確認してくださいこれはStack Exchangeの投稿です。該当すると思われる場合は、この質問を重複した質問として表示できます。そうでない場合は、次の答えに従うことができます。

設定debmirror

debmirrorこのツール、cronjob、およびWebサーバーを使用すると、これは非常に簡単になります。

参考にしますこの第三者 Wikiこの答えのために。ぜひご覧ください。マンページそして、この回答に慣れていないツールに関する他のマンページもあります。

  1. インストールdebmirrorしてくださいdebian-keyring

    apt install debmirror debian-keyring
    
  2. イメージ用のディレクトリを作成します。 (あなたの場合、/srv/dists/buster

  3. 同期スクリプトを実行してミラーを維持するには、ミラーユーザーを作成します。

    groupadd mirror
    useradd -d /srv/dists/buster -c "Debmirror" -g mirror mirror
    chown -R mirror.mirror /srv/dists/buster
    
  4. GPGキーを設定します。問題が発生した場合は、公式のキーリングが更新され、新しいキーがローカルで欠落しているためです。これらの問題が発生した場合は、キーを更新するために必要な措置を講じてください。GPGキーを変更する方法の詳細については、こちらのガイドをご覧ください。

    # Become the mirror user
    su - mirror
    # Import the keys
    gpg --no-default-keyring --keyring trustedkeys.gpg --import /usr/share/keyrings/debian-archive-keyring.gpg
    # Periodically you will update keys, just like this: (Hint: its the same as before.)
    gpg --no-default-keyring --keyring trustedkeys.gpg --import /usr/share/keyrings/debian-archive-keyring.gpg
    #Verify that you have the right keyrings for your system. (Hint: they should mention Buster. Information on the Debian keyrings can be found here: https://ftp-master.debian.org/keys.html)
    gpg --list-keys --keyring trustedkeys.gpg
    

紛失した場合は、次のように~/.gnupg/trustedkeys.gpgコピーできます。

    cp /usr/share/keyrings/debian-archive-keyring.gpg ~/.gnupg/trustedkeys.gpg
  1. ミラーを同期するようにcronjobを設定します。

    #!/bin/bash
    
    # sourcehost: choose a mirror in your proximity!
    HOST=ftp.us.debian.org;
    
    # destination directory
    DEST=/srv/dists/buster/localmirror
    
    # Debian version(s) to mirror
    DIST=buster
    
    # architecture, use what is applicable here.
    ARCH=amd64
    
    # log timestamp
    logger -t mirror[$$] updating Debian mirror
    
    su mirror -c \
    "debmirror ${DEST} \
     --nosource \
     --host=${HOST} \
     --root=/localmirror \
     --dist=${DIST} \
     --section=main,non-free \
     --i18n \
     --arch=${ARCH} \
     --passive --cleanup \
     $VERBOSE"
    
    logger -t mirror[$$] finished updating Debian mirror
    

Cronjobファイルは次のようにする必要があります。

    #Edit /etc/cron.d/local-debmirror:
    # debmirror
    38 04 * * 1-5 root /root/scripts/mirror
  1. Webサーバーを介して画像を使用できるようにします。必要なものや最も効果的なものをお知らせします。私はNginxとFlaskが好きです。私はPythonにウェブサイトを始めるためのオネライナーがあることを知っています。しかし、Apacheに慣れている場合や、すでにWebサーバーインフラストラクチャや戦略がある場合はそれを使用してください。高可用性、セキュリティ、またはホームラップ/シンプルなネットワーキングのための迅速な機能が必要な場合は、要件に最適なソリューションを使用してください。私がリンクしたWikiには利用可能なソリューションがあります。

  2. ミラーに追加してくださいsources.list。 Debianクライアントサーバーがミラーからインポートするには、/etc/apt/sources.listローカルミラーを参照するようにDebianクライアントファイルを編集する必要があります。 update aptを実行することを忘れないでくださいapt update

    deb http://debmirror.example.com/localmirror/ buster main contrib non-free
    

参照しているディレクトリに注意してください。同期されるイメージのルートディレクトリである必要があります。あなたの状況に応じて、/srv/dists/buster/localmirrorあなたに最適なものは何でもあります。一貫性が必要です。

要約すると

これを行う前に、私が提供する各リンクを注意深く読んでください。これを覚えてくださいできるDebian サーバーがイメージを同期し、Web サーバーを実行してコンテンツを提供し、自己更新することは便利ですが、このソリューションは他の Debian インスタンスが更新できるローカルイメージを実行するのに適しています。

確認してくださいDebian 公式 Wikiミラーリングに関する情報です。

質問がある場合、または私の記事にエラーがある場合は、コメントを残してください。答えを修正します。

頑張ってください!

おすすめ記事