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 😉

(Errori Virtualbox) VERR_VMX_MSR_LOCKED_OR_DISABLED

 

L'errore su Virtualbox che ho avuto sull' Acer Aspire One:

 

Apertura di una sessione per la Macchina Virtuale non riuscita: VT-x features locked or unavailable in MSR. (VERR_VMX_MSR_LOCKED_OR_DISABLED).
Codice 'uscita: NS_ERROR_FAILURE (0x80004005)
Componente: Console
Interfaccia: IConsole {1968b7d3-e3bf-4ceb-99e0-cb7c913317bb}bilitare

 

si risolve deselezionando la voce " Abilita VT-x/AMD-V  ", nel menu Sistema-Accellerazione, ed anche portando il numero delle cpu a 1.

 

enjoy 😉
 

Debian Squeeze e problemi di restart

 

 

 

 

Se capita di avere problemi col riavvio in Debian, ora sapete con chi prendervela :). Ultimamente per una questione di tempo, ho installato Debian Squeeze da un Live CD, e di conseguenza mi sono ritrovato con il problema di non riuscire, una volta riavviato, a vedere gli altri O.S. nel menu di Grub. Tutto questo per opera di kexec-tools, questo pacchetto fornisce strumenti per caricare in memoria un kernel e poi "riavviare" direttamente in questo kernel tramite la chiamata di sistema
kexec, bypassando il normale processo di avvio.

 

# apt-get remove --purge kexec-tools

 

enjoy 😉

Truccare la data di una foto con exiftool

 

 

                                               La mia sheela

 

Ho già parlato in passato di exiftool, e di quanto sia importante cancellare i metadati che si nascondono in una foto, prima di distribuirla in giro. Comunque, per motivi che non sto qui a spiegare, io controllo sempre i dati nelle foto, poichè, questo mi fa capire, con l'aiuto di domande mirate successive, se chi le ha inviate dice il vero. Ma se io volessi deliberatamente mentire? far credere che quella foto sia stata scattata in una data diversa, e quindi ingannare un'occhio poco attento?….come fare??? Semplice, basta manipolare la data con exiftool. Come esempio porto la foto leggermente "purificata" della mia sheela, scattata nel 2007. I dati presenti sulla foto sono i seguenti:

 

ORIGINALE:

edmond@Debianbox:~/Desktop/test$ exiftool -a -u -g1 sheela.jpg
—- ExifTool —-
ExifTool Version Number         : 8.60
—- System —-
File Name                       : sheela.jpg
Directory                       : .
File Size                       : 189 kB
File Modification Date/Time     : 2007:09:30 15:23:51+02:00
File Permissions                : rw-r—–
—- File —-
File Type                       : JPEG
MIME Type                       : image/jpeg
Image Width                     : 500
Image Height                    : 375
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)
—- JFIF —-
JFIF Version                    : 1.01
Resolution Unit                 : inches
X Resolution                    : 72
Y Resolution                    : 72
—- Composite —-
Image Size                      : 500×375

 

quindi per manipolare la data, facendo anche una copia dell'originale, il comando da usare è il seguente:

 

$ exiftool -DateTimeOriginal='2012:01:15 14:50:04' foto.jpg

 

FAKE:
 

edmond@Debianbox:~/Desktop/test$ exiftool -DateTimeOriginal='2012:01:15 14:50:04' sheela.jpg
    1 image files updated
edmond@Debianbox:~/Desktop/test$ exiftool -a -u -g1 sheela.jpg—- ExifTool —-
ExifTool Version Number         : 8.60
—- System —-
File Name                       : sheela.jpg
Directory                       : .
File Size                       : 190 kB
File Modification Date/Time     : 2012:01:15 14:50:37+01:00
File Permissions                : rw-r—–
—- File —-
File Type                       : JPEG
MIME Type                       : image/jpeg
Exif Byte Order                 : Big-endian (Motorola, MM)
Image Width                     : 500
Image Height                    : 375
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)
—- JFIF —-
JFIF Version                    : 1.01
Resolution Unit                 : inches
X Resolution                    : 72
Y Resolution                    : 72
—- IFD0 —-
X Resolution                    : 72
Y Resolution                    : 72
Resolution Unit                 : inches
Y Cb Cr Positioning             : Centered
—- ExifIFD —-
Exif Version                    : 0230
Date/Time Original              : 2012:01:15 14:50:04
Components Configuration        : Y, Cb, Cr, –
Flashpix Version                : 0100
Color Space                     : Uncalibrated
—- Composite —-
Image Size                      : 500×375

 

 

per cancellare tutti i metadati:

 

 

$ exiftool -all= foto.jpg

 

 

enjoy 😉

Rimuovere i file di configurazione dei pacchetti già disinstallati

 

Per eliminare tutti i file di configurazione dei programmi che non sono più installati, quindi, di tutti quelli disinstallati senza il remove –purge, si può utilizzare il comando sotto.

 

# dpkg --get-selections|grep deinstall|cut -f 1|xargs dpkg -P

 

enjoy 😉

 

ps: Buone Feste a Tutti i Pinguini,. …….per tutti gli altri "schermate blu" 🙂

Conoscere la versione dei pacchetti installati

 

Può risultare utile conoscere la versione  dei pacchetti installati, specialmente quando si fanno dei mix con i vari repository. Un esempio può essere la mia Debian Sid, che qualche tempo fa per poter passare a Gnome 3.2, ho dovuto installare un po di pacchetti dai repo experimental. A questo proposito, mi pare che oggi Gnome 3.2, sia ufficialmente in Sid. Comunque ad oggi è rimasto ben poco di experimental, come si può vedere di seguito:

 

# apt-get install apt-show-versions

# apt-show-versions |grep experimental

 

solo due pacchetti (per il momento):

 

root@Debianbox:/home/edmond# apt-show-versions |grep experimental
gnome-shell-extensions/experimental uptodate 3.2.0-1
libgl1-mesa-dri-experimental/sid uptodate 7.11.2-1

 

enjoy 😉

Downgrade da Debian Sid a Debian Squeeze No Problem

 

Ecco, oggi mi sono reso conto che un downgrade da Debian Unstable (Sid) a Debian Stable (Squeeze) si può fare. Detta così sembra come aver scoperto l'acqua calda, ma IO ero convinto che ciò potesse portare dei grossissimi problemi, e quindi era da considerarsi quasi una leggenda metropolitana. Siccome solo gli stolti non cambiano idea, oggi ho deciso di togliermi questa curiosità, ed anticipo di essere stato incredibilmente sorpreso da mamma Debian 🙂 . Sono partito da una Debian Sid aggiornata fino a stamattina 21/12/2011, l'obiettivo da raggiungere quindi non era semplice, dato che si trattava di fare un downgrade da Gnome 3.2 a Gnome 2.30, quindi con dei cambiamenti "epocali". Premetto che su Debian Sid, addirittura avevo un solo kernel, per chi ha due kernel, si troverà qualche problema in meno.

 

Start:

 

# echo 'deb https://ftp.it.debian.org/debian/ squeeze main' >> /etc/apt/sources.list

# nano /etc/apt/preferences

 

ed incollare:

Package: *
Pin: release a=stable
Pin-Priority: 1001

quindi:

# apt-get update && apt-get dist-upgrade -u

 

ad un certo punto ho avuto questi errori:

 

I seguenti pacchetti hanno dipendenze non soddisfatte:
 gnome-core : Dipende: dmz-cursor-theme ma non è installato
              Dipende: evolution (>= 2.30) ma non è installato
              Dipende: file-roller (>= 2.30) ma non è installato
              Dipende: gnome-about (>= 2.30) ma non è installato
              Dipende: gnome-themes (>= 2.30) ma non è installato
              Dipende: gstreamer0.10-alsa (>= 0.10.29) ma non è installato
 libnet-ssleay-perl : Dipende: libssl0.9.8 (>= 0.9.8m-1) ma non è installato
 wget : Dipende: libssl0.9.8 (>= 0.9.8m-1) ma non è installato
