Mondi su mondi, sistemi di sistemi.

Come migrare una VM da Parallels a Fusion

Thursday, October 11th, 2007

Anche se l’offerta di VM a livello ser­ver, sotto Mac OS X, è pra­ti­ca­mente nulla, è pos­si­bile usare pro­dotti come Parallels o VMWare Fusion con buoni risul­tati come alter­na­tiva “dei poveri”. Tuttavia, non esi­ste un modo uffi­ciale per migrare da Parallels a Fusion se l’OS non è Windows ma è pos­si­bile farlo “a mano”, seguendo que­ste istru­zioni.

Mac OS X: Irrobustire l’accesso in Single User Mode

Monday, September 10th, 2007

Come molti di voi sapranno, l’avvio in sin­gle user mode, sotto Mac OS X, non richiede l’inserimento di alcuna pas­sword. In aggiunta all’uso della pas­sword sul firm­ware, pos­siamo fare in modo che venga chie­sta la pas­sword di root anche in sin­gle usare mode modi­fi­cando il file /etc/ttys. Da:

console "/System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow" \
  vt100 on secure onoption="/usr/libexec/getty std.9600"

a:

console "/System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow" \
  vt100 on onoption="/usr/libexec/getty std.9600"

Occhio agli “a–capo”!

Post ori­gi­nale

Aggiornamenti differenziali con Apple Software Update Server

Thursday, August 23rd, 2007

Viste le mie recenti vicis­si­tu­dini con gli aggior­na­menti di Apple, per non par­lare dell’ultima disav­ven­tura con QuickTime 7.2 che ha coin­volto anche me, costrin­gen­domi all’ennesimo archive & install, ecco un arti­colo che spiega come miti­gare i rischi in un ambiente dove viene usato l’Apple Software Update Server.

Sharding: un diverso approccio per scalare i databases

Sunday, August 5th, 2007

Come dicevo ieri, High Scalability è una miniera di infor­ma­zioni. In que­sto arti­colo viene discusso lo shar­ding per sca­lare in oriz­zon­tale appli­ca­zioni che si appog­giano ad un data­base SQL – pra­ti­ca­mente il 90%, direi – per la gestione dei dati.

L’idea è quasi banale. Di solito il DBMS gira su una sola mac­china e solo gli strati più alti dell’architettura, come l’application ser­ver e il ser­ver web ven­gono sca­lati in oriz­zon­tale; se si vogliono aumen­tare le pre­sta­zioni del DBMS si aggiorna l’hardware. Lo shar­ding cerca di risol­vere que­sto pro­blema segre­gando i dati in bloc­chi (o se pre­fe­rite, in schegge, tra­du­cendo diret­ta­mente shard). Ogni blocco è indi­pen­dente e quindi diventa pos­si­bile ren­dere più lineare la sca­la­bi­lità del sistema, aggiun­gendo hard­ware in modo pro­gres­sivo solo quando richiesto.

Ho qual­che dub­bio sul fatto che i dati deb­bano essere neces­sa­ria­mente denor­ma­liz­zati: credo dipenda molto dallo schema; anzi, direi che l’evitare la denor­ma­liz­za­zione dovrebbe essere uno dei cri­teri per “scheg­giare” la base dati. Ovviamente, i vari sistemi DBMS sono anch’essi inter­pel­lati da pro­ble­ma­ti­che e solu­zioni come que­ste: è il loro set­tore, no?

Smontare e rimontare dischi FireWire da terminale

Sunday, July 15th, 2007

Questo sug­ge­ri­mento da Mac OS X Hints mi ha “ispirato”a pro­porre una ver­sione alter­na­tiva. Per smon­tare i dischi esterni FireWire:

system_profiler SPFireWireDataType \
| grep BSD | awk '{ print $3 }'  \
| while read i; do diskutil unmountDisk $i; done

e per rimontarli:

system_profiler SPFireWireDataType  \
| grep BSD | awk '{ print $3 }'  \
| while read i; do diskutil mountDisk $i; done

A volte pre­fe­ri­sco awk a sed ;-)

HOWTO: migrare Windows da un PC a Parallels

Friday, July 13th, 2007

