How to compile kernel 4.13.7 on Debian 9.2

 

How to compile kernel 4.13.7 on Debian 9.2

How to compile kernel 4.13.7 on Debian 9.2

Il kernel 4.13 porta con se diverse novità, e ad oggi si può ottenere installandolo da Debian Testing, oppure provare a compilarlo direttamente su Debian Stretch 9.2. L'unico problema è la mancanza del pacchetto kernel-package che bisogna procurarselo dai repo testing:

# echo 'deb http://ftp.it.debian.org/debian/ testing main' > /etc/apt/sources.list.d/testing.list
# apt update
# apt install git fakeroot build-essential ncurses-dev libssl-dev bc
# apt --no-install-recommends install -t testing kernel-package

una volta installato kernel package andare a commentare il repo testing che non ci servirà più!

How to compile kernel 4.13.7 on Debian 9.2

Compilazione ed installazione:

$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.13.7.tar.xz
$ tar xvf linux-4*
$ cd linux-4.13.7/
$ cp /boot/config-$(uname -r) .config
$ make menuconfig
$ make-kpkg clean
$ fakeroot make-kpkg --initrd --revision=1.0.edm kernel_image kernel_headers -j8
$ cd ..
$ sudo dpkg -i linux-image-* linux-headers-*

How to compile kernel 4.13.7 on Debian 9.2

enjoy πŸ˜‰

(Solved) /proc/devices: No entry for device-mapper found

 

(Solved) /proc/devices: No entry for device-mapper found 

(Solved) /proc/devices: No entry for device-mapper found. Dopo aver compilato il kernel 4.8 su Debian Stretch/Sid, l'ho installato anche su Debian Jessie, e mi sono ritrovato lanciando il comando update-grub, con l'errore "No entry for device-mapper found". Per risolvere il problema bisogna ricompilare il kernel ed abilitare il modulo device-mapper. Per verificare se è presente:

# lsmod | grep -i dm-mod
# modinfo dm-mod

riepilogando:

$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.8.12.tar.xz
$ tar xvf linux-4.8.12.tar.xz
$ cd linux-4.8.12/
$ cp /boot/config-$(uname -r) .config
$ make menuconfig

poi abilitare il modulo in Device Drivers –> Multiple devices driver support (RAID and LVM) –> Device mapper support

(Solved) /proc/devices: No entrfor device-mapper found (Solved) /proc/devices: No entry for device-mapper found(Solved) /proc/devices: No entry for device-mapper found

salvare, e dopo aver ricompilato, riavviare:

# make -j8;make modules -j8;make modules_install -j8;make install
# reboot

enjoy πŸ˜‰

 

How to compile kernel 4.8.12 on Debian Stretch/Sid

 

How to compile kernel 4.8.12 on Debian Stretch/Sid

How to compile kernel 4.8.12 on Debian Stretch/Sid. Nella categoria Kernel ci sono diverse guide su come ricompilare un kernel, ma dopo qualche anno che non lo facevo più, ho dovuto rimetterci mano perchè mi serve abilitato il modulo UFS, per la scrittura delle partizioni con Debian Gnu/kFreeBSD e FreeBSD. Al momento della compilazione si è verificato un errore, che successivamente ho capito essere un bug, quindi di seguito anche la soluzione:

Installare l'occorrente per la compilazione:

$ sudo apt-get install git fakeroot build-essential ncurses-dev libssl-dev bc
$ sudo apt-get --no-install-recommends install kernel-package

Scaricare l'ultimo kernel, da kernel.org, al momento il 4.8.12:

$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.8.12.tar.xz
$ tar xvf linux-4.8.12.tar.xz
$ cd linux-4.8.12/
$ cp /boot/config-$(uname -r) .config
$ make menuconfig
$ make-kpkg clean
$ fakeroot make-kpkg --initrd --revision=1.0.UFS kernel_image kernel_headers -j12
$ cd ..
$ sudo dpkg -i linux-image-* linux-headers-*

Quello sopra è il metodo standard per la compilazione del kernel, ma attualmente per un bug la compilazione fallisce restituendo un errore del tipo:

"make[2]: *** No rule to make target 'debian/certs/benh@debian.org.cert.pem', needed by 'certs/x509_certificate_list'.  Stop"

"No rule to make target 'debian/certs/benh@debian.org.cert.pem')"

A questo punto ho provato a commentare senza successo nel .config le voci:

CONFIG_MODULE_SIG_KEY=""
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_SYSTEM_TRUSTED_KEYS=""

ma al momento di lanciare il comando make menuconfig, in automatico la stringa CONFIG_SYSTEM_TRUSTED_KEYRING=y, viene attivata. Per risolvere il problema bisogna modificare il file .config abilitando quello di cui si ha bisogno, nel mio caso il modulo UFS, e poi lanciare make localmodconfig

$ make localmodconfig 

invece di:

$ make menuconfig

How to compile kernel 4.8.12 on Debian Stretch/Sid.

enjoy πŸ˜‰

 

Compilare kernel 3.6.x vanilla alla Debian way

 

 

 

Compilare kernel 3.6.x vanilla alla Debian way:

 

# apt-get install -y git-core kernel-package fakeroot build-essential ncurses-dev

# cd /usr/src

# wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.6.tar.bz2

# tar jxvf linux-3.6.tar.bz2

# cd linux-3.6

# cp /boot/config-`uname -r` ./.config

# make menuconfig

# make-kpkg clean

# fakeroot make-kpkg --initrd --append-to-version=-vanilla kernel_image kernel_headers

# cd ..

# dpkg -i linux-image-* linux-headers-*

# init 6

 

enjoy πŸ˜‰

 

Velocizzare boot e prestazioni su Debian Squeeze con e4rat 0.2.3

 

 

 

 

