Como instalar um kernel 100% livre no seu Linux

Autor: Elias Praciano

O Linux-libre é um projeto que tem o objetivo de disponibilizar um kernel 100% livre para o sistema operacional GNU/Linux — proporcionando a seus usuários uma lufada de ar ainda mais fresca de liberdade.
Caminha ao lado do projeto oficial do kernel Linux, que você já conhece, sempre mantendo uma versão “filtrada” – ou seja, sem código proprietário.

O Linux-libre é uma versão cuidadosamente modificada do kernel do Linux, do qual são removidos “blobs” binários e trechos de código sob licença proprietária.

Neste post, vou ensinar a instalar um kernel 100% livre (ou libre), na sua distro atual — usando como exemplo o Debian 9 Stretch.
O procedimento pode ser seguido ipsus literis em outras plataformas, baseadas no Debian — como é o caso do Ubuntu, Devuan, Trisquel etc.
Com algumas adaptações, é possível adequar as informações do texto a outras distribuições, claro.
Para quem prefere outra via, é possível instalar uma distro GNU/Linux, dentre as que já fazem uso deste kernel, por padrão. Veja algumas:

  • BLAG.
  • gNewSense.
  • Ututu.
  • Debian — esta não faz uso do kernel Linux-libre. Contudo, no seu ramo principal, ela faz uma filtragem própria, para reduzir a presença de softwares que não são 100% livres – inclusive dentro do kernel.
    Saiba mais sobre aonde encontrar e baixar a sua distro Debian.
  • FreeSlack.

O projeto tem o apoio da FSFLA (Free Software Foundation Latin America) e pode ser adotado por qualquer distro ou usuário.

Outras opções também livres

Não existem motivos razoáveis o suficiente para fornecer computadores ou acessórios que só funcionem com o uso de drivers proprietários.
Se deixar de comprar produtos de informática que só funcionam com algum código proprietário não é opção para você — procure deixar claro o seu inconformismo para o fabricante: via email, nas redes sociais etc.

Manter-se calado e invisível, não vai fazer com que as empresas prestem mais atenção às demandas dos clientes que preferem softwares livres.

Outras opções de kernel livres e menos conhecidas — que você pode usar com o Linux — são o kfreeBSD e o GNU/Hurd.
Sim, o primeiro é o kernel do freeBSD.
O Hurd é um projeto da organização GNU, anterior ao próprio Linux.
Seu objetivo era substituir o kernel do Unix, por uma opção 100% libre, mas o kernel Linux acabou se provando mais viável e é o que nós usamos hoje, nas nossas distribuições.
kernel GNU/Hurd ainda está em fase experimental.
Por fim, aqui estamos por que o código proprietário conseguiu encontrar meios de se infiltrar…

Como preparar o sistema para receber o kernel linux-libre

Existe o site oficial para baixar a versão mais atual do kernel Linux-libre, mas a maneira mais segura e cômoda é usar o repositório oficial — que fornece o meta-pacote com as devidas atualizações.
O repositório, em questão, contém os .debs do Linux-libre, compilados para as plataformas (x86) 32 e 64-bit.
Para adicionar o repositório, é preciso editar o ‘sources.list’:


sudo apt edit-sources

Acrescente ao final do arquivo a linha:


deb http://linux-libre.fsfla.org/pub/linux-libre/freesh/ freesh main

Use o comando wget para obter a chave gpg com a qual o repositório foi “assinado”:


wget https://jxself.org/gpg.inc 

--2017-07-19 14:40:54--  https://jxself.org/gpg.inc
Resolvendo jxself.org (jxself.org)... 96.66.250.147
Conectando-se a jxself.org (jxself.org)|96.66.250.147|:443... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 5588 (5,5K) 
Salvando em: “gpg.inc”

gpg.inc             100%[===================>]   5,46K  26,3KB/s    in 0,2s    

2017-07-19 14:40:56 (26,3 KB/s) - “gpg.inc” salvo [5588/5588]

Verifique a assinatura gpg:


gpg --with-fingerprint gpg.inc

pub   rsa4096 2013-09-07 [SC]
uid           Jason Self <j@jxself.org>
uid           Jason Self <jason@bluehome.net>
uid           Jason Self <jself@gnu.org>
sub   rsa4096 2013-09-07 [E]

