O Padrão de Hierarquia do Sistema de Arquivos especifica onde colocar os arquivos.
Se você estiver instalando arquivos fora do gerenciador de pacotes, coloque-os sempre em /usr/local
ou em /opt
. Nunca toque em nada sob /usr
, exceto através do gerenciador de pacotes, exceto os itens em /usr/local
.
-
/usr/local/bin
: executáveis destinados a serem executados pelos usuários (interativamente ou de scripts) -
/usr/local/lib
: bibliotecas disponíveis para muitos programas, não apenas para o seu -
/usr/local/lib/YOUR-PROGRAM-NAME
: quaisquer outros arquivos dependentes da arquitetura -
/usr/local/share/doc
: documentation (exceto no formato man e info) -
/usr/local/share/info
: documentação no formato info -
/usr/local/share/man/man*
: man pages -
/usr/local/share/YOUR-PROGRAM-NAME
: quaisquer outros arquivos independentes de arquitetura
Atualmente, a separação da área share
, que contém arquivos independentes de arquitetura, não é muito importante. Ele foi criado quando os discos rígidos eram menores e era importante economizar espaço ao não armazenar arquivos independentes de arquitetura duas vezes em redes heterogêneas. Você pode pular essa distinção se quiser e colocar tudo em lib/YOUR-PROGRAM-NAME
.
Se preferir usar /opt
, coloque tudo em /opt/YOUR-PROGRAM-NAME
e crie links simbólicos em /usr/local/bin
(e /usr/local/share/man/man*
e /usr/local/share/info
se você fornecer documentação no formato man e info) para que os usuários possam invoque seu programa.
Se você fizer pacotes deb ou rpm, coloque os arquivos em /usr
em vez de /usr/local
. Verifique a documentação de cada distribuição em busca de suas particularidades.