Resoconto sull’uso di Parallels Transpoter

Situazione ini­ziale

Presso un cliente, dopo aver acqui­stato un MacBook Pro, si è pre­sen­tata la neces­sità di migrare i dati dal suo por­ta­tile sulla nuova mac­china. Il vec­chio com­pu­ter era un Sony Vaio (un “por­ta­tile” da 7kg) con Windows XP, sva­riati ese­gui­bili semi–custom senza instal­ler e 27GB di dati, dislo­cati su due partizioni.

Non essendo un esperto di Windows e volendo limi­tare al mas­simo le ope­ra­zioni manuali e avendo deciso in anti­cipo di non usare BootCamp ma Parallels, ho pen­sato di pro­vare ad usare Transporter, sem­pre di Parallels. Questa uti­lity pro­mette di creare un mac­china vir­tuale pronta all’uso a par­tire da:

  • un’installazione fisica di Windows;
  • un disco imma­gine di VMWare;
  • un altro disco imma­gine di Parallels.

Il pro­cesso di migrazione

Ci sono diversi modi di effet­tuare que­sta migra­zione. La prima pos­si­bi­lità pre­vede il lan­cio sulla mac­china sor­gente di un agent che dia­logo via rete con il Transporter che gira sulla mac­china di desti­na­zione. Dopo un paio di ten­ta­tivi fal­liti (l’agent rispon­deva ma al Transporter risul­tava impe­gnato in un’altra ope­ra­zione) sono pas­sato alla seconda opzione. Ho lan­ciato Transporter sulla mac­china d’origine in moda­lità avan­zata, sal­vando il disco imma­gine sul file ser­ver dato che il disco non aveva spa­zio suf­fi­ciente. Dopo circa 4 ore l’immagine era pronta.

Dopo aver copiato l’immagine su Mac, la prima cosa fare è ricon­fi­gu­rare i device: il floppy è stato disa­bi­li­tato, il suono è rimap­pato su quello del Mac, idem per la rete e CD/DVD. Fatto que­sto ho acceso la VM e qui ho fatto il primo (e unico, per la verità!) grosso errore. La VM parte rego­lar­mente ma Windows (credo) rileva le modi­fi­che all’hardware e, una volta arri­vati alla fine­stra di login, non risponde per un paio di minuti. Non spe­rando di aver azzec­cato tutto al primo ten­ta­tivo, ho spento la VM e mi sono imbar­cato nell’importazione della VM in un’altra VM. Risultato: 4 ore perse.

L’attivazione di Windows

Comunque, una volta supe­rato que­sto sco­glio c’è stato un altro pro­blema da risol­vere: la licenza di Windows. Appena dopo aver fatto il login, viene chie­sto di atti­vare XP ma senza suc­cesso, dato che è già atti­vato, infine viene for­zato il logout. Dopo sva­riate tele­fo­nate mi viene oppor­tu­na­mente sug­ge­rito di chia­mare il sup­porto di Microsoft. Mezz’ora dopo la tele­fo­nata si è con­clusa così:

“–Quindi mi state dicendo che sono a piedi? –Beh, sì”.

In realtà la solu­zione è banale: biso­gna avviare Windows in moda­lità prov­vi­so­ria, che si attiva pre­mendo ripe­tu­ta­mente F8 al boot, avendo cura di con­fi­gu­rare la tastiera sotto Mac in modo che richieda del tasto FN. Una volta entrato come Administrator ho lan­ciato il ripri­stino dall’installer di Windows per poi poter atti­vare la nuova licenza – non so se l’installer ori­gi­nale del Vaio avrebbe avuto lo stesso risul­tato. Una volta finita l’installazione, ho disin­stal­lato il soft­ware in bundle con il Vaio che non aveva più senso conservare.

In sin­tesi

Questo è più o meno quanto. Riassumendo:

  1. instal­lare Transporter sul PC;
  2. lan­ciare il pro­gramma e creare un nuovo disco imma­gine. Se si ha spa­zio lo si può fare in moda­lità stan­dard, altri­menti si deve usare quella avanzata;
  3. copiare l’immagine su Mac;
  4. ricon­fi­gu­rare i device;
  5. lan­ciare la VM in moda­lità provvisoria;
  6. entrare come ammi­ni­stra­tore e lan­ciare la rein­stal­la­zione di Windows;
  7. ritoc­chi e verifiche.

