Primeiramente eu preciso te agradecer, já estava morrendo de raiva. Eu tinha instalado o Ubuntu Mate 16.04 no meu notebook Asus. Adorei o Mate, mas o note travava direto. Achei que era culpa do Mate. Formatei o HD e instalei o Ubuntu. Continuou travando feio. Ontem eu criei coragem e segui suas dicas, ficou show de bola!. Muito obrigado mesmo.
Agora vem a dúvida: tenho num outro pc com o debian 8.7 e ele também está congelando de vez em quando. A sua dica de atualização do Kernel dá certo no debian?
Ao digitar o comando uname -ir eu obtenho:
3.16.0-4-686-pae unknown
Ele é genérico ou lowlatency?
Grande abraço.
Oi, de nada.
Olha, eu troquei o Debian pelo Ubuntu há
mais de dez anos, portanto o que eu sabia de Debian hoje em dia pode não corresponder mais à realidade. Enfim: não garanto que os comandos que vou postar aqui funcionarão no seu Debian atual.
Bom, vamos lá: primeiramente, percebi que o kernel do seu Debian é
PAE. Um kernel PAE só deve ser usado em computador que tenha processador de
32 bits e
mais de 4 GB de RAM, pois a finalidade do kernel PAE é justamente tentar fazer com que o sistema operacional (que terá de ser de 32 bits) consiga gerenciar mais de 4 GB de RAM (algo que no mundo Windows de 32 bits não ocorre). Em outras palavras: o kernel PAE é um kernel de 32 bits que é usado para "emular" um sistema de 64 bits em um computador de 32 bits. Digo: em tese, somente sistemas de 64 bits conseguem gerenciar mais de 4 GB de RAM, porém com um kernel PAE o Linux de
32 bits consegue gerenciar mais de 4 GB de RAM ( um kernel PAE permite que um sistema operacional Linux de 32 bits gerencie
até 64 GB de RAM).
Seu computador usa processador de 32 bits (portanto está com Debian de 32 bits)
e, além disso, tem mais de 4 GB de RAM? Se seu computador atende as duas condições, então está correto ele estar com um kernel PAE. No entanto, caso seu computador não atenda a ao menos uma das duas condições, o kernel não deverá ser PAE. Digo: se o processador for de
64 bits, ou caso seu computador tenha
4 GB de RAM ou menos, substitua o kernel PAE por um que não seja PAE. Explicando melhor: caso o seu computador possua processador de
32 bits e
4 GB (ou menos) de RAM, instale um kernel de
32 bits que
não seja PAE. E, caso seu computador tenha processador de
64 bits (neste caso
pouco importa a quantidade de RAM), instale um kernel de
64 bits.
Para verificar se o processador do seu computador é de 32 bits ou de 64 bits, execute este comando, no terminal:
lscpu
Caso o resultado mostre algo assim (destaquei em
azul as partes que interessam):
Arquitetura: x86_64
Modo(s) operacional da CPU:32-bit, 64-bit
...então o processador do seu computador é mesmo de 64 bits.
Caso apareça algo como "x86_32" ou somente "32-bit" lá em "Modo(s) operacional da CPU:", então o processador realmente é de 32 bits.
Seu Debian talvez não tenha o comando
lscpu. Em tal caso, execute este outro comando:
cat /proc/cpuinfo |grep -i 'core id'
...e verifique o
maior número de id (os números poderão se repetir, no resultado, mas o que importa é que você veja qual dos números é o maior). Se no resultado do comando o maior número de "core id" for maior que 0 (zero), como p.ex. 1, 2, 3..., então seu computador possui processador de 64 bits. Mas caso o "core id" seja somente 0 (zero), então seu computador possui processador de 32 bits.
Pelo menos na época em que eu usava o Debian, os kernels por padrão eram "generic": para obter um kernel 'lowlatency" era necessário baixar o código fonte (source) do kernel e então construir os pacotes DEB dele usando uma linha de comando assim:
make -j4 deb-pkg LOCALVERSION=-lowlatency KDEB_PKGVERSION=$(make kernelversion)-1
Exemplo de comandos que poderiam ser usados para construir um kernel de 64 bits (amd64), versão 4.2:
1. Baixar os pacotes necessários para construir o kernel:
sudo apt-get install build-essential fakeroot build-dep linux libncurses5-dev libncursesw5-dev linux-source-4.2 -y
2. Descompactar o código fonte do kernel 4.2:
tar -xaf /usr/src/linux-source-4.2.tar.xz
3. Acessar a pasta dentro da qual o código fonte foi descompactado, e daí criar dentro dela o arquivo oculto
.config, contendo uma cópia das configurações de inicialização do kernel atualmente em uso no sistema do seu computador:
cd /usr/src/linux-source-4.2 ; cp /boot/config-`uname -r` .config
4. Inicialize a interface de préconfiguração do código fonte que será compilado:
make menuconfig
5. Dentro da interface do menuconfig, habilite a opção
preempt e também habilite
timers 1000Hz6. Execute este comando para compilar o código fonte construindo os pacotes DEB:
make -j4 deb-pkg LOCALVERSION=-lowlatency KDEB_PKGVERSION=$(make kernelversion)-1
7. "Subir" 1 nível de diretório e então instalar os pacotes DEB:
cd .. ; dpkg -i linux-*.deb
8. Atualizar o GRUB e reiniciar o sistema operacional:
sudo update-grub ; sudo telinit 6
Repetindo: não garanto que esse procedimento funcione, mas era assim que era feito, antigamente (há mais de 1 década).
Para usar um kernel mais novo, eu no seu lugar instalaria o Debian
stretch (Debian 9), que de acordo com
esta página utiliza o kernerl versão
4.9.0. Grave um Live CD do Debian
stretch num DVD (ou num pendrive, usando o programa
UNetBootIn) e teste esse Live CD no seu computador, para ver como esse kernel se comporta com o hardware desse seu computador. Se tudo funcionar bem, aí você migra para o Debian stretch. Embora seja uma versão "testing", o stretch atualmente está em estado "frozen", o que significa que ele já está praticamente estável (após cerca de 3 anos de desenvolvimento... Ufaaaaaaaa...).
Alternativamente, você pode instalar o Ubuntu nesse outro computador que está com Debian. Uma das razões por que cansei do Debian é que os desenvolvedores são tão "neuróticos" com estabilidade que muitos drivers e kernels de versão mais recente não ficam disponíveis na versão stable / estável. Daí ou você instala uma versão "testing" do Debian, ou então vai para uma distro mais flexível como é o caso da Ubuntu.
Caso queira usar uma versão "peso leve" do Ubuntu, instale o
XUbuntu 16.04. É excelente, eu recomendo bastante.
Há tutoriais na Internet dizendo para instalar o kernel do Ubuntu no Debian, porém isso não deve ser feito, já que na prática você estaria transformando seu Debian em um Ubuntu, além de correr o risco de "quebrar" sua distro (ou parte dela), em razão de alguns patches e módulos do kernel Debian poderem não funcionar no kernel Ubuntu.