[Ubuntu-BR] Entendendo a organização da estrutura de pastas dos programas no Ubuntu 10.04

Andre Cavalcante andre.d.cavalcante em gmail.com
Quarta Dezembro 8 11:37:23 UTC 2010


Como diria o bom programador Jack: por partes.

Teu programa é auto-contido, isto é, tu vais distribuir tudo o que é
necessário, sem links/dependências com outras bibliotecas (além é claro do
glibc e kernel linux e eventualmente o LUA runtime)? Se sim é um programa de
terceiros e o melhor é fazer um script que copie tudo para /opt/teu_programa
e crie uns links simbólicos em /usr/bin para os executáveis e em /usr/lib
para as bibliotecas dinâmicas. A estrutura interna pode ser qualquer uma,
mas a que você sugeriu é muita boa.

Teu programa tem uma estrutura distribuída (usar várias bibliotecas
compartilhadas de outros pacotes e irá fornecer igualmente uma ou várias
bibliotecas compartilhadas)? Então gere um pacote .deb que guarde as coisas
onde devem ser guardadas (veja LSB). Tem vários detalhes, mas aí eu deixo
para os meus colegas da lista que são mantenedores de pacotes para te
explicar melhor isso.

Eu particularmente uso a primeira opção e, como uso Java, distribuo
compactados em zip com um script interno que pode ser executado tanto como
root (/opt/meu_programa) como usuário comum (/home/$USER/apps/meus_programa)
- quando não uso WebStart.

-- 
André Cavalcante
Almada, Portugal
Ubuntu User number # 24370
Quer saber sobre Open Source Software? http://sobreoss.blogspot.com
Quer saber mais sobre Espiritismo? http://sobreespiritismo.blogspot.com

Atenção: Este e-mail pode conter anexos no formato ODF (Open Document
Format)/ABNT (extensões odt, ods, odp, odb, odg). Antes de pedir os anexos
em outro formato, você pode instalar gratuita e livremente o BrOffice (
http://www.broffice.org) ou o seguinte Plugin para Microsoft Office (
http://www.sun.com/software/star/odf_plugin/get.jsp).


2010/12/8 luciano de souza <luchyanus em gmail.com>

> Caros,
>
> Gostaria de compreender melhor a estrutura de pastas do Linux.
> Escreverei um programinha em Lua. Ele se comporá de algumas
> bibliotecas dinâmicas "*.so", de um arquivo de banco de dados Sqlite3,
> de algum arquivo de configuração, de alguns scripts Lua, alguma
> documentação  e de um Shell script que invocará o interpretador de Lua
> que processará o referido script.
>
> Se estivesse em Windows, compactaria a pasta do programa com o Winrar,
> escolheria a opção de geração de um arquivo autoextraível ("exe" e,
> apontaria para a pasta Arquivos de Programas. Como não necessitaria de
> nenhuma gravação no registro do Windows, isto seria suficiente.
>
> Em Arquivos de Programas, ele criaria a pasta do programa e dentro dela:
>
> ./bin para executáveis e bibliotecas dinâmicas
> ./doc para alguma documentação
> dat para o banco de dados e para configurações
> scr para os scripts Lua
>
> Na pasta raiz do programa, no windows, teria um executável, o disparador.
>
> E no Linux? Como as coisas funcionam? Pelo que pude depreender:
>
> /bin contém os binários do sistema
> /usr/bin contém os executáveis de programas instalados no sistema
> /usr/lib contém as bibliotecas de programas instalados no sistema
> /usr/local/bin e /usr/local/lib parecem cumprir papel similar ao anterior
>
>
> enfim, estou confuso de como deveria organizar o meu programa. Se bem
> entendi, o Linux não adota uma pasta para cada programa, tendo dentro
> dela uma  micelânia de conteúdos.
>
> No Linux, parece que a instalação de um programa não está instalada em
> uma pasta, mas espalhada por diversas pastas de acordo com a função de
> cada arquivo dentro do programa.
>
> O que me dizem a este respeito? Será que estou correto? como deveria
> organizar os conteúdos que mencionei.
>
> Luciano de Souza
>
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>



More information about the ubuntu-br mailing list