Normalmente, os programas são instalados em alguns diretórios em um diretório superior , chamado prefixo . Qual diretório principal usar depende de quem está instalando, para fins de bruxa e quem gerenciará o software.
O prefixo /usr
é um software usado por sua distribuição. Você deve não instalar qualquer outro software lá, porque vai confundir a distribuição durante a instalação e atualização de software embalado pela distribuição. Portanto , não instale seu próprio software compilado lá. Essa não é uma boa ideia, a menos que você realmente saiba o que faz. E a menos que você seja um desenvolvedor do Debian ou Ubunut, normalmente não. Eu não faria isso de qualquer maneira.
Para software comercial, o prefixo /opt
é usado. Está reservado para eles interferirem menos nas distribuições e no administrador do sistema local.
Para o software que o administrador do sistema instala para todos os usuários, o prefixo /usr/local
é usado. Está fora do caminho tanto da instalação comercial quanto da distribuição e não interferirá com elas. Portanto, como administrador do sistema, você o usa (se você possui privilégios de root, é um administrador do sistema).
Se você é um usuário comum instalando software para si mesmo, pode usar seu diretório pessoal como prefixo, usando a --prefix
opção para configure
com o prefixo diretório " ~/
" ou $HOME/
. Eu usei muito isso quando eu era estudante. :-)
Normalmente, o software faz a coisa certa quando você executa configure
com a opção --prefix
com o valor certo e depois make; make install
.
Sob qualquer um desses prefixos, você geralmente encontra esses diretórios em uma instalação padrão.
bin
- os programas executáveis, binários.
sbin
- binários do sistema, que geralmente não devem ser executados por usuários comuns.
man
- páginas de manual para programas, bibliotecas e arquivos de configuração etc.
etc
- arquivos de configuração com valores padrão para o software.
lib
- bibliotecas de programas e arquivos de dados que dependem da arquitetura (como a CPU) do seu computador.
share
- arquivos de dados que não são diferentes em arquiteturas diferentes e podem ser compartilhados entre computadores diferentes.
var
- diretórios com dados que são alterados durante a execução do programa. Como arquivos de log etc.
A maioria desses diretórios pode ser usada com sistemas de arquivos protegidos contra gravação para aumentar a segurança. O único que os usuários precisam gravar é o var/
diretório. Quando o software é atualizado, esses diretórios obviamente (?) Precisam ter privilégios de gravação. Isso pode ser feito com uma remontagem com privilégios de gravação durante a instalação e depois remontada com somente leitura após a instalação. Mas isso é avançado, e eu apenas o cito como um exemplo de gerenciamento avançado de pacotes.
Há também alguns diretórios diretamente sob /
(o diretório root) que não existe em qualquer outro prefixo, como /dev
, /tmp
, /proc
e /srv
(para os diretórios de dados do servidor, mas eles são geralmente sob /var/lib
ou /var/www
e diretórios assim, então você precisa de configuração mudança use este diretório .. Eu recomendo que você faça isso quando estiver executando um servidor. Use apenas /var/
para testar uma instalação padrão).
- Linux não é MS Windows. Existem muitos lugares para colocar os programas que você instala. Depende de quem instala e para quem. Leia no meu post. Aviso prévio. O RedHat usa
/usr
como Debian / Ubuntu /usr/local
. Aprenda sua distribuição.
- Programas diferentes têm métodos de instalação diferentes.
--prefix
são úteis para programas usando configure
. A melhor maneira de saber é provavelmente ler o README.txt
arquivo ou algo parecido, que você provavelmente recebe no arquivo tar. O arquivo tar pode ser extraído em qualquer lugar, como no diretório inicial. Após a conclusão da etapa de instalação, você poderá remover o arquivo tar extraído, se houver pouco armazenamento. Mas não faça isso antes, a menos que você tenha testado sua instalação corretamente.
- Programas instalados com
apt-get
ou aptitude
sempre instalados no local apropriado para a distribuição. Você não pode mudar esse lugar.