Augusto Scatolini
Le miniguide del webmaster
Volume 8° (2014)
Edizione speciale “RaspBerry pi”
raccolta di 10 guide
May the Penguin be with you!
Pag. 1 di 69
Pag. 2 di 69
INDICE
Prefazione alla stampa 8° volume
5
RASPBERRY pi 1 di …
7
un vero gioellino
RASPBERRY pi 2 di …
21
il problema del monitor e ..
RASPBERRY pi 3 di …
27
ulteriori settaggi e ..
RASPBERRY pi 4 di …
overclocking
30
RASPBERRY pi come client FreeNX
something beyond my mind
33
Raspberry pi come client di Windows 8
Raspberry pi 6 di …......
43
Ardesia e Bluetooth su Raspberry pi
49
ad un soffio dalla WiiLD con RaspBerry pi
RaspBerry TouchScreen
la WiiLD sul monitor
53
RaspBerry pi emulato via Qemu su Lubuntu LXLE
un ottimo esercizio, tutto da terminale, in 14 passi
57
Windows e ReactOS su RaspBerry pi emulato via Qemu
è possibile!, è possibile!
61
FINE
69
Pag. 3 di 69
Pag. 4 di 69
Prefazione alla stampa del volume 8°
38 erano gli articoli raccolti nel primo volume, il lavoro di 5 anni.
24 erano gli articoli raccolti nel secondo volume (edizione 2009).
27 quelli raccolti nel terzo volume (edizione del 2010).
24 quelli quelli nel quarto volume (edizione 2011 - marzo)
27 quelli quelli nel quinto volume (edizione 2011 – settembre)
27 sono quelli nel sesto volume (settembre 2012)
14 sono quelli presenti sul settimo volume (settembre 2013)
10 sono gli articoli monotematici di questa edizione speciale (febbraio 2014)
Come gli altri, Il libro è stampato ma non pubblicato, inutile cercarlo nelle
librerie. Sono tutte le guide, 10, pubblicate nel tempo, sul RaspBerry pi fino a
febbraio 2014.
Sono tutti pubblicati sul sito internet del Comune di Campagnano di Roma
all’indirizzo http://www.comunecampagnano.it/gnu/miniguide.htm dove chi scrive
ricopre il ruolo di Responsabile dei Servizi Informatici.
Si può raggiungere la stessa pagina tramite l'indirizzo corto http://miniguide.tk
o passando per http://augustoscatolini.tk
Nel corso del tempo, durante il lavoro, ho incontrato dei problemi e ogni volta
che ho trovato una soluzione (a questi problemi), ho preso l’abitudine di scrivere
una miniguida che poi, per puro spirito di condivisione ho pubblicato sul sito
internet con licenza CopyLeft , ovvero chiunque può farne quello che ritiene più
opportuno.
Gli argomenti di questa edizione speciale riguardano tutti e solamente
RaspBerry pi (il mini computer da 35 euro)
il
Un’avvertenza agli specialisti è d’obbligo, il contenuto delle miniguide a volte
può apparire datato, in ambito informatico un periodo di mesi equivale ad un'era
geologica.
A volte il contenuto può apparire impreciso e superficiale, questo è dovuto
alla mia formazione informatica “da autodidatta”. Quando io andavo a scuola
l’informatica non era materia d’insegnamento e il Personal Computer non esisteva
nemmeno.
Da Perito Capotecnico Industriale specializzato in Chimica Industriale, quale
sono, ho iniziato a programmare in Basic ancora prima di conoscere il Sistema
Operativo MS-DOS, poi in dbaseII, dbaseIII, Clipper, Access, Openoffice.org Base,
LibreOffice e così via fino a MySQL.
Questo libro sarà acquistabile online sul sito che lo ha stampato:
http://www.ilmiolibro.it
Pag. 5 di 69
A Mara, mia moglie,
che mi ha sopportato durante tutte le ore passate davanti al Computer
Pag. 6 di 69
RASPBERRY pi 1 di ….
(un vero gioiellino)
Augusto Scatolini ([email protected])
([email protected])
Miniguida n. 171
Ver. 1.0 Agosto 2012
Il Raspberry pi è in calcolatore implementato su una
singola scheda grande come una carta di credito. Il
processore di tipo ARM è a 700 Mhz, la RAM è pari
a 256MB.
Cosa si può fare con questo giocattolo?
Segue un primo esempio con Raspberry collegato a
un TV HDMI 32 pollici con 4 applicazioni avviate
Una breve miniguida/cronistoria sull'acquisto e sulla preparazione di questa scheda madre in miniatura,
perché di questo si tratta. Se si digita la parola rasberry pi su google si ottengono quasi 18.000 risultati ma
pochi in italiano e ancora meno quelli che spiegano dalla A alla Z come si acquista, come si prepara, quali
periferiche sono necessaire, ecc. Sicuramente vale la pena dare un'occhiata a http://www.raspberrypi.org/
e
a http://it.wikipedia.org/wiki/Raspberry_Pi e a http://rpy-italia.org/
Pag. 7 di 69
ACQUISTO (35 dollari + spese spedizione)
Cronologicamente, Raspberry pi poteva essere pre-ordinato su http://farnell.com/ o su
http://uk.rs-online.com/web/, poi vista l'enorme domanda e la insufficiente produzione sono stati sospesi
anche i pre-ordini (intesi come intenzione d'acquisto).
In seguito (dopo aver aumentato la produzione) hanno riaperto i pre-ordini ed io l'ho pre-ordinato su
http://farnell.com dicendomi che avrebbero ritirato i soldi dalla mia Poste Pay al momento della
spedizione.
Due giorni fa (sono passati alcuni mesi) mi hanno consegnato un bustina con il Rasperry pi avvolto
dentro una T-shirt di taglia Extra-doppio-XXL, praticamente la misura di Hulk.
Devo riconoscere che come imballaggio era ottimo.
GUIDE e PERIFERICHE
Verificato
che la
scheda
arrivata era
proprio
nuda, sia
perché priva
di case sia
perché priva
di qualsiasi
accessorio e
o periferica.
Questo era il
contenuto:
35 dollari =
30,00 euro
Dopo aver letto rapidamente qualche guida su internet ho
capito che per far funzionare questa scheda avrei avuto
bisogno di un cavo per l'alimentazione: 12,90 euro,
sembra che potrebbe funzionare anche con il caricatelefonino (se l'attacco corrisponde) (da provare)
Pag. 8 di 69
poi avrei avuto bisogno di un cavo HDMI per collegarlo al
televisore nuovo: 16,90 euro (prossimamente tenterò di
utilizzare l'uscita video RCA composita per i vecchi televisori
analogici)
e una memory card di tipo SD (va bene anche in formato
microSD purché sia abbinata ad un apposito adattatore) da 8
GB per metterci sopra un sistema operativo 13,90 euro
Riassumendo gli acquisti:
Raspberry pi :
30,00 euro (35 dollari)
cavo per alimentazione : 12,90
cavo HDMI per TV:
16,90
scheda SD 8 GB:
13,90 per un totale di circa 74 euro
poi mi sono “procurato” una tastiera e un mouse USB e se escludiamo il monitor (utilizzando un
televisore digitale o analogico) possiamo dire di aver fatto quello che Negroponte non è riuscito a fare con
il progetto UN COMPUTER PER MENO DI 100 EURO
ho affiancato un
orologio da polso
per capire le reali
dimensioni del
Raspberry pi
Pag. 9 di 69
Tre numeri della rivista MagPi in lingua inglese si possono scaricare gratuitamente da
http://www.themagpi.com/
all'indirizzo http://rpy-italia.org/ si trova il portale italiano per Raspberry pi con documenti e materiali.
Il problema da risolvere, dopo tutte queste letture, è cosa mettere sulla scheda SD da 8 GB e soprattutto
come ce lo metto?
Seguendo i vari suggerimenti dei siti appena citati ho scaricato wheezy-raspbian (una versione
modificata di Debian e adattata per il Raspberry pi.
La scarico dal mio PC da tavolo con Ubuntu montato, ma poi mi rendo conto di non avere su questa
macchina il lettore di card SD. Allora accendo il portatile con doppio sistema operativo (dove è presente
questo lettore di SD) e decido di usare il programma win32diskimager nella sua versione compilata
(exe) per windows. Lo scarico da https://launchpad.net/win32-image-writer/+download e dopo averlo
decompresso lo avvio da Window7.
a) Seleziona il file .img estratto precedentemente b) Seleziona la lettera corrispondente alla
cliccando sulla cartella cerchiata
tua card SD
c) Premi il tasto Write per trasferire l'immagine
sulla card SD
** Il file immagine può essere trasferito sulla SD
anche usando il terminale di GNU/Linux con il
comando dd if=wheezy-raspbian.img
of=/dev/sdb bs=1Mdd if=wheezy-raspbian.img
of=/dev/sdb bs=1M modificando il percorso
Pag. 10 di 69
Ora succede che il file immagine di raspbian è di circa 2,5 GB mentre la card SD che ho utilizzato è di 8
GB, quindi devo ridimensionare le partizioni sulla SD per poter utilizzare lo spazio non allocato, la
differenza tra lo spazio della SD e quello dell'immagine pari a 5,5 GB
Il ridimensionamento delle partizioni è un'operazione che risulta molto semplice se si usa il programma
Gparted. Gparted è un programma che gira su GNU/Linux e quindi devo riavviare il portatile con il
lettore SD e questa volta scelgo Ubuntu all'avvio su GRUB.
Installo rapidamente Gparted da terminale con il comando “sudo apt-get install gparted” e scopro che
nella card SD non c'è nessuna partizione di SWAP.
Leggo qua e là che la dimensione della partizione di SWAP può essere intorno ai 200MB e allora
ridimensiono la partizione di tipo EXT4 da 1,5 GB stirandola a destra fino alla fine con l'accortezza di
lasciare 200 MB di spazio non allocato. Poi creo anche la partizione di SWAP
AVVIO
Inserisco la card SD sul retro del
Raspberry pi, il cavo HDMI e lo collego
al televisore, collego tastiera e mouse
USB alle due porte USB
e per accendere il Rapberry pi non c'è
altro altro modo che alimentarlo.
L'utente di default si chiama : pi
con password : rasberry
Si apre una consolle testuale per
permettere di autenticarsi al sistema e una volta fatto il login si può richiamare il desktop grafico
avviando il server grafico X con il
comando startx
dopo aver digitato startx
ECCO RASPBERRY AVVIATO
Pag. 11 di 69
Questo è il mobile del
televisore a 32 pollici usato
per le prime prove.
Il Raspberry sta appoggiato
sopra la prolunga della
corrente.
IMPOSTARE INDIRIZZO IP FISSO
Verificato che funziona tutto, sposto il Rspberry pi nello studio dove ho il modem/switch ADSL per
provare la connessione internet sulla porta RJ45 con il cavo di rete.
Sono costretto però ad
abbandonare il
bellissimo schermo TV
a colori da 32 pollici e
passare ad un vecchio
televisore analogico
collegando l'uscita RCA
composito alla presa
scart del televisore.
Il risultato non è
entusiasmante, schermo
in bianco e nero con
bassissima risoluzione,
ma si riesce ancora a
lavorare.
Apro il browser Midori,
installato di default, e ...
niente la connessione
non c'è. La
documentazione dice che la scheda di rete si dovrebbe configurare da sola e automaticamente in DHCP
ma sulla mia rete lan il DHCP non funziona perché ho cambiato i DNS di Telecom con quelli di
OpenDNS (208.67.222.222 e 208.67.220.220)
Perché il server DHCP non funzioni con i DNS personalizzati non lo so, ma è così.
Bisogna configurare la scheda di rete a “manina”.
Apro il terminale e con il comando sudo leafpad /etc/network/interfaces apro il file di configurazione
delle schede di rete. Scrivo:
Pag. 12 di 69
auto eth0
iface eth0 inet static
address 192.168.0.98
netmask 255.255.255.0
gateway 192.168.0.1
(adattatelo alla vostra rete)
(rete con 255 indirizzi IP possibili)
(l'indirizzo privato del modem)
IMPOSTARE DNS PERSONALIZZATI
Apro il terminale e con il comando sudo leafpad /etc/resolv.conf apro il file di configurazione dei DNS.
Scrivo: nameserver 208.67.222.222
(il DNS secondario non è indispensabile)
provo a navigare e BINGO! Navigo su internet con Raspberry pi tramite il browes midori
INSTALLARE ALTRI PROGRAMMI
In realtà navigare con Midori non è molto entusiasmante così decido di installare un altro browser, così
apro un terminale e do il comando sudo apt-get install chrome ….. niente
provo sudo apt-get install chomium …. niente
capisco (non subito) che i repository di Raspbian non sono quelli di Debian perché l'architettura dei PC
dove si usa Debian è Intel (i386) o AMD 64 mentre l'architettura del Raspberry pi / Raspbian è ARM e
quindi tutti i programmi devono essere riadattati (compilati) a questa tecnologia.
I Repository per Raspbian nei tre rami main, contrib e non-free sono disponibili all'indirizzo
http://archive.raspbian.org/raspbian/pool/
Pag. 13 di 69
quindi la cosa più semplice per sapere cosa è disponibile (oltre quella di sfogliarsi tutte le directory) è
quella di usare synaptic che automaticamente categorizza tutti i programmi esistenti per la nostra
distribuzione.
Apro il terminale e digito sudo synaptic ….. niente …. non è installato
digito sudo apt-get install synaptic e installo questa bella interfaccia grafica del comando apt
Tramite synaptic scopro che per Raspbian non esiste né google chome né google chromium, cerco
qualche altro browser e trovo iceweasel che è un ottimo browser in quanto derivato da firefox.
Già che mi ci trovo installo anche il plugin gnash per visualizzare i filmati in flash, l'ottimo editor
Abiword e l'ottimo foglio di calcolo Gnumeric.
Da terminale sarebbe stato sufficiente digitare sudo apt-get install browser-plugin-gnash e così via.
PRIME OPERAZIONI
Adesso ho un parco software appena sufficiente ma ci sono altri problemi come
• l'aggiornamento del firmware:
sudo apt-get update e poi sudo apt-get dist-upgrade
• l'impostazione lingua italiana
sudo dpkg-reconfigure locales
• l'impostazione della tastiera
sudo dpkg-reconfigure keyboard-configuration
• l'impostazione del timezone (orologio) sudo dpkg-reconfigure tzdata
• riavviamo
sudo reboot
• cambiamo la password di default
passwd inerisci_nuova_password
• creiamo un altro utente (di riserva) sudo adduser inerisci_nuovo_nome_utente
SIAMO PRONTI
Per verificare che Rapberry pi sia veramente presente sulla mia rete lan avvio The Dude su una macchina
Windows XP e dopo aver setacciato la rete lan:
Pag. 14 di 69
INSTALLARE UN SERVER VNC SU RASPBIAN
In attesa di acquistare uno schermo decente con ingresso HDMI voglio provare a collegarmi al Raspberry
pi tramite VNC dalla macchina WinXP e da quella GNU/Linux Ubuntu, così mi metto alla ricerca di un
server VNC adatto a Raspbian, lo trovo, è Tightvncserver
sudo apt-get install tightvncserver
tightvncserver
(per installarlo da terminale)
(per avviare il server da terminale)
per collegarsi in VNC sia da Win che da Lin l'indirizzo sarà 192.168.0.98:1
:1 sta ad indicare il display 1 in quanto il display 0 è utilizzato dall'utente pi sul Raspberry pi
questo significa che Raspbery pi accetta desktop remoti multipli concorrenti (contemporanei)
Pag. 15 di 69
CREARE UNO SCRIPT per avviare il server VNC
Creo un file di testo sul desktop con leafpad e dentro ci scrivo due righe #!/bin/sh e poi tightvncserver ,
poi lo rendo eseguibile agendo sulle proprietà del file, in questo modo, una volta avviato Rasbian e avuto
accesso al desktop grafico è sufficiente cliccare su questo script eseguibile per avviare il server VNC
UN CLIENT PER FARE DESKTOP REMOTO
Dopo un po' di
ricerche capisco
che devo
installare il
visualizzatore di
desktop remoti
REMMINA con
il comando sudo
apt-get install
remmina o
tramite synaptic
interfaccia di
Remmina
Pag. 16 di 69
Se si ha l'accortezza di abilitare su Win XP la possibilità di fare desktop remoti multipli concorrenti,
praticamente abbiamo creato un server su XP e possiamo usar n Raspberry pi come thin client con n
utenti diversi che usano le risorse della macchina XP
Pag. 17 di 69
si può fare un desktop remoto anche su Ubuntu dove gira un server VNC
Non mi ricordo più come si fa, ma vi assicuro che su Ubuntu si possono fare desktop remoti multipli
concorrenti.
COME SI SPEGNE RASPBERRY PI?
Prima si chiude
l'interfaccia grafica (il
D.E. LXDE)
Pag. 18 di 69
poi si usa il comando
(dalla consolle testuale)
sudo shutdown -h now
infine si toglie
l'alimentazione
Rimane solamente da costruire un
case di cartoncino
LINK UTILI
•
http://www.labarduino.eu/tutorial/raspberry-pi/iniziare-con-la-rpi
•
http://www.linuxfeed.org/2012/08/primi-passi-col-raspberry-pi/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed
%3A+linuxfeed+%28Linux+Feed%29
•
http://feedproxy.google.com/~r/RedbluesBlog/~3/J3lKDKBguO4/primi-passi-col-raspberry-pi.html
•
http://rpitc.blogspot.it/2012/03/raspberry-pi-rdc-thin-client-remmina.html
•
http://archive.raspbian.org/raspbian/pool/
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 19 di 69
Pag. 20 di 69
RASPBERRY pi 2 di ….
(il problema del monitor e ..)
Augusto Scatolini ([email protected]) ([email protected])
Miniguida n. 172
Ver. 1.0 Agosto 2012
Pag. 21 di 69
Dopo la prima parte http://www.comunecampagnano.it/gnu/mini-howto/2012_171_Raberry_pi_1_di_/raspberry_pi_1_di_.pdf
affrontiamo il problema del monitor, che non è secondario.
Come già scritto il pico-PC Raspberry pi ha (solo) due uscite video:
1. una RCA composita per i vecchi televisori analogici
2. una HDMI per i nuovi televisori digitali
La prima soluzione non
risulta praticabile per ovvi
motivi grafici:
si perde il colore e la
risoluzione
La seconda soluzione risulta
alquanto scomoda per motivi
logistici:
collegarlo al TV da 32 pollici
che di solito sta in una
sala/salotto è alquanto
scomodo
Una terza soluzione sarebbe utilizzare un cavo HDMI (lato PC) e un adattatore HDMI-VGA (lato
monitor PC). Peccato tali adattatori costino quanto se non più di nuovo monitor.
Una quarta soluzione (molto economica) è usare un cavo HDMI (lato PC) e un adattatore HDMI-VDI
(lato monitor PC). Qui subentra la fortuna di avere un monitor che oltre l'ingresso VGA abbia anche
l'ingresso VDI. L'adattatore costa solo 6 euro.
Pag. 22 di 69
Se non è praticabile nessuna delle soluzioni precedenti non rimane che condurre il Raspberry pi da un
altro PC via VNC (Virtual Network Computing) situato nella stessa rete lan domestica/aziendale.
In questo modo, dopo aver scaricato, installato e avviato Tightvncserver si può comodamente operare sul
pico-PC da un altro PC (sia Win che Lin) tramite un client qualsiasi VNC.
Pag. 23 di 69
L'inconveniente di questa soluzione è che per avviare il server VNC sul Raspberry pi abbiamo bisogno
comunque di un monitor, di una tastiera ed eventualmente di un mouse (per avviare il server VNC da
terminale o da uno script, graficamente)
AVVIO AUTOMATICO DEL SERVER VNC
Creazione del file di avvio
Per prima cosa dobbiamo creare il file di testo “tightvncserver” nella directory /etc/init.d/
Questo file file può essere creato (come super utente) da terminale con il programma nano, graficamente
con il programma leafpad e perfino via Putty (SSH)
nel file scriviamo o incolliamo il seguente testo:
export USER='pi'
eval cd ~$USER
case "$1" in
start)
su $USER -c '/usr/bin/vncserver :1 -geometry 1280x800 -depth 16 -pixelformat rgb565'
;;
stop)
pkill Xtightvnc
;;
*)
exit 1
;;
esac
exit 0
** il parametro -geometry 1280x800 è opzionale
Rendere il file eseguibile
Questo può essere fatto da terminale con il comando sudo chmod 755 /etc/init.d/tightvncserver
o graficamente agendo sulle proprietà del file
Aggiungere il file nella sequenza d'avvio
Il comando (da terminale) per aggiungere questo file nella sequenza d'avvio è il seguente:
sudo update-rc.d tightvncserver defaults
A questo punto possiamo scollegare monitor o TV, tastiera e mouse e accendere (alimentare)
semplicemente il Raspbery pi, il server VMC si avvierà automaticamente e potremo controllarlo da
remoto tramite un'altra macchina della rete
Pag. 24 di 69
ULTERIORI CONFIGURAZIONI
Nel caso in cui il Raspberry pi avesse un monitor, può essere comodo elevare il runlevel da 2 a 5
Il runlevel 2 è testuale, quindi bisogna fare il login e poi digitare startx
Il runlevel 5 è grafico, dobbiamo solamente fare il login
Per cambiare il runlevel di default è sufficiente cambiare il numero 2 in 5 nella riga 18 (circa) del file
/etc/inittab
Se dovesse essere necessario riconfigurare Raspbian si può sempre usare il comando
sudo raspi-config
Infine, chi volesse registrare il proprio Raspberry pi su una mappa mondiale può andare su
http://rastrack.co.uk/index.php
LINK UTILI
•
http://myraspberrypiexperience.blogspot.co.uk/2012/08/start-vnc-automatically.html
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 25 di 69
Pag. 26 di 69
RASPBERRY pi 3 di ….
(ulteriori settaggi e ..)
Augusto Scatolini ([email protected]) ([email protected])
Miniguida n. 173
Ver. 1.0 Agosto 2012
Pag. 27 di 69
Rimuovere il bordo nero intorno allo schermo
modificare il file /boot/config.txt (come super utente) e scrivere o decommentare le linee:
overscan_left=-40
overscan_right=-40
overscan_top=-40
overscan_bottom=-40
prima
dopo
Pag. 28 di 69
Programma per vedere i filmati e ascoltare la musica
il miglior programma (nel senso che funziona) è omxplayer (non ha interfaccia GUI)
se non è già installato si installa da Sinaptic o con sudo apt-get install omxplayer
per vedere un film o ascoltare un MP3 si clicca con il tasto destro sul file, poi su “Apri con..” e sul
comando personalizzato si digita omxplayer
Questi sono due momenti del film Revolution OS dove vengono intervistati Linus Torwalds e Richard
Stallman
Con il visualizzatore
di documenti PDF
evince si possono
leggere le bellissime e
utilissime riviste
dedicate a Raspberry
pi scaricabili da
http://www.themagpi.com
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 29 di 69
Pag. 30 di 69
RASPBERRY pi 4 di ….
(overclocking)
Augusto Scatolini ([email protected]) ([email protected])
Miniguida n. 175
Ver. 1.0 Settembre 2012
Pag. 31 di 69
In informatica la pratica dell'overclocking consiste nel perseguire il miglioramento delle prestazioni
di un componente elettronico (in genere una CPU) mediante l'aumento della frequenza di clock
rispetto a quella prevista dal produttore, marchiata sul contenitore della CPU.
Nel caso delle CPU, di cui si parla in generale ai soli fini esemplificativi, ciò che viene alterato è il
segnale di clock interno del sistema, che determina quanti cicli di operazioni la CPU del computer
debba eseguire nell'unità di tempo. Cambiando la frequenza alla quale questi cicli vengono eseguiti, in
alcuni casi, è possibile aumentare o diminuire il numero delle operazioni nell'unità di tempo eseguite dal
componente coinvolto.
A livello pratico si tratta di una operazione perfettamente legale ma che invalida istantaneamente la
garanzia del prodotto oggetto della manipolazione. L'overclocking può essere eseguito in modo più o
meno spinto.
http://it.wikipedia.org/wiki/Overclocking
Le prestazioni del Raspberry pi sono quelle che sono, limitate ma sempre più che dignitose considerando
le caratteristiche della scheda madre, del processore a 700 Mhz e della RAM (soli 250 MB). E'
comunque possibile migliorare queste prestazioni con la tecnica dell'overclocking. (senza esagerare)
In termini più precisi, fare un overclocking significa aumentare la frequenza di lavoro di un qualsiasi
componente che ne abbia una, come ad esempio un processore. La frequenza con cui lavora un moderno
processore è determinata da due parametri: la velocità ed il tipo di bus, che potrebbe, ad esempio, essere
di 200 MHz) ed il moltiplicatore di tale parametro, nel nostro caso esemplificativo, pari a x10. Dato
l'esempio, la frequenza di lavoro del processore preso in esame sarà di 2000 MHz (bus * moltiplicatore).
In generale è possibile praticare l'overclock di tutti i componenti digitali in sistemi asincroni, composti
per meglio dire da sottosistemi che operino quindi a velocità diverse tra loro e non uniformi. Nello
specifico del nostro esempio, un qualsiasi sistema informatico ha le porte USB, la memoria di sistema, la
memoria della scheda grafica, la CPU ed il bus di sistema che operano a velocità diverse: è
l'architettura che procede poi a bufferizzare e gestire in modo del tutto trasparente le transizioni
delle informazioni tra un componente e l'altro. In sistemi sincroni, invece, esiste una sola velocità di
clock alla quale sono legate tutte le componenti del sistema: modificarla significherebbe agire sull'intero
sistema, cosa che evidentemente non è possibile data la nativa eterogenea delle componenti in questione.
Tornando ad un personal computer, di solito si usa praticare overclock sulla memoria e la GPU della
scheda video, nonché su memoria, bus e CPU del sistema, tutto ai fini di migliorare le prestazioni.
http://it.wikipedia.org/wiki/Overclocking
Installiamo sul Raspberry pi uno strumento come bc per fare un benchmark
GNU bc è un linguaggio algebrico interattivo a precisione arbitraria conforme alla bozza dello standard
POSIX 1003.2 con parecchie estensioni come i nomi delle variabili multicarattere, il comando "else" ed
espressioni booleane complete. GNU bc non necessita del programma GNU
http://packages.debian.org/sid/bc
sudo apt-get install bc
eseguiamo il benchmark con il comando
time echo "scale=3000;4*a(1)" | bc -l con i parametri di default che sono
CPU=700MHz
RAM=400MHz
GPU=250MHz
risultato:
Pag. 32 di 69
real
user
sys
1m23.064s pari a 1 minuto, 23 secondi e 64 millesimi di secondo
1m16.820s pari a 1 minuto, 16 secondi e 820 millesimi di secondo
0m0.060s pari a 0 minuti, 0 secondi e 60 millesimi di secondo
modifichiamo i parametri aumentando CPU, RAM e GPU nel file /boot/config.txt come superutente
CPU – 700MHz → 900MHz
RAM – 400MHz → 500MHz
GPU – 250MHz → 275MHz
salviamo, riavviamo il sistema e ripetiamo il test
risultato:
real
user
sys
1m23.064s
1m16.820s
0m0.060s
→ 1m2.868s
→ 0m58.660s
→ 0m0.050s
pari a 1 minuto, 2 secondi e 868 millesimi di secondo
pari a 0 minuti, 58 secondi e 660 millesimi di secondo
pari a 0 minuti, 0 secondi e 50 millesimi di secondo
è semplice verificare che c'è stata
una riduzione di tempo real del
24,3%, user del 23,6% e sys del
16,7% e quindi un significativo
aumento della velocità
real: è il tempo di clock che passa
dall'inizio alla fine della chiamata
user: è il tempo della CPU trascorso
in user-mode (fuori dal kernel)
sys: è il tempo della CPU trascorso
dentro al kernel.
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 33 di 69
Pag. 34 di 69
RASPBERRY pi come client FreeNX
(something beyond my mind)
Augusto Scatolini ([email protected]) ([email protected])
Miniguida n. 176
Ver. 1.0 Ottobre 2012
Una rete FreeNX con Raspberry pi come fat client
un progetto che è iniziato oltre 5 anni fa
Pag. 35 di 69
Nel giugno del 2007 scrissi la miniguida “FreeNXUbuntu Graphic Terminal Server ~ mini-Howto”
disponibile su :
http://www.comunecampagnano.it/gnu/mini-howto/freeNX_Ubuntu_Termninal_Server/freeNX_Ubuntu_Terminal_Server.htm
dove per la prima volta sperimentavo la tecnologia NX nella versione Free Edition. Quella ufficiale è a
pagamento. Nella guida mostravo come installare il server FreeNX su Ubuntu 7.04 e il client su un pc
con Windows2000.
Il risultato fu ottimo:
Praticamente si poteva usare una macchina windows come terminale (fat client) per collegarsi a un server
FreeNX installato su GNU/Linux. Fat client significa che il terminale è intelligente nel senso che ha un
disco rigido e un sistema operativo funzionante.
All'epoca mi sfuggiva il concetto che il client in un sistema “client-server” potesse essere anche stupido
(thin client) ovvero senza hard disk e senza sistema operativo.
Infatti, esattamente un anno dopo, nel giugno del 2008 scrissi la miniguida
“UBUNTU LTSP – Linux Terminal Server Project” disponibile su:
http://www.comunecampagnano.it/gnu/ltsp-howto/LTSP-minihowto.pdf.
Questo progetto prevedeva (e prevede) un sistema client-server dove il client è, o può essere,
assolutamente stupido (thin client) ovvero senza hard disk e quindi senza sistema operativo.
Seguendo una lunga e complessa procedura riuscii ad avviare un PC con Windows da CD ROM, quindi
byassando il contenuto del disco e il disco stesso, il software sul CD ROM era capace di collegarsi ad un
server GNU/Linux (appositamente predisposto) e quindi utilizzare tute le risorse software ma soprattutto
le risorse hardware del server.
Pag. 36 di 69
Utilizzare le risorse hardware del server significa processore, ram, ecc
Questo fu il risultato:
Pag. 37 di 69
Nel febbraio 2012 perfezionai il progetto FreeNX con la miniguida
FREENX – GNOME KDE XFCE4 LXDE - mini howto disponibile su:
http://www.comunecampagnano.it/gnu/mini-howto/FREENX_GNOME_KDE_XFCE4_LXDE/freenx_gnome_kde_xfce4_lxde.pdf
Con questa guida implementai 4 diversi DE (Desktop Environment) in modo tale che ogni client FreeNX
poteva scegliere quale DE utilizzare per la propria sessione.
Questo u il risultato:
Pag. 38 di 69
Nel 2012 arriva sul mercato il Rapsberry pi e così ad agosto del 2012 scrissi la prima di una serie di
guide: RASPBERRY pi 1 di ….
disponibile su:
http://www.comunecampagnano.it/gnu/mini-howto/2012_171_Raberry_pi_1_di_/raspberry_pi_1_di_.pdf
Poi seguirono RASPBERRY pi 2 di …. disponibile su
http://www.comunecampagnano.it/gnu/mini-howto/2012_172_Raspberry_pi_2_di_/raspberry_pi_2_di_.pdf
Pag. 39 di 69
poi RASPBERRY pi 3 di …. disponibile su
http://www.comunecampagnano.it/gnu/mini-howto/2012_173_Raspberry_pi_3_di_/raspberry_pi_3_di_.pdf
e poi RASPBERRY pi 4 di …. disponibile su
http://www.comunecampagnano.it/gnu/mini-howto/2012_175_Raspberry_pi_4_di_/raspberry_pi_4_di_.pdf
Pag. 40 di 69
Appena Raspberry pi fu disponibile sul mercato la primissima idea che mi balenò in mente fu quella di
usarlo come thin client in un progetto LTSP.
Il progetto lo avevo già sperimentato con successo nel 2008, quello che mi mancava era un modo di fare
il boot sulla rete senza disporre di un lettore CD ROM.
Il problema fu risolto (apparentemente) dall'uscita di una distribuzione per Raspberry pi di nome
BerryTerminal che nelle intenzioni dell'autore serve proprio a questo scopo.
Inizio l'installazione del server LTSP su Ubuntu 12.04 …. ma dopo un mese di estenuanti tentativi …
niente. Non riesco più a far funzionare un server LTSP.
Nel frattempo, parallelamente, avevo tentato anche di riprendere il vecchio progetto FreeNX ma scopro (o
non me ne ero mai accorto prima) che la versione NX Server Free Edition è sì gratuita ma ha il limite di
permettere al massimo due connessioni concorrenti, cioè contemporaneamente.
Questo limite rende vana l'idea di allestire un'aula informatica composta da un buon server GNU/Linux e
10, 15 o 20 thin client che usano dei Raspberry pi. Un'idea rivoluzionaria.
Visto che alla testardaggine non c'è limite, continuo a cercare una soluzione possibile e tra le varie
ricerche su Google scopro che oltre all'edizione di NX a pagamento e all'edizione NX Server Free Edition
esiste una terza edizione completamente GPL e cioè senza limiti e quindi senza il limite delle due
connessioni. Miracoli del software libero e del lavoro della comunità.
Installo la versione libera che si chiama “Free NX Server” su Ubuntu 12.04 ma non funziona.
Disinstallo la versione con il limite “NX Server Free Edition” ma la versione libera ancora non funziona.
Disinstallo tutto e reinstallo “Free NX Server” ma non funziona. Ormai il sistema è compromesso.
L'ultimo tentativo che mi viene in mente grazie a quel briciolo di intelligenza laterale che ho è di fare una
fresh installation ovvero un'installazione su un sistema dove non è mai stato installato.
Abbandono il mio PC da tavolo con Ubuntu 12.04 e prendo un portatile sempre con Ubuntu 12.04
Installo Free NX Server e collego come fat client un PC con Windows XP, il PC con Ubuntu 12.04 e
…......................... Raspberry pi e ….....................................
FUNZIONANO TUTTI E TRE
I FAT CLIENT
CONTEMPORANEAMENTE
Pag. 41 di 69
Installazione di Free NX Server su Ubuntu 12.04
In primo luogo, è necessario aggiungere il FreeNX-team PPA per Ubuntu 12,04 GNU/Linux.
Premi CTRL + ALT + T per ottenere il tuo terminale, quindi digita o incolla il seguente comando, quindi
premi Invio, infine premi Invio per confermare l'aggiunta della nuova sorgente:
sudo add-apt-repository ppa: FreeNX-team
Aggiorna la lista dei repository, quindi installa il software FreeNX server (ci sono due comandi uno di
seguito all'altro, il 2° viene eseguito solo se prima è ha avuto successo). Dopo aver verificato che nessun
pacchetto importanti sarà rimosso, premi Y o (S) poi invio per installare il server FreeNX:
sudo apt-get update && sudo apt-get install FreeNX
Inoltre, come indicato nella documentazione della comunità per l'installazione di FreeNX - scarica lo
script nxsetup mancante, estrailo, poi copialo in /usr/lib/nx (il comando che segue, di una sola linea)
comprende 3 comandi e termina con /usr/lib/nx :
wget https://bugs.launchpad.net/freenx-server/+bug/576359/+attachment/1378450/+files/nxsetup.tar.gz
&& tar xvf nxsetup.tar.gz && sudo cp nxsetup/usr/lib/nx
i 3 comandi separati :
wget https://bugs.launchpad.net/freenx-server/+bug/576359/+attachment/1378450/+files/nxsetup.tar.gz
tar xvf nxsetup.tar.gz
sudo cp nxsetup/usr/lib/nx
Ora, esegui lo script di installazione nxserver. In questo caso si utilizzano le chiavi di crittografia
predefiniti di NoMachine in modo che anche i client di Windows possano connettersi:
sudo /usr/lib/nx/nxsetup --install --setup-NoMachine-key
A questo punto, si dispone di server FreeNX installato, ma ora è opprtuno configurare il server FreeNX al
fine di permettere ai client di utilizzare una sessione ubuntu-2d:
echo -e "\n#Use unity 2d for client sessions\nCOMMAND_START_GNOME='gnome-session
--session=ubuntu-2d'"|sudo tee -a /etc/nxserver/node.conf
Quindi, riavvia il server FreeNX :
sudo /etc/init.d/freenx-server restart
altri comandi disponibili sono :
sudo /etc/init.d/freenx-server stop
e
sudo /etc/init.d/freenx-server start
Installare i client Free NX
Sul sito NOMACHINE http://www.nomachine.com/download.php si noterà che si possono scaricare i
client (gratuiti) FreeNX sia per Windows che per GNU/Linux Ubuntu ma non per Raspberry pi che non
avendo architettura Intel non supporta il client per ubuntu classico anche se Raspbian (la distribuzione
usata in questo progetto) è una Debian adattata a tale architettura.
Per fortuna la comunità ha sviluppato REMMINA, un client multi-protocollo, che con l'aggiunta di uno
specifico plugin riesce a connettersi ad un server Free NX.
Pag. 42 di 69
Quindi sul Raspbery pi, dove “gira” Raspbian, è sufficiente installare Remmina con il comando
sudo apt-get install remmina
e poi il necessario plugin nx con il comando
sudo apt-get install remmina-plugin-nx
<<========
Raspberry pi
enjoy
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 43 di 69
Pag. 44 di 69
Raspberry pi come client di Windows 8
(Raspberry pi 6 di …......)
Augusto Scatolini
([email protected])
([email protected])
([email protected])
Miniguida n. 195
Ver. 1.0 Novembre 2013
Continua la serie di guide su Raspberry pi, dopo le prime 5 guide
1) http://www.comunecampagnano.it/gnu/minihowto/2012_171_Raberry_pi_1_di_/raspberry_pi_1_di_.pdf
2) http://www.comunecampagnano.it/gnu/minihowto/2012_172_Raspberry_pi_2_di_/raspberry_pi_2_di_.pdf
3) http://www.comunecampagnano.it/gnu/minihowto/2012_173_Raspberry_pi_3_di_/raspberry_pi_3_di_.pdf
4) http://www.comunecampagnano.it/gnu/minihowto/2012_175_Raspberry_pi_4_di_/raspberry_pi_4_di_.pdf
5) http://www.comunecampagnano.it/gnu/minihowto/2012_176_raspberry_pi_FreeNX_client/raspberry_pi_FreeNX_client_.pdf
arriva la sesta dove vedremo come usare una serie di Raspberry pi come terminali di Windows 8 patchato,
ovvero dopo aver trasformato Windows 8 in un Terminal Server
Pag. 45 di 69
Abbiamo visto nell'ultima guida come utilizzare una serie di Raspberry pi (ricordo il costo di 35 dollari
cadauno) come fat client di una rete Free NX.
Una rete Free NX è composta da un unico server GNU/Linux (adeguatamente potente) capace, grazie al
servizio Free NX, di rilasciare un desktop completo a n client, in questo caso, Raspberry pi.
Si può immaginare immediatamente il risparmio per l'acquisto dell'hardware (un solo PC performante e
una serie di Raspberry pi) e per la manutenzione/gestione del software che deve essere fatta su una sola
macchina.
La domanda che sorge spontanea è:
Non si può usare la stesa tecnica per realizzare una rete composta da un solo PC con Windows 8 e
una serie di Raspberry pi come client?
La risposta è ovviamente positiva.
Se installiamo sui Raspberry pi la distribuzione Raspbian (che è una derivata di Debian) possiamo anche
installare il programma Remmina.
Remmina è capace di fare un desktop remoto su sistemi Windows.
Quindi Raspberry pi tramite Remmina è capace di fare un Desktop remoto (con il protocollo RDP) su
Windows 8.
Pag. 46 di 69
Ma per Windows 8 (come per WinXP e Win7) è possibile accettare una sola sessione di desktop remoto.
Allora dobbiamo trasformare Win 8 in Win 8 server.
Ci viene in aiuto (come per WinXP e Win7) la patch della libreria termsvr.dll scaricabile da
www.stoned-vienna.com/downloads/Windows 8 Patcher.zip
Ovviamente si deve abilitare il desktop remoto su Win8, si devono creare n utenti locali standard (o
administrator) su Win8 e si devono autorizzare al Desktop remoto.
Dopo di che tutti i Raspberry pi (ma anche tutti i client winXP ma anche tutti i client Ubuntu) possono
fare un desktop remoto su Win8 contemporaneamente.
Pag. 47 di 69
Pag. 48 di 69
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 49 di 69
Pag. 50 di 69
Ardesia e Bluetooth su Raspberry pi
(ad un soffio dalla WiiLD con RaspBerry pi)
Augusto Scatolini
([email protected])
([email protected])
([email protected])
Miniguida n. 199
Ver. 1.0 Gennaio 2014
Dopo aver “smanettato” a dovere con il primo RaspBerry pi mod B da 256 MB di RAM e dopo aver
allestito e testato la WiiLD sia su GNU/Linux con la distribuzione WiiLDOS sia su Windows 7,
l'evoluzione naturale è stata: ma si potrà fare una WiiLD con un RaspBwerry pi?
** per coerenza, sto scrivendo questa guida direttamente sul RaspBerry via LibreOffice
Pag. 51 di 69
Prerequisiti:
Per prima cosa ho acquistato un nuovo RB
mod. B da 512 MB RAM,
non badando a spese ho preso anche una
bellissima custodia in plastica blue
poi ho acquistato un dongle USB
BlueTooth, poi ho acquistato un cavo
adattore HDMI – VGA per collegare il RB
al Videoproiettore. poi ho scaricato e
installto la nuova distribuzione dedicata
Raspbian (Debian 7)
Installazione del driver per il
bluetooth
apro il terminale e digito: sudo apt-get install bluetooth bluez-utils blueman
spengo il RB, inserisco il dongle e riavvio.
con il comando lsusb posso verificare se il sistema ha riconosciuto il dispositivo o
meno
con il comando /etc/init.d/bluetooth status posso verificarne lo stato
con il comando /etc/init.d/bluetooth start posso avviarlo
con il comando /etc/init.d/bluetooth stop posso fermarlo
con il comando /etc/init.d/bluetooth restart posso riavviarlo
con il comando /etc/init.d/bluetooth force-reload posso forzarne il ri-caricamento
Installazione di Ardesia (inchiostro digitale)
installo Synaptic con il
comando sudo apt-get
install synaptic
poi posso installare
ardesia via synaptic
avvio ardesia e ricevo il
fatidico messaggio
d'errore “non c'è alcun
composite manager
attivo”
scarico e installo Compiz
ma, scopro che è una
versione molto ridotta
rispetto alla standard e
non c'è la possibilità di
attivare il composite
manager
installo, via synaptic, xcommgr che è un composite manager alternativo
andrebbe posizionato nei programmi che “partono”, come demoni all'avvio ma, vado di fretta e lo lancio
via terminale
riprovo ad avviare ardesia e FUNZIONA!
Pag. 52 di 69
A questo punto rimane solo da provare a
collegare il RaspBerry pi ad un
videoproiettore tramite il cavo adattore
HDMI-VGA.
Lo vedremo alla prossima guida.
Nel fratttempo posso provare se funziona il
programma python-whiteboard, che ho già
scaricato e installato tramite synaptic.
Funziona perfettamente, è pronto a
collegarsi con il WiiMote della Nintendo.
Posso anche provare il programma xournal
Pag. 53 di 69
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 54 di 69
RaspBerry TouchScreen
(la WiiLD sul monitor)
Augusto Scatolini
([email protected])
([email protected])
([email protected])
Miniguida n. 200
Ver. 1.0 Febbraio 2014
L'idea era quella di realizzare un lavagna Digitale Wii WiiLD utilizzando un RaspBerry pi mod. B
equipaggiato con 512 MB di RAM.
Al momento, per mancanza di un cavo capace di connettere il RB
al videoproiettore, non è stato possibile testare l'esperimento.
Ho acquistato su Amazon un convertitore VGA-HDMI per una
ventina di euro ma il videoproiettore non ha nessuna intenzione di
fare il suo lavoro, cioè di proiettare. Veramente, se collego il RB ad
un monitor VGA utilizzando questo convertitore, il segnale video
non arriva neanche al monitor.
Non so cosa pensare, convertitore fallato?
Pag. 55 di 69
Andiamo per ordine, queste sono le 7 guide che ho scritto finora sul RaspBerry pi:
http://www.comunecampagnano.it/gnu/mini-howto/2012_171_Raberry_pi_1_di_/raspberry_pi_1_di_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2012_172_Raspberry_pi_2_di_/raspberry_pi_2_di_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2012_173_Raspberry_pi_3_di_/raspberry_pi_3_di_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2012_175_Raspberry_pi_4_di_/raspberry_pi_4_di_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2012_176_raspberry_pi_FreeNX_client/raspberry_pi_FreeNX_client_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2013_195_Raspbery_pi_windows8_terminal/raspberry_pi_Windows8_client_.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2014_199_ardesia_e_bluetooth_su_raspberry/ardesia_e_bluetooth_su_raspberry.pdf
Quelle sulla Lavagna Digitale WiiLD:
http://www.comunecampagnano.it/gnu/mini-howto/2013_189_wiild/wiild_la%20Guida_completa.pdf
http://www.comunecampagnano.it/gnu/mini-howto/2013_194_WiiLD_in_tutte_le_salse/wiild_in_tutte_le_salse.pdf
Basandomi sul principio che per realizzare una WiiLD è sufficiente un videoproiettore, un controller
WiiMote, un computer munito di BlueTooth e una qualsiasi Distribuzione GNU/Linux dove sia possibile
installare il programma Python-WhiteBoard e Ardesia con annesso Composite Manager ho iniziato a
collezionare tutto il materiale necessario:
1. Videoproiettore, fatto
2. Convertitore VGA-HDMI, fatto
3. Controller WiiMote, fatto
4. RaspBerry pi con 512 MB di RAM, fatto
5. Dongle USB BlueTooth, fatto
6. Driver per installare Bluetooth, fatto
7. Distribuzione GNU/Linux Raspbian, fatto
8. Programma Python-WhiteBoard, fatto
9. Composite Manager, fatto
10. Ardesia (Inchiostro Digitale), fatto
Monto il tutto e, come detto, sul muro non appare niente.
Allora scollego il videoproiettore e collego al RaspBerry pi un monitor con ingresso HDMI;
risultato: ho un classico RaspBerry pi collegato ad un monitor
la differenza, questa volta è che ho 512 MB di RAM e tutto il software per la WiiLD installato
quindi giro il WiiMote (che era puntato sul muro) e lo punto verso il monitor
avvio l'applicazione python-whiteboard e premo i tasti 1-2 del wiimote
appare sullo schermo l'applicazione per eseguire la taratura
abilito il composite manager e ardesia
risultato
Pag. 56 di 69
OTTENGO UNO SCHERMO TOUCHSCREEN
C'è da chiarire che le prestazioni (tempi di riposta) non sono tali da rendere il progetto operativo e pronto
per la produzione ma, vi assicuro, è stato veramente emozionante.
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 57 di 69
Pag. 58 di 69
RaspBerry pi emulato via Qemu su Lubuntu LXLE (emulato su Ubuntu)
(un ottimo esercizio, tutto da terminale, in 14 passi)
Augusto Scatolini
([email protected])
([email protected])
([email protected])
Miniguida n. 203
Ver. Febbraio-2014
L'esercizio consiste nel virtualizzare un RaspBerry pi tramite Qemu su una macchina equipaggiata con
Lubuntu LXLE a sua volta virtualizzata tramite VirtuaBox su una macchina fisica con Ubuntu.
La distribuzione utilizzata per il RaspBerry pi è raspberrypi-fedora-remix-14-r1.img, un po' datata ma
l'unica che sono riuscito a far funzionare. Se ne può scaricare una copia compressa da
http://194.182.130.7/images/fedora/14/r1-06-03-2012/raspberrypi-fedora-remix-14-r1.img.gz
E' un puro esercizio, molto interessante, in quanto il RaspBerry pi virtuale ottenuto come risultato, a me,
risulta inutilizzabile per mancato riconoscimento del mouse.
Potrebbe dipendere dalla doppia virtualizzazione, un loop.
Sarebbe opportuno ripetere l'esercizio su una macchina fisica.
Pag. 59 di 69
Cosa ci serve?
1) Una cartella di nome Raspberrypi sul Desktop (Scrivania) da creare via terminale
cd Scrivania
mkdir Raspberrypi
cd Raspberrypi
2) L'immagine (file .img) di una distribuzione capace di girare su RaspBerry pi (RB)
Come è noto, il RB ha il processore con architettura ARM mentre le distribuzioni normali sono state
compilate per processori con architettura Intel.
Scarichiamo l'immagine con il comando
firefox http://194.182.130.7/images/fedora/14/r1-06-03-2012/raspberrypi-fedora-remix-14-r1.img.gz
e decomprimiamola dentro la cartella RaspBerrypi con il comando
unzip raspberrypi-fedora-remix-14-r1.img.gz
3) L'immagine zimage del Kernel per Qemu, scaricabile con il comando
wget http://dl.dropbox.com/u/45842273/zImage
spostiamo anche questa dentro la cartella RaspBerrypi
4) il codice sorgente di Qemu che deve essere appositamente compilato per poter gestire un RaspBerry pi
virtuale. Lo scarichiamo da con il comando/protocollo git digitando sul terminale
git clone git://git.linaro.org/qemu/qemu-linaro.git
** se git non è presente sul sistema installarlo con il comando sudo apt-get install git
5) creare una partizione rootfs3G.ext3 di crca 3 GB per il file system di root con il comando
dd if=/dev/zero of=rootfs3G.ext3 count=6M
6) Formattare la partizione appena creata con il file system ext3 con il comando
/sbin/mkfs.ext3 rootfs3G.ext3
7) individuare il settore di avvio (srtartsector) dell'immagine raspberrypi-fedora-remix-14-r1.img tramite
il comando
file raspberrypi-fedora-remix-14-r1.img
otterremo qualcosa di simile a questo:
raspberrypi-fedora-remix-14-r1.img: x86 boot sector; partition 1: ID=0xb, active, starthead 0, startsector 2048, 204800
sectors; partition 2: ID=0x83, starthead 0, startsector 206848, 3246080 sectors, code offset 0xb8
appuntiamoci il valore 206848 perché ci servirà in seguto
8) Creare le cartelle mnt e mnt2 con i comandi
mkdir mnt
mkdir mnt2
9) montare l'immagine di fedora sulla cartella mnt con il comando
sudo mount -o loop,offset=$[206848*512] raspberrypi-fedora-remix-14-r1.img mnt
** il numero evidenziato è quello annotato in precedenza
10) montare la partizione di root sulla crtella mnt2 con il comando
sudo mount -o loop rootfs3G.ext3 mnt2
Pag. 60 di 69
11) copiare il contenuto della cartella mnt dentro la cartella mnt2 con il comando
sudo cp mnt/* mnt2 -a
12) Smontare le due cartelle con i comandi
sudo umount mnt2
sudo umount mnt
13) compilare e rendere eseguibile il sorgente Qemu con i soliti tre comandi
./configure - -target-list=arm-softmmu
make -j 8
sudo make install
** se non è presente il compilatore gcc o altri componenti necessari come zlib libs e headers o altri ancora
installarli con i comandi:
sudo apt-get --no-install-recommends -y build-dep qemu
sudo apt-get install zlib1g-dev
sudo apt-get install libglib2.0
git submodule update --init pixman
git submodule update --init dtc
sudo apt-get install dh-autoreconf
14) avviare il virtualizzatore Qemu con il comando
qemu-system-arm -M versatilepb -cpu arm1176 -m 192 -hda rootfs3G.ext3 -kernel zImage -append
"root=/dev/sda" -serial stdio -redir tcp:2222::22
Il RaspBerry pi verrà avviato (emulato tramite Qemu)
Pag. 61 di 69
Al primo avvio dell'immagine non c'è password, quindi si deve settare una password per root, creare un
utente e settarne la password, selezionare la timezone e specificare se si desidera fare il boot in modalità
grafica o testuale.
La prima volta che si esegue il boot il RB si presenterà ancora in modalità testuale, anche se si è scelta la
modalità grafica.
Dopo aver fatto il login come root è necessario cambiare i permessi di lettura e scrittura della cartella
/tmp con il comando
chmod 777/tmp
Ora si può eseguire un reboot o digitare init 5 per ottenere l'interfaccia grafica
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 62 di 69
Windows e ReactOS su RaspBerry pi emulato via Qemu
(è possibile!, è possibile!)
Augusto Scatolini
([email protected])
([email protected])
([email protected])
Miniguida n. 204
Ver. Febbraio-2014
In questa miniguida installeremo l'emulatore di macchine virtuali Qemu, previa compilazione, sul
RaspBerry pi dove è installata la distribuzione GNU/Linux Raspbian.
Poi avvieremo delle macchine virtuali preconfigurate per Vmware con estensione VMDK.
Nello specifico avvieremo una macchina Windows XP e il suo clone libero e Open Source ReactOS
Pag. 63 di 69
Preparazione
aggiorniamo Raspbian con i soliti due comandi, da terminale
sudo apt-get update
sudo apt-get upgrade
installiamo GIT
Git è un sistema software di controllo di versione distribuito, creato da Linus Torvalds nel 2005.
La progettazione di Git è stata ispirata da BitKeeper e da Monotone. Git era stato pensato inizialmente solamente come
motore a basso livello che altri potevano usare per scrivere un front-end. Tuttavia, il progetto Git è in seguito diventato un
sistema completo di controllo versione, direttamente utilizzabile da riga di comando. Vari importanti progetti software adesso
usano Git per il loro controllo versione, e principalmente il kernel Linux.
Fonte wikipedia
sudo apt-get install git
installiamo alcune librerie che ci serviranno in seguito
sudo apt-get install zlib1g-dev
sudo apt-get install libsdl1.2-dev
creiamo una cartella di nome raspidev dentro la home di pi
mkdir raspidev
entriamo nella cartella appena creata
cd raspidev
scarichiamo dentro questa cartella il codice sorgente di Qemu compresso con il comando
midori http://thoronir.net/raspi-dev/qemu-git.tar.bz2
decomprimiamo il file con il comando
sudo tar -xvf qemu-git.tar.bz2
entriamo nella cartella qemu (risultant dalla decompressione)
cd qemu
iniziamo la compilazione con il comando
./configure --target-list=”i386-softmmu” --enable-sdl --prefix=/usr
continuiamo con il comando
sudo make
questo processo ci mostrerà due errori relativi al file tcg-target.c
dobbiamo apportare delle modifiche manualmente al codice sorgente di questo file che si trova in due
diverse posizioni:
/home/pi/raspidev/qemu/tcg/arm/tcg-target.c
Pag. 64 di 69
e
/home/pi/raspidev/qemu/tcg/arm/tcg-target.c
usando il comando
sudo leafpad /home/pi/raspidev/qemu/tcg/arm/tcg-target.c
o sudo nano /home/pi/raspidev/qemu/tcg/arm/tcg-target.c
e
sudo leafpad /home/pi/raspdev/qemu/tcg/i386/tcg-target.c
o sudo nano /home/pi/raspdev/qemu/tcg/i386/tcg-target.c
si devono cercare tutte le occorrenze della ricerca della stringa “static void tcg”
e aggiungere la parola inline tra static e void = static inline void
tante volte quanto necessario
ripetiamo ora il comando
sudo make
e infine il terzo e ultimo comando della compilazione
sudo make install
a questo punto abbiamo Qemu perfettamente funzionante su RaspBerry pi
ci procuriamo l'immagine di Windows XP in formato .vmdk, la posizioniamo dentro la cartella Qemu e
lanciamo il comando
qemu xp.vmdk -m 64
il risultato sulla prossima pagina
Pag. 65 di 69
visto che la qualità della macchina xp.vmdk che mi sono procurato non era proprio ottima, ho scaricato
dal sito https://www.reactos.org/download una macchina virtuale già pronta per l'uso e l'ho posizionata
dentro la cartella Qemu
poi l'ho avviata con il comando
qemu ReactOS.vmdk -m 64
Pag. 66 di 69
Pag. 67 di 69
Pag. 68 di 69
FINE
Questo documento è rilasciato con licenza Copyleft
(tutti i rovesci sono riservati) altre miniguide su
http://www.comunecampagnano.it/gnu/miniguide.htm
oppure direttamente su http://miniguide.tk
sito consigliato: http://www.linux4campagnano.net
blog consigliato: http://campagnano-rap.blogspot.com
Pag. 69 di 69
Scarica

scarica - ONLINE Service costruzione e gestione siti WEB