post:: 2019/01/13
tags

Ubuntu, 2019

category

Ubuntu

オフラインのUbuntuにパッケージインストール

注意

ローカルにパッケージリポジトリ作る等の方が良いかもしれない。 試したら追記する。

ごちゃごちゃしてるから今度書き直す。

オンラインのマシンが必要になる。 オンラインの方でファイルをDL、オフラインの方でインストールという流れ。

オンラインでファイルを取得

apt-get install

/var/cache/apt/archives に自動的にファイルをDLしてくる。

$ apt-get install --download-only [package name]

注釈

既にオンラインの方にインストールされているパッケージはファイルを落とせない模様。

apt-get download

カレントディレクトリにファイルをDL。 インストール済でも問題ないので上より良さそう。

$ apt-get download [package name]

以下のコマンドで依存パッケージもDLできる。 なお、不要な依存パッケージを無視できないのでエラーになる。

$ apt-get download $(apt-rdepends [package name]|grep -v "^ ")

参考

オフラインでインストール

apt install -f

-f オプションでファイルからインストールできるようだ。 しかし、最初はネットに接続しに行く(謎)。

$   apt install -f [.deb file path]

面倒だったらパッケージリポジトリの設定ファイルをリネームしておけば良さそう。

$ mv /etc/apt/sources.list /etc/apt/sources.list.bk

注意

apt install -f を実行すると、他のパッケージを削除しようとする(よく分からない)。 dpkg -i を代わりに使う方が良いみたいだ。

dpkg

[.deb file path]を * にもできるが、依存の解決はしないので順番にやっていくしかない。

$ sudo dpkg -i [.deb file path]

参考

余談:せやかてsudo

sudoが入っていない。

$ root@cd6e0f83b594:/# sudo
bash: sudo: command not found

.debファイルからインストールすれば使えるようになる。

$ apt install -f ./sudo_1.8.16-0ubuntu1_amd64.deb

less等も入っていないので同様に.debからインストールしておくのが吉。

gdebi

dpkg -i だと依存関係を解決せずにインストールする。

gdebiというパッケージを使用すると依存関係を解決してインストールできるらしい。

参考