インターネットなしでソフトウェアまたはパッケージをインストールする方法(オフライン)


回答:


129

Keryxをご覧ください。オフラインリポジトリマネージャーです。

どのように機能しますか?フラッシュドライブに更新プログラムと新しいプログラム(依存関係あり)をダウンロードできます。

そのインターフェイスはシナプスに似ていますが、ペンドライブから動作します(インストールの必要はありません)。残念ながら、GUIにはwxwidgetが必要です。これはUbuntuにプリインストールされていません(クロスプラットフォームで、ここからインストールでき、Ubuntuリポジトリはここからインストールできます)。Ubuntuシステムにのみソフトウェアをインストールできますが、Linux、Windows、またはOS Xのアップデートまたは新しいパッケージをダウンロードできます。

ここでチュートリアルを見つけることができます。

別の詳細なステップバイステップのチュートリアルは、この回答にあります。

Launchpadはダウンロード可能なファイルもホストします

スクリーンショット:

スクリーンショット


12
keryxは現在開発中ではありません。Ubuntuの新しいバージョンでこれを試している場合は、ポータブルバージョンを使用して依存関係のトラブルから身を守ってください。
アレックスR

1
私は今でもkeryx問題なく使用していますが、さらなる開発と改善が明らかに必要です。
カーネディル


他のオフラインコンピューターにgcc、g ++がない場合はどうなりますか?新しくインストールされたubuntuです。wxwidgetsをインストールするにはどうすればよいですか?wxwidgetsがなければ、モジュールが見つからないという不満があります...
オファーは拒否できない

3
私はちょうど新しいバージョンのKeryx(0.92.5)をリリースしました。コンパイルされたバージョンは、wxWidgetsなどの依存関係を保持し、Windowsで問題なく実行できるようにする必要があります。
マイケルクレンショー

57

クイックハック

簡単なハックは、インストール用にダウンロードしたすべてのパッケージを彼のマシンにコピーすることです(詳細な手順はこちら)。.debファイルはに保存され/var/cache/apt/archives、他のコンピューターでSynapticを起動しFile -> Add Package Downloaded、ファイルを入れて開いたフォルダーを選択して検索し、すべてを受け入れます(またはコマンドを使用してターミナルからインストールしますsudo dpkg -i DEB_PACKAGE_NAME)。

注:
これは、パッケージマネージャーがインストール直後にパッケージを削除するように設定されていないことを前提としています。また、同じバージョンのUbuntu (10.10、12.04など)とアーキテクチャバージョン(32bまたは64b)を実行していることを前提としています。


DVDリポジトリ

最新のバグ修正とセキュリティパッチを入手したい場合は、このチュートリアルをご覧ください。独自のDVDリポジトリの作成について説明しています。


2
実行できない場合、sudo apt-get updateこれはあまりうまくいきませんが、新しいシステムをセットアップするときの時間の節約になります:)
GM-Script-Writer-62850

2台のコンピューターを13.04から13.10にアップグレードしました。最初のものは〜1.8Gbをダウンロード/var/cache/apt/archivesする必要があり、2番目のコンテンツをコピーすると〜250Mbしかダウンロードされませんでした。それでも、インストールを実行するには接続が必要です。
マキシムR.

apt-get updateコピーする場合は必要ありません/var/lib/apt/lists-このディレクトリには、によってダウンロードされたリポジトリ情報が含まれていますapt-get update
イグニス14年

私は私のコピー.deb私にオーバーusbから/var/cache/apt/archives。他のコンピューターで、USBドライブを開いてダブルクリックし.deb、Ubuntu GUIを起動しましたSoftware Updater。簡単です。
Jacksonkr

@ jr0cket:このフォルダ内のパッケージ回避するためのいずれかの方法があり、すでに?私はこれを求めている理由はDebianがインストールされている場合(作り付け)が来るが、【選択の理由は4.8であるGB、4 GBである私のUSBドライブのためにあまりにも大きいです。/var/cache/apt/archives
ジャスティン

42

USBリポジトリ

適切なサイズのUSBスティックがある場合-4〜8Gb(または外付けハードドライブ)を想定して、Ubuntuリポジトリのカスタムコピーをセットアップし、help.ubuntuのAptGet / Offline / Repository で説明されているようにローカルリポジトリとして構成できます。.com。

実際のパッケージファイル(.debファイル)を取得するには、を使用することをお勧めしapt-mirrorます。

このapt-mirrorパッケージは、完全なリポジトリの30Gbよりも小さいカスタムミラーの作成に役立ちます。パッケージをインストールします。

sudo apt-get install apt-mirror

構成ファイルを編集します

gksudo gedit /etc/apt-mirror/mirror.list

またはUbuntu 14.04以降

gksudo gedit /etc/apt/mirror.list

必要なリポジトリセクションのみを含めます。以下は、4つのセクションすべて(メイン、制限、ユニバース、マルチバース)からバイナリの.debファイルをコピーする簡単な例と、最新のバグ修正です。

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path    /tmp/ubuntumirror
#

## Repositories to copy from - 

## use a mirror so you don't overload the main server!!!

# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse


## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu

ソースなしで、4つのセクションすべてに約15Gbのスペースが必要になると推測されます。

