Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[tool] ekernel: semplificare la gestione del kernel
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
Luca89
Advocate
Advocate


Joined: 27 Apr 2005
Posts: 2107
Location: Agrigento (Italy)

PostPosted: Sat Jan 28, 2006 6:12 pm    Post subject: [tool] ekernel: semplificare la gestione del kernel Reply with quote

Innanzitutto preciso che genkernel != ekernel: il primo serve per automatizzare il processo di compilazione del kernel con una configurazione generica, il mio tool invece serve per semplificare la gestione del kernel e dei suoi sorgenti. Esempio, per configurare e installare un kernel solitamente facciamo così:

Code:
# emerge gentoo-sources
# cd /usr/src
# ln -s linux-2.6.15-gentoo-r1 linux
# cd linux
# make menuconfig
# make
# make modules_install
# cp arch/i386/boot/bzImage /boot/kernel-2.6.15-gentoo-r1
# cp System.map /boot/System.map-2.6.15-gentoo-r1
# nano /boot/grub.conf


Con ekernel:

Code:
# emerge gentoo-sources
# ekernel --src-link
# ekernel --config
# ekernel --compile
# ekernel --install


inoltre esso gestisce un link simbolico in /boot/kernel che punta al kernel che si vuole bootare e quindi non è necessario aggiornare ogni volta grub.conf.

Un altro esempio del suo funzionamento è il caso in cui si deve aggiornare il kernel, manualmente:

Code:
# emerge -u gentoo-sources
# ln -s /usr/src/linux-2.6.15-gentoo-r1 /usr/src/linux
# cp /usr/src/linux-2.6.14-gentoo-r5/.config /usr/src/linux/
# cd /usr/src/linux
# make oldconfig
# make
# make modules_install
# cp arch/i386/boot/bzImage /boot/kernel-2.6.15-gentoo-r1
# cp System.map /boot/System.map-2.6.15-gentoo-r1
# nano /boot/grub.conf


Con ekernel invece:

Code:
# emerge -u gentoo-sources
# ekernel --src-link
# ekernel --import-config
# ekernel --compile
# ekernel --install --default


Oltre alle funzionalità che ho indicato ne ha una per me molto comoda che è quella di eliminare tutti i riferimenti ai kernel vecchi in /boot, /lib/modules e /usr/src ( modalità --prune). Comunque vi posto qui l'help completo che si ottiene con "ekernel --help":

Code:
Usage: ekernel action options

Actions:
    --install
      Installs kernel image and modules on your system.

    --prune
      Delete obsoletes files such as old kernel images or old modules.

    --kernel-link
      Creates a symlink on /boot/kernel for kernel which is
      used to boot.

    --compile
      Compiles kernel sources.

    --config
      Launch an application to configure the kernel sources.

    --import-config
      Import config file from another kernel sources.

    --show-kernels
      Shows you kernels present on /boot.

    --src-link
      Creates a symlink on /usr/src/linux for the kernel source which is used by
      default.

    --show-sources
      Shows you kernel sources present on /usr/src.

Options:

    --kv="version"
      Specify the kernel version that you want to use. If it isn't specified the
      last available is used.

    --old-kv="versione"
      With action import-config specify the kernel version
      from where the kernel config file must be imported.

    --pretend
      With prune action, specify that files must not be removed
      but simply listed.

    --color --no-color
      Specify if you want to use colors or not.

    --verbose
      Swich verbose mode on.

    --default
      With install action implies calling "ekernel --kernel-link"
      after the installation process.

    --args=(boot,srcdir,modules,all)
      With the prune action specify which dirs you want to prune:
      /boot, /usr/src, /lib/modules or all of them.



Per chi voglia provarlo lo trova qui (fate un copia e incolla in una nuova scheda del browser oppure usate wget). Il tarball contiene un file eseguibile "ekernel.pl" che va posizionato in una directory appartenente al path e un file "ekernel.conf" che è il file di configurazione e va posizionato in /etc (se non vi piace il posto potete metterlo dove volete a patto di modificare la variabile $config_file in cima allo script). Il programma è rilasciato sotto licenza GPLv2 come è specificato in cima allo script, usatelo a vostro rischio e pericolo, non sono responsabile in caso di danni al vostro sistema!
Qualsiasi critica è ben accetta. :wink:
_________________
Running Fast!
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Mon Feb 20, 2006 1:29 pm    Post subject: Reply with quote

Una curiosità mia: perchè non setti la USE symlink invece di trovare altri modi di automatizzare la creazione del link ?
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
Luca89
Advocate
Advocate


Joined: 27 Apr 2005
Posts: 2107
Location: Agrigento (Italy)

PostPosted: Mon Feb 20, 2006 1:40 pm    Post subject: Reply with quote

Kernel78 wrote:
Una curiosità mia: perchè non setti la USE symlink invece di trovare altri modi di automatizzare la creazione del link ?


