30
Nov
2009
Inserito da: Andrea Lanfranchi in: Mondo IT
Mettere in atto un proposito del genere, specialmente in italia, è cosa piuttosto ardua.
Ci tengo subito a sottolineare che questo mio post non vuole essere in nessun modo un tentativo di denigrazione di questo o di quel sistema operativo: è mia intenzione invece tentare di ragionare sulle numerose implicazioni che hanno portato ad una situazione di mercato “bloccato” sia a causa di politiche di lock-in messe in pratica dal più grande vendor di sistemi operativi al mondo, sia a causa della scarsa propensione dell’utenza in genere ad entrare nel merito di questioni “tecniche” apparentemente improduttive.
Ma partiamo da principio … cosa è un computer ? Il computer è una macchina, fatta di pezzi ferro (o altri metalli nobili), plastica, fili ecc la cui struttura, di per se, è assolutamente inerte o per meglio dire è in grado solo di eseguire elementari operazioni rappresentate da flussi logici di impulsi elettrici. Punto.
Ma allora com’è che con il computer si fanno mille cose come ad esempio, navigare in internet, ascoltare musica, memorizzare e stampare foto ecc. ? Semplicemente perchè al “ferro” è stato aggiunto uno strato “impalpabile e immateriale” detto software che contiene tutta una serie di istruzioni che lo rendono “vivo” ed in grado di intergire con l’utente. Lo stesso software va diviso poi in due sotto categorie: il sistema operativo e gli applicativi. Il sistema operativo è quella parte dello strato software che permette il “caricamento” e l’esecuzione delle istruzioni base affinchè gli applicativi possano interagire (tramite interfacce) con l’utente.
Diffusa invece è la convinzione che la definizione di “computer” sia da intendersi nell’accezione “collettiva” di hardware + software. E’ vero infatti che un computer funzionante è una delicata alchimia di hardware + software ma è anche vero che questa alchimia non definisce un computer. Definisce, al contrario, una macchina che sia già in grado di interagire con il proprio utente. Così come un tornio è assolutamente inutile (per l’utilizzatore) senza un programma di modellazione del pezzo di acciaio, anche il computer è, per l’utente finale, inutile senza lo strato software che lo rende utilizzabile. Ma il tornio, come il computer, può esistere indipendentemente dal programma che lo fa funzionare.
Su questa base e su questo misunderstanding comune, un’azienda in particolare ha costruito la sua fortuna: Microsoft. Ed è tanto forte la leva che agisce su questa percezione da rendere praticamente impossibile la ricerca di un computer nuovo che non abbia un sistema operativo basato su Windows preinstallato.
Ovviamente tutto ciò ha un impatto su quella che, in numerose battaglie sia ideologiche sia economiche, viene definita essere la “libertà di scelta del consumatore”. Anche se sembra superfluo riportarlo all’attenzione è però bene sottolineare che Windows non è l’unico sistema operativo disponibile per far funzionare un computer. Esistono numerose altre possibilità: Linux (nelle sue varie e variegate distribuzioni), Unix, Apple Mac … solo per citare alcune tra quelle che trovano il maggior numero di riferimenti.
Ma se da un lato è arcinota l’aggressività di Microsoft nel perseguire i propri scopi commerciali spingendo per Windows su ogni desktop, non altrettanto facile ed immediatamente attuabile sarebbe l’individuazione di una soluzione alternativa che impedisse a Microsoft di preinstallare, in accordo con i produttori di hardware, il proprio sistema operativo sulla quasi totalità dei computer.
Perchè ? Provate ad immaginare di recarvi in un centro commerciale tra quelli che ospitano i più famosi marchi di catene specializzate nella vendita di prodotti per l’informatica di tipo consumer e di trovare solo computer spenti perchè non dotati di un qualsiasi sistema operativo. Sarebbe un disastro per il mercato in quanto gli utenti non sarebbero in grado, per esempio, di “percepire” le prestazioni di una macchina rispetto a quelle di un’altra, non capacitandosi delle differenze di prezzo tra questo o quel modello e nella impossibilità di leggere complicate tabelle comparative fitte di dati tecnici con mille acronimi come Ghz, RPM, RAM ecc. Gli addetti alle vendite verrebbero subissati di richieste di chiarimenti, di istruzioni su cosa fare una volta che si torna a casa con “lo scatolo” e su cosa sia meglio installare o meno … paralizzando di fatto le vendite.
A questo punto, molti sostenitori del software Open-Source, potrebbero avere la tentazione di suggerire come possibile alternativa l’adozione sui computer di sistemi operativi open e gratuiti basati su Linux … ma anche questo sarebbe causa di non pochi problemi. Innanzitutto : quale distribuzione Linux ? E’ verosimile correggere un errore di monopolio suggerendone un altro che, seppur libero e di nessun costo per l’utente finale, danneggerebbe irrimediabilmente gli altri produttori di distribuzioni Linux e, per di più, danneggerebbe un’azienda commerciale ? E poi : come rispondere ad una esigenza di “compatibilità” universale in modo che il “pezzo di ferro” venduto possa validamente e senza problemi ospitare sistemi operativi di diversa natura e che richiedono, giusto a titolo di esempio, driver diversi ?
E come risolvere poi i problemi di help-desk nel servizio di post vendita in presenza di un pubblico dotato di un parco software disomogeneo ? Sarebbe il panico: quasi tutti i maggiori vendor di harware guidano l’utente in fasi di test e disagnostica dei possibili problemi attraverso l’uso di strumenti progettati per uno specifico sistema operativo e se ne lavano allegramente le mani nel momento in cui l’utente non dispone di quella configurazione hardware/software considerata standard. Come individuare un problema hardware e distinguerlo nettamente da un bug software ?
Le soluzioni possibili si sprecano ma tutte avrebbero dei costi mostruosi e comporterebbero complicazioni tecniche inimmaginabili. Sarebbe facile infatti proporre, ad esempio, l’adozione di Windows preinstallato solo in modalità “trial” (versione di prova a scadenza dopo x giorni) e, per il supporto, la fornitura insieme al pc di un cd avviabile (o di una partizione disco) che esegua automaticamente le procedure di diagnostica secondo le specifiche del produttore del computer. Ma che succederebbe alla scadenza del periodo di prova ? Siamo sicuri che nel momento in cui l’utente si accorge che la sua versione di Windows sta per scadere abbia le conoscenze tecniche per : valutare e scegliere una distribuzione linux confacente alle proprie esigenze, salvarsi i dati già creati magari con altre applicazioni trial, installarsi da zero un sistema operativo (magari facendo casino con le partizioni disco che contengono anche l’area di recovery del pc), e ritrovare i necessari applicativi che assolvono ai compiti che l’utente si aspetta di eseguire.
Forse è più forte lo standard de-facto che si è creato (o che è stato abilmente creato) delle contingenti politiche commerciali messe in campo da Microsoft: la limitazione delle scelte del consumatore è primariamente dovuta al fatto che nella stragrande maggioranza dei casi l’utente NON ha gli strumenti e le conoscenze tecniche per scegliere nè li vuole avere. L’approccio medio è : compro il pc, vado a casa, lo accendo, confermo tutto, mi collego ad internet e sono su Facebook.
Un computer senza sistema operativo questo non lo può offrire: anzi … aggraverebbe la situazione data l’impossibilità (a meno di un passamano fisico di un cd o un dvd) di potersi approvvigionare, attraverso il web, di una soluzione alternativa a Windows dato che, per lo più, Linux nelle sue varie distribuzioni non lo trovate sugli scaffali dei centri commerciali. Il paradosso è … se non hai Windows e non conosci nessuno non riesci nemmeno a scaricarti una distribuzione Linux, sempre ammesso poi che tu sappia masterizzarla, avviarla ed installarla “sopra” il tuo Windows.
Diventa quindi talmente stringente il rapporto tra pc e Windows che perfino a livello normativo diventa una battaglia titanica la richiesta della doverosa applicazione del diritto di rimborso ad una licenza Windows che non vogliamo: Paolo Attivissimo nel suo blog lo spiega dettagliatamente.
Fin qui abbiamo discusso di uno scenario che si applica all’utenza domestica. Ma cosa succede nelle aziende ? Perchè, in un momento di crisi come questo, non si cerca un modo per tagliare i costi rivolgendo la propria attenzione a soluzioni operative open-source ? Una piccola/media impresa dotata di un centinaio di pc riceverebbe un beneficio di oltre 20mila euro in sede di rinnovo parco macchine scegliendo di comprarle senza sistema operativo. Anche qui però entra in gioco la generale cultura informatica del personale addetto: in azienda i computer non lavorano da soli, ci sono delle persone davanti che devono interagire con essi. E tanto più utilizzano strumenti “noti” tanto più alto è il risparmio in formazione interna e nell’erogazione di servizi di help-desk. Certamente un approccio del genere porterebbe dei vantaggi, come ad esempio la maggiore difficoltà da parte di utenti “smanettoni” di sminchiamento delle configurazioni dei loro computer : difficoltà però controbilanciata da un vezzo fin troppo diffuso di “inerzia” da parte del dipendente che di fronte alla minima difficoltà accampa scuse le più fantasiose per non arrangiarsi un po’.
Chi vuole dunque un computer senza sistema operativo deve prendere coscienza di appartenere ad una nicchia di “alto” livello tecnologico, dispone di conoscenze che lo rendono in grado di avviare una macchina “inerte” senza ausili, e che, all’occorrenza, sa come sfruttare le risorse offerte dal web per cercare di risolvere i problemi. Ed in quanto “nicchia” non può lamentarsi delle difficoltà che si incontrano nel cercare un hardware nuovo di zecca, magari di marca, che sia pronto ad accogliere ciò che l’acquirente decide, non ciò che ha già deciso il produttore o il venditore: le aziende commerciali lavorano sulle masse, non per le nicchie.
Valga allora l’assunto : stai cercando un computer senza sistema operativo ? Congratulazioni : sai usare un computer.
Ero molto incuriosito dai rumors che giravano intorno a Chrome OS, il nuovo sistema operativo di Google. Spinto dall’inesauribile entusiasmo che si accende attorno alle eccellenti campagne di marketing promosse da BigG … mi sono deciso a scaricarlo e a provarlo con l’ausilio di VirtualBox. Se volete provarci anche voi potete seguire le istruzioni descritte a questo link.
Purtroppo ne sono rimasto parzialmente deluso. E’ pur vero che la definizione di OS (Operating System – Sistema Operativo) va intesa con il significato di “strato software minimale che permette di avviare un computer affinchè gli applicativi installati possano operare” … però qui il minimale è davvero … minimo.
Più che di un sistema operativo si tratta di un “minimo sistema operativo per avviare Chrome”. In pratica con Chrome OS l’unica cosa che avrete sul pc è Chrome, il browser di Google, il quale farà da browser (appunto), da desktop, da file manager da gestore applicazioni ecc. sempre per il tramite (preferibilmente) delle applicazioni “live” offerte da Google.
Risultato ? Pronti a lavorare in 7 secondi (tempo promesso e mantenuto dall’accensione del pc ai primi input che potete dare) … ma … solo se siete connessi al web. Il che significa che se non disponete di una connessione Internet, quantomeno decente, praticamente con il pc non ci farete nulla. Tutto è prelevato e depositato sul Web: i tuoi documenti, i tuoi file, la tua posta (Gmail) ecc. ecc. Senza una connessione internet non potrete nemmeno fare il login iniziale.
Ma perchè deluso ? Perchè ho commesso un grave errore di valutazione. Ho pensato come Chrome OS potesse incontrare le MIE esigenze (che non sono certo un mostro ma nemmeno un utente basico) e non ho pensato invece, come ha fatto Google, a quelle che sono le esigenze del vasto pubblico.
Sicuramente c’è del buono in una impostazione del genere: assunto il fatto che la stragrande maggioranza del tempo passato da un utente medio domestico davanti al computer è trascorso su Internet, Chrome OS risolve tutte quelle “rotture” che l’utente mediamente non osserva per tenere in buono stato di efficienza il suo computer: aggiornamenti software, programmi di sicurezza, driver per dispositivi, filesystem corrotti o da deframmentare ecc. Il pc (con Chrome OS) non è più un apparato autonomo che all’occorrenza comunica via internet: la connessione internet diventa parte integrante del computer tanto quanto un hard disk o lo schermo stesso.
Bisogna dare atto a Google di essere coerente nel mantenimento costante di una linea di sviluppo: già con Wave ci hanno indicato la strada di una interconnessione tra media diversi e ora con Chrome OS il cerchio si chiude rendendo il web il vostro sistema operativo. Incontrare amici su Facebook, fare microblogging, consultare la posta, ascoltare musica, guardare i video su youtube, navigare il web per fare ricerche, comporre documenti o fogli elettronici … tutto è la fuori … nel mondo virtuale di internet. Il computer è ormai diventato un’appendice passiva di questo modello … una sorta di thin-client per internet. I “veri” pc (ferro + tanto software a bordo + tanta pazienza per tenere tutto in ordine) potranno essere facilmente relegati alla nicchia degli utilizzatori che “sviluppano” o che necessitano di performance particolari dettate da esigenze particolari (es. editing video, progettazione CAD, programmazione database ecc.)
Ma vista l’offerta sempre più alta, anche nel mondo delle aziende, di applicazioni erogate secondo paradigmi web, ovvero che non richiedono l’installazione di pesanti fat-client, disporre di macchine che deleghino sempre il meno possibile all’utenza non specialistica potrà essere un notevole beneficio in termini di manutenzioni.
Le procedure di backup sono sempre una bella gatta da pelare. Personalmente non amo sistemi di backup “proprietari” che utilizzano codifiche esclusive perchè gli archivi generati (indipendentemente dal fatto che si tratti di copie su nastro o su disco) non sono facilmente portabili. A parte sistemi classe enterprise che consentono procedure di disaster recovery, quello che mi aspetto da un archivio di backup è la semplice possibilità di portarlo, all’occorrenza, su un’altra macchina e di ripristinare i file senza dover installare pesanti software specifici. Insomma … che l’archivio di backup generato sia leggibile facilmente e ovunque con minime installazioni.
Il diminuito costo dello storage rende sempre più frequente l’utilizzo di backup su file (utilizzando SAN, NAS o gli stessi dischi dei server) relegando le copie su tape library ad ambiti sempre più ristretti e specializzati. In questo contesto ho sempre preferito, per il backup dei dati su server Windows, l’utilizzo dell’utilità di backup Microsoft (NTBackup) per i motivi che ho descritto sopra soprattutto la portabilità (leggo lo stesso archivio su un altro server Windows senza dover installare praticamente nulla).
L’utilizzo di NTBackup porta vantaggi ma anche svantaggi:
Ho deciso allora di “cimentarmi” nella creazione di un batch di automazione per il backup che rispondesse ai seguenti requisiti:
Il risultato è 7backup.bat : un singolo script batch (.bat) la cui esecuzione è facilmente schedulabile con minimi intuitivi switch da riga di comando.
Attenzione !! Questo script utilizza i junction points come caratteristica del file system NTFS. I Junction points vengono rappresentati da Windows Explorer come normali cartelle. MAI e ripeto MAI cancellare un junction point utlizzando Windows Explorer perchè questo porta alla cancellazione anche dei dati nella cartella di destinazione (ovvero quella oggetto del puntamento junction).
Disclaimer : questo script è stato testato con cura tuttavia può non essere esente da errori. Non utilizzatelo in ambienti ad alta criticità senza prima averlo testato adeguatamente su computer di prova. L’utilizzo del software è a vostra completa discrezione e rischio. Non rispondo di perdite di dati e non fornisco supporto diretto se non per il tramite, secondo tempo e disponibilità, di questo sito web.
I requisiti per il funzionamento sono :
Lo script batch è interamente documentato (in inglese) e tutte le impostazioni rilevanti possono essere codificate come costanti o passate da riga di comando. Solo due valori devono essere impostati a mano. Per fare questo potete editare il file 7backup.bat con un normale editor di testo come notepad (vi consiglio comunque di dotarvi di Notepad++). I valori rilevanti sono :
:: 7-zip executable path.
:: If you have installed 7zip using standard path, then you do not need to
:: change this
SET BK-7ZBIN=%ProgramFiles%\7-zip\7z.exe
In questa variabile dovrete inserire il percorso completo che punta all’applicazione 7-zip. Se avete installato 7-zip con le impostazioni standard non dovreste avere bisogno di modificare nulla.
L’altra variabile rilevante è la seguente:
:: Junction executable path.
:: Find where Junction.exe is and set it here. If Junction.exe is in
:: a directory within the PATH variable you can simply indicate
:: junction.exe
SET BK-JUNCTION=%ProgramFiles%\SysInternalsSuite\Junction.exe
Le applicazioni di SysInternals non prevedono una procedura di setup e quindi possono essere inserite in qualsiasi percorso. Prendetevi un momento per individuare Junction.exe all’interno del computer ed indicate quindi il percorso in cui si trova. Se il percorso prevede directory con spazi NON mettete le virgolette. Verranno aggiunte automaticamente dallo script quando serviranno.
A questo punto potete provare ad eseguire il batch senza nessun parametro. Viene emessa la schermata di aiuto come segue:
Tutti gli switch di comando sono spiegati e documentati.
Non resta altro che creare una “lista” di directory che vorrete backuppare. Con un normale editor scrivete l’elenco delle directory da backuppare, una per riga, indicandone il percorso completo inclusa la lettera di unità. Ad esempio:
C:\Dir1\Dati
C:\Dir3
D:\Archivi
Salvate il file in formato testo e annotatevi la posizione.
Attenzione. Non è ammessa l’indicazione di una Directory e di una sua Sottodirectory. Per esempio non è possibile indicare:
C:\Dir1\Dati
C:\Dir1\Dati\Commerciale
Questo perchè la procedura crea, per ogni directory elencata, un junction point nell’area di lavoro, includendo automaticamente tutte le sottodirectory. Il mancato rispetto di questa regola può portare a risultati imprevedibili e loop infiniti.
Potete ora lanciare il backup come ad esempio seguente:
7backup.bat --dirlist "C:\Mie Selezioni\Lista.txt" --type full --destdir "F:\MieiBackup" --rotation 3
Questo produrrà la generazione di un archivio di backup completo (ovvero di tutti i file contenuti nelle directory indicate nel file c:\Mie Selezioni\Lista.txt). Il file archivio verrà depositato nella directory F:\MieiBackup dove verranno mantenuti solo i 3 più recenti backup dello stesso tipo.
Alcune cose da considerare:
Ogni commento o integrazione è bene accetto.