Posts Tagged ‘Linux’

11
ott

Conoscere bene un Sistema Operativo…

Quando si dice “la notte porta consiglio”. Beh, di solito lo fa mentre si dorme. Io sono sveglio, ma è uguale.

Commentavo questo post, quando mi vien fuori in maniera più che naturale la seguente “chicca”

Conoscere un sistema [operativo] vuol dire saper smanettare a fondo con un sistema Linux, BSD, etc.

Conoscere Windows significa sapere fare in modo che non si autodistrugga.

Quanto è tristemente vero. Tristemente per Windows, ovviamente.

1
apr

La Littizzetto e Windows…

Ho scoperto che la settimana scorsa mi son perso una bella performance della Littizzetto a Che tempo che fa. Alla fine del suo solito spazio della domenica, il 25 Marzo scorso, Luciana ha simpaticamente denigrato Windows e il presidente di Microsoft. Sono queste persone, i classici utenti medi ma non troppo, che rendono giustizia a noialtri, che veniamo sempre marchiati come “anti-Windows” per partito preso.
Eppure, mentre noi lo critichiamo tecnicamente, dalla stabilità, alla sicurezza, all’usabilità, c’è una buona fetta di utenti che sono tutt’altro che contenti dell’usabilità di Windows. Il succo dello scatch della Littizzetto era in sostanza: datemi un computer semplice da usare, come se fosse una Moka. Beh, come suggerisce anche il blog iLife, prendere un Mac è una buona idea. Mentre se volete civilizzare un PC, andate giù di Linux + Gnome, consigliata Ubuntu.

 

Riferimenti:
Puntata del 25 Marzo 2007 di Che tempo che fa
Spezzone della performance della Littizzetto, su YouTube

20
feb

Cosa vuoi nel tuo PC?

 

Il titolo del post riassume perfettamente l’iniziativa di DELL, il più grande produttore al mondo di computer di ogni fascia (desktop, portatili, server). Dopo tanti anni di telefonate ricevute che lamentavano la presenza di Windows preinstallato sulle macchine ecco cosa ha pensato Dell: chiedere direttamente alle persone cosa desiderano avere nelle proprie macchine. L’iniziativa si intotola Idea Storm e sorprendentemente (o forse no?) la proposta più votata (al momento 30291 voti, compreso il mio) è quella che suggerisce di avere Linux preinstallato, dando all’utente finale la possibilità di scegliere fra le tre maggiori disitribuzioni di linux gratuite (Ubuntu, Fedora, OpenSUSE) e, opzionalmente, di avere un dual boot con Windows.

Bocciata in ogni proposta, compresa questa più votata, l’idea di imbottire le installazioni di software propretari, brandizzati, trial 120 giorni, etc.

Tra le idee proposte c’è anche quella di fornire le macchine senza sistema operativo, ma dato che le maggiori distribuzioni di Linux sono gratis, tanto vale preinstallare queste, almeno si dà agli utenti la possibilità di conoscere qualcosa di nuovo.

E’ chiaro, comunque, che in ogni caso, l’opzione Windows sarà sempre disponibile. L’importante è che diventi un’opzione e non un’imposizione come è attualmente.

27
ott

Grillo incita all’uso del software Open nella PA

