権限のないユーザーとしてDebianパッケージをインストールする

権限のないユーザーとしてDebianパッケージをインストールする

$HOME/localUbuntu 16.04システムの別の階層にインストールするソフトウェアがあります。

ソフトウェアはDebianパッケージとして配布され、ソースコードは利用できません(もしそうなら、ダウンロードして直接コンパイルします)。

sudoこれを実行したいコンピュータにアクセスできず、アクセスしないでください。このソフトウェアはシステム全体にインストールされず、個人的な目的にのみ使用されます。

頑張った

$ dpkg --root="$HOME/local" -i package_x.y.z_x86_64.deb

しかし、私は理解しています

dpkg: error: requested operation requires superuser privilege

--force-all私の要件に合ったすべての必須ファイルとディレクトリdpkglocal/usr/binlocal/var/dpkgサブディレクトリ、infoおよび、空のファイルを含むtriggers)を作成しようとした後に停止しました。updatesstatuslocal/var/dpkg

$ dpkg --root=$HOME/local -i --force-all package-x.y.z_x86_64.deb
dpkg: could not open log '/var/log/dpkg.log': Permission denied
(Reading database ... 0 files and directories currently installed.)
Preparing to unpack package_x.y.z_x86_64.deb ...
Unpacking package (1:x.y.z) ...
dpkg: error processing archive package_x.y.z_x86_64.deb (--install):
 error setting ownership of './usr/bin/application': Operation not permitted
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 package_x.y.z_x86_64.deb

chownパッケージの仕様に応じて、正しいユーザーにファイルを送信する際に明らかなエラーがあります。

次のステップは、おそらくこのコンピュータのシステム管理者と話して、私のためにこれをインストールできることを確認することです。しかし、私が逃したものがあるかどうか疑問に思います。その後、自分のローカルパッケージのインストールルートを持つことができます。礼拝規則書?

ベストアンサー1

いいえ、何も見逃していませんでした。この場合の最善の方法は、次のようにdpkg-debパッケージの内容を抽出することです。

dpkg-deb -x package_x.y.z_x86_64.deb my-private-root

パッケージに含まれる管理者スクリプトは実行されません。

dpkg-deb -e package_x.y.z_x86_64.deb my-private-control

おすすめ記事