私が理解したところによると、独自のスクリプトを置く正しい場所は/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
、そのような場所(デフォルトのシステムまたはパッケージマネージャが使用しない)を使用します。