Il Grillo parlante di Italia non manca mai di argomenti. Recentemente ha fatto (sta facendo) partire un’iniziativa chiamata RESET. Nell’ambito di questa iniziativa Beppe scrive dell’adozione di software Open Source nelle pubbliche amministrazioni. Forse si espone a rischi di incomprensione quando afferma che il software Open Source è a costo zero; è sì vero che la stragande maggioranza del software aperto è ottenibile gratuitamente, ma non bisogna trascurare i servizi e i supporti a contorno, dei quali una Pubblica Amministrazione non può fare a meno. Ciononostante, sono ovviamente d’accordo con lui, poiché ritengo che l’adozione di software aperto, soprattutto nella PA, sia una soluzione intelligente che possa risolvere svariati problemi, oltre a quello economico che sta a cuore a Grillo; inoltre potrebbe essere un’iniziativa che, soprattutto se inserita anche nell’ambito del progetto OSOR della UE, potrebbe dare una smossa all’informatica italiana che ristagna. Nazioni come Francia, Germania, Venezuela, Norvegia e altre che ora non mi sovvengono, hanno fatto (o stanno ancora facendo) il passo verso il software Open Source nelle PA. La cosa non è quindi impossibile, anzi, e i vantaggi ci sarebbero. La paura per il trauma da cambio di sistema ormai è solo una scusa; quello che i dipendenti della PA fanno con Windows lo farebbe allo stesso modo su Linux o qualsiasi altro sistema, visto il carico e la tipologia di lavoro che compete loro e visto il livello di usabilità raggiunto negli ambienti desktop Linux. L’Italia sotto questo punto di vista è vecchia, perché vecchia è la classe politica e l’informatica stessa in Italia, dove la maggior parte delle aziende del settore sono partner Microsoft. Se poi consideriamo i legami tra politici e aziende, capiamo come siamo messi male. Ma bisogna pur iniziare da qualche parte e fortunatamente politici come Pecoraro Scanio e Di Pietro stanno dando una certa importanza all’informatica aperta. Peccato che siano la minoranza nel governo, ma almeno è già qualcosa. Speriamo bene.

27
ott

Ubuntu Edgy Eft

Ieri è stata annunciata ufficialmente Ubuntu 6.10 Edgy Eft. Le release notes complete elencano le novità rispetto alla 6.06. Tra le più importanti, Gnome 2.16, Evolution 2.8.0, Firefox 2.0, Openoffice.org 2.0.4, F-Spot, il nuovo photo-manager, Tomboy, un programma per prendere appunti à-la Wiki. Disponibili anche un nuovo tema per il desktop e nuove traduzioni.
Grosse novità anche per la versione Server che include una prerelease di Linux Terminal Server Project (LTSP-5), software che consente la creazione di una rete composta da thin client.

Personalmente, ho appena lanciato il mio apt-get update && apt-get dist-upgrade sulla macchina di casa.

21
set

Migrare al Desktop Linux? Ricette da IBM

Direttamente da IBM un librone di 300 pagine il cui obiettivo è guidare l’utente nella migrazione verso un sistema Desktop basato su Linux. E’ ancora in fase di rivisitazione, ma non si può dire di certo che è acerbo. Il libro, intitolato Linux Client Migration Cookbook, è scaricabile in formato PDF.

20
set

Plasma: oltre il desktop convenzionale?

Plasma è un progetto sviluppato in seno a KDE 4, la prossima major release di uno dei più famosi Desktop Environment per sistemi Unix (Linux, *BSD, etc.). Plasma promette di cambiare la concezione attuale di un ambiente desktop, permettendo agli utenti di essere più produttivi, siano essi dei novizi oppure utenti esperti. In questo progetto sono stati (e sono ancora) profusi gli sforzi di diverse figure, come artisti della grafica, esperti di usabilità, progettisti, programmatori.

Uno degli obiettivi più immediati è creare un ambiente desktop che sia bello alla vista dell’utente. Il team di Plasma si è focalizzato sulle ultime novità, quali le API di XGL e le QT4, per offrire gli “effetti speciali” che agli utenti tanto piacciono. Ovviamente il team è stato intelligente e non ha legato il prodotto alle recenti versioni di X. Chi non ha la possibilità di essere ultraaggiornato, semplicemente non avrà gli effetti speciali, ma le funzionalità rimarranno.
Entrando più nel dettaglio, Plasma consiste in quattro componenti principali: Desktop, Applet, Panel, Extenders. Il Desktop in Plasma non è più inteso come tutti noi siamo abituati a concepirlo; non sarà più un luogo statico dove “depositare” icone, ma sarà un ambiente dinamico che all’occorrenza fornirà i giusti servizi e le giuste funzionalità all’utente. Le Applet consisteranno in piccole applicazioni, come un orologio, un application launcher e tutto quello che può aiutare l’utente a gestire il proprio lavoro. L’obiettivo del team Plasma è quello di rendere facile e veloce distribuire e sviluppare queste applicazioni, che possono essere scritte in svariati linguaggi, da C++ a Java, passando per Ruby e Python. Dopo aver sviluppato l’Applet, questa può essere impacchettata insieme agli artwork, l’HTML e altre risorse in un solo archivio, il quale può essere poi facilmente distribuito e installato. I Panel sono invece i contenitori basilari per tutti gli elementi di Plasma. Sono responsabili anche del fornire il modo di connettere tra di loro le varie Applet. Infine, un Extender è un elemento grafico standard che fornisce agli elementi di Plasma la possibilità di essere temporaneamente maggiorati di dimensione, esponendo così una maggiore superficie usabile. Queste permette di occupare poco spazio per le Applet non utilizzate in un dato momento e di espandere invece (tramite un semplice click) quelle che si intende utilizzare.

