terça-feira, 16 de abril de 2019

Criar uma source.list e resolver os problemas de chaves gpg


ADICIONAR UM REPOSITÓRIO NO SOURCE.LIST, ADICIONAR A CHAVE PÚBLICA E RESOLVER PROBLEMA DE ERRO GPG


Uma das grandes dificuldades que temos no Linux é configurar a sources.list, não é mesmo? Este arquivo está localizado na pasta /etc/apt e contém as fontes das quais os pacotes/softwares podem ser obtidos.
Por padrão, apenas os repositórios oficiais da distribuição vem habilitado, se quisermos instalar aplicativos de outras distros ou de particulares, como por exemplo, de uma universidade, temos que modificar esta lista de repositórios. E é nesta hora que muitos procuram um sources.list "completo" que algum usuário gentilmente disponibilizou na internet, porém, essa source.list geralmente não tem os repositórios que você deseja. Então a saída é você aprender a criar a sua própria sources.list. E é isso que você vai aprender nesta dica.
Antes do artigo, veja algumas formas de nos ajudar.
O nosso conteúdo sempre foi, é e sempre será livre e gratuito, isto quer dizer que você pode e deve compartilhá-lo, pode usá-lo e divulgá-lo. Se esse conteúdo é, ou de alguma forma, foi relevante para você, você pode nos incentivar a continuar este trabalho ajudando o nosso blog e o nosso canal do Youtube a crescer.
Existem quatro maneiras de você nos ajudar, são elas:
  • Você pode nos seguir por e-mail, deixando o seu e-mail no nosso blog para ser avisado de futuras publicações.
  • Pode compartilhar os nossos conteúdos, tanto do blog quanto do canal.
  • Pode também se inscrever no nosso canal.
  • Ou ainda, pode nos ajudar fazendo uma doação de qualquer quantia na conta abaixo:

Banco: Caixa Econômica Federal
Agência: 0051 – Caruaru-PE
Operação: 013 – Conta poupança
Conta: 00307298-3
Beneficiário: José Roberto

Ajude-nos a continuar com este trabalho!
Desde já agradeço a sua contribuição, a sua visita, agradeço por compartilhar o nosso conteúdo e por uma eventual doação ao nosso blog e canal.
Fique agora com o artigo.


Para criar uma source.list manualmente, a primeira coisa a fazer é abrir um editor de texto, naturalmente.
Depois você vai inserir as linhas que dirá ao sistema onde ele irá procurar os pacotes. Normalmente, o que tem que ser feito é introduzir uma linha que começa com o prefixo deb ou deb-src, o que indica que se trata de uma fonte de pacotes DEB ou código fonte“source”.
Exemplo:
deb http://host/debian distribuição seção1 seção2 seção3
deb-src http://host/debian distribuição seção1 seção2 seção3


