Search on the blog

2017年1月13日金曜日

/usr/bin、/usr/sbin、/usr/local/binなどの違い

 自分が作ったスクリプトをどこに置くべきか迷っていたら、これらの違いについて気になったので調べてみた。違いは以下のとおり。

ディレクトリ名 説明 中に入っているバイナリ例
/bin single user modeでも利用できるバイナリ。 date、cat、ls、bash、cdなど
/sbin single user modeでも利用できるバイナリ。
supervisor権限が必要なもの。
fsck、mount、ping、dmesgなど
/usr/bin システム全体で一般的に利用されるバイナリ。 make、awk、java、ccなど
/usr/sbin システム全体で一般的に利用されるバイナリ。
supervisor権限が必要なもの。
sshd、syslogd、httpdなど
/usr/local/bin システム全体で一般的に利用されるバイナリ。
システムパッケージに管理されていないもの。
tmux、subl、spark-shellなど
/usr/local/sbin システム全体で一般的に利用されるバイナリ。
supervisor権限が必要なもの。
システムパッケージに管理されていないもの。
logrotateなど

ということで、自作のバイナリは/usr/local/bin、または、/usr/local/sbinに入れるのが正しいらしい。
ちなみに、システム全体ではなく自分が使うだけのバイナリであれば、~/binに入れるらしい。

参考
Differences between /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin [duplicate]

0 件のコメント:

コメントを投稿