Come resettare la password di root di un computer attraverso Grub

Importante: prima di spiegarvi il procedimento, vi voglio precisare che non mi importa come andrete ad utilizzare queste informazioni. Se fate qualcosa di illegale non farò da complice. Non vengo certo a fare da baby-sitter a qualche aspirante lamer. Evitate perciò dei commenti tipo “cerco istruzioni per trovare password bla bla bla” perché finiranno diretti nello spam. Grazie.

In questa guida vi spiegherò come sfruttare una “vulnerabilità” di GRUB (o meglio, una impostazione insicura) per cambiare a vostro piacimento la password di root di un sistema Linux.

Nelle installazioni predefinite, solitamente le voci del GRUB non sono protette dalle modifiche, e quindi diventano delle porte spalancate agli attacchi. Se il GRUB su cui volete agire è protetto da password per le modifiche, be’ mi dispiace, il tutorial non è efficace.

Riavviate e paratevi di fronte al GRUB, in alcuni casi può essere necessario premere un determinato tasto per accedere al menù.

Menu di avvio di Grub

Spostatevi col cursore sulla voce di avvio normale (di solito la prima) e premete il tasto e. A questo punto troverete questa schermata:

Modifica della riga del kernel

Spostatevi sulla seconda riga e premete nuovamente e. Verso la fine della riga trovate il parametro ro e sostituitelo con rw. Ora mettetevi in fondo e aggiungere come parametro init=/bin/bash. State attenti perché la mappatura della tastiera viene interpretata come americana, e quindi i simboli non sono sui soliti tasti. Lascio a voi la ricerca di quelli corretti.:D

A questo punto, dopo aver aggiunto il parametro, premete Invio e quindi il tasto b. Il sistema si caricherà e vi troverete davanti… un terminale di amministratore!

Resta solo da dare, ovviamente, il comando fatidico:

Inserimento della nuova password

Ora rimontato il filesystem in sola lettura e riavviate:

mount -o remount,ro /
reboot

Spero di avervi spaventato abbastanza e avervi messo voglia di blindare il vostro GRUB! 😛

Convertire i font OpenType in font TrueType

Per lunedì dovevo fare una relazione sugli algoritmi di ordinamento e portarla a scuola. Pertanto ho voluto cercare qualche font di bell’aspetto. Ovviamente non ho esitato a consultare Dafont, il mio archivio preferito di font gratuiti e liberamente usabili. La mia scelta è ricaduta sul font Qlassik.

Entusiasta per la bellezza e l’eleganza del font, e ansioso di applicarlo ai titoli dei paragrafi, lo scarico, e mi accorgo subito che è composto di due file di tipo OpenType. Io da perfetto incompetente, non sapevo che fosse un formato registrato da Microsoft, anzi pensavo che quell’open significasse qualcos’altro. Dopo aver messo i font nella cartella /usr/share/fonts/truetype e aver visto che non funzionavano, ho deciso di trovare un modo di convertirli. Ebbene, ce l’ho! 🙂

Seguo la guida e installo Fontforge:

sudo aptitude install fontforge

A questo punto creo un file che dice a Fontforge cosa fare:

sudo gedit /usr/bin/script-otf2ttf.sh

E ci inserisco le istruzioni:

#!/usr/local/bin/fontforge
 # Quick and dirty hack: converts a font to truetype (.ttf)
 Print("Opening "+$1);
 Open($1);
 Print("Saving "+$1:r+".ttf");
 Generate($1:r+".ttf");
 Quit(0);

Salvo ed esco. Se copiate il contenuto del file state attenti alle virgolette!

Poi ho creato un nuovo eseguibile in questo modo:

sudo gedit /usr/bin/otf2ttf

E ci ho inserito:

#!/bin/bash
 for i in $@; do
 fontforge -script /usr/bin/script-otf2ttf.sh $i
 done

A questo punto ho salvato, poi gli ho dato i permessi di esecuzione:

sudo chmod a+x /usr/bin/otf2ttf

Fatto.

Mi sono trovato con un programmino che accetta in input i font di tipo .otf e li converte in .ttf, ovvero TrueType, perfettamente gestibili da tutti i programmi. Come fare per convertire tutti i file OpenType in una directory?

Semplice. Ci si sposta nella cartella in cui sono contenuti e si da il comando:

otf2ttf *.otf

In questo modo il programma esegue una istanza della conversione per ogni file che trova. A questo punto è possibile ad esempio spostarli tutti in una cartella:

mkdir ttf
mv *.ttf ttf/

E questo è quanto.:)

Per finire, vi linko la guida che mi ha portato sulla giusta strada. Ditemi che ne pensate! 😀

Aggiornamento 19/03/2009: ho aggiornato questo post con una modifica per rendere più semplice l’utilizzo dello script con un numero arbitrario di font.

Cambiare l’etichetta di una chiavetta usb, in modo chic

Qualche tempo fa, avendo necessità di nominare con il mio cognome la chiavetta usb da usare per i file del laboratorio a scuola, ho cercato un po’ su Google e mi sono imbattuto nel post di Aldolat.

Ho deciso quindi di fare in quel modo, e funziona perfettamente. Adesso, visto che volevo provare un po’ di Bash, ho fatto un piccolo script per rendere un po’ più automatica la cosa. Ecco come fare.

Salvate nella vostra home il file etichetta-usb.sh con il seguente contenuto:

#!/bin/sh
echo "   Questo script rinomina l'etichetta di una chiavetta usb   "
echo "   (è consigliabile inserirlo con l'iniziale maiuscola).   "
echo "   Assicurati di aver smontato la chiavetta usb.   "
echo "   Inserisci il nome dell'etichetta da dare alla penna usb:   "
echo "   "
read NOME
echo "   "
echo "   Inserisci il volume (per esempio /dev/sdb1):   "
echo "   "
read DEVICE
echo "   "
sudo mlabel -i $DEVICE ::$NOME
echo "   Finito. Estrai la penna usb e reinseriscila.   "

Dopodiché fate:

cd
chmod a+x etichetta-usb.sh
sudo mv etichetta-usb.sh /usr/bin
sudo aptitude install mtools

Ora, per usare lo script, modificate il menù, e in una sezione a scelta (tipo Strumenti di Sistema) inserite una nuova voce, il cui comando deve essere:

xterm -hold -e /usr/bin/etichetta-usb.sh

Ricordate prima di avviare lo script che dovete smontare la chiavetta se la sua icona compare sul desktop, e che dovete essere tra gli utenti che possono compiere operazioni di amministrazione. 🙂

Ecco, ditemi che ne pensate. 😀

Copertine CD con la HP Photosmart C5280 All-in-one su Linux

Attenzione: questa guida ora è superata e rimane qui solamente per referenza. La nuova guida, più semplice e perfettamente funzionante (compresi i mini CD) è consultabile a questo indirizzo.

Egregi, dopo l’acquisto da me fatto e di cui al titolo stesso, sono riuscito a configurare anche la stampa su CD, raggiungendo così la piena possibilità di utilizzo del prodotto in questione! 😀

Per fare ciò, ho alquanto torturato il povero CD stampabile fornito nella confezione. Osserviamo un minuto di silenzio per questo povero dispositivo; così ridotto:

Lo onorerò mettendoci dentro qualche distro… devo ancora decidere cosa di preciso. Almeno non sarà martoriato invano.

Come potete vedere dall’ultima prova di stampa (nell’immagine è tratteggiata) ho trovato le impostazioni per centrare perfettamente la copertina. Rimane un bordino bianco, ma succede anche su Windows, e poi è meglio così.

Per creare facilmente delle copertine dei CD, scaricate questo file e spostatelo nella sottocartella Templates nella vostra home (se non c’è createla). Dopodiché cliccateci sopra con il destro e alla voce proprietà cambiate icona scegliendo quella che si trova in /usr/share/icons/Tango/32×32/devices/gnome-dev-cdrom-audio.png. Adesso spostatevi in una qualsiasi directory come ad esempio sul Desktop, cliccate col destro e selezionate Crea > Copertina CD.

Verrà creato un file con il template che vi ho fatto installare prima. Apritelo. Come potete vedere, è un file di Openoffice che contiene due immagini (una col bordo e una bianca nei punti giusti). 🙂

Voi dovete inserire le immagini e/o le scritte che volete e poi disporle in secondo piano (tasto destro > Disponi > Porta indietro) fino a che non sono sotto al bordo e all’immagine bianca. Cancellate pure la didascalia che ho messo.

Quando siete soddisfatti e volete stampare (potete anche rimuovere l’immagine col bordo, ma lasciate quella bianca) estraete il vassoio di stampa del cd e metteteci un cd stampabile. Inserite il CD nel vano per la stampa dei cd come indicato nel manuale della stampante, e assicuratevi che la stampante sia staccata posteriormente dal muro per almeno 8 cm.