Il team di KDE 4, con tutti i suoi sottoprogetti, sembra intenzionato a compiere un cambiamento radicale nel mondo Desktop che si tradurrebbe anche in un enorme vantaggio per la diffusione tra l’utenza desktop di sistemi come Linux e altri Unix liberi. La promessa del team è un sistema diverso dal dekstop ordinario e al tempo stesso maggiormente usabile e produttivo. Staremo a vedere.

[Via MadPenguin]

16
ago

Sistemi Operativi: la guerra della copia

apple_vs_windows_vs_linux.jpg

Nella guerra al miglior sistema operativo, si sa, ci si scopiazza a vicenda le migliori idee, cercando poi di migliorarle. Dati di fatto mettono al primo posto tra i copioni la grande Microsoft, che da tempo copia idee per “innovare” Windows, il sistema operativo di casa. Ma la pratica di copiare le caratteristiche altrui e cercare di migliorarle non è necessariamente deprecabile, a patto di non dedicarsi unicamente alla riproduzione, ma di contribuire nell’innovazione. Da questa guerra della copia, infatti, a trarne beneficio sono gli utenti, che si trovano ad usare prodotti migliorati proprio grazie alla sfida tra i vari concorrenti. Anche Apple ha spesso copiato concetti altrui, apportando comunque grossi miglioramenti nell’usabilità, della quale è indiscussa campionessa. Tra le tante copie, citiamo una delle ultime, che fa parte del parco di innovazioni della prossima release di Mac OS X: Spaces. Spaces non è altro che l’ennesima implementanzione del concetto di Virtual Desktop, da decenni presente in svariati Window/Desktop Manager sviluppati per X11 e quindi per tutti (o quasi) i sistemi Unix like, Linux (soprattutto) compreso. Anche nel mondo Open Source ci sono molti rifacimenti, migliorie e scopiazzature di idee già presenti altrove, come anche ci sono molte innovazioni. Insomma la cosa si ripete ovunque, quindi vince chi fa la migliore implementazione delle idee comuni e chi ha più idee innovative dalla sua, il tutto unito a stabilità, velocità e usabilità.
Oggetto di recenti discussioni è Time Machine, un’altra nuova feature del prossimo venturo Mac OS X Leopard. Time Machine è insieme un sistema di backup automatizzato e un gestore del versioning dei file introdotto in Leopard a livello di filesystem. Anche questi due concetti non sono affatto la scoperta del secolo. Sistemi che effettuano backup automatici esistono da una vita e il versioning dei file a livello di filesystem non è certo un’invenzione di Apple. Già il filesystem Files-11 del sistema operativo OpenVMS aveva il supporto per il versioning dei file. Addirittura Windows XP possiede tale potenzialità, anche se di default il versioning è applicato soltanto ai file critici per il funzionamento del sistema. Il sistema è stato poi ampliato e migliorato in Windows Server 2003; in Windows Vista il sistema sarà integrato sotto il nome di Previous Version ed effettuerà il versioning anche di tutti i file utente, permettendo di ripristinare una “previous version” dal pannello delle proprietà del file. Per Linux, oltre a qualche filesystem specifico il cui sviluppo è praticamente occasionale, abbiamo un interessante progetto: VVFS. Esso introduce il supporto per il controllo di versione a livello di Virtual File System, del resto l’unica cosa intelligente da fare, vista la varietà di filesystem che è possibile usare (e che viene usata) con il sistema operativo libero. Come ben vedete anche qui la storia è vecchia, ma come già detto, in questi casi ciò che conta è l’implementazione e Apple anche stavolta ha saputo prendere un vecchio concetto e conformarlo al proprio stile. Con Time Machine non solo abbiamo backup automatizzati e la possiblità, dal Finder, di ripristinare vecchie versioni di file (cosa che, come detto sopra, avverà anche in Vista), ma viene introdotta un’intuitiva interfaccia 3D che permette all’utente di trasportare l’applicazione con il focus (ovvero quella con la quale al momento l’utente sta interagendo direttamente) indietro nel tempo, portandola allo stato che avrebbe avuto aprendola in un qualsiasi giorno nel passato. Questo viene fatto senza che l’applicazione debba essere stata sviluppata con il supporto a Time Machine e infatti il sistema funziona con tutte le applicazioni attualmente in circolazione. Molto probabilmente quando si “viaggia nel tempo” viene ripristinato (temporaneamente e non definitivamente, insomma, una sorta di “vista temporale”) lo snapshot del filesystem corrispondente al giorno scelto e poi viene inviato un messaggio di sistema all’applicazione in modo da forzarla a un reload dei file da filesystem. Ad ogni modo, quale che sia l’implementazione effettiva, il risultato a livello di usabilità è molto positivo, come potete osservare dal video in questa pagina.
Come si può osservare, spesso questi grandi colossi (Apple, Microsoft e tutti quelli che ormai finanziano lo sviluppo di Linux come sistema Desktop) più che copiarsi a vicenda, usano concetti vecchi, li rielaborano e li rimettono in giro e spesso le guerre di religione su chi ha inventato prima un dato tool o feature non hanno alcun senso. L’unica cosa che ha senso fare è capire chi ha fatto meglio il lavoro.
Da parte mia mi sento di ammonire, per certi versi, questo comportamento di “rielabora e riarrangia” che già da troppo tempo non fa altro che forzare un’evoluzione spesso finta e a volte flebile o soltanto apparente di un’interfaccia uomo-macchina che ormai ha fatto il suo tempo.

