web-dev-qa-db-ja.com

'apt-get update' '操作を手動で実行しても安全ですか?

私はbuntuシステムの1つを最新の状態に保つをしようとしています。目的のターゲットはインターネットに接続されていませんです。インターネットにアクセスできる別のマシンから必要なすべての情報を取得しようとしています。

少し勉強した後、私はこれを達成する方法を見つけました。これが正しくて安全かどうか教えていただけますか?

これがapt-getプロセスについての私の理解です。

  1. まず、コマンドを実行します 'apt-get update':これは '/に記載されているすべてのリポジトリに接続しますetc/apt/sources.list '..そして、すべてのPackages.gzをダウンロードin.archive.ubuntu.com/ubuntu/dists/trusty)のようなファイル/main/binary-AMD64/Packages.gz)&同様の名前で保存 under '/ var/lib/apt/Lists'(上記のURLの場合、対応するファイルはin.archive.ubuntu.com_ubuntu_dists_trusty_main_binary-AMD64_Packages
  2. 次に、実行すると 'apt-get upgrade'(または) 'apt-get install pkg_name '、this ローカルにインストールされたパッケージリストをローカルメタデータでチェックダウンロードしてに保存'/var/lib/apt/lists '。そして、そこからダウンロードURLを取得し、ユーザーの確認を求めます必要なパッケージをダウンロードしてインストールする前に

これは、分離されたマシンを最新の状態に保つための私の計画です。

  1. ダウンロードするパッケージのリストを取得しますターゲットマシンの '/ etc/apt/sources.list'confファイルから。
  2. メタデータをダウンロードファイルPackages.gz 別のマシンで ..
  3. コピーこれらのファイルターゲットマシンの '/ var/lib/apt/lists'適切なファイル名で。
  4. 実行 'apt-get --print-uris upgrade'(または) ' apt-get --print-uris --yes install pkg_name 'を使用して、そのマシンに必要なすべてのパッケージのリストを取得します。
  5. これらのパッケージをダウンロードもう一度2番目のマシンで
  6. ターゲットマシンにコピーします
  7. 'dpkg -i pkg_list'を実行して、不足しているすべてのパッケージをインストールします。

このプロセスを使用して、目標を達成することができます。

私の質問は:これは正しくて信頼できますか?それともこれを達成するためのより簡単な方法はありますか?

ランガラジ

5
Rangaraj KS

これはうまくいくように聞こえますが、個人的には apt-offline を使用します。

マンページから:

apt-offlineは、Debianベースのシステムにオフラインパッケージ管理機能をもたらします。パッケージとその依存関係をダウンロードして、切断されたマシンで後でインストールする(または更新する必要がある)ために使用できます。パッケージは、接続されている別のマシンからダウンロードできます。

Debian Administration からの抜粋:

apt-offlineの使用:

  • 自宅のDebianボックスで署名を生成し、リムーバブルメディアで署名ファイルを運びます
  • 次に、USBスティック(apt-offline.txt署名ファイル付き)を、任意のLinuxバージョンまたはWindowsを実行している可能性のあるオフィスマシンに持っていきます。
  • そこで、apt-offlineを実行して署名ファイルを与えることができます。
  • apt-offlineは、すべてのデータを含むアーカイブファイルまたはフォルダーを生成します。そのデータはリムーバブルメディアにコピーできます。リムーバブルメディアは、接続されていない自宅のDebianボックスに接続してインストールできます。 (例: "apt-offline install /tmp/apt-offline.Zip")
9
Jan

以前は、自分のマシンに「インターネットなし」の更新プロセスがありました。これは私がそれをした方法です:

まず、apt-get --print-uris update > meta.listを使用して、システムの更新に必要なすべてのファイルのリストを作成しました。 wgetを使用すると、他のマシンでwget -x -i meta.listを実行して、USBスティックにメタデータをダウンロードできます。マシンに戻り、USBスティック(wget -xはディレクトリ構造を作成します)を使用して、システムがメタデータを更新できるようにしました(USBスティックはローカルソフトウェアリポジトリとして構成されていました)。パッケージをインストールするには、ダウンロードする必要のあるファイルのリスト(apt-get --print-uris upgrade > package.list)を生成し、別のマシンでもう一度wgetを使用してすべてのパッケージをUSBスティックにダウンロードし、スティックを自分のマシンに配置しました。その後、ローカルリポジトリからインストールできます。正確な詳細は覚えていませんが、基本的にはこれです。

ヘルパーツール(例: reprepro または AptMedium )を使用してプロセスを簡単にすることもできます。個人的には、この方法で問題はなく、非常に信頼性がありました。

2
mrub