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 --prefixopção para configurecom o prefixo diretório " ~/" ou $HOME/. Eu usei muito isso quando eu era estudante. :-)
Normalmente, o software faz a coisa certa quando você executa configurecom a opção --prefixcom 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, /proce /srv(para os diretórios de dados do servidor, mas eles são geralmente sob /var/libou /var/wwwe 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
/usrcomo Debian / Ubuntu /usr/local. Aprenda sua distribuição.
- Programas diferentes têm métodos de instalação diferentes.
--prefixsão úteis para programas usando configure. A melhor maneira de saber é provavelmente ler o README.txtarquivo 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-getou aptitudesempre instalados no local apropriado para a distribuição. Você não pode mudar esse lugar.