Under Linux it was nice to have custom-built scripts or software in the
/usr/local
tree for them to be clearly separated from the distribution software
E isso é exatamente o que você está recebendo no FreeBSD . Shells como o shell Z e o shell Bourne Again não fazem parte do FreeBSD . Eles são adições de terceiros. Às vezes, o sistema operacional é referido pelo nome de gíria "base". No mundo BSD em geral, adições de terceiros sobre "base" não vivem em /usr
. Eles vivem em /usr/local
.
No mundo BSD - e isso vale para outros sistemas operacionais BSD como o OpenBSD - você obtém o próprio funcionamento em /
e /usr
, e o material que não é o sistema operacional em /usr/local
. Se alguém quiser apenas a funcionalidade do sistema operacional sem as adições, levará /usr/local
em consideração no que se está fazendo.
A ligeira virada para isso é que derivativos do FreeBSD, como TrueOS Server e TrueOS Desktop, consideram modestamente que suas adições no FreeBSD não fazem parte do sistema operacional. Portanto, há toda uma carga de material pronto para uso do TrueOS que vive em /usr/local
com o material não-operacional. Por exemplo: é onde você encontrará o PCDM, o gerenciador de exibição TrueOS, vivendo.
Por outro lado, /usr/local
é onde todos os softwares criados que não são partes do sistema operacional.
Para mostrar o quão strong é essa divisão:
- Os scripts Mewburn
rc
para coisas que não são do sistema operacional entram em/usr/local/etc/rc.d/
e não são adicionados a/etc/rc.d/
. É onde você encontrará/usr/local/etc/rc.d/nginx
. - Arquivos de configuração que não são do sistema operacional entram em
/usr/local/etc/
not/etc/
. É onde você encontrará/usr/local/etc/cups
. - Há uma distinção entre
/usr/share/man
em que os manuais do sistema operacional estão e/usr/local/man
em que estão os manuais que não são do sistema operacional.
Até mesmo o gerenciador de pacotes em si (atualmente) não faz parte do sistema operacional propriamente dito. Existe um gerenciador de pacotes "bootstrap", pkg-static
. Isso instala pkg
, o gerenciador de pacotes real que possui arquivos de configuração em /usr/local/etc/pkg
e que é um complemento em si.
O salto conceitual que você tem que fazer vindo do mundo das "distribuições" do Linux é que você não obtém um sistema operacional construído a partir de uma mistura de pacotes fornecidos por um "distribuidor". Você obtém um sistema operacional completo como uma unidade coerente (instalada por um instalador, atualizada com freebsd-update
e mantida como um único "ambiente de inicialização" usando o ZFS) e todos os itens de terceiros como portas e pacotes separados daquele . Se o você mesmo estiver fornecendo material de terceiros, seja você um desenvolvedor ou administrador do sistema, então você também faz portas e pacotes, ou apenas o coloca diretamente em /usr/local
de alguma forma.
Por outro lado, softwares customizados que são partes do sistema operacional estão em /
e /usr
onde o sistema operacional mora. O sistema de origem e compilação para todo o sistema operacional é fornecido em /usr/src
como parte desse sistema autossuficiente. Você faz modificações locais lá, compartilha-as com outras pessoas usando Subversion (FreeBSD) e git (TrueOS) se você quiser, e reconstrói a "userland" sozinha ou o sistema operacional inteiro (ambos " shell "e" kernel ") a partir disso.
Nota lateral interessante
Se você mesmo assim criar sua própria estrutura para suas próprias máquinas, deverá, de acordo com o próprio manual do sistema operacional, fornecer uma página de manual local hier
substituindo a página do sistema operacional. ☺
Leitura adicional
- " Capítulo 4. Instalando aplicativos: pacotes e portas ". Manual do FreeBSD . 2016. O Projeto de Documentação do FreeBSD.
- Manual do FreeBSD Porter . 2016. O Projeto de Documentação do FreeBSD.
-
hier
. §7. manual do FreeBSD . - " TrueOS para usuários do Linux ". TrueOS User Guide . 2016.
- link