28
lug

Prendere in giro i “ladri di wi-fi”.

Leggendo OSSBlog.it trovo un metodo simpatico per “spaventare” i furbacchioni che amano scroccare la Wi-Fi altrui. Visto che la cosa mi è molto simpatica, ho deciso di tradurre la pagina originale.

0. Strumenti usati

Linux, servizio DHCP, iptables, Perl.

1. La rete sottosopra

I miei vicini stanno “rubando” la mia connessione wireless. Potrei crittarla o magari potrei divertirmi.

2. Separare la rete

Iniziamo col separare la rete in due parti, una metà “fidata” e l’atra metà no.
La prima metà ha un netblock e la seconda un netblock differente. Useremo un server DHCP per identificare gli indirizzi MAC ai quali assegnare indirizzi rilevanti.

3. Configurazione servizio DHCP

Le seguenti linee devono essere poste nel file /etc/dhcpd.conf.

ddns-updates off;
ddns-update-style interim;
authoritative;

shared-network local {

        subnet *.*.*.* netmask 255.255.255.0 {
                range *.*.*.* *.*.*.*;
                option routers *.*.*.*;
                option subnet-mask 255.255.255.0;
                option domain-name "XXXXX";
                option domain-name-servers *.*.*.*;
                deny unknown-clients;

                host trusted1 {
                        hardware ethernet *:*:*:*:*:*;
                        fixed-address *.*.*.*;
                }
		}

        subnet 192.168.0.0 netmask 255.255.255.0 {
                range 192.168.0.2 192.168.0.10;
                option routers 192.168.0.1;
                option subnet-mask 255.255.255.0;
                option domain-name-servers 192.168.0.1;
                allow unknown-clients;

        }
}

4. IPTables è divertente

Improvvisamente tutto è “gatti”! Una rete gatto.

/sbin/iptables -A PREROUTING -s 192.168.0.0/255.255.255.0 -p tcp -j DNAT --to-destination 64.111.96.38

La regola sopra redirige tutto il traffico verso il sito www.kittenwar.com.

Per divertirci di più, abbiamo configurato iptables per redirigere tutto il traffico verso un proxy Squid che gira su porta 80:

/sbin/iptables -A PREROUTING -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1

Quella macchina (192.168.0.1) esegue un proxy Squid con un banale redirezionatore di traffico che scarica le immagini, usa mogrify per capovolgerle, e poi le passa al server web installato sulla stessa macchina del proxy.

5. Lo script redirezionatore

