Mostrando postagens com marcador apt-get. Mostrar todas as postagens
Mostrando postagens com marcador apt-get. Mostrar todas as postagens

sábado, 12 de fevereiro de 2011

Debian - Dependências na compilação com auto-apt

Mesmo com os atuais 29.000 pacotes disponíveis no site do Debian muitas vezes precisamos instalar algum pacote à moda antiga (./configure, make, make install), o problemas é que mesmo depois de ter instalado os pacotes básicos necessários para compilar programas (build-essential, make, etc...) ainda nos deparamos com dependências não resolvidas. Ai instala-se mais um pacote tenta novamente, mais outra depedência, e assim por diante. Entretanto existe uma solução quase que infalível, o auto-apt. para desfrutar dessa força amiga proceda da seguinte forma logado com o usuário root:

apt-get install auto-apt

Vai demorar um pouquinho, dependendo do que você já tenha instalado relativo aos pacotes necessário, pode chechar a algo em torno de 74 MB.

Na sequência digite os seguintes comandos:

# auto-apt update-local
# auto-apt update
# auto-apt updatedb

Concluído o processo preparatório do auto-apt você já poderá utilizar quando for instalar programas a partir dos pacotes fontes use o auto-apt da seguinte forma:

# auto-apt -y run ./configure
# auto-apt -y run make
# auto-apt run make install

sexta-feira, 7 de maio de 2010

APT - Repositório Local

Montando um repositório local apt com o dpkg-scanpackages.

Muitas vezes precisamos de um repositório local para aliviar nossa banda de Internet, o bom é que podemos utilizar um repositório local da mesma forma que os repositórios localizados em ftps e mirrors do debian, e ao invés dos computadores da rede ir buscar pacotes na Internet buscará na rede local.

O seguinte pacote deve está instalado: dpkg-dev_1.14.25_all.deb ou uma versão mais atualizada.

Para montar seu repositório você deve copiar os pacotes para um diretório, digamos, dentro do diretório /home. Crie os diretórios /home/apt/main e copie todos os pacotes que você deseja instalar pra ele. Vamos ao trabalho:

Para copiar os arquivos .deb do CD de instalação use a sequência de comandos:

[/root]# cd /home/apt/main
[/root]# find /media/cdrom/pool/ -iname '*.deb' -exec cp -i {} . \;

O comando a ser usado agora é o dpkg-scanpackages. Você precisará criar um arquivo para auxiliar no processo de criação do arquivo Packages.gz – arquivo que guarda as definições de pacotes e que será lido quando você fizer executar o comando apt-get update –. Este arquivo auxiliar pode estar vazio. dentro do diretório /home/apt/:

[/root]# touch /home/apt/arquivo

Agora o processo efetivo de criação do arquivo Packages.gz:

[/root]# dpkg-scanpackages main arquivo | gzip > main/Packages.gz

Agora é só adicionar no /etc/sources.list a linha: deb file:/home/apt main/ Use o comando:

[/root]# echo 'deb file:/home/apt main/' >> /etc/apt/sources.list

Para complementar acrescentar, se você for usar apenas o repositório local, acrescente o seguinte parâmetro ao arquivo /etc/apt/apt.conf
“APT::Get::AllowUnauthenticated 1 ;” para que não apareça a mensagem: AVISO: Os pacotes a seguir não podem ser autenticados. Caso este arquivo não exista você poderá criá-lo.

Sequência de comandos:

[/root]# mkdir -p /home/apt/main
[/root]# apt-get install dpkg-dev
[/root]# cd /home/apt /main
[/root]# find /media/cdrom/pool/ -iname '*.deb' -exec cp -i {} . \;
[/root]# cd /home/apt
[/root]# touch arquivo
[/root]# dpkg-scanpackages main arquivo | gzip > main/Packages.gz
[/root]# echo 'deb file:/home/apt main/' >> /etc/apt/sources.list
[/root]# echo 'APT::Get::AllowUnauthenticated 1 ;' >> apt.conf
[/root]# apt-get update

Caso prefira usar seu repositório via http, possibilitando o uso via rede, é só instalar o apache2 e criar um link simbólico do diretório /home/apt para /var/www/. Exemplo:

[root]# ln -s /home/apt /var/www/apt

E no /etc/apt/souces.list mude a linha deb file:/home/apt main/ para deb http://ip_do_pc_repositório/apt main/

[/root]# echo 'deb http://ip_do_pc_repositório/apt main/' >> /etc/apt/sources.list