Para que serve a pasta “/ usr / local / src”?

29

Eu queria colocar meus arquivos de trabalho (código) /usr/local/src, mas acho que já é uma pasta que tem algum outro significado semântico.

O que é isso? Devo colocar o código-fonte lá ou existe um lugar melhor?

Editar - eu sou o único usuário e administrador da máquina e não quero usar meu diretório pessoal porque está em uma unidade NFS.

ripper234
fonte

Respostas:

35

De acordo com o Linux FHS , /usré o local onde os itens baseados em distribuição são colocados e /usr/localé o local onde você colocaria suas próprias alterações localizadas ( /usr/localficará vazio após a instalação básica). Então, por exemplo, se você quisesse recompilar um pacote Ubuntu da fonte, o gerenciador de pacotes colocaria a fonte do pacote /usr/src/{package dir}. Se você baixou um programa não gerenciado por sua distribuição e desejava compilá-lo / instalá-lo, o FHS determina que você faça isso /usr/local/src.

EDIT: resposta curta, sim, insira seu código /usr/local/src.

Sean C.
fonte
10

Depende do que você está fazendo com essa fonte. Se for para referência, sim, é um bom lugar. /usr/localé reservado para o software instalado localmente pelo sysadmin. Portanto, se você deseja instalar o software junto com os arquivos de origem (para outros programas usarem ou para as pessoas verem), isso é bom.

No entanto, não é para ser um espaço de trabalho . Como é local , você pode fazer o que quiser, é claro, mas este não foi projetado para ser o lugar para colocar sua árvore de desenvolvimento de software.

Na verdade, isso deveria estar em um repositório de código (possivelmente em /srv/sourcerepoalgo assim), e os desenvolvedores verificariam suas próprias cópias de trabalho em seus diretórios pessoais.

mattdm
fonte
Eu segundo o que mattdm diz acima. Eu costumo usar /usr/local/srccomo um bom local para baixar código fonte de terceiros (por exemplo, para corrigir e reconstruir pacotes), não meu próprio código fonte, que, como diz matt, deve estar em / srv / ... (embora eu costumo usar /srv/vcs/sourcerepo). E espelhado remotamente, é claro.
Faheem Mitha
@ Faaem - meu diretório pessoal está em uma unidade NFS, então definitivamente não trabalho com o ramo de origem para estar lá (muito lento).
precisa saber é o seguinte
Eu acho que essa é a melhor resposta. Por exemplo, eu tenho aplicativos da web em / srv / http e seus repositórios em / srv / git. agora estou procurando ferramentas de suporte para desenvolvedores. Eu estava totalmente inclinado /usr/local/appnameou /usr/local/srcaté melhor, até ler isso. Isso me deu a razão que eu conhecia no fundo da minha mente. Esta é realmente uma área de trabalho, você me pegou. Então, e se eu colocá-lo lá, cloná-lo e ~/srcconstruí-lo lá, e empurrá-lo para o upstream, que é o lugar que foi adicionado / ou no caminho para executar as ferramentas de desenvolvimento. Eu apenas não gosto da idéia de / srv, já que não está sendo veiculado.
Brian Thomas
Então, o que srvsignifica?
SherylHohman
1
@ SherylHohman Realmente não significa nada (não é um acrônimo), mas escolhemos que implica "serviço". Consulte o ESF que diz "/ srv contém dados específicos do site que são servidos por este sistema" .
mattdm 7/02