Lo script è scritto in Perl e assume che sia installato mogrify e che il server web sia su localhost.

6. Il risultato

Questa immagine è il risultato. Se invece nello script si sostituisce l’opzione -flip di mogrify con l’opzione -blur 4, si ottiene quest’altro risultato.

20
lug

Ubuntu Counter Project

E’ partita la corsa al conteggio delle Ubuntu installate nel mondo. Si tratta dell’Ubuntu Counter Project. Visto che ormai ne ho anche io una installasta stabilmente sul computer di casa, ho partecipato: numero 823. E il counter sembra avere un ritmo di crescita abbastanza serrato.

16
lug

NTFS-3G: supporto completo NTFS in scrittura per Linux!

linuxntfslogo_elwin_.png

Finalmente uno degli sviluppatori del progetto Linux NTFS ha annunciato la disponibilità di un driver NTFS di terza generazione per Linux. Dopo un intenso lavoro si è arrivati finalmente al pieno supporto in scrittura per il filesystem “professional” di casa Redmond. Più precisamente, il driver di terza generazione supporta completamente l’accesso in lettura/scrittura, esclusi però l’accesso ai file crittati, la scrittura di file compressi, il cambio di proprietario e di diritti di accesso su di un file. Sono stati anche eseguiti dei benchmark preliminari (che trovate sempre nell’annuncio linkato sopra) che vedono il driver ancora in beta status raggiungere delle performance davvero notevoli. Del resto, come lo stesso sviluppatore Szakacsits Szabolcs ha scritto nel suo annuncio, oltre allo sviluppo delle nuove caratteristiche, ha lavorato anche sul miglioramento delle performance. Credo che la parte di comunità Linux che ancora è costretta a convivere con un sistema Windows, ringrazierà almeno di non essere più costretta ad utilizzare il penoso FAT32 per le partizioni in comune tra i due sistemi operativi. Per quanto mi riguarda, il problema non si pone, ma credo di far parte di una minoranza ;)

[Via OSNews]

9
lug

Ennesimo cambio Distro – Double reverse

Devo star fermo. Non posso far saltare il PC di casa ogni mese e sentire (giustamente) mia sorella che mi vuole ammazzare perché le rendo l’utilizzo del computer praticamente impossibile. Perciò faccio ancora una volta inversione di marcia, eliminando Gentoo (per la seconda volta :( ) dal mio PC e installando (per la seconda volta) Ubuntu (stavolta Dapper Drake 6.06 LTS, direttamente dai CD gentilmente inviatimi dal programma ShipIT).
Per ora non mi posso lamentare, anche perché è migliorata rispetto a Breezy Badger. A presto commenti più esaustivi.

7
lug

Ubuntu ShipIT funziona!

Il programma ShipIt di Ubuntu Linux funziona a meraviglia. Durante la giornata di ieri, mentro ero fuori casa, è arrivato un bel pacchetto di 10 CD (esattamente quello che avevo chiesto, visto che era l’unico modo per avere sia la versione PC-x86 che la versione per Mac-PPC), ognuno nella sua custodia di cartone di buona qualità, dalla grafica curata. Insomma, si nota che alle spalle di Ubuntu c’è un’azienda ;) La confezione è stata completata da un set di adesivi praticamente identici all’immagine che vedete sopra.
Un’altra testimonianza del funzionamento del programma ShipIT viene riportata dal mio amico Detro. E se sono arrivati fin nei nostri paesi, arriveranno ovunque :)

13
giu

Google Earth

Il software acquisito da Google un po’ di tempo fa è portato avanti nello sviluppo abbastanza velocemente. Inizialmente disponibile solo per Windows, ufficialmente era riportato che sarebbe stato disponibile anche per Mac OS X. Di Linux nemmeno l’ombra, anche se, come feci notare loro (anche se non ce n’era bisogno :P ) con un email, una volta portato l’engine su Mac, portarlo su Linux non sarebbe stata gran cosa. Ed ecco oggi Google Earth sbarcare anche sulla piattoforma libera più famosa del mondo: la versione 4 beta è ora disponibile per il download anche per Linux. Ricordiamo, per chi non lo sapesse ancora, che Google Earth è un software che genera una immagine virtuale della Terra utilizzando immagini satellitari, fotografie aeree e dati topografici memorizzati in una piattaforma GIS.