Considera il caso in cui ho il pacchetto gentoo-sources-2.6.15-r5, aggiorni al gentoo-sources-2.6.15-r6. Emerge ti aggiorna il link in /usr/src/linux e fin qui va bene. Mettiamo però il caso che la r6 non mi piace e la voglio eliminare. Emerge cancella pure il link simbolico e mi tocca rifare il link a mano. In questo modo lancio "ekernel --src-link" e lui mi linka l'ultima versione che trova, qualunque essa sia.
_________________
Running Fast!
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Mon Feb 20, 2006 1:47 pm    Post subject: Reply with quote

Luca89 wrote:
Mettiamo però il caso che la r6 non mi piace e la voglio eliminare.

Si ma se usi symlink non devi preoccuparti di fare
Code:
# ekernel --src-link
dopo aver installato un kernel nuovo visto che verrebbe automaticamente creato il link da emerge.
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
Luca89
Advocate
Advocate


Joined: 27 Apr 2005
Posts: 2107
Location: Agrigento (Italy)

PostPosted: Mon Feb 20, 2006 1:57 pm    Post subject: Reply with quote

Kernel78 wrote:
Si ma se usi symlink non devi preoccuparti di fare
Code:
# ekernel --src-link
dopo aver installato un kernel nuovo visto che verrebbe automaticamente creato il link da emerge.


Su questo hai ragione. Dipende un po' dalle situazioni.

EDIT: il "non" non c'entrava
_________________
Running Fast!


Last edited by Luca89 on Mon Feb 20, 2006 3:00 pm; edited 1 time in total
Back to top
View user's profile Send private message
funkoolow
Guru
Guru


Joined: 21 Sep 2004
Posts: 526
Location: er paese delle anguille

PostPosted: Mon Feb 20, 2006 2:55 pm    Post subject: Reply with quote

il link su altervista non va più :wink:
_________________
SabaziaLUG: il LUG a nord di Roma
nulab.it
squarepusher.it
natural-selection.it
Back to top
View user's profile Send private message
Luca89
Advocate
Advocate


Joined: 27 Apr 2005
Posts: 2107
Location: Agrigento (Italy)

PostPosted: Mon Feb 20, 2006 3:02 pm    Post subject: Reply with quote

Sei sicuro? A me va.

Code:
luca@Panther ~ $ wget http://holmes.altervista.org/files/ekernel-1.0_rc5.tar.gz
--16:00:59--  http://holmes.altervista.org/files/ekernel-1.0_rc5.tar.gz
           => `ekernel-1.0_rc5.tar.gz'
Risoluzione di holmes.altervista.org in corso... 207.44.172.63
Connessione a holmes.altervista.org|207.44.172.63:80... connesso.
HTTP richiesta inviata, aspetto la risposta... 200 OK
Lunghezza: 3,678 (3.6K) [application/x-tar]

100%[==================================================================>] 3,678         --.--K/s             

16:01:00 (698.79 KB/s) - "ekernel-1.0_rc5.tar.gz" salvato [3678/3678]

luca@Panther ~ $


Non è che hai cliccato direttamente il link? Devi incollarlo in una nuova scheda del browser oppure direttamente con wget.
_________________
Running Fast!
Back to top
View user's profile Send private message
funkoolow
Guru
Guru


Joined: 21 Sep 2004
Posts: 526
Location: er paese delle anguille

PostPosted: Mon Feb 20, 2006 3:39 pm    Post subject: Reply with quote

Luca89 wrote:
Sei sicuro? A me va.

Code:
luca@Panther ~ $ wget http://holmes.altervista.org/files/ekernel-1.0_rc5.tar.gz
--16:00:59--  http://holmes.altervista.org/files/ekernel-1.0_rc5.tar.gz
           => `ekernel-1.0_rc5.tar.gz'
Risoluzione di holmes.altervista.org in corso... 207.44.172.63
Connessione a holmes.altervista.org|207.44.172.63:80... connesso.
HTTP richiesta inviata, aspetto la risposta... 200 OK
Lunghezza: 3,678 (3.6K) [application/x-tar]

100%[==================================================================>] 3,678         --.--K/s             

16:01:00 (698.79 KB/s) - "ekernel-1.0_rc5.tar.gz" salvato [3678/3678]

luca@Panther ~ $


Non è che hai cliccato direttamente il link? Devi incollarlo in una nuova scheda del browser oppure direttamente con wget.


hai ragione, copiando il link va anche a me. il perchè mi resta un mistero. chiedo cmq scusa per il post inutile (dato che era pure scritto, ignoranza mia)
_________________
SabaziaLUG: il LUG a nord di Roma
nulab.it
squarepusher.it
natural-selection.it
Back to top
View user's profile Send private message
Delta9
n00b
n00b


Joined: 07 Mar 2004
Posts: 35

PostPosted: Mon Feb 20, 2006 4:35 pm    Post subject: Re: [tool] ekernel: semplificare la gestione del kernel Reply with quote

Scusa... ma per aggiornare il kernel non puoi fare così:

Code:
# USE="+symlink" emerge -u gentoo-sources
# cd /usr/src/linux
# cp /boot/config .config
# make oldconfig
# make
# make install
# make modules_install

che copia l'immagine del kernel in /boot, linka quella vecchia in /boot/vmlinuz.old e quella nuova in /boot/vmlinuz.
Il tutto senza programmi esterni
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum