Come creare una Debian Live modalità UEFI

 

Come creare una Debian Live modalità UEFI

 

Guida su come creare una Debian Live in modalità UEFI. Questa guida non spiega le differenze tra Bios o UEFI, o tra MBR o GPT, poichè in rete si trovano esaustive spiegazioni, ma mi soffermerò su come crearsi una Debian Live in modalità d'installazione UEFI, dato che al momento non ci sono immagini ufficiali, o almeno credo. Ad ogni modo dato che io uso Mate come Desktop Environment, mi sono preparato una Debian Jessie Live UEFI personalizzata, con firmware-nonfree. La mia chiavetta viene identificata come /dev/sdb1, quindi:

sudo fdisk -l
sudo umount /dev/sdb1
sudo mkdosfs -F 32 -I /dev/sdb1
sudo mount /dev/sdb1 /mnt
cd /mnt
sudo apt-get install p7zip
sudo 7z x /percorso/del/file/debian-live-8.2.0-amd64.iso
sudo mkdir EFI && cd EFI && sudo mkdir BOOT
cd BOOT/
sudo wget https://svn.code.sf.net/p/edk2/code/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi
sudo mv Shell.efi Bootx64.efi
cd /mnt
sudo nano startup.nsh

ed incollare dentro:

live\vmlinuz initrd=live\initrd.img append boot=live components

salvare, e poi:

cd ..
sudo umount /dev/sdb1
sudo reboot

a questo punto dopo aver riavviato in modalita UEFI, apparirà una shell, e per avviare la Debian Live basterà premere ENTER oppure digitare:

startup.nsh

enjoy 😉

 

Creare una Debian Jessie Live persistente con firmware non-free

 

Creare una Debian Jessie Live persistente con firmware non-free

 

Guida su come creare una Debian Jessie Live persistente con firmware non-free, alla Debian way. Possedere una chiavetta usb con la propria distribuzione preferita può ritornare utile, sia come OS di riserva, live o installabile, sia come strumento di lavoro. Per avere un buon strumento di lavoro, bisogna però avere tutti i propri programmi preferiti, e per ottenere ciò bisogna creare una Debian Live in modalità persistente. Con la modalità persistente, si può installare tutto quello che serve e portarsi dietro i documenti preferiti,  ed addirittura la distribuzione può essere aggiornata, senza paura che al riavvio le modifiche vadano perse. Quello che serve come prima cosa è scaricare la Debian Live iso-hybrid, scegliendo anche il proprio Desktop Environment, ed alcuni pacchetti:

 

# apt-get install mbr syslinux p7zip

 

la mia chiavetta di 8G viene identificata come /dev/sdb, quindi la guida utilizzerà questa sintassi:

Inserire la chiavetta usb e verificare come viene identificata, la mia come /dev/sdb con 2 partizioni:

# fdisk -l
# umount /dev/sdb1
# umount /dev/sdb2

 

Formattazione:

# dd count=1 bs=512 if=/dev/zero of=/dev/sdb

 

Creazione tabella delle partizioni e di 2 partizioni, una in fat32 l'altra in ext4:

# parted /dev/sdb
(parted) mklabel msdos                                          
(parted) mkpart primary fat32 1 1536M                                  
(parted) mkpart primary ext4 1536 8G
(parted) set 1 boot on                                                   
(parted) q

 

Creazione filesystem:

# /sbin/mkdosfs -n live /dev/sdb1
# /sbin/mkfs.ext4 -L persistence /dev/sdb2
# mkdir /mnt/live
# mkdir /mnt/persistence
# mount /dev/sdb1 /mnt/live
# mount /dev/sdb2 /mnt/persistence
# cd /mnt/live
# 7z x /percorso_iso_scariicata/debian-live-8.2.0-amd64-mate-desktop+nonfree.iso

 

Modificare il file live.cfg inserendo le opzioni persistence e noeject:

