Directory-Structure
我在哪里安裝非最終使用者命令?
在我的一個項目中,我有幾個專門的命令,它們只能由其他命令呼叫,並且不應該由最終使用者呼叫。這些內部命令應該安裝在 PREFIX/bin 中還是更好地安裝在其他地方,例如 PREFIX/lib 中?
編輯:有問題的內部命令都是 awk 腳本。由於它們是獨立於體系結構的,我考慮將它們安裝在 PREFIX/share/PACKAGE-NAME/bin 中。那會是一個不錯的選擇嗎?
Linux文件系統層次標準這樣說,
/bin 包含系統管理員和使用者都可以使用的命令,但是當沒有安裝其他文件系統時(例如在單使用者模式下)需要這些命令。它還可能包含腳本間接使用的命令。
和
/lib 目錄包含啟動系統和在根文件系統中執行命令所需的那些共享庫映像,即。通過 /bin 和 /sbin 中的二進製文件。
和,
用於系統管理的實用程序(和其他僅限 root 的命令)儲存在 /sbin、/usr/sbin 和 /usr/local/sbin 中。除了 /bin 中的二進製文件外,/sbin 還包含啟動、還原、恢復和/或修復系統所必需的二進製文件。在 /usr 之後執行的程序已知會被掛載(當沒有問題時),一般會放在 /usr/sbin 中。本地安裝的系統管理程序應該放在 /usr/local/sbin。
最後,
/usr/lib 包括目標文件和庫。在某些系統上,它還可能包含不打算由使用者或 shell 腳本直接執行的內部二進製文件。應用程序可以使用 /usr/lib 下的單個子目錄。如果應用程序使用子目錄,則該應用程序專門使用的所有與體系結構相關的數據都必須放在該子目錄中。
顯然
/usr/bin
,還有許多其他選擇。你的定義對我來說,感覺最像/usr/lib
。