Proč je v Linuxu tolik míst, kam umístit binární soubor? Existuje alespoň těchto pět:
/bin/
/sbin/
/usr/bin/
/usr/local/bin/
/usr/local/sbin/
A na své kancelářské schránce nemám k některým z nich oprávnění k zápisu.
Jaký typ binárního souboru jde do které z těchto bin
s?
Přijatá odpověď:
-
/bin
(a/sbin
) byly určeny pro programy, které musely být na malém/
oddíl před větší/usr
atd. byly namontovány oddíly. V dnešní době většinou slouží jako standardní umístění pro klíčové programy jako/bin/sh
, i když původní záměr může být stále relevantní např. instalace na malých vestavěných zařízeních. -
/sbin
, na rozdíl od/bin
, je pro programy pro správu systému (běžné uživatelé běžně nepoužívané) potřebné před/usr
je namontován. -
/usr/bin
je pro programy běžného uživatele spravované distribucí. -
Existuje
/usr/sbin
se stejným vztahem k/usr/bin
jako/sbin
musí být/bin
. -
/usr/local/bin
je pro běžné uživatelské programy ne spravuje správce distribučních balíčků, např. lokálně kompilované balíčky. Neměli byste je instalovat do/usr/bin
protože budoucí aktualizace distribuce je mohou bez varování upravit nebo odstranit. -
/usr/local/sbin
, jak v tuto chvíli pravděpodobně tušíte, je/usr/local/bin
jako/usr/sbin
do/usr/bin
.
Kromě toho existuje také /opt
což je pro monolitické nedistribuční balíčky, ačkoli předtím, než byly řádně integrovány, různé distribuce tam dávaly Gnome a KDE. Obecně byste jej měli rezervovat pro velké balíky třetích stran, jako je Oracle.