Un anno e mezzo fa circa avevo fatto una guida divisa in due parti, qua e qua, su come velocizzare il boot e le prestazioni su Debian Squeeze, a distanza di tempo ho provato anche la soluzione e4rat (Reducing Access Times), che promette di velocizzare il boot di ben 3 volte. Questo è un tool che si occupa della riallocazione dei blocchi dei programmi caricati all'avvio, e precaricare i programmi usati frequentemente. Questa è una guida semplice, che è fatta di 3 fasi:

 

  1. e4rat-collect – raccoglie informazione sui file caricati (default 120 secondi)
  2. e4rat-realloc – riallocazione files
  3. e4rat-preload – precaricamento programmi

 

Download ed installazione di e4rat_0.2.3_amd64.deb oppure e4rat_0.2.3_i386.deb

 

$ sudo nano /boot/grub/grub.cfg

 

e dopo ro quiet passare il parametro seguente al kernel:

 

init=/sbin/e4rat-collect

 

salvare e riavviare. Da questo momento si hanno 120 secondi per usare i programmi di proprio interesse, e nel contempo e4rat raccoglierà le informazioni in /var/lib/e4rat/startup.log. Se 120 secondi per qualcuno non sono abbastanza, si possono modificare editando il file /etc/e4rat.conf. Adesso bisogna andare a rimuovere il parametro precedente inserito, e poi:

 

$ sudo init 1

 

inserire password di root, e poi lanciare il comando:

 

# e4rat-realloc  /var/lib/e4rat/startup.log

 

una volta finita la reallocozione:

 

init 2

 

loggarsi ed inserire permanentemente il parametro e4rat-preload:

 

$ sudo nano /etc/default/grub

 

e modificare la stringa in questo modo:

 

GRUB_CMDLINE_LINUX_DEFAULT="init=/sbin/e4rat-preload"

 

salvare, aggiornare grub e riavviare:

 

$ sudo update-grub

$ sudo init 6

 

questo è tutto.

 

 

enjoy πŸ˜‰

Kernel 3.2.0 backports su Debian Squeeze

 

Installando Debian Squeeze su uno dei miei Acer Aspire One  (AO110), mi sono accorto che nei repo backports, è arrivato il kernel 3.2.0.

 

# apt-get install -t squeeze-backports linux-image-3.2.0-0.bpo.1-686-pae linux-headers-3.2.0-0.bpo.1-686-pae

 

enjoy πŸ˜‰

Deb per Kernel 3.1.1-ck2 Debian Squeeze/W/S e LMDE

 

 

 

 

Condivido l'ultimo kernel patchato Kolivas, compreso di tutte le patch debian. Per architettura i386 ed amd64. Per ricompilarlo basta seguire queste guide, la num.1 o la num.2. Per chi si cimenta nella compilazione consiglio di farlo da Squeeze, in quanto da Sid, anche se apparentemente i pacchetti vengono costruiti ed installati senza errori, all'avvio si ottiene un kernel panic, almeno a me è successo questo, credo in virtù della versione di gcc. Nell'altro caso l'errore che si potrà incontrare è sempre il solito lguest:

 

make[1]: Leaving directory `/usr/src/linux-3.1.1'
/usr/bin/make -j2 EXTRAVERSION=-ck2-edm  ARCH=i386 \
                 -C Documentation/lguest
make: *** Documentation/lguest: File o directory non esistente.  Stop.
make: *** [debian/stamp/build/kernel] Error
2

 

che si risolve andando ad escludere dal  .config:

 

# CONFIG_LGUEST_GUEST is not set

# CONFIG_LGUEST is not set

 

enjoy πŸ˜‰

Kernel 3.0 su Debian Squeeze No Problem

 

 

 

 

 

Ho voluto aggiornare il kernel sulla mia Squeeze, però questa volta ho seguito una strada diversa rispetto al solito. Quindi niente costruzione di linux-image e linux-headers, bensì un aggiornamento in real time, il tutto vedendo un film, dato che questo tipo di lavoro prende quasi un paio di ore. Quello che serve, sono i sorgenti del kernel 3.0, da mettere e scompattare in /usr/src, dopodichè:

 

# cd /usr/src/
# ln -s linux-source-3.0.0 linux
# cd linux
# make menuconfig
# make -j4
# make -j4 CONFIG_DEBUG_SECTION_MISMATCH=y
# make -j4 modules
# make -j4 modules_install
# make -j4 install
# cd /boot
# mkinitramfs -o initrd.img-3.0.0 3.0.0
# update-grub
# reboot

 

una volta riavviato non rimane che andare in modalità ripristino ed installare i driver per X, nel mio caso Nvidia, e "godersi" il nuovo kernel πŸ™‚

 

enjoy πŸ˜‰

Kernel 2.6.39 e scrittura UFS (finalmente)

 

 

 

Nei giorni scorsi è stato rilasciato il kernel 2.6.39, dove sono state introdotte alcune novità, ed alcuni miglioramenti. Rimando alla lettura degli articoli su Ossblog e su Oneopensource, anche se si meritano una tirata di orecchie tutti e due πŸ™‚ per non aver ricordato che dal kernel 2.6.39 si ritorna ad avere la possibilità di  lettura/scrittura del filesystem UFS, cosa che non era più possibile negli ultimi kernel, tanto è vero che io tenevo installato un kernel 2.6.36, per poter accedere alla partizione UFS della mia Debian Gnu/kFreeBsd. Per abilitare questa opzione rimando ad una guida che ho fatto qualche tempo fà, oppure attendere qualche ora che inserirò il kernel 2.6.39 nel mio repository.

 

update:(22/05) attendo ad inserire il kernel, poichè sto riscontrando alcuni problemi, tra cui compiz che fa crashare X.

 

enjoy πŸ˜‰