/usr/local/binの権限/所有権

/usr/local/binの権限/所有権

私が理解したところによると、独自のスクリプトを置く正しい場所は/usr/local/bin(一部のファイルのバックアップに使用するのと同じ)ことです。フォルダは現在(デフォルトでは)rootユーザーが所有しており、一般ユーザーはそのフォルダにアクセスできないことがわかりました。私はこのコンピュータの唯一のユーザーです。フォルダ全体を自分のユーザーに変更する必要がありますか?または、権限を並べ替える他の正しい方法はありますか/usr/local/bin

答え1

/usr/localデフォルトでは、すべてのサブディレクトリ(含まれている)の所有者とグループは、bin権限root.rootが必要ですrwxr-xr-x。つまり、システムユーザーはこのディレクトリ構造から読み取って実行できますが、ファイルを作成または編集することはできません。rootアカウント(またはを使用している管理者)のみがsudoこの場所でファイルを作成および編集できる必要があります。システムにはユーザーが1人だけですが、他のすべてのユーザーが書き込むことができるように、このディレクトリ構造の権限を変更することは一般的にはお勧めできませんroot

/usr/local/binスクリプト/バイナリ/実行ファイルをルートアカウントに配置することをお勧めします。これは発展する価値がある良い習慣です。スクリプト/バイナリ/実行ファイルを$ HOME / binに入れて、$ HOME / binが$ PATHにあることを確認することもできます。

詳しくは、この質問をご覧ください。 ローカル実行ファイルはどこに配置する必要がありますか?

答え2

独自のスクリプトを置く一般的な場所は~/bin次のとおりです。次に、このディレクトリをPATH

答え3

あなたが以来ただユーザーなので、作成したスクリプトの唯一のユーザーなので、スクリプトをインストールする/usr/local/binと、/usr/local/bin個人用ファイルのバックアップとメンテナンスが難しくなります。

また、/usr/localローカルにコンパイルされたソースコードから外部ソフトウェアをインストールするときに階層を使用することもできます。つまり、この方法でインストールされたソフトウェアは、個人のスクリプトを上書きしたり、誤ってシステム提供ツールを選択したりする可能性があります。スクリプト名を指定する方法)。

また、一部のBSDシステム/usr/local(OpenBSDやmacOSなど)のパッケージマネージャは、その下にパッケージをインストールします。これは、プライベートスクリプトの特定のファイル階層を維持するもう1つの理由です。

システムの唯一のユーザーの場合は、次の$HOMEように$HOME/local階層にインストールするだけです。たとえば、完全に別々の階層を使用する/opt/sw、そのような場所(デフォルトのシステムまたはパッケージマネージャが使用しない)を使用します。

関連情報