# nano isolinux/live.cfg

dove la prima parte deve essere come sotto:

label live-amd64
        menu label ^Live (amd64)
        menu default
        linux /live/vmlinuz
        initrd /live/initrd.img
        append boot=live components persistence noeject quiet splash

 

Creazione del dispositivo usb bootable e della seconda partizione persistente:

# /sbin/install-mbr /dev/sdb
# syslinux -i /dev/sdb1
# mv isolinux syslinux
# mv syslinux/isolinux.cfg syslinux/syslinux.cfg
# mv syslinux/isolinux.bin syslinux/syslinux.bin
# cd /mnt/persistence
# echo / union > persistence.conf
# cd ..
# umount /mnt/live
# umount /mnt/persistence

A questo punto si può riavviare e provare la Debian Jessie Live persistente con firmware non-free. La prima cosa da fare volendo è quella di aggiornare il sistema per poi installare i propri programmi preferiti:

# apt-get update && apt-get upgrade -y

Utente e password di default sono: username=user password=live

 

enjoy 😉

 

Ripristinare Grub2 da chroot da una Debian Live

 

Il metodo che ho sempre usato, ogni qual volta ho avuto la necessità di ripristinare il bootloader (Grub2), è stato quello del chroot. Ho preso questa abitudine dopo che mi sono accorto un bel po di tempo fa, che spesso ii metodi "normali" non sempre mi funzionavano. Invece questo metodo non ha mai fallito.

 

Requisiti:

Cd live, della stessa architettura del sistema da recuperare.

 

$ sudo fdisk -l
$ sudo mount /dev/sdXX /mnt
$ for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
$ sudo chroot /mnt
# grub-install /dev/sdX
  CTRL-D
$ sudo reboot

 

enjpy 😉

Info su installazione Debian GNU/kFreeBSD con ZFS

 

Metto nero su bianco qualche informazioni su Debian GNU/kFreeBSD con filesystem ZFS, dato che in rete non è che ci sia tanto, o meglio, non sono in tanti quelli che hanno un installazione su hard disk ed un blog dove condividere l'esperienza. Inizio subito col segnalare che al momento si può installare solo su sistemi a 64bit-amd64.

Download kfreebsd-zfs-amd64

Download ultima versione febbraio 2011

La prima parte dell'installazione procede velocemente, quando si arriva al partizionamento del disco, le cose diventano lentissime. Una volta create le partizioni di  / e swap, l'installer ci metterà circa 4-5 minuti per avviare la finestra di conferma di scrittura dei dati su hard disk, ed altri 6-7 minuti per formattare la partizionie (15G) ed avviare l'installazione del sistema di base. Preciso questo, in quanto nei 2 procedimenti lentissimi sopra elencati, e facile credere che qualcosa sia andato storto e quindi abortire l'installazione, causa anche una ingannevole finestra blu totalmente immobile. Il resto dell'installazione fila liscia, e quando si arriva all'installazione di Grub, bisogna per forza installarlo nel MBR, anche se al riavvio non troveremo più le altre voci dei diversi OS, questo perchè abbiamo bisogno di conoscere l' uuid (il comando blkid non dà l'uuid della partizione zfs), e la partizione zfs da linux non si monta. Una volta avviato Debian GNU/kFreeBSD, montiamo una partizione ext3 (con ext4 non funziona, o comunque io non so come montarla):

identificare la partizione:

$ ls /dev/|grep ^ad

montarla:

# mount -t ext2fs /dev/adXX /mnt

a questo punto copiamo grub.cfg nella partizione ext3

# cp /boot/grub/grub.cfg /mnt/grub.cfg.kfreebsd

adesso non ci rimane che ripristinare da cd live Grub, per riavere tutti i nostri OS, ed una volta avviato dalla nostra distribuzione abituale, possiamo copiare il menuentry del file grub.cfg.kfreebsd in /etc/grub.d/40_custom, e quindi poi fare un update-grub per trovare la voce di Debian GNU/kFreeBSD 8.1-1-amd64 nel menù di Grub.

