{"id":1050,"date":"2021-01-08T10:48:56","date_gmt":"2021-01-08T10:48:56","guid":{"rendered":"https:\/\/edulab.unitn.it\/tecnici\/?p=1050"},"modified":"2022-08-03T11:54:49","modified_gmt":"2022-08-03T11:54:49","slug":"efibootmgr-lapplicazione-per-interagire-e-modificare-l-efi-boot-manager-linux","status":"publish","type":"post","link":"https:\/\/edulab.unitn.it\/tecnici\/efibootmgr-lapplicazione-per-interagire-e-modificare-l-efi-boot-manager-linux\/","title":{"rendered":"EFIBOOTMGR \u2013 L\u2019APPLICAZIONE PER INTERAGIRE E MODIFICARE L\u2019 EFI BOOT MANAGER \u2013 LINUX"},"content":{"rendered":"<p><a href=\"https:\/\/mauriziosiagri.wordpress.com\/2019\/03\/28\/efibootmgr-lapplicazione-per-modificare-interagire-efi-boot-manager\/\">Fonte<\/a><\/p>\n<p><strong>efibootmgr<\/strong>\u00a0\u00e8 un\u2019applicazione userspace utilizzata per modificare il Boot Manager Extensible Firmware Interface (EFI) di Intel. EFI che oramai ha rimpiazzato il BIOS \u00e8 l\u2019interfaccia firmware che si occupa del modo in cui hardware e software comunicano in un computer. Tra i benefici di EFI \u00e8 di essere non legato all\u2019architettura x86.\u00a0 Attualmente viene implementata l\u2019estensione di\u00a0 EFI denominata UEFI (Unified EFI ).\u00a0 Tra i compiti di UEFI c\u2019\u00e8 proprio anche quello di occuparsi dei\u00a0<strong>servizi di Boot.\u00a0<\/strong>Grazie ad UEFI \u00e8 possibile avviare diversi sistemi operativi Linux, Mac, Windows senza la necessit\u00e0 di un bootmanager esterno. UEFI infatti pu\u00f2 automaticamente selezionare la partizione appropriata con il sistema operativo. L\u2019unica condizione \u00e8 che l\u2019hardware e\u00a0 il software ( SO ) supportino le specifiche UEFI.<\/p>\n<p>Esempi di\u00a0<strong>UEFI Boot Menu<\/strong>.<\/p>\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-20677\" src=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/asrock_amd.jpg\" alt=\"\" width=\"391\" height=\"220\" data-attachment-id=\"20677\" data-permalink=\"https:\/\/mauriziosiagri.wordpress.com\/asrock_amd\/\" data-orig-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/asrock_amd.jpg\" data-orig-size=\"640,360\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;2&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;G8341&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1561130314&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;4.4&quot;,&quot;iso&quot;:&quot;800&quot;,&quot;shutter_speed&quot;:&quot;0.02&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"asrock_amd\" data-image-description=\"\" data-medium-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/asrock_amd.jpg?w=300\" data-large-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/asrock_amd.jpg?w=640\" \/><figcaption>AsRock FM2 \u2013 AMD<\/figcaption><\/figure>\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-20676\" src=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/x79_ami.jpg\" alt=\"\" width=\"262\" height=\"215\" data-attachment-id=\"20676\" data-permalink=\"https:\/\/mauriziosiagri.wordpress.com\/x79_ami\/\" data-orig-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/x79_ami.jpg\" data-orig-size=\"439,360\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;2&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;G8341&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1561651674&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;4.4&quot;,&quot;iso&quot;:&quot;800&quot;,&quot;shutter_speed&quot;:&quot;0.01&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"x79_ami\" data-image-description=\"\" data-medium-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/x79_ami.jpg?w=300\" data-large-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/x79_ami.jpg?w=439\" \/><figcaption>x79-Xeon<\/figcaption><\/figure>\n<p><strong>ATTENZIONE<\/strong>: nei primi tempi le implementazioni UEFI, seppur lungimiranti, sono state accompagnate da\u00a0<strong>diversi bug<\/strong>\u00a0anche peggiorativi rispetto alla controparte BIOS. In questi casi l\u2019utilizzo di efibootmgr si deve accompagnare alla conoscenza della motherboards specifica.<br \/>\nIn generale poich\u00e8 si potrebbe anche rendere necessario il caricamento del firmware della MB<strong>\u00a0si sconsiglia la modifica con efibootmgr (<\/strong>\u00a0anche nel caso dei Macintosh<strong>\u00a0si sconsiglia la modifica con efibootmgr<\/strong>\u00a0dei menu entry).<br \/>\nPer disporre di un\u00a0<strong>boot manager userfriendly<\/strong>\u00a0 si consiglia di valutare l\u2019uso di\u00a0<strong>rEFInd<\/strong>.<\/p>\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-20681\" src=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/refind_mac.jpg\" alt=\"\" data-attachment-id=\"20681\" data-permalink=\"https:\/\/mauriziosiagri.wordpress.com\/refind_mac\/\" data-orig-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/refind_mac.jpg\" data-orig-size=\"800,470\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;2&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;G8341&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1560603787&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;4.4&quot;,&quot;iso&quot;:&quot;80&quot;,&quot;shutter_speed&quot;:&quot;0.02&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"refind_mac\" data-image-description=\"\" data-medium-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/refind_mac.jpg?w=300\" data-large-file=\"https:\/\/mauriziosiagri.files.wordpress.com\/2019\/07\/refind_mac.jpg?w=800\" \/><figcaption>Boot Manager:\u00a0<strong>rEFInd<\/strong><\/figcaption><\/figure>\n<h3>Verificare che il sistema sia stato avviato in UEFI mode<\/h3>\n<p>Per poter utilizzare efibootmgr \u00e8 necessario che le variabili filesystem EFI ( EFI vars )\u00a0 siano accessibili. Questo implica che il\u00a0<strong>sistema sia stato avviato in EFI mode<\/strong>.<\/p>\n<div>\n<pre>In debian:\r\n\r\n# sudo [ -d \/sys\/firmware\/efi ] &amp;&amp; echo \"EFI boot on HDD\" || echo \"Legacy boot on HDD\" \r\n<strong>EFI boot on HDD<\/strong><\/pre>\n<\/div>\n<p>dal kernel 4.0 si pu\u00f2 verificare che l\u2019avvio sia avvenuto in EFI mode con<\/p>\n<pre class=\"wp-block-preformatted\"># cat \/sys\/firmware\/efi\/fw_platform_size\r\nse UEFI mode\r\n<strong>64<\/strong>  # se 64 bit \r\n<strong>32<\/strong>  # se 32 bit \r\ndiversamente No UEFI mode  \r\ncat: \/sys\/firmware\/efi\/fw_platform_size: No such file or directory<\/pre>\n<p>Per visualizzare le variabili EFI si pu\u00f2 utilizzare il comando<\/p>\n<p># efivar \u2013list<\/p>\n<p>Altro comando per verificare l\u2019avvio in EFI mode<\/p>\n<div><code>#<\/code><code>mount | grep efivars<\/code><\/div>\n<pre>efivarfs on \/sys\/firmware\/efi\/efivars type efivarfs (ro,relatime)<\/pre>\n<p>Se\u00a0 il sistema NON \u00e8 stato avviato in EFI mode digitando efibootmgr avremo il seguente messaggio:<\/p>\n<pre># efibootmgr \r\nEFI variables are not supported on this system.\r\n<\/pre>\n<h3>UEFI Boot Manager<\/h3>\n<p>&nbsp;<\/p>\n<p>Usualmente un Computer UEFI mette a disposizione anche\u00a0<strong>tool di configurazione per il menu del Boot Manager EFI<\/strong>. Se il tool non \u00e8 sufficientemente amichevole\u00a0 \u00e8 preferibile utilizzare il gi\u00e0 citato\u00a0<strong>rEFInd<\/strong>\u00a0oppure l\u2019applicazione efibootmgr oggetto del post.<\/p>\n<h3>Efibootmgr<\/h3>\n<p>Efibootmgr pu\u00f2 creare e rimuovere le voci nel menu di avvio UEFI, modificare l\u2019ordine delle voci nel menu e altro ancora.<\/p>\n<p>In debian\/ubuntu\u00a0 efibootmgr si installa da terminale al solito con<\/p>\n<pre class=\"wp-block-preformatted\"># apt install efibootmgr<\/pre>\n<p>lanciato efibootmgr verranno visualizza i dati relativi all\u2019 UEFI Boot Manager con il menu di Avvio UEFI, la voce di avvio corrente del sistema, l\u2019ordine di visualizzazione,\u2026<\/p>\n<pre># efibootmgr \r\nBootCurrent: 0001\r\nTimeout: 1 seconds\r\nBootOrder: 0000,0001,0006,0004,0005,0002\r\nBoot0000* ubuntu\r\nBoot0001* mx\r\nBoot0002* UEFI: Built-in EFI Shell \r\nBoot0004* Hard Drive \r\nBoot0005* USB \r\nBoot0006* UEFI: Samsung Flash Drive 1100\r\n<\/pre>\n<p>Il\u00a0<strong>menu di avvio<\/strong>\u00a0\u00e8 composto da 6 voci:\u00a0<strong>Boot0000<\/strong>,\u00a0<strong>Boot0001<\/strong>, \u2026<\/p>\n<p><strong>BootCurrent<\/strong>: la prima linea evidenzia quella che \u00e8 la voce predefinita del menu di avvio. In questo caso mx.<\/p>\n<p><strong>Timeout<\/strong>: il tempo di attesa del menu di avvio che risulta di default inpostato a 0 infatti in genere non si riesce a vedere il menu di avvio.<\/p>\n<p><strong>BootOrder:\u00a0<\/strong>la successione che verra seguita qualora il precedente menu entry non venga caricato \/ fallisca il caricamento.<br \/>\nNell\u2019esempio l\u2019ordine seguito sar\u00e0: 0000,\u00a0 0001, 0006, 0004, 0005, 0002<\/p>\n<p>E \u2018\u00a0 possibile visualizzare le voci del menu EFI\u00a0 in modo completo utilizzando l\u2019opzione -v verbose<\/p>\n<pre># efibootmgr -v\r\nBootCurrent: 0001\r\nTimeout: 1 seconds\r\nBootOrder: 0000,0001,0006,0004,0005,0002\r\nBoot0000* ubuntu\tHD(2,GPT,defb0216-f5f6-4969-8345-ff816517a944,0xee800,0x1ad000)\/File(\\EFI\\ubuntu\\shimx64.efi)\r\nBoot0001* <strong>mx\tHD(1,GPT,9c281ac1-76a6-4b39-b2c2-ff65b0d0bef6,0x800,0x1ef000)\/File(\\EFI\\mx\\grubx64.efi)\r\nBoot0002*<\/strong> UEFI: Built-in EFI Shell \tVenMedia(5023b95c-db26-429b-a648-bd47664c8012)AMBO\r\nBoot0004* Hard Drive \tBBS(HD,,0x0)AMGOAMNO........m.S.e.a.g.a.t.e. .S.T.9.5.0.0.5.6.2.0.A.S....................A.........................&gt;..Gd-.;.A..MQ..L. . . . . . . . . . . . .Y.5.1.X.D.C.C.9......AMBO\r\nBoot0005* USB \tBBS(USB,,0x0)AMGOAMNO........s.S.a.m.s.u.n.g. .F.l.a.s.h. .D.r.i.v.e. .1.1.0.0....................A.......................F..Gd-.;.A..MQ..L.S.a.m.s.u.n.g. .F.l.a.s.h. .D.r.i.v.e. .1.1.0.0......AMBO\r\nBoot0006* UEFI: Samsung Flash Drive 1100\tPciRoot(0x0)\/Pci(0x10,0x0)\/USB(2,0)\/HD(1,MBR,0x23,0x800,0x4e3e800)AMBO\r\n\r\n<\/pre>\n<p>In questo caso \u00e8 possibile individuare anche le informazioni relative al percorso del bootloader. Ad esempio la varibile\u00a0<strong>mx<\/strong>, ( Boot0001) relativa alla derivativa debian, mx linux, evidenzia che il booloader \u00e8 di fatto\u00a0<strong>GRUB<\/strong>. Il percorso con la configurazione efi ( grubx64.efi), menu entry ( mx) per il bootloader grub nella partizioni EFI system partition risulta essere (<strong>\\EFI\\mx\\grubx64.efi<\/strong>\u00a0). La partizione \u00e8 localizzata nel disco 1 che \u00e8 partizionato GPT.<\/p>\n<p>&nbsp;<\/p>\n<h3>Cambiare il Timeout<\/h3>\n<p>Se si desidera visualizzare il menu per poter scegliere sempre dal bootmanager EFI si pu\u00f2 portare il timeout a 5 srecondi con<\/p>\n<p>efibootmgr\u00a0<strong>-t<\/strong>\u00a05<\/p>\n<h3>Cambiare l\u2019ordine di avvio<\/h3>\n<p>Per cambiare l\u2019ordine di avvio si utilizza l\u2019opzione -o<\/p>\n<pre class=\"wp-block-preformatted\">efibootmgr <strong>-o<\/strong> <strong>0001,0000<\/strong>,0006,0004,0005,0002<\/pre>\n<p>\u00e8 possibile cambiare l\u2019<strong>ordine solo per il primo successivo avvio.<\/strong><br \/>\nIn questo caso si usa l\u2019opzione -n<\/p>\n<pre class=\"wp-block-preformatted\">efibootmgr <strong>-n <\/strong>0002<\/pre>\n<h3>Creare una voce nel menu di boot EFI<\/h3>\n<p>Per aggiungere un entry al menu EFI si usa l\u2019opzione\u00a0<strong>-c<\/strong><\/p>\n<p><strong>efibootmgr\u00a0 -c -d \/dev\/sda -p 2 -L &#8220;Debian&#8221; -l &#8220;\\EFI\\debian\\shimx64.efi&#8221;<\/strong><\/p>\n<pre class=\"wp-block-preformatted\">efibootmgr -c -d \/dev\/sdb -p 1 -L \"multibootusb\" -l \"\\EFI\\boot\\<strong>bootx64.cfg<\/strong>\"<\/pre>\n<ul>\n<li><code>--create<\/code>\u00a0or\u00a0<code>-c<\/code>\u00a0crea una nuova voce;<\/li>\n<li><code>--part<\/code>\u00a0or\u00a0<code>-p<\/code>\u00a0seguito dal\u00a0<strong>numero di partizione<\/strong>\u00a0della Partizione di Sistema EFI;<\/li>\n<li><code>--disk<\/code>\u00a0or\u00a0<code>-d<\/code>\u00a0seguito dal\u00a0<strong>disco<\/strong>\u00a0nel quale la Partizione di Sistema EFI \u00e8 ospitata;<\/li>\n<li><code>--label<\/code>\u00a0or\u00a0<code>-L<\/code>\u00a0seguito dall\u2019etichetta da utilizzare come voce nel menu di avvio;<\/li>\n<li><code>--loader<\/code>\u00a0or\u00a0<code>-l<\/code>\u00a0seguito dal percorso dell\u2019immagine EFI da avviare \\EFI\\boot\\bootx64.cfg.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3>Cancellare una voce dal menu EFI<\/h3>\n<p>per cancellare un voce di menu di utilizza l\u2019opzione -B<\/p>\n<pre class=\"wp-block-preformatted\">efibootmgr -b 4 <strong>-B<\/strong><\/pre>\n<p>\u2013bootnum (-b) seleziona la voce del menu da cancella<br \/>\n\u2013delete-bootnum (-B) effettua la cancellazione<\/p>\n<p>Se la voce cancellata era la prima fare attenzione e cambiare l\u2019ordine di avvio dei menu.<\/p>\n<h2>UEFI Bootloader di fallback<\/h2>\n<p>Nelle specifiche UEFI 2.3, section 3.4.1.2, si precisa che in assenza di boot variabili configurate \u00e8 permesso al firmware trattare la EFI system partition come media rimovibile \u2013 il percorso di boot sar\u00e0 EFI\/boot\/bootx64.efi.<\/p>\n<p>Quindi va considerata l\u2019opportunit\u00e0 dell\u2019installazione di un b<strong>ootloader di fallback.\u00a0<\/strong>Di seguito esempi di bootloader di fallback per debian e window<\/p>\n<p>Nel caso di Debian Linux boot entry in NVRAM\u00a0<strong>debian\u00a0<\/strong>percorso di Boot EFI nella partizione EFI system partition:<\/p>\n<p>EFI\/debian\/grubx64.efi<\/p>\n<p>il percorso del bootloader di fallback risulta essere<\/p>\n<p>EFI\/boot\/grubx64.efi<\/p>\n<p>ad esempio nel caso di window variabile di boot configurata:\u00a0<strong>microsoft<\/strong><br \/>\noltre a percorso di boot<\/p>\n<pre class=\"wp-block-preformatted\">EFI\/microsoft<\/pre>\n<p>potremmo avere il percorso di fallback<\/p>\n<pre class=\"wp-block-preformatted\">EFI\/boot\/bootx64.efi  \r\n<\/pre>\n<p>&nbsp;<\/p>\n<pre><\/pre>\n<h4>Opzioni efibootmgr:<\/h4>\n<dl>\n<dt><b>-a | \u2013active<\/b><\/dt>\n<dd>Sets bootnum active<\/dd>\n<dt><b>-A | \u2013inactive<\/b><\/dt>\n<dd>Sets bootnum inactive<\/dd>\n<dt><b>-b | \u2013bootnum\u00a0<i>XXXX<\/i><\/b><\/dt>\n<dd>Modify Boot<i>XXXX<\/i>\u00a0(hex)<\/dd>\n<dt><b>-B | \u2013delete-bootnum<\/b><\/dt>\n<dd>Delete bootnum (hex)<\/dd>\n<dt><b>-c | \u2013create<\/b><\/dt>\n<dd>Create new variable bootnum and add to bootorder<\/dd>\n<dt><b>-d | \u2013disk\u00a0<i>DISK<\/i><\/b><\/dt>\n<dd>The disk containing the loader (defaults to\u00a0<i>\/dev\/sda<\/i>)<\/dd>\n<dt><b>-e | \u2013edd\u00a0<i>1|3|-1<\/i><\/b><\/dt>\n<dd>Force EDD 1.0 or 3.0 creation variables, or guess.<\/dd>\n<dt><b>-E | \u2013device\u00a0<i>NUM<\/i><\/b><\/dt>\n<dd>EDD 1.0 device number (defaults to 0x80)<\/dd>\n<dt><b>-g | \u2013gpt<\/b><\/dt>\n<dd>Force disk with invalid PMBR to be treated as GPT<\/dd>\n<dt><b>-H | \u2013acpi_hid\u00a0<i>XXXX<\/i><\/b><\/dt>\n<dd>set the ACPI HID (used with\u00a0<b>-i<\/b>)<\/dd>\n<dt><b>-i | \u2013iface\u00a0<i>NAME<\/i><\/b><\/dt>\n<dd>create a netboot entry for the named interface<\/dd>\n<dt><b>-l | \u2013loader\u00a0<i>NAME<\/i><\/b><\/dt>\n<dd>Specify a loader (defaults to\u00a0<i>\\\\elilo.efi<\/i>)<\/dd>\n<dt><b>-L | \u2013label\u00a0<i>LABEL<\/i><\/b><\/dt>\n<dd>Boot manager display label (defaults to \u201cLinux\u201d)<\/dd>\n<dt><b>-n | \u2013bootnext\u00a0<i>XXXX<\/i><\/b><\/dt>\n<dd>Set BootNext to XXXX (hex)<\/dd>\n<dt><b>-N | \u2013delete-bootnext<\/b><\/dt>\n<dd>Delete BootNext<\/dd>\n<dt><b>-o | \u2013bootorder\u00a0<i>XXXX,YYYY,ZZZZ<\/i><\/b><\/dt>\n<dd>Explicitly set BootOrder (hex)<\/dd>\n<dt><b>-O | \u2013delete-bootorder<\/b><\/dt>\n<dd>Delete BootOrder<\/dd>\n<dt><b>-p | \u2013part\u00a0<i>PART<\/i><\/b><\/dt>\n<dd>Partition number containing the bootloader (defaults to 1)<\/dd>\n<dt><b>-q | \u2013quiet<\/b><\/dt>\n<dd>Quiet mode \u2013 supresses output.<\/dd>\n<dt><b>\u2013test\u00a0<i>filename<\/i><\/b><\/dt>\n<dd>Don\u2019t write to NVRAM, write to\u00a0<i>filename<\/i>.<\/dd>\n<dt><b>-t | \u2013timeout\u00a0<i>seconds<\/i><\/b><\/dt>\n<dd>Boot Manager timeout, in\u00a0<i>seconds<\/i>.<\/dd>\n<dt><b>-T | \u2013delete-timeout<\/b><\/dt>\n<dd>Delete Timeout variable.<\/dd>\n<dt><b>-u | \u2013unicode | \u2013UCS-2<\/b><\/dt>\n<dd>pass extra command line arguments as UCS-2 (default is ASCII)<\/dd>\n<dt><b>-U | \u2013acpi_uid\u00a0<i>XXXX<\/i><\/b><\/dt>\n<dd>set the ACPI UID (used with\u00a0<b>-i<\/b>)<\/dd>\n<dt><b>-v | \u2013verbose<\/b><\/dt>\n<dd>Verbose mode \u2013 prints additional information<\/dd>\n<dt><b>-V | \u2013version<\/b><\/dt>\n<dd>Just print version string and exit.<\/dd>\n<dt><b>-w | \u2013write-signature<\/b><\/dt>\n<dd>write unique signature to the MBR if needed<\/dd>\n<dt><b>-@ | \u2013append-binary-args<\/b><\/dt>\n<dd>append extra variable args from file (use \u2013 to read from stdin). Data in file is appended as command line arguments to the boot loader command, with no modification to the data, so you can pass any binary or text data necessary.<\/dd>\n<\/dl>\n","protected":false},"excerpt":{"rendered":"<p>Fonte efibootmgr\u00a0\u00e8 un\u2019applicazione userspace utilizzata per modificare il Boot Manager Extensible Firmware Interface (EFI) di Intel. EFI che oramai ha rimpiazzato il BIOS \u00e8 l\u2019interfaccia firmware che si occupa del [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,9],"tags":[],"class_list":["post-1050","post","type-post","status-publish","format-standard","hentry","category-how-to","category-linux"],"_links":{"self":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/1050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/comments?post=1050"}],"version-history":[{"count":5,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/1050\/revisions"}],"predecessor-version":[{"id":1164,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/posts\/1050\/revisions\/1164"}],"wp:attachment":[{"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/media?parent=1050"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/categories?post=1050"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/edulab.unitn.it\/tecnici\/wp-json\/wp\/v2\/tags?post=1050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}