Buon download.

24
apr

Linux Filesystems a confronto

Linux Logo

Ritenevo questo articolo molto interessante, visto il tema che ogni tanto ricorre, sulla scelta del filesytem più adatto a migliorare le prestazioni del sistema. Per tanto, ho deciso di tradurlo, mentre lo leggevo, così da renderlo disponibile anche per i più “pigri”.

Ci sono molti test che confrontano i file system di Linux in giro per la rete. Molti di essi, però, sono fatti con vecchie versioni del Kernel oppure basati su task artificiali. Il benchmark che segue invece è basato su 11 operazioni direttamente collegate all’ambiente lavorativo di ogni giorno, usando hardware di vecchia generazione (Pentium II/III, hard disk EIDE).

Perché un altro benchmark?

Ho trovato due benchmark basati su kernel 2.6, ma entrambi hanno qualche mancanza. Benoit (2003) ha implementato 12 test usando file grandi (1GB+) su un PII@500Mhz con 512MB di RAM. E’ un test dal quale è possibile ricavare molte informazioni, ma è stato fatto agli albori della serie 2.6 del kernel ed è troppo focalizzato sulle aree che manipolano esclusivamente file grandi (multimedia, ambiente scientifico, database, etc.). L’altro test, di Piszcz (2006), ci presenta 21 task che simulano una varietà di operazioni su file, usando un PIII@500Mhz con 768MB RAM e 400 GB EIDE-133 hard disk. Questo test stressa abbastanza soddisfacentemente il kernel 2.6, ma dato che si basa su task “artificiali” (ovvero, copia e rimozione di 10000 directory vuote, etc.) potrebbe essere difficile ricavare delle conclusioni che valgano per un ambiente di lavoro “reale”.

Per tanto, l’obiettivo del presente benchmark è completare il lavoro di Piszcz (2006), focalizzondosi esclusivamente su operazioni classiche dell’ambiente di lavoro con file server di fascia bassa (vedere Descrizione dei Task, più avanti).

Configurazioni

* Hardware Processor : Intel Celeron 533
* RAM : 512Mb RAM PC100
* Motherboard : ASUS P2B
* Hard drive : WD Caviar SE 160Gb (EIDE 100, 7200 RPM, 8 MB Cache)
* Controller : ATA/133 PCI (Silicon Image)

* OS Debian Etch (kernel 2.6.15), aggiornata il 18 Aprile 2006
* Tutti i servizi opzionali stoppati (cron,ssh,samba,etc.)

* Filesystems Ext3 (e2fsprogs 1.38)
* ReiserFS (reiserfsprogs 1.3.6.19)
* JFS (jfsutils 1.1.8)
* XFS (xfsprogs 2.7.14)

Descrizione dei Task

Operazioni su file grandi (Immagini ISO, 700MB)
* Copia di un ISO da un secondo disco al disco di test
* Copia della stessa ISO in un’altra locazione del disco di test
* Cancellazione di entrambe le copie dell’ISO

Operazioni su un albero di file (7500 file, 900 directory, per un totale di 1.9GB)
* Copia dell’albero di file da un secondo disco al disco di test
* Copia dello stesso albero di file in un’altra locazione del disco di test
* Cancellazione dei entrambe le copie

Operazioni all’interno dell’albero di file
* Elenco ricorsivo di tutti i contenuti dell’albero di file e salvataggio dell’elenco sul disco di test
* Trovare file che corrispondono a una specifica combinazione di caratteri jolly

Operazioni su File system
* Creazione di un file system (mkfs) (tutti i FS sono stati creati con le opzioni di default)
* Montaggio del filesystem
* Smontaggio del filesystem

La sequenza di 11 task (dalla creazione del FS allo smontaggio dello stesso) è stata eseguita da uno script Bash che è stato completato tre volte (la media è riportata). Ogni sequenza è durata circa 7 minuti. Il tempo per completare un task (in secondi), la percentuale di CPU dedicata al task e il numero massimo e minimo di pagefault avvenuti durante l’esecuzione del task sono stati calcolati dall’utility GNU time (versione 1.7).

Risultati

Capacità delle partizioni