すべての.debファイルのパスを設定しました/tmp。ハードドライブがいっぱいにならないように十分なスペースを確保してください(ハードドライブがいっぱいになり、コンピューターがフリーズした場合/tmpは、再起動でクリアする必要があります)。

メインファイルだけが必要な場合は、制限されたユニバースとマルチバースの名前を構成ファイルから削除します。

別のアーキテクチャを使用している場合(64ビットを持っているが、友人は32ビットを持っている)、mirror.list構成ファイルの先頭に次を追加します。

set defaultarch i386

必要なapt-mirror設定が完了apt-mirrorしたら、リポジトリを取得するのに数時間または数日かかるので、実行して何か楽しいことや人生を変えてください(接続と使用しているUbuntuミラーによって異なります)。

.debファイルを入手したら、ファイルをUSBメモリスティック(または外部ハードドライブ)にコピーし、前述の記事に従ってローカルリポジトリをセットアップします。

それをテストして、友達に持って行く前に!


apt-mirrorパッケージの詳細は次のとおりです
jr0cket

sudo apt-get install apt-mirrorUbuntu 16.10(Yakkety Yak)、デスクトップエディション/ Rufus / USBスティック/トライアルモードで直接試してみると、「E: Unable to locate package apt-mirror」が表示されました。が確認したインターネットへの接続がありましたping
ピーターモーテンセン

実行sudo apt-get updateしても修正されませんでした。
ピーターモーテンセン

32

apt-getを「--print-uris」オプションとともに使用して、これを実行します。また、「-qq」を追加して、静かにします。

sedを使用して、一部のファイル名(3%2aなど)に追加された余分な文字を削除し、ファイルのURL、ファイル名、md5sumを取得します。wgetを使用してファイルをダウンロードします。md5sumを使用して、ファイルが適切にダウンロードされているかどうかを確認します。

これを使用して、LinuxまたはMac OSのシェルスクリプトを作成できます(コマンドの「.cmd」を.shに置き換え、「chmod a + x(ファイル名)を実行してスクリプトを実行する権限を追加します)」またはWindowsコマンドバッチファイル、およびMD5Sumファイルを使用して、ファイルが正しくダウンロードされていることを確認します。

コマンド

スクリプトを作成:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

例:

sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd

md5sumファイルを作成します。

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

例:

sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

そのオペレーティングシステムを使用してファイルをダウンロードする場合は、Windows用のmd5sumが必要です。


リポジトリリストをダウンロードするスクリプトを作成します。

sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

MD5サムの確認

これらをスクリプトの末尾に追加して、md5sumを確認できます。

Linux:

md5sum --quiet -c md5sum.txt

Windows(古いmd5sumを使用し、-quietをサポートしません):

md5sum -c md5sum.txt

スクリプトに自動的に追加するには:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

リストファイルのインストール(更新コマンド)

これらのコマンドをターゲットコンピューターに対して実行します。

bunzip2を使用して、リポジトリリストファイルを抽出する必要があります。

bunzip2 *.bz2

次に、リストフォルダーにコピーします(現在のフォルダーにはリストファイルのみが含まれます)。

sudo cp * /var/lib/apt/lists/

上記の組み合わせ(現在のフォルダーには他のファイルが含まれる場合があります):

for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

高速ダウンロード

ファイルのダウンロードを高速にしたい場合は、Axelを使用してみてください。

交換してくださいwget -c ... -O ...axel ... -o ...

フォルダー階層(Windowsを使用したファイルのダウンロード)

通常、次のようなフォルダーを作成します。

  • apt-get /
    • 置き場/
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • 更新/
      • update.cmd
      • md5sum.txt
    • インストール/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

その後、変更wgetに上記の行で..\\bin\\wget.exemd5sum..\\bin\\md5sum.exe、等

これにより、*。debファイルとリストファイルが異なるフォルダーに分離されます。

システムを更新する

  1. Ubuntuを使用するターゲットコンピューターで起動する
  2. 更新用のスクリプトを作成する
  3. インターネットに接続しているコンピューターから起動する
  4. update.sh(LinuxまたはMac OSの場合)またはupdate.cmd(Windows)を実行します
  5. ターゲットコンピューターに戻る
  6. リストファイルをインストールする
  7. upgrade / dist-upgrade用のスクリプトを作成します(md5sumコマンドを追加して終了します)
  8. インターネットに接続しているコンピューターに戻る
  9. upgrade.sh/dist-upgrade.sh(LinuxまたはMac OS)またはupgrade.cmd / dist-upgrade.cmd(Windows)を実行します
  10. ターゲットコンピューターに戻る
  11. * .debファイルをキャッシュにコピーします。 sudo cp *.deb /var/cache/apt/archives/
  12. 実行:sudo apt-get upgradeまたはsudo apt-get dist-upgrade

Windows用の実行可能ファイルをダウンロードする

Wget for Windows:http : //gnuwin32.sourceforge.net/packages/wget.htm

Windowsのmd5sum:http : //gnuwin32.sourceforge.net/packages/coreutils.htmまたはhttp://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe

MinGWのものも使用できますが、これは私が使用しているものです。必要なのは、wget.exe、md5sum.exe、および必要な共有ライブラリのみです。「フォルダ階層」セクションを確認してください。