Se tudo correu bem, até agora, os comandos que seguem instruem o gestor de pacotes a confiar na chave gpg que você baixou e removem a cópia local do arquivo gpg.inc, que já não é mais necessária:


sudo apt-key add gpg.inc

OK

rm gpg.inc

Agora, atualize o repositório:


sudo apt update

Se houver atualizações para fazer, faça-as antes de prosseguir:


sudo apt full-upgrade

Agora, já é possível prosseguir com o download e a instalação do kernel.

Como escolher o seu kernel

É interessante investir algum tempo na análise das suas opções e escolher qual o ramo do kernel é mais adequado para você.
Há várias opções de pacotes contendo o kernel “comum” que podem ser instaladas.
Isto pode ser verificado com o comando ‘apt search’:


apt search linux-image

opções de instalação do linux-libre no Debian
O que nos interessa aqui, entretanto, são as opções denominadas “linux-libre”. Veja como encontrar:


apt search linux-libre

Sorting... Pronto
Full Text Search... Pronto
linux-libre/stable 4.12.2 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest version.

linux-libre-4.1/stable 4.1.42 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest version in the 4.1 series.

linux-libre-4.11/stable 4.11.11 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest version in the 4.11 series.

linux-libre-4.12/stable 4.12.2 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest version in the 4.12 series.

linux-libre-4.9/stable 4.9.38 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest version in the 4.9 series.

linux-libre-lts/stable 4.9.38 amd64
  This is a virtual package for Linux-libre. It will always depend on the latest LTS version.

A sua lista vai ser diferente da minha, provavelmente.
Preste atenção à explicação que acompanha cada versão disponível do linux-libre.
Algumas opções de pacotes são LTS, ou seja de suporte prolongado.
Estas serão atualizadas apenas quando sair uma nova versão da série (LTS).
Levando em conta a minha lista, acima, vou escolher uma entre 2 opções:

  • linux-libre — trata-se da primeira opção e vai manter o sistema sempre atualizado com a última versão do kernel.
  • linux-libre-lts — vai manter o sistema sempre atualizado de acordo com a série LTS.

Note que ambos os pacotes são desacompanhados de números de versão — por que será sempre o mais atual disponível naquela série.
Muitas outras opções podem ser encontradas, a depender da distribuição instalada aí e da sua plataforma de hardware.
Fique atento para instalar o pacote correto.
No meu exemplo, vou com esta aqui:


sudo apt install linux-libre
[sudo] senha para justincase: 
Lendo listas de pacotes... Pronto
Construindo árvore de dependências       
Lendo informação de estado... Pronto
The following additional packages will be installed:
  freesh-keyring linux-firmware-image-4.12.2-gnu
  linux-headers-4.12.2-gnu linux-image-4.12.2-gnu
  linux-libc-dev
Os NOVOS pacotes a seguir serão instalados:
  freesh-keyring linux-firmware-image-4.12.2-gnu
  linux-headers-4.12.2-gnu linux-image-4.12.2-gnu
  linux-libc-dev linux-libre
0 pacotes atualizados, 6 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 85,1 MB de arquivos.
Depois desta operação, 331 MB adicionais de espaço em disco serão usados.
Você quer continuar? [S/n] 

Se você também usa o libreboot, realize o seguinte procedimento, após a instalação:


cd /boot/grub

sudo ln -s grub.cfg libreboot_grub.cfg

Agora, reinicie o sistema e escolha, no menu GRUB, o kernel com o qual você deseja trabalhar.
O GRUB continuará a mostrar o kernel non-free ou convencional, que você já usava antes.
debian kernel options
E, sim, você pode instalar mais de uma versão de kernel no seu sistema.
Se algo não funcionar, como a placa de interface e rede Wi-Fi, sempre será possível voltar à sua configuração anterior, selecionando a opção que você já sabe que funciona.

Referências

Review do linux-libre no notebook Samsung Ultra 5.

Fonte: https://elias.praciano.com/

Alberto M. Sato

Engenheiro de Eletrônica e Telecomunicações (CEFET-PR 88), com certificado da Cisco CCNP (Cisco Certified Network Professional), tendo atuado por 11 anos na Telepar / BrasilTelecom nas áreas de te...

Mais Posts De Alberto M. Sato

Posts Relacionados

Deixe um comentário