Archivi del giorno: 27/05/2010

Il nuovo slogan di Microsoft… ridicolo !!

Ma dico io, i creativi a volte veramente superano loro stessi, e chi approva le loro idee ancora peggio. Ma come, con un prodotto di punta che si chiama Windows, cioè finestre, mi fai lo slogan “life without walls” che significa “vita senza muri” ?!?!?! e le finestre senza i muri dove le metto ?????

Ma che cretini….

Annunci

Linux: usare il comando mount all’interno di uno script eseguito dal demone crond. Praticamente impossibile !

Ho passato quasi 2 giorni pieni pieni di lavoro per mettere a punto uno script che all’ occorrenza montasse una condivisione in rete (samba) per usarla come repository di backup. Quando tutto sembrava funzionare bene, schedulo lo script e faccio un test… Si blocca al momento del mount. Il comando da solo sulla linea di comando funziona, sto facendo tutto da root, non mi spiego la cosa. Cerco qua e la sulla rete, modifico il comando di mount una infinità di volte con mille opzioni… niente, la cosa migliore che riesco ad ottenere è una richiesta di password che comunque blocca lo script (utente e password erano già inclusi nel comando n.d.r.). Alla fine capisco che il problema è che crond, anche se esegue task di root, non ha i suoi privilegi, e soprattutto non può usare il comando mount. Trovo però un bel tutorial per rendere mount eseguibile e funzionante con qualsiasi utente (si cambiano i premessi a mount ed umount e si decrive la risorsa da montare nel file fstab); quando tutto contento mi accingo a lanciare lo script mi appare una bella scritta che mi comunica che i programmatori di mount.cifs ( il team Samba n.d.r.) hanno deciso di non farlo funzionare se al comando hanno accesso tutti gli utenti, così.. per sicurezza. Unica soluzione (assolutamente deprecabile !) fare il downgrade di Samba e dei suoi tools ad una versione dove il controllo non era ancora stato inserito. Io invece ho rimesso tutto a posto (i permessi su mount ed umount) ed ho preferito:

  • Inserire le specifiche di mount nel file fstab con l’opzione auto
  • Inserire nello script il controllo che il mount sia effettivamente attivo ed al limite segnalare il problema o procedere con il backup

Spero presto di inserire gli script nella sezione (ancora in lavorazione) Open Source di BitBlast TecnoMagazine.

Visual Web Developer 2010 express: aggiungere la funzione Publish

E’ sorprendente come Microsoft ti induca ad acquistare i suoi prodotti professionali. Io, ad esempio, mi trovo a manutenere alcune web application sviluppate con VS 2005 Pro; con il passaggio a Win7, il buon vecchio VS2005 comincia ad arrancare, e per ovviare scarico ed installo ( e pure per avere la licenza gratuita ho incontrato qualche problema) Visual Web Developer 2010 Express (VWD2010ex). E’ chiaro che risulta abbastanza sprecato acquistare l’upgrade di VS2005 se si tratta solo di manutenzione, e l’importazione delle vecchie applicazioni funziona benissimo. Ma in VWD2010ex manca una cosa fondamentale: il comando per la compilazione e pubblicazione del sito. Senza fare troppe polemiche cercando, in rete ho trovato una elegante soluzione, cioè quella di creare una voce nel menu “External Tools” che dia il comando di compilazione e pubblicazione direttamente al compilatore su linea di comando; ecco come fare:

  1. Selezionare in menu “Tool”s ed attivare nella voce “Settings” l’opzione “Expert Settings”.
  2. Ora nel menu “Tools” appare la voce “External Tools…”. Selezionamola per accedere all’editor dei tool esterni.
  3. Alla voce “Title” inseriamo qualcosa tipo “Precompila in ver. xx”, dove xx sta per la versione del .net framework che selezioneremo. E’ quello che apparirà nel menu “Tools”.
  4. Alla voce “Command” sfogliamo e scegliamo aspnet_compiler.exe nella cartella Windows\Microsoft.NET\Framework\vxx.xx.xx dove le xx sono la versione che ci interessa.
  5. in “Arguments” inseriamo “-p $(ProjectDir) -v / “$(SolutionDir)\PreCompiledWeb” -f”. Questo comando crea e sovrascrive la cartella “PreCompiledWeb” nella cartella dove risiede il file della solution in questione.
  6. Confermiamo

Ora nel menu “Tools” ci troveremo una voce “Precompila in ver. xx” che eseguirà il comando. Vi consigio comunque di fare sempre un rebuild prima di eseguire il comando, inoltre studiando le opzioni su riga di comando del compilatore si possono creare altri external tools personalizzandoli come si vuole.