ノート

  • これらのコマンドを1か月も使用していないため、上記のコマンドがすべて機能するかどうかはわかりません。特に更新コマンドは、今日はその一部をテストしていません。
  • コマンドの結果を簡単に確認するには、Windowsを使用している場合、スクリプトの最後に「一時停止」行を追加します。
  • これらのコマンドを頻繁に使用する場合は、パッケージを更新、アップグレード、インストールするためのシェルスクリプトを作成することをお勧めします。

3
このための簡単なGUIを作成できますか?)
タキオン

これは非常に奇妙なようだのWindowsを使用して...
アレックスR

1
また、Linuxにも適用できます(md5sumとwgetをインストールする必要がないため、実際には優れています)。Windowsの部分は、インターネットに接続されたLinuxコンピューターを持っていない人のためのものであるため、インターネットカフェやWindowsのみを備えた友人のコンピューターで使用できます。
アーネルA.ボルハ

-qqオプションは、からのすべての出力を抑制するように見えますapt-get update。このオプションは本当に必要ないでしょう。
ルスラン

29

まず、インターネットに接続したPCを入手する必要があります。ここで、必要な.debファイルをダウンロードできます。すべてのファイルをダウンロードしたら、ダウンロードしたソフトウェアをオフラインPCにインストールするために使用できるCD / DVD ROMまたはISOファイルを作成できます。

クリーンインストールまたはVMで開始します。
sudo apt-get install aptoncd

必要なパッケージを1台のPCにインストールします
sudo apt-get install gbrainy

aptoncdを実行
ここに画像の説明を入力してください
します[作成]を
ここに画像の説明を入力してください
クリックします[ 書き込み]をクリックしてオプションを設定し、[ 書き込み]
ここに画像の説明を入力してください
または[保存]を適用します
ここに画像の説明を入力してください

aptoncdは現在のapt-cacheにあるものだけをバックアップすることに注意してください。
これが、クリーンなVM /新規インストールから始めて、このすべてを一度に実行した理由です。


すっごく、VMを作成して必要なアプリをすべてインストールしてから、このプログラムを実行し、CD / DVDをオフラインPCに持っていくと言っていますか。すべてのアプリがインストールされますか?
アレックス

2
同じベースシステムメディアを使用している限り、はい。オフィスを展開していて、何かを追加するためのすばやく簡単な方法が必要な場合、これは非常に役立ちます。create-metaパッケージを使用する場合、はい
-RobotHumans

イメージから復元するにはhalをインストールする必要がありますが、非推奨であり、私が理解している限りサポートされていません。
Flashrunner


22

オフラインリポジトリ

オフラインリポジトリの作成方法については、ここで説明します。適切なファイルをarchive.ubuntu.comからダウンロードするだけです。または、を使用することもできますapt-medium

編集:*.debファイルのローカルrchiveに基づく別のアプローチは、さまざまなブログエントリに記載されています(こちらこちらをご覧ください)。サラス・チャンドラは次のように要約します:

  1. ディレクトリにアクセスできるようにする(少なくともルートで)

    sudo mkdir /var/my-local-repo
    
  2. すべてのdebファイルをこのディレクトリにコピーします。

  3. ディレクトリを

    sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    

    または

    sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. ローカルリポジトリをソースに追加する

    echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
    sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
    sudo apt-get update
    

20

ステップ1:ファイル内のダウンロードURLを取得します。

次のコマンドを実行して、パッケージ名を必要な名前に置き換え、スペースで区切ります。

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

ステップ2:このファイル(apturls)を高速インターネットアクセスが可能なマシンにコピーし、次のコマンドを実行してパッケージをダウンロードします。

wget -i path-to-apturls-file 

ステップ3:ダウンロードしたパッケージをマシンに取得し、以下を使用してインストールします。

cd path-to-the-downloaded-packages-directory

sudo dpkg -i *.deb

できた!


--print-urisすでにシステムにインストールされていても依存関係を印刷?
ユリック

19

Cubeを使用できます。これは、インターネットに接続された別のコンピューターにパッケージをダウンロードし、元のLinuxコンピューターにオフラインでインストールし直すことができるポータブルパッケージマネージャーです。

アプリのダウンロード(Windows)

アプリのインストール(Linux)

CubeのWebサイトからダウンロードできます。


.debまたは.exeですか?

2
.debファイルはありません。スタンドアロンで移植性があり、インストールせずに実行できるためです(cube-normalファイルを実行するだけです)。Cube.exeは、Windowsユーザー用にも含まれています。
カミクリ

1
より多くの人々がこれについて知る必要があります。わたしは、あなたを愛しています。
howderek

win 7 Ultimate 32ビットでこのアプリケーションを実行中にエラーが発生します。画像:i.stack.imgur.com/XW3wt.jpg エラーメッセージ:問題の署名:問題のイベント名:CLR20r3問題の署名01:cube.exe問題の署名02:1.0.9.3問題の署名03:54bd0258問題の署名04:glib-sharp問題の署名05:2.12.0.0問題の署名06:517edc4c問題の署名07:1b4問題の署名08:17問題の署名09:System.DllNotFoundException OSバージョン:6.1.7600.2.0.0.256.1ロケールID:16393
Sandeep

こんにちは、Cubeをご利用いただきありがとうございます。残念ながら、使用しているキューブのバージョンは維持されなくなりました。新しく安定したCube Serverであるlaunchpad.net/cube-serverを使用してください。上記の更新された回答を参照してください。
カミクリ