La capacità delle partizioni iniziale (dopo la creazione del file system) e residua (dopo l’eliminazione di ogni file) è stata calcolata come il rapporto tra il numero di blocchi disponibili e quello di blocchi totali di una partizione. Ext3 è risultato avere la peggiore capacità iniziale (92.77%), mentre gli altri file system preservavano quasi la totalità della loro capacità (ReiserFS = 98.33%, JFS = 99.82%, XFS = 99.95%). E’ interessante notare che la capacità residua di Ext3 e ReiserFS resta la stessa di quella iniziale, mentre JFS e XFS perdono circa lo 0.02%; ciò ci fa capire come questi FS possano crescere dinamicamente ma abbiano qualche (piccolissima) difficoltà a tornare esattamente alle condizioni iniziali dopo la cancellazione totale dei file.
Conclusione: per usare della capacità della tua partizione, scegliete ReiserFS, JFS o XFS.

Creazione del file system, montaggio e smontaggio

La creazione del FS sulla partizione di test da 20GB ha impiegato un esagerato 14.7 secondi per Ext3, in confronto ai 2 secondi (o meno) per gli altri FS (ReiserFS = 2.2, JFS = 1.3, XFS = 0.7).
Mentre per l’operazione di montaggio, ReiserFS impiega da 5 a 15 volte di più (2.3 secondi) rispetto agli altri (Ext3 = 0.2, JFS = 0.2, XFS = 0.5); è ancora ReiserFS a perdere durante lo smontaggio, con un tempo (2.3 secondi) che è due volte quello degli altri FS. Tutti i FS usano una quantità di CPU più o meno uguale per creare il FS (tra il 59% di ReiserFS e il 74% di JFS) e per montarlo (tra il 6% e il 9% di CPU). Per lo smontaggio, Ext3 e XFS impiegano 2 volte il tempo di CPU (37% e 45%) rispetto a ReiserFS e JFS (14% e 27%).
Conclusioni: per un veloce iter di crea/monta/smonta, scegliete JFS o XFS.

Operazioni su grandi file (immagine ISO, 700MB)

La copia iniziale di un file grande impiega di più su Ext3 (38.2 secondi) e ReiserFS (41.8 sec) confrontato con JFS e XFS (35.1 e 34.8 secondi). Ricopiare il file sullo stesso disco avvantaggia XFS (33.1 sec), confrontato con gli altri FS (Ext3 = 37.3, JFS = 39.4, ReiserFS = 43.9). La cancellazione della ISO è 100 volte più veloce su JFS e XFS (0.02 secondi per entrambi); ReiserFS impiega 1.5 secondi mentre Ext3 addirittura 2.5 secondi. Tutti i FS impiegano un tempo di CPU assimilabile per quanto riguarda l’operazione di copia (tra il 46 e il 51 per cento di CPU) e la ri-copia (tra il 38% e il 50%) della ISO. ReiserFS perde nettamente sulla cancellazione, dove impiega il 49% del tempo di CPU per cancellare la ISO, rispetto agli altri FS che impiegano circa il 10% della CPU. E’ chiaro che JFS tende ad usare meno CPU degli altri FS (circa il 5-10% in meno). Il numero minimo di page fault è abbastanza simile tra i FS (da 600 di XFS a 661 di ReiserFS).
Conclusioni: per operazioni veloci su grand file, scegliete JFS o XFS. Se vi interessa particolarmente minimizzare l’uso di CPU, allora optate per JFS.

Operazioni su un albero di file (7500 file, 900 directory, 1.9Gb)

