dnfのインストール中にsudoの必要性

dnfのインストール中にsudoの必要性

私はFedora 33を使用しています。私は単純な事実に混乱しています。

インストールされていないプログラムを実行しようとすると、dnfはリポジトリを検索してインストールを提案します。 「はい」と答えるとインストールされて正常に使用できます。

ソフトウェア()をインストールしようとすると、スーパーバイザーパスワードの入力をdnf install <package>求められます。

私の例では、「ranger」を両方の方法でインストールしてみましたが、違いが見つからないようです。どちらも同じbinディレクトリにあり、両方ともプロセスのユーザーとして実行されます。

私の質問は次のとおりです。とにかくパスワードなしでソフトウェアを簡単にインストールできたら、dnfがパスワードを要求するのはなぜですか?

ベストアンサー1

説明するシナリオでは、「あなた」はインストールされたパッケージを持っていません。パッケージキットサービス(すでにrootとして実行されています)がユーザーに代わってインストールされています。 PackageKitは、PolicyKitを使用して、ソフトウェアパッケージをインストールできる人とインストールできない人を決定します。権限のないユーザーがソフトウェアをインストールできないようにするには、PolicyKitポリシーを変更してそれを許可しないことがあります。 PackageKitが存在する理由の1つは、ユーザーが使用しているディストリビューション(dnf、、、、、、または何yumでも)でパッケージ管理システムの詳細を知る必要がないことです。彼らはPackageKitに要求するだけです。パッケージをインストールすると、PackageKitはそれを処理します。パッケージ管理と特定のディストリビューションのインストールに関する詳細。 Fedoraにパッケージを手動でインストールする場合は、パッケージ管理システムと直接対話します。 PackageKitはユーザーに代わってこれを行いません。したがって、そのレベルでインストールを実行するには、rootとして実行するか、rootパスワードを入力する必要があります。ソフトウェアパッケージ。ただし、通常のユーザーとしてrootとして実行することなく(またはなどを介して)PackageKitにユーザーの代わりにインストールするように要求できます(PolicyKitで構成されているシステムポリシーで許可されている限り)。 )またはルートパスワードを入力してください。aptpacmandnfpkcon install <packagename>susudo

まだインストールしていないパッケージで提供されているコマンドラインから何かを実行しようとすると、パッケージをインストールするように求める動作について説明します。PackageKit コマンドが見つかりません「私はこのような行動を本当に嫌いです。新しくインストールされたLinuxシステムで最初にすることは、パッケージを削除してPackageKit-command-not-foundこれが起こらないようにすることです...

おすすめ記事