17

シナプスでは、インストールするパッケージを選択できます。最初のメニューの下に、別のマシンに移動してそこで実行できるスクリプトを生成するオプションがあります。このスクリプトでは、コンピュータ上で実行するすべてのあなたは、あなたが望んでいたことを指定したパッケージ(およびその依存関係)(すなわち、「ダウンロード」)「のwget」になるんをインターネットアクセスを持っています。

実行すると、切断されたコンピューターに必要なすべてのパッケージファイルが用意されます。それらをCD / USBスティックに入れてインストールしますsudo dpkg -i *.deb


その素晴らしいトリックですが、プロセスを行うには2台のコンピュータ?うーん
Suhaib

@Suhaib-「2台のコンピューター」なしでどのような方法で必要なパッケージをダウンロードするかわかりません...何らかの形でオフラインマシンに送信するパッケージを取得するには「オンライン」マシンが必要です(たとえそれが別のホストOS上で実行されているVMまたはDockerコンテナ、またはいくつかの外部メディアへの手動curl/ wgetコピーの束...
Cinderhaze

15

apt-offlineまたはを使用できますapt-offline-gui
前提条件:インターネットに接続している友人のシステム。apt-offlineは両方のシステムにインストールされています。

オフラインインストールは、3つの簡単な手順で実現されます。

ステップ1
自宅
apt-offline set /tmp/apt-offline.sig
の切断されたDebianボックスに署名ファイルを生成する上記のコマンドは、データベースの更新に関してaptから必要なすべての情報を生成します。

手順2
以前に生成された署名ファイルに基づいてデータをダウンロードする
apt-offline get C:\apt-offline.sig --threads 5
上記のコマンドは、署名ファイルに記載されているデータをダウンロードします。(複数のaptリポジトリからの)ダウンロードを高速化するために、この例では5つのダウンロードスレッドを生成します。
完了したら、データ(--bundleオプションを使用した場合はアーカイブファイル)をリムーバブルメディアにコピーし、オフラインホストにコピーして戻すことができます。

ステップ3
ホームのDebianマシンに戻ったら、リムーバブルメディアからapt-offlineにデータをフィードします。
apt-offline install /media/USB/apt-offline.zip
これにより、切断されたマシンのAPTデータベースがシームレスに更新されます。

Apt-offlineは、Windowsシステムでも使用できます。私の意見でapt-offlineは、オフラインインストールに最適なオプションです。

ソース


2つの観察:最初に、既にインストールされたパッケージまたはすぐにインストールできるパッケージの署名を生成すると、.sigファイルが空であるという意味で「失敗」します。それは少し戸惑いますが、明らかに普通です。第二に、aptとapt-offlineは、/ var / lib / apt / listsが適切にシードされている場合にのみ正しく機能します。ターゲットマシンとホストマシンのアーキテクチャが異なる場合、これはかなりの作業です。
Urhixidur

ソースPCとターゲットPCの両方に同じバージョンのUbuntuが必要ですか?
Tulainsコルドバ

オフラインマシンにapt-offlineをインストールする方法は?
サミŞimşekli

10

上にリストされたいくつかの良い、効果的な答えがあります。ただし、これは私が個人的に使用するメカニズムであるapt-ftparchiveです。将来また必要になった場合に備えて、ここで文書化しています。おそらくあなたにとって役に立つかもしれません。

アーカイブスナップショットの作成

  • ターゲット環境によく似たUbuntuのインスタンスを作成します
    • たとえば、AmazonのUbuntu 12.04 64ビットインスタンス
  • クリーンなパッケージ環境から始めます
    • sudo apt-get clean
  • パッケージリストを更新する
    • sudo apt-get update
  • 利用可能なすべてのパッケージアップデートをダウンロードする
    • sudo apt-get dist-upgrade --download-only
  • 関連するすべてのパッケージと依存関係をダウンロードする
    • sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • apt-ftparchiveユーティリティをインストールする
    • sudo apt-get install apt-utils
  • パッケージマニフェストを作成する
    • (cd /var/cache/apt/archives/ && sudo apt-ftparchive packages . ) | sudo tee /var/cache/apt/archives/Packages
  • パッケージのアーカイブを作成します
    • sudo tar cvf snapshot.tar -C /var/cache/apt archives/

オフラインターゲットシステムでのアーカイブスナップショットの使用

  • 何らかのメカニズムを使用して、ソースからターゲットシステムにsnapshot.tarを取得する必要があります。おそらくUSBスティックなどにあります。
  • ターゲットシステム(この場合、/ home / ubuntu)でアーカイブを抽出します。
    • tar xvf snapshot.tar
  • ローカルのオフラインソースを/etc/apt/sources.listに追加します
    • echo "deb file:/home/ubuntu/archives /" | sudo tee -a /etc/apt/sources.list
  • パッケージリストを更新する
    • sudo apt-get update
  • 必要に応じてパッケージをインストールします
    • sudo apt-get install byobu run-one bikeshed dotdee powernap

4

オフラインインストールには、パッケージが必要です。Debianシステムを使用している場合

  • .debファイル拡張子を持つパッケージファイルを取得し、dpkg -i package_nameそれを使用してインストールします
  • .tar.gzまたは.tar.bz2ファイル拡張子を持つソースtarballを取得してから、次を使用してそれらを抽出してインストールします。

    tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
    make
    sudo make install
    make clean        (optional, and may prevent uninstallation)
    

依存関係に問題がある可能性があります。オフラインインストールを成功させるには、まずこれらすべてをインストールする必要があります。


2

はい。DVD isoをダウンロードしてDVDに書き込み、DVDからソフトウェアをインストールできます。こちらをご覧ください。CDやDVDは、オンラインアーカイブと同じ方法でパッケージマネージャーのソースとして提供できます。


2

オフラインパッケージをインストールする前に最初にできることは、必要なリポジトリを更新することです。必ずメインリポジトリを更新してください(無料で公式にサポートされているソフトウェアの場合)。

インストールしようとしているアプリケーションは、Universe(無料だが公式サポートなし)、Restricted(非無料、公式サポートなし)、またはMultiverse(非無料、公式サポートなし)リポジトリなどの他のリポジトリにある可能性があります。したがって、これらの1つ以上も必要になる場合があります。

したがって、プロセスの最初のステップは、更新されたオフラインリポジトリを構築することです。次に、「ダウンロードする」リストを生成してダウンロードし、最後にインストールを行います。方法は次のとおりです。

  1. URLを入力します。http://archive.ubuntu.com/ubuntu/dists/ suiteCodenameどこsuiteCodenameが適切にsubstitudedしなければならないと言う正確な Ubuntuの12.04(精密センザンコウ)のための[またはutopicのUbuntu 14.10(Utopicユニコーン)について]あなたがしたいように、これで、http://archive.ubuntu.com/ubuntu/dists/precise/、またはお持ちのスイートに固有のその他のものにアクセスできます。

  2. ファイルReleaseRelease.gpg、およびアーキテクチャ用のContents-????。gzファイル(つまり、アーキテクチャがi386であると仮定すると、Contents-i386.gz)をダウンロードします。あなたの名にちなんで名付けられたディレクトリ/フォルダにこれらの3つのファイルを保存しますsuiteCodename正確な精密センザンコウのため)。

  3. 次に、必要なリポジトリ(Main、Universe、Restricted、Multiverseの各)ごとに次の作業を行う必要があります。

    a。ターゲットリポジトリディレクトリに移動します。メイン、そしてアーキテクチャーディレクトリへ。binary-i386で、http://archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary- ???? /に移動します。

    b。Packages.bz2、Packages.gz、Releaseのコンテンツをダウンロードし、repositoryNameなどの名前のディレクトリに保存します。mainおよびこのディレクトリを以前に作成したsuiteCodenameディレクトリに配置します。

    c。繰り返すa。およびb。必要なリポジトリごとに。

  4. 最後に、次のような構造が必要です。

     precise
     ├── Contents-i386.gz
     ├── main
     │   └── binary-i386
     │       ├── Packages.bz2
     │       ├── Packages.gz
     │       └── Release.txt
     ├── Release.gpg
     ├── Release.txt
     └── universe
         └── binary-i386
             ├── Packages.bz2
             ├── Packages.gz
             └── Release.txt
    

    (あなたのsuiteCodename =正確、アーキテクチャはi386であり、メインとユニバースのリポジトリが必要だと仮定します)

  5. 次に、更新されたリポジトリをダウンロードしたら、ダウンロードしたファイルを適切な構造(上記を参照)に配置して、対象のオフラインコンピューターのディレクトリに配置します。ユーザーのホーム()またはその他の場所にあるofflineRepository / dists / precisepreciseという名前のフォルダーにディレクトリ構造を保存します(端末でsudo previlegesを使用するか、Nautilusファイルマネージャーを使用して開始します;コピーした構造に対する適切な権限があることも確認してください) 。これで、オフラインリポジトリ情報を使用できるようになります。~/offlineRepository/dists/precise/home/offlineRepository/dists/precisegksu nautilus

  6. ソースリストにローカルリポジトリを追加します。Ubuntuのソフトウェアセンター、に行く>ソフトウェアのソース... - - - >その他のソフトウェア>追加...編集:その後、APTラインの分野で、追加deb file:///home/offlineRepository precise main universeをクリックしてソースの追加を。必ずディレクトリ/ファイル構造とスイートに関する行を変更してください。次に、パッケージをリロードするかsudo apt-get update、ターミナルで実行します。 snap1

  7. 更新された(おそらく新しく追加されたリポジトリも)ようになったので、パッケージと依存関係のURLのリストをダンプできます。

    以前のaskUbuntuの投稿の1つから次のコード行を借ります。

    sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    例えば。Synaptic Package Managerをインストールするには:

    sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    (同様の方法で更新リストを生成することもできます。)

    生成されたリストを使用して、パッケージと依存関係全体をオンラインコンピューターにダウンロードできます。ダウンロードするスクリプトを作成するか、一部のダウンロードマネージャーでリストをバッチダウンロードに使用します。(生成されたテキストファイルはUnix / Linuxの行末記号を使用しており、Windowsに変更することもできます。)これは、Synaptic Package ManagerがUbuntuのデフォルトアプリケーションであった場合の簡単な方法でした。

  8. 最後に、ターゲットシステムで、dpkg他の方法でパッケージをインストールできます。

