GNU/Linux >> Znalost Linux >  >> Linux

Kde by měl být umístěn místní spustitelný soubor?

Mám spustitelný soubor pro klienta kontroly verzí výkonu (p4 ). Nemohu to umístit do /opt/local protože nemám práva roota. Existuje standardní umístění, kam je třeba jej umístit pod $HOME ?

Má hierarchie souborového systému konvenci, která říká, že místní spustitelné/binární soubory je třeba umístit do $HOME/bin ?

Nemohl jsem najít takovou úmluvu zmíněnou v článku Wikipedie pro FHS.

Také, pokud skutečně existuje konvence, musel bych výslovně uvést cestu k $HOME/bin adresář nebo kdekoli umístění bin adresář je?

Přijatá odpověď:

Obecně platí, že pokud má být nesystémově nainstalovaný a udržovaný binární soubor přístupný v celém systému více uživatelům, měl by jej správce umístit do /usr/local/bin . Pod /usr/local je úplná hierarchie který se obecně používá pro lokálně zkompilované a nainstalované softwarové balíčky.

Pokud jste jediným uživatelem binárního souboru, instalujte do $HOME/bin je vhodné umístění, protože si jej můžete nainstalovat sami a budete jediným spotřebitelem. Pokud kompilujete softwarový balíček ze zdroje, je také vhodné vytvořit částečnou nebo úplnou místní hierarchii ve vašem $HOME adresář. Úplná místní hierarchie by vypadala takto.

  • $HOME/bin Místní binární soubory
  • $HOME/etc Konfigurace systému specifická pro hostitele pro místní binární soubory
  • $HOME/games Místní herní binární soubory
  • $HOME/include Místní hlavičkové soubory C
  • $HOME/lib Místní knihovny
  • $HOME/lib64 Místní 64bitové knihovny
  • $HOME/man Místní online příručky
  • $HOME/sbin Binární soubory místního systému
  • $HOME/share Hierarchie nezávislá na místní architektuře
  • $HOME/src Místní zdrojový kód

Při spuštění configure , měli byste definovat svou místní hierarchii pro instalaci zadáním $HOME jako předpona pro výchozí nastavení instalace.

./configure --prefix=$HOME

Nyní, když make && make install po spuštění se zkompilované binární soubory, balíčky, manuálové stránky a knihovny nainstalují do vašeho $HOME místní hierarchie. Pokud jste ručně nevytvořili $HOME místní hierarchie, make install vytvoří adresáře potřebné pro softwarový balíček.

Po instalaci do $HOME/bin , můžete přidat $HOME/bin do vaší $PATH nebo zavolejte binární kód pomocí absolutního $PATH . Některé distribuce budou obsahovat $HOME/bin do vaší $PATH ve výchozím stavu. Můžete to otestovat buď echo $PATH a uvidíte, zda $HOME/bin je tam, nebo vložte binární soubor do $HOME/bin a provedení which binaryname . Pokud se vrátí s $HOME/bin/binaryname , pak je ve výchozím nastavení ve vaší $PATH.

Související:Debian – Hledat poslední upravené soubory za poslední 2 minuty ve vašem domovském adresáři, které obsahují určitý řetězec?
Linux
  1. Kam mám umístit software, který si sám zkompiluji?

  2. Jak udělat program spustitelný odkudkoli?

  3. Příkaz nebyl nalezen v Zsh, ale nalezen v Bash?

  1. Které distribuce mají $home/.local/bin v $path?

  2. $home/.local/bin Není v cestě pro Ubuntu 19.04?

  3. cmake --version ukazuje na /usr/bin/cmake, zatímco který cmake ukazuje na /usr/local/bin

  1. Kam mám nainstalovat aplikaci v systému Linux?

  2. Rozdíl mezi /bin a /usr/bin

  3. Kam / by měly být namontovány další trvalé disky?