'dpkg-deb' が PATH に存在しないか、実行可能ではありません。

'dpkg-deb' が PATH に存在しないか、実行可能ではありません。

私のユーザーとルートで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

関連情報