セキュリティ更新プログラムを含む更新されたパッケージデータベースの取得

上記の説明に加えて、次の構造からアイデアが得られます。

/opt/offlineRepoList/
└── dists
    ├── precise
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release.txt
    │   ├── Release.gpg
    │   ├── Release.txt
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release.txt
    ├── precise-security
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release
    │   ├── Release
    │   ├── Release.gpg
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release
    └── precise-updates
        ├── Contents-i386.gz
        ├── main
        │   └── binary-i386
        │       ├── Packages.bz2
        │       ├── Packages.gz
        │       └── Release
        ├── Release
        ├── Release.gpg
        └── universe
            └── binary-i386
                ├── Packages.bz2
                ├── Packages.gz
                └── Release

2

ここで回答を参照した後:インターネットなしでソフトウェアまたはパッケージをインストールする方法(オフライン)、Arnel A. Borjaによるこのコードが最も有用であることがわかりました。

sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh


とにかく、完全な初心者のためのいくつかの指示があります。それらが役に立つことを願っています。

Ubuntu 15.10以降の新しいユーザー向けの完全なダウンロード手順:

  1. ターミナルを開きます(ショートカットCTRL + ALT + T)
  2. 次のコマンドを使用して、パッケージをダウンロードするフォルダーに移動します。

    cd FOLDERNAME
    (例:cd Desktop
    ヒント:また、使用することができますdirフォルダを一覧表示するコマンドを。

  3. 手順の上のコードで、PACKAGEをダウンロードするパッケージに置き換えます。
  4. 変更したコード(ショートカットCTRL + SHIFT + V)をコピーして貼り付け、Enterを押します

    Synaptic Package Manager
    sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

    をダウンロードするサンプルコード:VLCプレーヤーをダウンロードするサンプルコード:
    sudo apt-get install vlc --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

  5. 求められたら、rootパスワードを入力してEnterを押します。(パスワードの文字が表示されなくてもてないでください。これは単なるセキュリティ対策です。)
  6. 「install.sh」ファイルが生成されます。必要なすべての依存関係は、スクリプト内に含まれています。
  7. 次のコマンドでスクリプトを実行する必要があります。
    sh install.sh
  8. ファイルがダウンロードされるのを待ちます
  9. その後、このコマンドを使用して、フォルダー内のすべてのパッケージをインストールできます。

    sudo dpkg -i *.deb

    または、Synapticsなどのプログラムを使用してパッケージをインストールすることもできます。(Synaptics:ファイル-ダウンロードしたパッケージを追加)
    または、ファイルをダブルクリックすることもできます。これにより、Ubuntu Software Centerが開きます。ソフトウェアセンターが読み込まれたら、インストールボタンを押します。フォルダ内のすべてのファイルがインストールされるまでこれを繰り返します。


2

Windowsで実行できるUbuntuスクリプトパッケージのWebサイトを解析して依存関係ツリーを見つけ、必要なすべてのパッケージをダウンロードし、チェックサム検証を行う小さなPythonスクリプトがあります。

これは明らかに必要以上にダウンロードするかもしれませんが、私にとって最も簡単なソリューションでした。

https://gist.github.com/Zitrax/2bad212a3b0571357e1b

その後、ダウンロードしたすべてのパッケージをでインストールできますdpkg -i E pkg\*。既にインストールされているパッケージの再インストールを回避します。

使用法:

usage: ubuntu-deps.py [-h] [-a ARCH] [-r RELEASE] [-m MIRROR] [-f FALLBACK] [-d DIRECTORY] dep [dep ...]

Download ubuntu dependencies

positional arguments:
  dep                                  The main/top package

optional arguments:
  -h, --help                           show this help message and exit
  -a ARCH, --arch ARCH                 The architecture to use (default: amd64)
  -r RELEASE, --release RELEASE        Ubuntu release (default: trusty)
  -m MIRROR, --mirror MIRROR           Mirror to use for download (default: http://no.archive.ubuntu.com/)
  -f FALLBACK, --fallback FALLBACK     Mirror to use when main mirror is not found (default:
                                       http://security.ubuntu.com/)
  -d DIRECTORY, --directory DIRECTORY  Target directory (default: pkg)

2

常にオフラインに維持されるシステムでは、通常、他の回答のいくつかで提示されている堅牢なオフラインパッケージ管理方法のいずれかを使用するのが最善です。これは、少数のパッケージを一度だけインストールするのではなく、すでにインストールされているパッケージを最新の状態に保つのを容易にするためです。

ただし、インターネットに接続されていないシステムにパッケージを迅速にインストールするだけの場合(および別のマシンにダウンロードして持ち込む機能がある場合)には、そうすることができます。パッケージには多くの場合、依存する他のパッケージがあり、したがってパッケージをインストールする前に、またはパッケージをインストールすると同時にインストールする必要があるため、主な複雑さは必要なものを決定することです。

この回答は、Ubuntu 14.04の重複した質問g ++に基づいてg++おり、コアの例としてインストールする必要がある場合を使用しています。

この方法は、少なくとも必要なセキュリティ更新プログラムを自動的に判断してインストールすることを容易にするものの代替として、長期的に使用すべきではないことを強調します。ネットワークに接続しないと、攻撃の可能性が大幅に低下しますが、一部のセキュリティバグは任意のソースからのデータを介して悪用される可能性があります。

この方法は複雑に見えるかもしれませんが、通常は数分しかかかりません。多数の依存関係を持つパッケージの場合、時間がかかる場合があります。非常に多数の依存関係を取り込むメタパッケージ(ubuntu-desktop最小システムなど)をインストールする場合、必要なすべての.debファイルをダウンロードするのに非常に長い時間がかかる可能性があり、この方法は適切ではありません。

必要な依存関係の決定

インストールをシミュレートして、パッケージの依存関係を満たすために必要な他のパッケージを決定できます。(アクションを指定する-sapt-getフラグを渡すと、これが行われます。

apt-get -s install g++

sudoこれは単なるシミュレーションであるため、省略しました。したがって、ルート権限は必要ありません。

パッケージを構築するための最も一般的なツールをすべてインストールするのではなく、実際にインストールする場合はg++、次をお勧めします。

apt-get -s install build-essential

(for g++)の出力は次のようになります。

NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  g++-4.8 libstdc++-4.8-dev
Suggested packages:
  g++-multilib g++-4.8-multilib gcc-4.8-doc libstdc++6-4.8-dbg
  libstdc++-4.8-doc
The following NEW packages will be installed:
  g++ g++-4.8 libstdc++-4.8-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])
Conf libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])

