Código-fonte do Linux

Código-fonte do Linux

Estou procurando o código-fonte para comandos de sistema comuns usados/disponíveis no Linux, como cal, su, sudo, ls, dir, pwd, etc. Quero usar o código-fonte para aprender mais sobre a administração do sistema Linux.

Onde está localizado o código-fonte para binários de sistema como esses – código que está fora do kernel do Linux, mas distribuído com a maioria das variantes do GNU/Linux?

Qual distribuição Linux é melhor para aprender e visualizar o código-fonte desses comandos?

É possível alterar o código para saber como eles realmente funcionam?

Responder1

Vale a pena ter em mente que “Linux” se refere apenas ao kernel. Os comandos básicos vêm doGNU Coreutilspacote, bem como de muitos outros pacotes semelhantes.

Porém, quando procuro coisas assim, geralmente vou aoRepositório SVN do FreeBSD, que considero mais fácil de navegar do que vários pacotes GNU. Por exemplo, a fonte lspode ser encontrada aqui:

Responder2

Se você está procurando uma distribuição Linux totalmente fonte, você deve instalarGentoo.

Caso contrário, você pode seguir um caminho mais “manual” e tentar afiar os dentes comLinux do zero, que parece ser o que você está procurando. É um guia passo a passo para construir um sistema Linux utilizável desde o início. Ele contém uma explicação detalhada do que é cada pacote e como construí-los. É um pouco assustador e você definitivamente deveria segui-lo comAlém do Linux do zero, que visa ter umfuncionalSistema Linux.

Se tudo o que você deseja é dar uma olhada nesses aplicativos comuns, basta baixar oCoreutilspacote.

Responder3

Geralmente, você pode simplesmente pesquisar no Google as fontes dos respectivos utilitários. Em distros baseadas em Debian você pode usar apt-getpara baixar fontes (debianizadas): por exemplo, apt-get source sudoirá baixar e descompactar fontes para sudo. Para descobrir a que pacote o utilitário pertence, você pode usar dpkg -S /usr/bin/sudoou, se puder, usar apt-filepara procurar arquivos em pacotes não instalados.

Responder4

Você pode obter o código-fonte dos pacotes instalando o pacote fonte ou baixando o código-fonte do site do pacote. O pacote no qual você está interessado se chama coreutils. Como instalar o pacote fonte dependerá da distribuição do Linux que você está usando. Mas se você quiser baixar o código-fonte do site do pacote, você pode visitarcoreutils baixar site ftp.

Cada distribuição pode ter alterado o pacote básico para melhorar as opções ou alterar os padrões. Mas mais ou menos o código base é o mesmo que você encontrará no site do GNU.

informação relacionada