E: Dipendenze non trovate. Riprovare usando -f.

 

si risolve come suggerito con:

 

# apt-get update && apt-get dist-upgrade -u -f

# apt-get update && apt-get dist-upgrade -u -f

 

a questo punto mi ha avvertito che stavo eliminando il mio unico kernel, quindi mi sono parato il culo ed ho detto di NO.

 

# apt-get install -f

# apt-get update && apt-get install linux-image-2.6.32-5-amd64 linux-headers-2.6.32-5-amd64

# update grub

 

se tutto è andato bene, riavviare ed accedere in modalità ripristino, e ricordarsi di rimuovere i repo di Sid, quindi:


# apt-get update

# apt-get upgrade

 

ed inizierà di nuovo con il downgrade di un bel po di pacchetti, quindi, ancora una volta:

 

# apt-get update && apt-get dist-upgrade -u -f

 

che rimuoverà gli ultimi dieci pacchetti rimasti.

 

# apt-get install gnome-desktop-environment

# init 6

 

adesso abbiamo a tutti gli effetti una Debian Squeeze quasi perfetta, dico quasi perchè, molto sicuramente mancheranno i due pannelli, quindi vedremo solo il desktop senza poter accedere al Menu, ma fortunatamente col tasto destro del mouse, abbiamo la possibilità di aprire il terminale, quindi per riavere i due pannelli, eseguire:

 

# debconf gnome-panel

 

Finito, ed è proprio qui che mi sono meravigliato, perchè ho una Debian Squeeze originale funzionante al 100%, e considerando che da Sid a Stable di differenze attualmente ce ne sono molte, ho avuto per l'ennessima volta la riprova di quanto è "potente sicuro e flessibile" un sistema Debian (niente flame 🙂 ) quindi invito qualcuno a provare, ed a smentirmi, facendo la stessa cosa con un'altra distro, con un downgrade simile (niente flame ancora 🙂 )

 

ATTENZIONE:

il risultato che ho avuto funziona al 100%, ma chi si cimenta a fare una cosa del genere deve sapere come risolvere alcuni problemi, che io do per scontato. Un esempio pratico è che bisogna reinstallare i driver Nvidia, e nel caso non dovessero funzionare provare ad eliminare xorg.conf e poi riprovare, oppure passare provvisoriamente ai nouveau ecc. ecc.. Chi da Nvidia passa ai nouveau, deve ricordarsi di eliminare il file in blacklist dei nouveau che si trova in /etc/modprobe.d , lanciare X -configure, controllare xorg.conf che abbia i "nouveau" e non gli "nv" ecc. ecc. Nel caso (sicuramente) la connessione non va quando si cerca di aggiornare i repo dalla modalità di ripristino, bisogna inserire manualmente i parametri, tipo, ifconfig eth0 192.168.1.5 e poi anche dhclient, ecc. ecc. Se grub da errore, fare un apt-get install grub  In parole povere ognuno è responsabile delle proprie ca$$ate, e deve saper porvi rimedio. Credo di aver detto tutto…. quindi io non ho colpe 🙂

 

ps: il comando doppio in cima non è un errore.

 

enjoy 😉

Building pacchetto Debian da sorgenti

 

Questo è uno dei modi per costruire un pacchetto debian, partendo dai sorgenti.

 

# apt-get install dpkg-dev build-essential devscripts dh-make debhelper dpatch

$ apt-get source PACCHETTO

$ cd PACCHETTO-X.X.X

# apt-get build-dep PACCHETTO

# dpkg-buildpackage -us -uc

# cd ..

$ dpkg -i PACCHETTO.deb


 

enjoy 😉