これは私のシナリオです。
インターネットに接続せずにプライベートネットワーク上の組み込みLinuxデバイスにiptablesをインストールしたいと思います。私のWindows PCをネットワークとSSH / FTPに接続できます。 Linuxデバイスをインターネット接続可能なネットワークに移動できないことに注意してください。
このDebianベースの組み込みLinuxデバイスはiptablesを実行できるはずですが、インストールは簡単ではありませんでした。 FTPを介してdpkg用の.debファイルを取得できますが、依存関係チェーンの問題で問題が発生しています。
もしそうなら、私のデバイスはインターネットにアクセスできず、デバイスにアクセスする唯一の方法はSSH / FTP経由です。 iptablesをインストールする最良の方法は何ですか?私が考えることができるものは次のとおりです。
- 必要なすべてのパッケージを圧縮フォルダにダウンロードできる「apt」機能の一種を使用します。その後、FTPを介してすべての依存関係を転送します。そんなことが存在するかわかりません。
- すべての依存関係が静的に関連付けられた iptables バージョンを探します。 FTP経由でLinuxデバイスに転送します。
- デバイスのソースからiptablesをコンパイルします。
注:このデバイスにはnftablesユーティリティもありません。私はそれがどんな種類のローカルファイアウォールデーモンも持っていると信じていません。
答え1
この試み:
PACKAGES="iptables"; apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances --no-pre-depends ${PACKAGES} | grep "^\w")
特にグラフィックプログラムの場合、依存関係が非常に大きくなる可能性があることに注意してください。答えはここにあります:https://stackoverflow.com/questions/13756800/how-to-download-all-dependent-and-packages-to-directory
PS変数PACKAGESには、次のようにスペースで区切られた複数のパッケージを含めることができます。
PACKAGES="package1 package2 package3 package4"