これは、インストールすることを言いますg++私のシステム上で、私はパッケージを必要とするg++g++-4.8libstdc++-4.8-dev

シミュレーションの結果を確認することは、通常、単にパッケージの依存関係を検索する(または必要なものが上記と同じであると仮定する)よりも優れています。

  1. すでにいくつかの依存関係がインストールされている場合があります。
  2. 依存関係(パッケージがインストールまたは動作する必要がある他のパッケージ)自体には、まだインストールしていない依存関係がある場合があります。

パッケージの入手

必要なパッケージがわかったら、ダウンロードできます。ダウンロードはSSLで暗号化されているため、ファイルの破損を防ぐために、Launchpadを使用することをお勧めします。

  • これは、悪意のある当事者による意図的な操作に対する単なる保護手段ではありません。また、誤ってファイルが破損するのを防ぐのにも役立ちます。これは、ダウンロードされたファイルでは一般的な問題です。
  • 防止できない種類が1つあります。ファイルが部分的にしかダウンロードされていないにもかかわらず、完了したと思われる場合です。
  • apt-getハッシュはデジタル署名されたハッシュリストに対して検証されるため、パッケージを通常どおりにインストールするか、Software CenterでHTTPSを必要としません。これらのパッケージをパッケージキャッシュに配置しapt-get、それらを使用してインストールすると、それが起こります。
  • しかし、手動でダウンロードしたパッケージをでインストールする必要が生じた場合dpkg -i、それは行われません。