A questo punto selezionate File > Stampa e scegliete la stampante HP Photosmart. Andate nel menù Proprietà e impostate così:

La scheda stampa
La scheda stampante

Dopodiché fate OK e tornate alla finestra di prima.

Andate su Extra e impostate così:

Questa impostazione è decisiva

Adesso confermate e avviate la stampa. Vi verrà fuori un avviso che vi avverte che l’area di stampa è inferiore alla dimensione della pagina del documento. Voi scegliete “Ritaglia” e aspettate che il CD venga stampato. 😀

In fin dei conti si tratta solo di utilizzare il template che ho creato e ricordarsi le impostazioni di stampa. Dopo un paio di stampe viene automatico.

Nota finale: se volete altri template per vari tipi di documenti date un’occhiata qui. 😉

Connettere il Nintendo DS a Linux con il wi-fi (non con l’adattatore Nintendo)

Questa materia mi ha incuriosito, così oggi ho fatto un po’ di ricerche tanto per vedere se l’adattatore Wireless di Nintendo per caso funzionasse con Linux (casomai avessi pensato di comprarlo). La risposta è no. A parte questo, ricordatevi che quell’adattatore funziona solo con periferiche autorizzate, usa un protocollo proprietario, e costa come qualsiasi altra chiavetta wi-fi.

Perciò se volete connettere a Internet il Nintendo DS con la vostra connessione avete due strade: o usate un router Wireless o una chiavetta wi-fi normale (ripeto, non quella di Nintendo). Prima di comprare una periferica consiglio di verificarne la compatibilità con Linux, anche se Ubuntu 7.04 se la cava egregiamente.

Router Wi-fi

Per prima cosa controllate che il vostro router sia supportato da Nintendo e che sia configurato correttamente per la connessione ad internet, inoltre se è protetto deve usare la protezione WEP. A questo punto si può procedere all’utilizzo della funzione di ricerca automatica come indicato nel sito. Qui potete trovare una copia in Pdf delle istruzioni, senza perdere tempo a cercare.

Chiavetta wi-fi

Per usare il metodo che illustrerò avete bisogno di questi requisiti:

  • Linux con kernel 2.4.x o superiore (la guida è orientata ad Ubuntu, ma qualsiasi altra distro dovrebbe andare bene)
  • Una chiavetta wi-fi usb correttamente installata sul sistema
  • Una connessione ad internet funzionante che non si appoggi alla chiavetta wi-fi che volete far comunicare con il DS
  • Una basilarissima conoscenza del terminale
  • I pacchetti wireless-tools e iptables installati
  • La voglia di perdere un po’ di tempo (penso che in mezz’ora si possa fare)

Dopo aver elencato i requisiti passerò alla spiegazione. Per prima cosa inserite la chiave wi-fi usb.

Adesso la chiave così com’è è impostata in modo da essere uno Slave, cioè si aspetta di ricevere un servizio. In realtà la chiave lo deve fornire il servizio, e lo deve dare al Nintendo DS. Deve quindi diventare Master.

Ora dovete scoprire il nome dell’interfaccia di rete che Linux ha assegnato rispettivamente alla vostra connessione ad internet ed alla chiavetta.

Per fare ciò, date nel terminale questo comando:

ifconfig

Ed avrete l’elenco delle interfacce di rete del computer. Se per internet usate una connessione ethernet quasi sicuramente la vostra interfaccia sarà eth0. La vostra chiavetta avrà con tutta probabilità l’interfaccia wlan0. La guida presumerà queste condizioni, modificate i comandi in caso di una diversa configurazione.

Adesso pensiamo a impostare la chiavetta per fare da Master e aggiungiamo tutte le altre impostazioni necessarie:

sudo iwconfig wlan0 mode Master
sudo iwconfig wlan0 essid "LINUX_AP"
sudo iwconfig wlan0 channel 6
sudo iwconfig wlan0 rate 2M

Adesso la vostra chiavetta è diventata ufficialmente un Access Point!

Nota importante: il canale numero 6 nella guida originale era indicato come l’ideale per gli USA, invitando ad informarsi per gli altri stati. Il sito Pianeta Radio indica che in Europa è lecito utilizzare i canali dal numero 1 al numero 13. Per questo motivo ho ritenuto che il canale 6 vada più che bene.