Tutto som­mato mi sem­bra una pro­ce­dura affi­da­bile e, cosa forse più impor­tante, senza stress.
Altre info su Transporter.

ZFS: sfruttare le opzioni avanzate

Tuesday, July 10th, 2007

Alcuni pos­si­bili usi delle opzioni avan­zate messe a dispo­si­zione da ZFS:
Vengono impo­stati in modo selet­tivo alcuni para­me­tri, a seconda della direc­tory. L’etc non sarà ese­gui­bile e ver­ranno create delle snap­shot in auto­ma­tico; per la var ver­ranno usate delle quote, in modo da impe­dire pro­blemi con l’accumulo dei log, accop­piate con le pre­no­ta­zioni (reser­va­tion) in modo che ci sia sem­pre almeno 1G di spa­zio libero.
Non vedo l’ora di pro­varlo sotto Mac OS X…

Usare serveradmin per il backup

Saturday, July 7th, 2007

Uno dei pro­blemi abba­stanza spi­nosi legati all’amministrazione dei ser­ver è il bac­kup selet­tivo delle con­fi­gu­ra­zioni “impor­tanti”. In altre parole: come sce­gliere, fra gli innu­me­re­voli file dis­se­mi­nati qua e la, quelli critici.

Tralasciamo per ora solu­zioni più radi­cali a que­sto pro­blema e con­cen­tria­moci solo su Mac OS X Server, vor­remmo poter copiare, in un modo che sia anche auto­ma­tiz­za­bile tutte le con­fi­gu­ra­zioni ripor­tate in Server Admin. Per farlo basta usare la ver­sione da ter­mi­nale di que­sta appli­ca­zione: serveradmin.

In breve, baste­ranno que­sti due comandi:

serveradmin settings all > serverconf.backup

e:

serveradmin settings < serverconf.backup

Il primo salva tutte le con­fi­gu­ra­zioni e il secondo le rica­rica.
Se lo desi­de­riamo, pos­siamo essere più selet­tivi e sce­gliere di bac­kup­pare solo alcuni dei ser­vizi, elen­ca­bili con:

serveradmin list

oppure pos­siamo sfrut­tare il fatto che ogni sin­golo valore di con­fi­gu­ra­zione sta su una sin­gola riga che ini­zia sem­pre per “nomeservizio:” per fil­trarlo tra­mite grep.
Una volta decisa qual’è il metodo che pen­siamo sia il più adatto, è banale con­fi­gu­rare pro­gram­mare un bac­kup rego­lare con cron/periodic.

iPhone: info sulla funzionalità “IMAP push”

Saturday, July 7th, 2007

Come forse alcuni ricor­de­ranno, quando Steve Jobs pre­sentò l’iPhone qual­che mese fa, accennò al fatto che l’iPhone avrebbe sup­por­tato il pro­to­collo IMAP anche in moda­lità “push”. In pra­tica que­sto vuol dire che i nuovi mes­saggi di posta in arrivo sul ser­ver IMAP ven­gono inviati al client senza che quest’ultimo debba espli­ci­ta­mente chie­derli, a inter­valli rego­lari o meno.

Questo tipo fun­zio­na­lità viene imple­men­tata tra­mite il comando IDLE, che fa parte di LEMONADE, un insieme di opzioni per per­met­tere un uso migliore dei ser­ver IMAP da parte di dispo­si­tivi mobili. Questo comando fa in modo che il ser­ver informi il client dell’arrivo di nuovi mes­saggi non appena arrivano.

Altre info.

ZFS: amministrazione delegata

Saturday, June 30th, 2007

Con lo ZFS adesso è anche pos­si­bile dele­gare dei com­piti ammi­ni­stra­tivi ad utenti “nor­mali”. Ad esem­pio, dopo aver creato un pool, pos­siamo dire che il gruppo “staff” può creare e mon­tare dei file­sy­tem in quel pool.

« Voci Precedenti Prossime Voci »