La copia iniziale dell’albero è stata più veloce per Ext3 (158.3 sec) e XFS (166.1), in confronto a ReiserFS e JFS (172.1 and 180.1). Risultati simili sono stati osservati durante la ri-copia sullo stesso disco, che ha avvantaggiato Ext3 (120 sec) rispetto agli altri FS (135.2 per XFS, 136.9 per ReiserFS, 151 per JFS). La cancellazione dell’albero è 2 volte più lenta su Ext3 (22 sec), rispetto a ReiserFS (8.2), XFS (10.5) e JFS (12.5). Tutti i FS usano più o meno lo stesso tempo di CPU per l’operazione di copia (27-36%) e la ri-copia (tra il 29% di JFS e il 45% di ReiserFS) dell’albero di file. Sorprendentemente, ReiserFS e XFS usano molta più CPU per rimuovere l’albero di file (86% e 65%) rispetto agli altri FS (15% circa sia per Ext3 che JFS). Ancora una volta JFS mostra la sua tendenza a usare meno CPU di tutti gli altri FS. Il numero minimo di page fault è significativamente più alto per ReiserFS (5843) rispetto alla media degli altri FS (tra 1400 e 1490). Questa differenza sembra essere dovuta al più alto numero di page fault (da 5 a 20 volte in più) di ReiserFS durante le operazioni di ri-copia e cancellazione.
Conclusioni: per avere velocità nelle operazioni su alberi di file, scegliete Ext3 or XFS. Benchmark di altri autori consigliavano di usare ReiserFS per operazioni su file piccoli. Tuttavia, i risultati di questo test effettuato su un albero di file di varie dimensioni (10KB – 5MB) indicano Ext3 o XFS come più appropiati per operazioni “reali”. Nonostante JFS minimizzi l’uso di CPU, in questo caso lo fa offrendo una maggiore latenza sulle operazioni.

Elenco delle directory e ricerca file nell’albero di file precedente

L’elenco ricorsivo completo è stato prodotto più velocemente da ReiserFS (1.4 sec) e XFS (1.8); per Ext3 abbiamo un 2.5 sec mentre JFS sale a 3.1 sec. Risultati simili sono stati ottenuti durante la ricerca di file, dove ReiserFS (0.8 sec) e XFS (2.8) hanno mantenuto risultati migliori rispetto a Ext3 (4.6 sec) e JFS (5 sec). Ext3 e JFS hanno impiegato un tempo di CPU simile nell’elenco dei file (35%) e nella ricerca (6%). XFS impiega più tempo di CPU per l’elenco (70%) mentre ottiene un buon tempo di CPU nella ricerca (10%). ReiserFS si mosra come il più avido di CPU con un 71% per l’elenco e 36% per la ricerca. Ancora una volta, il numero minimo di page fault è 3 volte maggiore per ReiserFS (1991) rispetto agli altri (704-712).
Conclusioni: i risultati mostrano che, per questi compiti, i filesystem in esame possono essere raggruppati come “Veloci ma avidi di CPU” (ReiserFS e XFS) e “Lenti ma meno avidi di CPU” (Ext3 e JFS). XFS sembra un buon compromesso, con risultati relativamente veloci, uso della CPU moderato, e un accettabile frequenza di page fault.

Conclusioni generali

I risultati sono sulla stessa lunghezza d’onda delle osservazioni di Piszcz (2006) circa la ridottà capacità disco di Ext3, il lungo tempo di montaggio di ReiserFS e il lungo tempo di creazione di Ext3. In più, come in questo test, entrambi i benchmark citati all’inizio hanno osservato che JFS è il filesystem che usa meno CPU. Mentre questo benchmark sembra essere il primo a mettere in evidenza l’enorme quantità di page fault causati da ReiserFS durante le usuali operazioni su file.
Basandosi sui test fatti per questo benchmark, XFS sembra essere il filesystem adatto per un file server casalingo (quindi anche un desktop, ndNemo) o per una piccola azienda:

* XFS usa la capacità massima dell’hard disk
* XFS è il più veloce nella creazione/montaggio/smontaggio
* XFS è il più veloce nelle operazioni su file grandi (>500MB)
* XFS ottiene un ottimo secondo posto nelle operazioni su alberi di file con grandezze che oscillano tra il “piccolo” e il “moderato”
* XFS ha un buon rapporto tra utilizzo di CPU e tempo impiegato per le operazioni di elenco ricorsivo di directory e ricerca file
* XFS non è il FS meno avido di CPU, ma il suo utilizzo delle risorse resta accettabile per hardware di vecchia generazione.

Nonotante Piszcz (2006) non raccomandi esplicitamente XFS, egli conclude con “Personalmente, scelgo ancora XFS per le prestazioni e la scalabilità”. Posso solo supportare questa conclusione (e anche io, ndNemo).

Riferimenti

Benoit, M. (2003). Linux File System Benchmarks.
Piszcz, J. (2006). Benchmarking Filesystems Part II. Linux Gazette, 122 (January 2006).

Pagina successiva »