33

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

具体的には、cronによって呼び出されるpythonスクリプトを考えています。

4

8 に答える 8

35

私が得た情報:

/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.

水酸化物に感謝します

于 2011-11-03T02:05:00.423 に答える
19

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

于 2008-08-18T20:18:29.557 に答える
8

興味のある人にとっては、Filesystem Hierarchy Standard (FHS)は標準文書であり、今でも非常に読みやすいものです。私はほぼすべての Linux ディストリビューションの基盤について説明しており、Debianや Linux Standards Base (LSB) などによって公式に承認されています。

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

于 2008-08-29T21:21:54.353 に答える
4

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

于 2008-08-18T20:32:26.363 に答える
3

Debian ガイドは、Ubuntu に関しては非常に役立ちます。

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

/usr/local/binガイドによると、受け入れられるようです。

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

ただし、LSBがこの質問に具体的に対処してくれることを願っています。

于 2009-11-18T21:45:02.497 に答える
2

個人的には好きです

/home/username/.bin

このようにして、binフォルダーは非表示になりますが、それをPATHに追加して、xビットを内部に持つすべてのスクリプトを実行できます。

私は自分のホームディレクトリが(一見)非常に少ないフォルダできれいになっているのが好きです。

于 2008-08-19T01:09:53.667 に答える
2

/home/username/bin はどうですか?

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

于 2008-08-18T23:28:23.123 に答える
0

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

于 2008-08-18T20:35:29.820 に答える