あなたは下の名前を入力して、パッケージを検索することができますパッケージhttps://launchpad.net/ubuntuとクリックし、「パッケージを検索します。」たとえば、検索g++-4.8するとgcc-4.8ソースパッケージページが表示されます

次に、Ubuntuリリースのコードネームまでスクロールします。14.04を実行しているので、Trusty Tahrです。Ubuntuのすべてのリリースのコードネームは、リリースwikiページにリストされています。右向きの三角形をクリックして、パッケージのダウンロードを表示します。

ダウンロードを表示するためにリリースを展開する右向きの三角形を示すスクリーンショット

一部のパッケージでは、複数のポケットからダウンロードのリストを展開できる場合があります。あなたは見るかもしれません:

  • release、Ubuntuリリースに付属のパッケージのバージョン(またはリリース時に利用可能)。
  • セキュリティ、リリース後に出荷されるセキュリティ更新。
  • アップデート、リリース後に出荷されたアップデート。
  • 提案された、インストール可能なアップデートですが、まだテスト中であり、一般的な使用には推奨されません。
  • backportsは、Ubuntuの新しいリリースで作成され、以前のリリース用に再構築されたソフトウェアです。

たとえば、14.04のFirefoxで利用できるものは次のとおりです。

同じリリースの複数のポケットのパッケージダウンロードの拡張可能な選択を示すランチパッドのスクリーンショット

一般に、セキュリティまたは更新が存在する場合はパッケージが必要であり、そうでない場合はリリースでパッケージが必要です。

パッケージのリストを展開したら.deb、アーキテクチャのファイルを見つけます。debsの名前は。最も一般的なアーキテクチャは次のとおりです。name_version_architecture.deb

  • 64ビットPC / Mac(amd64IntelおよびAMDプロセッサの両方で、と呼ばれる)
  • 32ビットPC / Mac(i386両方とも呼ばれます)

たとえばg++-4.8、Ubuntuの64ビットバージョンのパッケージを取得するには、をダウンロードできますg++-4.8_4.8.4-1ubuntu15_amd64.deb

パッケージのインストール

あなたが取得したパッケージがある場合は、同じバージョンapt-getinstall(使用しているシステムがネットワークに接続された場合)アクションを自動的に検索し、インストールしているでしょう、そしてあなたはでパッケージを置くことができます/var/cache/apt/archivesし、単にそのコマンドを実行します。

sudo apt-get install g++