Adesso siamo ad un buon punto. Utilizzate la funzione di ricerca degli Access Point del Nintendo DS come indicato nella guida sul sito linkato prima (o nel Pdf linkato prima) e connettetevi all’Access Point LINUX_AP.

Vi apparirà un errore.

Sì, perché non abbiamo ancora configurato l’Access Point. Tranquilli comunque, il fatto che il DS abbia trovato l’Access Point significa che fin qui è andato tutto bene.

Adesso assegniamo l’intervallo di ip da usare con la chiavetta, deve essere diverso da quello usato dal vostro router.

Quasi sicuramente andrà bene questo comando:

sudo ifconfig wlan0 up 192.168.2.1

Ecco, adesso dobbiamo convogliare il traffico di rete tra le due interfacce, in modo che la connessione passi dal Nintendo DS alla chiavetta alla vostra connessione ad Internet.

sudo iptables --table nat --append POSTROUTING -o eth0 -j MASQUERADE
sudo iptables --append FORWARD --in-interface wlan0 -j ACCEPT
sudo echo 1 > /proc/sys/net/ipv4/ip_forward

Adesso dobbiamo assegnare un ip al Nintendo DS.

Seguite la guida in Pdf di prima, ma invece di toccare la voce di ricerca degli Access Point selezionate Manual Setup traducibile in Configurazione manuale.

Inserite i seguenti dati:

SSID: LINUX_AP

Ip Address (indirizzo ip): 192.168.2.2

Gateway: 192.168.2.1

Primary/Secondary DNS (DNS primario/secondario): per questi inserite i DNS del vostro provider, oppure gli OpenDNS.

Adesso salvate la configurazione e fategli fare il test della connessione.

A questo punto se tutto è andato per il verso giusto sarà connesso!

Tradotto, semplificato e spiegato dalla guida originale di PD Ghost Buster.

Mantenere Wine sempre pulito e bello esteticamente

Capita che utilizzare un’applicazione Windows sia necessario (a me praticamente mai, comunque…), ed in questo caso ci viene in aiuto il buon Wine. Il problema purtroppo è che un applicazione sotto Wine al naturale è decisamente brutta.

Decisamente non ci siamo…

In questa guida vedremo come partire da un’installazione nuova di Wine e rendere il suo aspetto più gradevole, per poi farne una copia di backup da ripristinare occasionalmente.

Quindi se non avete un’installazione nuova di Wine, e non avete programmi installati o ce li avete ma non sono importanti, potete azzerare le vostre impostazioni di Wine (ed i programmi installati) con il comando:

cd ~
rm -rf .wine

Adesso avviate da terminale Wine senza argomenti:

wine

E aspettate che ricrei la directory appena rimossa.

Adesso che abbiamo Wine nuovo possiamo pensare all’aspetto estetico. Se utilizzate un tema chiaro installate Royale; mentre se utilizzate un tema scuro be’ mettetevi l’anima in pace perché il massimo che ho trovato è stato qualche tema grigietto… Se ne trovate qualcuno di nero segnalatemelo.

A questo punto aprite la configurazione di Wine e nel tab Desktop Integration impostate il tema a Media Center Style.

Applicate e chiudete le applicazioni aperte (per avere lo stile applicato correttamente bisogna riaprire i programmi).

Ricorda Windows… Però direi che è decisamente meglio di prima!

Ovviamente ciò si può fare anche con altri temi per Windows (anche quelli non ufficiali, che su Windows necessitano di una patch) basta solo che scegliate quello che preferite.

Ma veniamo alla pulizia.

Adesso che abbiamo il nostro tema ci conviene creare una copia di backup da ripristinare al volo. Prima di fare ciò ci conviene settare le impostazioni relative alle unità virtuali e le altre che vogliamo.

Poi facciamo nel terminale:

cd ~
cp -rf .wine .wine.backup

Poi, quando vogliamo resettare la nostra installazione di Wine senza reinstallare il tema (ma perdendo tutti i programmi comunque):

cd ~
rm -rf .wine
cp -rf .wine.backup .wine

Recuperare le immagini danneggiate

Lavorando con le foto capita di trovarsi in situazioni estremamente irritanti come questa:

In questo caso abbiamo una foto danneggiata che non ne vuol sapere di aprirsi in Gimp.