es: menuentry:

menuentry 'Debian GNU/kFreeBSD, with kFreeBSD 8.1-1-amd64' –class debian –class gnu-kfreebsd –class gnu –class os {
    insmod part_msdos
    insmod zfs
    set root='(hd0,9)'
    search –no-floppy –fs-uuid –set d33229d75b9005cc
    echo            'Loading kernel of FreeBSD 8.1-1-amd64 …'
    kfreebsd        //@/boot/kfreebsd-8.1-1-amd64.gz
    insmod part_msdos
    insmod zfs
    set root='(hd0,9)'
    search –no-floppy –fs-uuid –set d33229d75b9005cc
    kfreebsd_module_elf    //@/lib/modules/8.1-1-amd64/opensolaris.ko
    kfreebsd_module_elf    //@/lib/modules/8.1-1-amd64/zfs.ko
    insmod part_msdos
    insmod zfs
    set root='(hd0,9)'
    search –no-floppy –fs-uuid –set d33229d75b9005cc
    kfreebsd_module        //@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache
    set kFreeBSD.vfs.root.mountfrom=zfs:debian-ad0s9
    set kFreeBSD.vfs.root.mountfrom.options=rw
}

 

enjoy 😉

Ripristinare Grub da un cd live

Quando si configura un computer, per un dual boot tra linux e windows, bisogna ricordarsi, che windows va installato per prima, poichè, mentre linux da sistema democratico qual'è, riconosce la presenza di un altro os, windows invece se ne sbatte, e sovrascrive l'MBR, rendendo di fatto impossibile la scelta dell'alltro os. Nel caso ciò avvenisse, il tutto si puo risolvere servendosi di un cd live. Una volta avviato il sistema dal cd live, dobbiamo montare la partizione su cui è installato linux. Nel caso non si sapesse quale sia, usare:

 

fdisk -l

quindi montiamola con

 

mount -t ext3 /dev/hda1 /mnt

chiaramente sostituire hda1 con la propria partizione corrispondente. Nel caso si avesse una partizione separata per /boot, bisogna montare anche quella

 

mkdir /mnt/boot mount -t ext3 /dev/hda2 /mnt/boot

montiamo anche i file system /dev e proc

 

mount –bind /dev/ /mnt/dev mount –t proc proc /mnt/proc

adesso ci chrootiamo

 

chroot /mnt

quindi entriamo in Grub e diamo i seguenti comandi

 

grub root (hd0,1)

setup (hd0)

quit

dove hd0,1 e hd0 si riferiscono alla prima partizione del primo disco. Per evitare tale procedura si può fare il backup dell' MBR, seguendo questa procedura. Un'altro tool molto utile, è usare Super Grub Disk, scaricabile sia come immagine floppy, sia come cd-rom.

MBR al sicuro

Tutti noi conosciamo cos’è l’ MBR (master boot record), e tutti noi specialmente all’inizio lo abbiamo temuto, soprattutto, quando si installava quella specie di os, che costa tanto, e non ti da niente, nemmeno un programma, anzi no, uno c’è, notepad.exe. Comunque, come tutti sappiamo, nell’ MBR viene installato il boot loader e archiviata la tabella delle partizioni . Quindi nel caso si sminchiasse, per noi sarebbe una perdita di tempo, ed anche un’incazzatura. Quindi siccome prevenire è meglio che curare, in nostro aiuto ci viene incontro il comando dd, che ci salva i primi 512 byte del disco.

 

# dd if=/dev/sda of=~/mbr.img bs=512 count=1

Et voilà. Adesso è al sicuro. Per controllare il contenuto usiamo:

 

od -xa mbr.img

Per ripristinarlo usiamo:

 

dd if=mbr.img of=/dev/sda bs=512 count=1