web-dev-qa-db-ja.com

Dpkgを使用して特定のディレクトリに* .debパッケージをインストールする方法。

サードパーティから2つのパッケージ(libidbとpython-idb、および両方が依存している)をインストールする必要があるため、ソースコードにアクセスできません。私はこれらの次の方法でインストールしようとしましたが、エラーも発生しました:

> > sumitkumars@administrator-Lenovo-U410:~$ Sudo dpkg -i libidb-0.12.0-0b81d72-0.AMD64.deb --instdir=/home/sumitkumars/mydir
> [Sudo] password for sumitkumars:  (Reading database ... 186372 files
> and directories currently installed.) Preparing to unpack
> libidb-0.12.0-0b81d72-0.AMD64.deb ... Unpacking libidb (0.12.0) over
> (0.12.0) ... dpkg: error processing archive
> --instdir=/home/sumitkumars/mydir (--install):  cannot access archive: No such file or directory Setting up libidb (0.12.0) ... Errors were
> encountered while processing:  --instdir=/home/sumitkumars/mydir

それから私はこれを試しました:

sumitkumars@administrator-Lenovo-U410:~$ Sudo dpkg-deb -x libidb-0.12.0-0b81d72-0.AMD64.deb /home/sumitkumars/mydir/

エラーは発生していませんが、別の依存関係で動作していませんでした(python-idb)

「libidb」とバインドできないため、pythonも追加しました。

2

.debは、Zipファイルのような単なるアーカイブです

手動で抽出できます。 https://www.cyberciti.biz/faq/how-to-extract-a-deb-file-without-opening-it-on-debian-or-ubuntu-linux/

Sudo apt install binutils

ar x your.deb

次に、.tarまたは.debにあるものを抽出します。

tar xvf control.tar.gz
tar data.tar.gz

その後、手動でファイルを任意の場所にコピーできます。/usr/localを使用して、パス上にあるようにします。

設定ファイルを読んだり実行したり、スクリプトをインストールする必要があるかもしれませんが、投稿した内容からは言えません。

2
Panther

できます:

dpkg-deb -x $ DEBFILE $ TARGET_DIRECTORY

例:dpkg-deb -x somedeb.deb/home/yung/test

ソース>

https://stackoverflow.com/questions/23077151/set-install-path-using-dpkg

1
Rafael Gomez