web-dev-qa-db-ja.com

一部のパッケージが「makeinstall」を使用し、他のパッケージが「Sudomakeinstall」を使用するのはなぜですか

最近、サーバーにLAMEエンコーダーをインストールしてwavをmp3に変換しましたが、これは./configure; make; make installで機能しました。

次に、OGGエンコーダーをインストールしようとしましたが、これには「./configure、make、Sudo make install」が必要です。これは、VPSがないため、実行できません(支払いたくない)。コーデックをインストールするためだけのVPNの場合は月額15ドル)。

私はこれに不慣れで、Sudoがあなたに許可を与えることを理解しています-しかし、私はなぜいくつかのmake installsがSudoアクセスを必要とし、他の人は許可しないのかを見つけようとしました't。まだ答えが見つかりません。

8
alexbooots

通常、私はとにかくSudoなしで実行しようとします-時々それは動作します。パッケージの作成者は、Sudoが必要だと思ったり、好みに応じて使用したり、システムの非ユーザー領域にインストールすることを選択したりすることがあります。これが必要な場合もありますが、そうでない場合もあります。

Sudoを使用する他の一般的な理由は、ソフトウェアのインストール方法を説明するサードパーティのブログ投稿にあります。Sudo特権。投稿を書いている人はすべてにSudoを使用するだけなので、Sudoを使用するように指示されますが、これは実際に良い考えではありません。

理論的には、パッケージにSudoが必要な唯一の理由は、管理者アクセスを介してのみ変更できるシステムの領域に自分自身をインストールする必要がある(または変更する)場合です。

一般的に言って、ユーザーがSudoアクセスなしでソフトウェアをインストールする必要性が高まっているため、これを実行しているパッケージはますます少なくなっています。

7
jefflunt

それをインストールするのがyoであるか、すべてのユーザーであるかによって異なります。 (ほとんどの場合、カーネルモジュールのようなものは、誰がエンド機能を使用するかに関係なく、ルートアクセスを必要とします。)

./configureスクリプトを提供するほとんどのプログラムは、--prefix=~/binまたは--prefix=~/Local/も受け入れて、ホームディレクトリにインストールできるようにします。すべてのプログラムが./configureを提供するわけではありませんが、ほとんどのプログラムはMakefileにインストール先を構成できるsomeメカニズムを提供します。

それで、あなたのライブラリ/プログラムはyo用ですか、それともシステム上のすべてのユーザー用ですか?

6
sarnold

それは主にファイルのパーミッションの読み取り/書き込み/実行に帰着します。須藤には制限付きの権利はありません。

Windowsの管理者アカウントと、制限された権限を持つユーザーまたはゲストアカウントについて考えてみてください。同じこと。

0
Cymbals