La cosa a me è capitata proprio oggi, ed ho cercato un modo di recuperare la foto. Gimp è schizzinoso e non la apre, ma questo non vuol dire che sia tutto perduto. 🙂 A volte una foto è rovinata soltanto parzialmente, ma la sua componente “buona” può essere recuperata.

Per fare ciò useremo l’utility convert di Imagemagick.

Se non l’abbiamo installato, facciamo da terminale:

sudo apt-get install imagemagick

E poi per recuperare la foto:

convert immagine-danneggiata.jpg recupero.png

Qui ho convertito l’immagine danneggiata (che era una JPEG) in una PNG visto che è un formato lossless leggibile con Gimp.

Ora si può aprire l’immaginein Gimp e provvedere a rattoppare la parte danneggiata, sperando che sia solo una piccola porzione dell’immagine.

Risolvere i problemi relativi ai caratteri accentati nelle applicazioni KDE

Oggi, provando l’ottimo Kopete, ho notato che le applicazioni KDE avevano dei problemi a gestire i caratteri accentati. Perciò ho cercato un po’ ed ho trovato la soluzione. 🙂 Basta modificare un file:

sudo gedit ~/.bashrc

E incollarci in fondo queste righe:

# Risolve problemi di caratteri accentati
export LC_ALL=C
export LANG="it_IT.UTF-8"
export LC_CTYPE="it_IT.euro"

In realtà solo la prima è fondamentale, ma le altre due sono comunque utili per precisare che usiamo una tastiera italiana. Ricordate che perché i cambiamenti abbiano effetto è necessario riavviare il server grafico. 😉

Quando i file nel cestino non si vogliono proprio eliminare

A volte capita che, per problemi legati ai permessi, i file che mettiamo nel cestino dopo non si possono più eliminare. A me succede in particolare quando elimino dei residui di una compilazione che viene fatta ovviamente come amministratore.

user-trash-full.png

Se anche voi ogni tanto avete questi problemi, non preoccupatevi. Basta che digitiate nel terminale:

sudo rm -rf ~/.local/share/Trash/*

Fatto! 😀

Crediti immagine

Bluetooth con Ubuntu Feisty

Ultimamente ho avuto problemi con il bluetooth, in particolare la cosa si è verificata quando ho tentato di spedire sul computer una foto per un post. Certo, avrei potuto prenderla con il cavo USB, ma dato che c’ero, tanto valeva perdere la mezz’oretta necessaria ed avere il bluetooth funzionante. 😉

Prima di capire dove era il problema ho perso un sacco di tempo a reinstallare tutto, inutilmente. Ho quindi pensato che avrei potuto scrivere una semplice guida su come abilitare il bluetooth con Ubuntu Feisty.

Nella guida mi baserò sulle cose da fare se si ha un adattatore bluetooth USB, ma il procedimento è analogo anche per un eventuale funzionalità bluetooth inclusa in un portatile.

Installare il bluetooth

Se vogliamo avere tutto quello che ci serve per usare il bluetooth basta installare alcuni programmi, ovvero da terminale:

sudo apt-get install bluez-utils bluez-pin bluez-gnome gnome-bluetooth nautilus-sendto

Ora che abbiamo tutto il necessario, ultimiamo una faccenda. Andiamo su Sistema > Preferenze > Sessioni ed aggiungiamone una nuova, e come comando inseriamo gnome-obex-server. Facciamo il log-out e rientriamo nel nostro account.

Adesso inseriamo la chiavetta bluetooth. Dovrebbe apparire questa icona sull’area di notifica:

Se invece viene scritto Dispositivo commutato nella modalità off, si dovrà seguire la seconda parte di questa guida, relativa alla risoluzione dei problemi.

Risoluzione dei problemi

Per gli sfortunati che come me si sono visti apparire questo messaggio:

La risoluzione è abbastanza semplice. Digitate nel terminale:

hcitool dev

Segnatevi il numero di dispositivo tenendo conto che le eventuali lettere sono maiuscole (nel mio caso il codice è 11:11:11:11:11:11).

Ora togliete la chiavetta e digitate nel terminale:

sudo gedit /var/lib/bluetooth/11:11:11:11:11:11/config

Ovviamente al posto del mio codice voi dovete mettere il vostro. Nella riga dove c’è scritto mode off dovete cambiare scrivendo mode on.

Infine scrivete nel terminale:

sudo /etc/init.d/bluetooth restart

Riconnettete la chiavetta e sarà tutto a posto. 😀