質問

Linux ファイル システムでは、ユーザー スクリプトをどこに配置する必要がありますか?

特に、cron によって呼び出される Python スクリプトを考えています。

役に立ちましたか?

解決

私が得た情報:

/usr/local/sbin     custom script meant for root
/usr/local/bin      custom script meant for all users including non-root

チャットログは irc.debian.org #debian から抜粋:

(02:48:49) c33s: question: where is the _correct_ location, to put custom scripts
for the root user (like a script on a webserver for createing everything needed 
for a new webuser)? is it /bin, /usr/local/bin,...? /usr/local/scripts is 
mentioned in (*link to this page*)
(02:49:15) Hydroxide: c33s: typically /usr/local/sbin
(02:49:27) Hydroxide: c33s: no idea what /usr/local/scripts would be
(02:49:32) Hydroxide: it's nonstandard
(02:49:53) Hydroxide: if it's a custom script meant for all users including 
non-root, then /usr/local/bin
(02:52:43) Hydroxide: c33s: Debian follows the Filesystem Hierarchy Standard, 
with a very small number of exceptions, which is online in several formats at 
http://www.pathname.com/fhs/ (also linked from http://www.debian.org/devel/ and 
separately online at http://www.debian.org/doc/packaging-manuals/fhs/fhs-2.3.html)
(02:53:03) Hydroxide: c33s: if you have the debian-policy package installed, it's 
also in several formats at /usr/share/doc/debian-policy/fhs/ on your system
(02:53:37) Hydroxide: c33s: most linux distributions follow that standard, though 
usually less strictly and with more deviations than Debian.

ありがとう、水酸化物に行ってください

他のヒント

ユーザーによって作成され、そのユーザーの crontab から実行されるスクリプトについて話している場合、通常はそれらをホーム ディレクトリの bin フォルダーまたは scripts フォルダーに置きます。ユーザー間で共有することを目的としている場合は、/ usr/local/scripts ディレクトリ。

誰にとって興味があるのか​​、 ファイルシステム階層標準 (FHS) は標準文書であり、非常に読み応えのある文書です。私はほぼすべての Linux ディストリビューションの基盤について説明しており、公式に承認されています。による デビアン Linux Standards Base (LSB) です。

ただし、その質問に対して肯定的な答えは見つからないでしょう。それは定義されていません;-)。私が言えることはただ一つ:/bin (/usr/bin にも) を置かないでください。/usr/local/scripts も珍しいです。スクリプトがこの 1 人のユーザーのみによって使用される場合は、$HOME/bin が許容される場所のようです。

私は、ファイルがユーザーによって作成された場合、そのファイルはユーザー ディレクトリ (/home/username) に保存されると強く信じています。ユーザーが作成しなかった場合、処理はさらに複雑になります。以前はそれらを /usr/local/bin、/bin、または /usr/local/scripts のいずれかに置いたことがあります。etch についてはわかりませんが、/usr/local/ であることを確認する必要があります。スクリプトは実際には Cron の $PATH にあります。

Debian ガイド Ubuntu に関しては非常に便利です。

通常、プログラムはそれ自体を /usr/local サブディレクトリにインストールします。ただし、このディレクトリはシステム管理者 (またはユーザー) の私的使用のために予約されているため、Debian パッケージはそのディレクトリを使用してはなりません。

/usr/local/bin ガイドによると許容範囲のようです。

個人的にはスクリプトを入れました $HOME/.scripts.

ただし、LSB がこの問題に具体的に取り組んでいることを望みます。

/home/ユーザー名/binはどうでしょうか?

~/bin を $PATH に追加し、chmod +x ファイル名でスクリプトを実行可能にします。

個人的には好きです

/home/username/.bin

この方法では、bin フォルダーは非表示になりますが、PATH に追加して、内部に x-bit を含むすべてのスクリプトを実行することができます。

私は、ホーム ディレクトリが (一見すると) フォルダーが非常に少なく、きれいであることが好きです。

次のように、crontab ファイルにパスを追加することもできます。 以前の cron 関連の質問.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top