• Re: Ricompilazione kernel Debian da source

    From Paride Desimone@21:1/5 to All on Sun Apr 13 07:40:01 2025
    ------UK9RVVUNHDY9PMZ816SYZI5JC6ARWX
    Content-Type: text/plain;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    Se non ricordo male, essendomi io scontrato con un problema simile (ricompilazione kernel), avevo letto che esiste una chiave di Debian per la firma del kernel, ma sinceramente non ricordo da dove si scaricasse.

    /paride

    Il 8 aprile 2025 13:24:11 UTC, Alessandro Baggi <alessandro.baggi@gmail.com> ha scritto:
    Un saluto a tutta la lista.

    Premessa, non mi sono mai ritrovato a dover ricompilare un pacchetto debian tantomeno il pacchetto del kernel, se ho fatto/detto castronerie perdonatemi e correggetemi.

    In relazione al bug su md relativo al mio precedente messaggio dei kernel panic durante i riavvii, volevo verificare se la patch funzionasse sul kernel backports (A quanto parte per il 6.1 è necessario un backport), come ho già verificato per il
    mailine 6.14

    Ho deciso quindi di ricompilare il kernel da backports 6.12.12 dal source di debian e ho preso spunto da qui (adattandola ai backports):

    https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.6

    Applico la patch, lancio il dpkg-buildpackage e la compilazione va a buon fine senza nessun errore. Ora i pacchetti che mi ritrovo sono molti e tra questi trovo:

    linux-image-6.12.12+bpo-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb >linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb >linux-image-6.12.12+bpo-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb >linux-image-6.12.12+bpo-cloud-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb >linux-image-6.12.12+bpo-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb >linux-image-6.12.12+bpo-rt-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb >linux-image-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb >linux-image-amd64-signed-template_6.12.12-1~bpo12+1_amd64.deb >linux-image-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb >linux-image-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb

    Quale pacchetto dovrei installare?

    Lo chiedo perche lanciando un 'apt-cache show linux-image-6.12.12+bpo-amd64' trovo:

    Filename: pool/main/l/linux-signed-amd64/linux-image-6.12.12+bpo-amd64_6.12.12-1~bpo12+1_amd64.deb

    Che non è presente tra i pacchetti risultanti dalla compilazione.
    A primo impatto mi verrebbe da pensare che devo installare il pacchetto linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb ma come viene riportato è unsigned, mentre quello dal repo è signed.

    Ora non credo io possa firmare il kernel per il secure boot (se non con una chiave personale) ma che succede se installo il kernel unsigned con il secure boot abilitato?

    Oppure è tutto sbagliato e c'è qualche problema con la mia procedura?

    Grazie in anticipo.

    Saluti, Alessandro.




    ------UK9RVVUNHDY9PMZ816SYZI5JC6ARWX
    Content-Type: text/html;
    charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    <html><head></head><body><div dir="auto">Se non ricordo male, essendomi io scontrato con un problema simile (ricompilazione kernel), avevo letto che esiste una chiave di Debian per la firma del kernel, ma sinceramente non ricordo da dove si scaricasse.<
    <br>/paride</div><br><br><div class="gmail_quote"><div dir="auto">Il 8 aprile 2025 13:24:11 UTC, Alessandro Baggi &lt;alessandro.baggi@gmail.com&gt; ha scritto:</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px
    solid rgb(204, 204, 204); padding-left: 1ex;">
    <pre class="k9mail"><div dir="auto">Un saluto a tutta la lista.<br><br>Premessa, non mi sono mai ritrovato a dover ricompilare un pacchetto debian tantomeno il pacchetto del kernel, se ho fatto/detto castronerie perdonatemi e correggetemi.<br><br>In
    relazione al bug su md relativo al mio precedente messaggio dei kernel panic durante i riavvii, volevo verificare se la patch funzionasse sul kernel backports (A quanto parte per il 6.1 è necessario un backport), come ho già verificato per il mailine 6.
    14<br><br>Ho deciso quindi di ricompilare il kernel da backports 6.12.12 dal source di debian e ho preso spunto da qui (adattandola ai backports):<br><br><a href="https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.6">https:
    //kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.6</a><br><br>Applico la patch, lancio il dpkg-buildpackage e la compilazione va a buon fine senza nessun errore. Ora i pacchetti che mi ritrovo sono molti e tra questi trovo:<br>
    <br>linux-image-6.12.12+bpo-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-6.12.12+bpo-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-6.12.12+bpo-cloud-amd64-unsigned_
    6.12.12-1~bpo12+1_amd64.deb<br>linux-image-6.12.12+bpo-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-6.12.12+bpo-rt-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-amd64-signed-
    template_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br>linux-image-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb<br><br>Quale pacchetto dovrei installare?<br><br>Lo chiedo perche lanciando un 'apt-cache show linux-
    image-6.12.12+bpo-amd64' trovo:<br><br>Filename: pool/main/l/linux-signed-amd64/linux-image-6.12.12+bpo-amd64_6.12.12-1~bpo12+1_amd64.deb<br><br>Che non è presente tra i pacchetti risultanti dalla compilazione.<br>A primo impatto mi verrebbe da pensare
    che devo installare il pacchetto linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb ma come viene riportato è unsigned, mentre quello dal repo è signed.<br><br>Ora non credo io possa firmare il kernel per il secure boot (se non con una
    chiave personale) ma che succede se installo il kernel unsigned con il secure boot abilitato?<br><br>Oppure è tutto sbagliato e c'è qualche problema con la mia procedura?<br><br>Grazie in anticipo.<br><br>Saluti, Alessandro.<br><br><br><br></div></pre><
    /blockquote></div></body></html>
    ------UK9RVVUNHDY9PMZ816SYZI5JC6ARWX--

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Davide Prina@21:1/5 to All on Sun Apr 13 12:10:02 2025
    Alessandro Baggi ha scritto:

    per la parte compilazione ho risposto nell'altro thread, se c'è
    qualcosa che non ho spiegato bene o completamente puoi chiedere.

    Applico la patch, lancio il dpkg-buildpackage e la compilazione va a
    buon fine senza nessun errore. Ora i pacchetti che mi ritrovo sono molti
    e tra questi trovo:

    linux-image-6.12.12+bpo-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb linux-image-6.12.12+bpo-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb linux-image-6.12.12+bpo-cloud-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb linux-image-6.12.12+bpo-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb linux-image-6.12.12+bpo-rt-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb linux-image-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb linux-image-amd64-signed-template_6.12.12-1~bpo12+1_amd64.deb linux-image-cloud-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb linux-image-rt-amd64-dbg_6.12.12-1~bpo12+1_amd64.deb

    Quale pacchetto dovrei installare?

    strano che ti ha generato quel pacchetto signed... in teoria la chiave per
    la firma è di proprietà dei DD che fanno la compilazione.

    Ti sei anche fatto generare tutti i paccheti -dbg, che se non devi fare il debug non ti servono...

    Inoltre ti ha generato:
    * il pacchetto con Linux per PC "normale" (il primo della lista)
    * il pacchetto cloud
    * il pacchetto real-time

    però mancherebbero i pacchetti per header e libc.
    Questo potrebbe essere un problema se non hai già installato una 6.12

    linux-image-6.12.12+bpo-amd64-unsigned_6.12.12-1~bpo12+1_amd64.deb ma
    come viene riportato è unsigned, mentre quello dal repo è signed.

    corretto. Quando installi un pacchetto verifica se la firma è di un DD
    ed è quindi riconosciuta come valida. Se lo compili tu è senza tale
    firma.

    Ora non credo io possa firmare il kernel per il secure boot (se non con
    una chiave personale) ma che succede se installo il kernel unsigned con
    il secure boot abilitato?

    io ho sempre inteso la firma come la certificazione di chi ha prodotto l'eseguibile. Secondo me per avere una chiave per il secureboot devi
    essere un'organizzazione riconosciuta, altrimenti tutti potrebbero
    fare tutto e il secureboot perderebbe di senso.

    La parte secureboot è gestita da grub, da quanto so io.

    Ciao
    Davide

    --
    La mia privacy non è affar tuo
    https://noyb.eu/it
    - You do not have my permission to use this email to train an AI -
    If you use this to train your AI than you accept to distribute under AGPL license >= 3.0 all the model trained, all the source you have used to
    training your model and all the source of the program that use that model

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)