É lógico que essas entradas são fictícias e não devem ser usadas. A primeira palavra das linhas, deb e deb-src indicam o tipo de repositório: se guarda pacotes binários (deb), ou seja, os pré-compilados que normalmente usamos ou se guarda pacotes fonte (deb-src), que são o fonte original do programa mais o arquivo de controle Debian (.dsc) e o diff.gz contendo as modificações necessárias para se debianizar o programa.
Nesse tutorial eu vou criar uma source.list do repositório do Linux Educacional 6.1. A primeira coisa a ser feita é descobrir o endereço do repositório desejado. Para isso, vá em uma máquina que tenha o sistema que você deseja os repositórios e rode um ‘sudo apt-get update’ e copie o link do repositório desejado. Geralmente está na forma:
{<endereço do repositório> <stable ou unstable> <InRelease ou Release>}
No meu caso, o que eu consegui com o comando “sudo apt-get update” em uma máquina com LE6.1 foi:
Obter:1 http://repo.c3sl.ufpr.br/le6 stable InRelease [3.990 B]”
Obter:7 http://repo.c3sl.ufpr.br/le6 stable/main Sources [8.222 B]”
Obter:8 http://repo.c3sl.ufpr.br/le6 stable/main i386 Packages [8.026 B]”
Obter:9 http://repo.c3sl.ufpr.br/le6 stable/main amd64 Packages [8.669 B]”
Isso significa que o endereço do nosso repositório é:
E a nossa distro está em uma versão estavel “stable” e que esse é o endereço do repositório principal “main”. Então a linha no nosso source.list, deve ficar assim:
{<tipo de pacote> <endereço do repositório> <distro estável ou instável> <indicação do repositório principal ou outro tipo>}.
Para o nosso caso vai ficar assim:
deb http://repo.c3sl.ufpr.br/le6/ stable main (só pacotes .deb)
deb-src http://repo.c3sl.ufpr.br/le6/ stable main (que também incluirá os códigos fontes)
A linha acima, serve para informar a localização dos pacotes de instalação dos aplicativos desenvolvidos para serem usados no Linux educacional 6.1.
Depois é só salvar com um nome sugestivo e colocar na pasta:
/etc/apt/sources.list.d
Tem que ser como administrador porque um usuário comum não tem permissão de copiar nada para a pasta acima.
Para atualizar o repositório, roda um :
# sudo apt-get update
Você pode obter um erro como este para o repositório recentemente adicionado.
W: Erro GPG: <repositório adicionado>: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY (NÚMERO DA CHAVE FALTOSA).
No meu caso, eu obtive este erro.
W: Erro GPG: http://repo.c3sl.ufpr.br/le6 stable InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY BE3EB7A8D83B1761.
Isso se dá porque o sistema ainda não contém as chaves de autenticação dos repositórios adicionados. Para adicionar as chaves do repositório, a primeira coisa a fazer é conseguir as chaves.
Usando o endereço do repositório em um navegador, entre no mesmo e encontre a chave pública para o repositório. Geralmente está junto dos arquivos que compõem o repositório.
No meu caso, eu copiei o endereço do repositório “http://repo.c3sl.ufpr.br/le6coloquei na barra de endereços do meu navegador e entrei no diretório principal do repositório.
Dentro do repositório eu encontrei o arquivo das chaves que é: “le.c3sl.ufpr.br.key”.
Agora é só copiar o endereço do arquivo no repositório e adicioná-lo ao apt com o comando:
# sudo wget -q -O- <endereço do arquivo de chaves no repositório> | apt-key add
No meu caso ficou:
# sudo wget -q -O- http://repo.c3sl.ufpr.br/le6/le.c3sl.ufpr.br.key | apt-key add
Se depois de colocara a senha você obter um “E: This command can only be used by root.”, mesmo você usando o “sudo”, faça:
# sudo su
Digite sua senha e rode o comando novamente sem o “sudo”.
# wget -q -O- <endereço do arquivo de chaves no repositório> | apt-key add
No meu caso ficou:
# wget -q -O- http://repo.c3sl.ufpr.br/le6/le.c3sl.ufpr.br.key | apt-key add
Você obterá como resultado depois do processo terminado um “ok”.
No meu caso ficou assim:
roberto@roberto-MPxx:~$ sudo su
root@roberto-MPxx:/home/roberto# wget -q -O- http://repo.c3sl.ufpr.br/le6/le.c3sl.ufpr.br.key | apt-key add
OK
Essa é a saída no meu terminal.
Agora saia do super usuário com “exit” e atualize os repositórios com:
# sudo apt-get update
Dessa vez deve correr tudo bem e você poderá instalar os aplicativos que deseja.
Bem pessoal, por hoje é isso. Em breve voltarei com mais tutoriais. Se gosta do nosso trabalho, divulgue o nosso blog e o nosso canal, nos ajude escolhendo uma das formas descritas acima. Desde já agradeço a visita e uma possível contribuição.



Nenhum comentário:

Postar um comentário

Deixe seu comentário, sua crítica ou seu elogio.