私のユーザーとルートでaptを使用して何も削除またはインストールすることはできません。試みるたびに、次のエラーが発生します。
dpkg: warning: 'dpkg-deb' not found in PATH or not executable
dpkg: error: 1 expected program not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin
$PATH変数(rootと私のユーザーの両方)を確認しましたが、ここに必要なものはすべて含まれています。
ranran9991@Ran-Mint ~ $ sudo -i
[sudo] password for ranran9991:
Ran-Mint ~ # echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/lib/jvm/java-11-oracle/bin:/usr/lib/jvm/java-11-oracle/db/bin
出力grep -i path /etc/sudoers
:
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
出力sudo find / -mount -name dpkg-deb -exec ls -ld {} +
ranran9991@Ran-Mint ~ $ sudo find / -mount -name dpkg-deb -exec ls -ld {} +
[sudo] password for ranran9991:
lrwxrwxrwx 1 root root 4 Nov 24 2018 /usr/share/bash-completion/completions/dpkg-deb -> dpkg
-rwxr-xr-x 1 root root 153952 Oct 4 2018 /var/lib/docker/overlay2/8c4b3545f8b2b1fd424a8054dfa0a631959619f0dc34efe9ca5c5e52f0fe7696/diff/usr/bin/dpkg-deb
私はシナモンミント18.3を使用しています。
何をすべきかわからず、助けが必要です。
答え1
それでも実行できるため、パッケージdpkg
の少なくとも一部がまだ残っています。dpkg
回復するには、dpkg-deb
以下を再インストールする必要がありますdpkg
。
ダウンロード適切なパッケージファイル(Mint 18.3はUbuntu 16.04をベースにしているので、このページ適切なリンクを入手してください。ここに提供されているダウンロードリンクは、あなたが1つを使用していると想定しています
amd64
。wget https://launchpad.net/ubuntu/+archive/primary/+files/dpkg_1.18.4ubuntu1.6_amd64.deb
インストールする
sudo dpkg -i dpkg_1.18.4ubuntu1.6_amd64.deb
これが失敗した場合は、提案されているように、より受動的なアプローチを採用する必要があります。Arvidの答え:
ar x dpkg_1.18.4ubuntu1.6_amd64.deb data.tar.gz
tar xf data.tar.gz ./usr/bin/dpkg-deb
sudo install usr/bin/dpkg-deb /usr/bin
次に、インストーラを使用してすべてがdpkg
正しく設定されていることを確認します。
答え2
これらのディレクトリ(/usr/local/sbin
、、/usr/sbin
および/sbin
)をユーザーのPATHに追加します。
有害ではなく、しばしば便利です。多くの「root」コマンドが役に立つ情報を提供できます。読み取り権限があります。root以外のユーザーが何も変更しないため、何も変更できない場合でも書き込みアクセス。
またはrunの代わりにapt
使用してください。これにより、コマンドがルートディレクトリで実行されます。sudo -i apt.....
sudo apt.....
apt
ログインシェル(したがって、ルートの.profileまたは.bash_profileを実行してPATHを適切に設定します)。
実行する作業の詳細を確認してman sudo
検索-i
してください。--login
-i