このシステムがインターネットに接続されたことない場合、これはおそらく、取り出したすべてのパッケージがリリースポケットからのものである場合に当てはまります。システムがインターネットに接続されたことがあるかどうかに関係なく、他のポケットにあるパッケージがLaunchpadに表示されなかった場合も、ほとんど常にそうなります。(本質的に唯一の状況は、アルファまたはベータシステムをインストールし、それを更新したことがない場合です。)

インストールの特定の場合にg++、私は使用するでしょうapt-get

それがうまくいかない場合、またはうまくいかない場合は、パッケージをインストールします。そうしないと、空のフォルダーにパッケージを入れて実行します:

sudo dpkg -Ri /path/to/folder

または、パッケージに個別に名前を付けることができます。この例では、パッケージが現在のディレクトリにあると仮定します(つまり、パッケージcdを含むディレクトリに移動したと仮定します)。

sudo dpkg -i package1.deb package2.deb ...

インストールするパッケージの数が非常に少なく依存関係を満たすためにインストールする必要がある正確な順序がわからなければ、各パッケージを個別に手動でインストールするよりもこれらの方法を使用する方がはるかに効率的です。


1

インターネットにまったく接続しておらず、インターネットに接続できる場所の近くに誰もいない場合は、まだ言及されていないオプションがあります。通常の投稿を介してソースファイルを送信してください。

DVDを購入することで、メールでUbuntu OS全体を入手できます。オンラインの友人に、DEBファイルまたはVLCなどのパッケージのソースファイルを送信するように依頼するのと同じ方法。誰かがすべてのパッケージを含む完全なDVDを送信することは価値があるかもしれませんが。そうすれば、そのDVDからインストールできます。


0

これは完全に詳細な答えではありませんが、高レベルでは次のことが可能です。

  1. 目的の.deb pkgsを取得(およびそれらのリストを作成)(まだインストールされていない依存するパッケージを含める)
  2. それらを含むaptアーカイブを作成します
  3. aptアーカイブをCDまたはUSBにコピーします
  4. CDまたはUSBをターゲットシステムに挿入します
  5. ターゲットシステムでaptを構成して、CDまたはUSB aptアーカイブをソースとして含める
  6. apt-get install(pkgsのリスト)を使用してリストからパッケージをインストールします


0

別の可能性は、remastersysを使用することです。このツールを使用すると、独自のシステムからisoイメージを作成し、unetbootinを介して起動可能なusbスティックを作成した後、カスタマイズしたシステムを必要な数のコンピューターにインストールできます。


しかし、それらを後で更新する方法は?
エリアケイガン

0

いくつかの簡単な提案があります。図書館に行くことができます。必要なオペレーティングシステムのコンピューターセクションを確認します。一部の書籍にはDVDが含まれています。また、最新のオペレーティングシステムが必要な場合は、わずかな料金でDVDを購入できるこのWebサイトをお勧めします。www.ubuntu.com/download/desktop。


0

この質問は少し古いので、現時点での回答は冗長かもしれませんが、おそらくdpkg-offlineを使用してみることもできます。bzrをインストールしてから:

bzr branch lp:dpkg-offline

そこにはチュートリアルとreadmeファイルが含まれています。

Ubuntu 14.04 amd64システムにgitをインストールしたい場合、システムが例えば12.04 i386であっても、次のことができます。

  • ubuntu-14.04-desktop-amd64.isoイメージをダウンロードします
  • 走る dpkg-offline ubuntu-14.04-desktop-amd64.iso git
  • ターゲットシステムに転送できるtar.gzを取得します。これには、シードパッケージ(git)とそのすべての依存関係が含まれます。また、ローカルリポジトリを追加するヘル​​パースクリプトが含まれているapt-getため、パッケージのインストールに使用できます。

dpkg-offlineは、10.04以降のUbuntuデスクトップバージョン(古いバージョンではテストしていませんが、動作するはずです)、および12.10以降のUbuntuサーバーバージョンで動作します。ホストアーキテクチャに関係なく、amd64、i386、およびarmhfイメージでも動作するはずです。繰り返しますが、私はarm64またはpowerpc / ppc64elでテストしていませんが、動作する可能性もあります。

免責事項:私はdpkg-offlineを書きました。


しかしこれは、私は、それはスクリプトを使用して、全体ディストリビューションをダウンロードするにはやり過ぎだと思う、それは必要なパッケージのみとターゲットディストリビューションspecifingで働くことがしたい、素晴らしいです
ハビエル・ロペスが

0

一部のパッケージは、インストールusbスティックにインストールされます。アンnetwork-managerインストールして、再度インストールしたい。

したがって、オペレーティングシステムをインストールしたスティックを(Lubuntu 17.10)から取得しました。そうだった/dev/sdb

パスにスティックを取り付けます(/tmp/mnt私の場合)

mkdir /tmp/mnt
sudo mount /dev/sdb1 /tmp/mnt

次に、次/etc/apt/sources.listのみを含むように編集します

deb file:///tmp/mnt/ main universe

その後、私はやる

sudo apt-get update

そして、私はインストールすることができます network-managerます。

注:これは上記の質問に対する答えではなく、この質問を調べたときに私が持っていた質問に対する答えかもしれません。


1
おそらくバックアップしsources.listてから復元する必要があります。
チャイT.レックス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.