martedì 30 luglio 2013

Brevi Esercizi: Facciamoci un Alias!

Oggi riparte la rubrica "Brevi esercizi". Dato che è da molto che non ci scrivo, vi ricordo, in breve, in cosa consiste o il motivo per cui è nata. Sì, parlo di motivo perchè è stato tradito sin dai primi post. In questo spazio si doveva "parlare" di argomenti semplici afferenti a bash, awk, python, amministrazione di sistema linux, ma alla fine mi sono lasciato prendere un po' la mano ed è successo quasi l'irreparabile: script in awk, in bash, in python...ok, cerchiamo di ritornare allo scopo originario per cui la rubrica è nata: Cose semplici (semplici). Oggi parliamo di...Alias!

Cos'è un alias? L'alias, spesso, è la manna piovuta dal cielo, è una benedizione. In pratica, è la possibilità di rinominare un comando, una riga di comando, uno script con una semplice parolina.

Per un attimo, solo per un attimo, passo la parola a wikipedia: "Alias, nei sistemi operativi Unix e Unix-like, è un comando di shell che permette di definire altri comandi." Chiaro?

Facciamo un esempio. Pensate di dover aggiornare Lubit (vabbè, mi capite, vero?), in tal caso si danno da terminale i soliti comandi. Prima sudo apt-get update, poi sudo apt-get upgrade.

Bello sarebbe poter sostituire queste due righe di comando con la semplice parolina "aggiorna". Sarebbe una figata, vero? (Giuro, mai usata la parola figata in vita mia)

Bene, "si po' fa'!"

Basta definire un alias, che nel nostra caso sarebbe:

alias aggiorna="sudo apt-get update && sudo apt-get upgrade -y"

Perchè l'alias definito funzioni, è necessario eseguirlo nel terminale.

Una volta lanciato l'alias, basta digitare la parola "aggiorna" (senza doppi apici), per eseguire la riga di comando corrispondente, cioè aggiornare.

Qual è l'inconveniente di un alias così definito? Che se chiudo il terminale e lo riapro, l'alias non funziona più, scompare.

Per ovviare, bisogna salvare l'alias creato. E dove? In genere viene indicato il file .bashrc. Vabbè, io non sono molto d'accordo, il .bashrc è già incasinato di suo.
Se poi leggete attentamente il suo contenuto, troverete dentro una bella sorpresa. Vabbè, ve la svelo subito, immediatamente. All'interno di .bashrc si trova qualcosa del genere:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi


Sapete che vuol dire? Vuol dire che il nostro .bashrc controlla se esiste il file .bash_aliases. Se esiste, lo abilita, lo riconosce.

Perciò, il mio consiglio, solo per una questione di ordine, è di creare il file .bash_aliases, in modo da poter scrivere dentro tutti gli alias che volete. È inutile dirvi che il file va creato nella vostra home. Vabbè, non ve lo dico.

$ touch ~/.bash_aliases

Oltre all'alias "aggiorna" possiamo crearne altri, ad esempio, per riavviare, spegnere o sloggarsi.

#per spegnere: spegni
alias spegni="sudo shutdown -h now"

#Per riavviare: riavvia
alias riavvia="sudo shutdown -r now"

#per il logout (nel caso di lubit): logout
alias logout="openbox --exit"

Alla prossima!

Ah, vi ricordo che l'indice della rubrica "Brevi Esercizi" lo potete trovare qui.

Per finire, quasi in esclusiva, l'ho già postata su facebook e twitter, ecco come si presenterà Lubit 2.0.5. Forse.


Ciao!

venerdì 26 luglio 2013

Plop Boot Manager: effettuare l'avvio da USB anche se il BIOS non lo supporta - Parte 4

Un paio di sere fa, non so se per eccessiva sicurezza o distrazione, ho formattato per errore una delle partizioni di Romeo, il principale dei miei computer. Era quella su cui era installato il sistema operativo primario, una Lubuntu 10.4 spogliata e rivestita grazie alla sapienza di Bit3Lux, sulla quale giravano due macchine virtuali, la prima con Lubit 1.0.6 e la seconda con Lubit2, Beta4. Dopo un primo momento di sconforto mi sono detto che in fondo era stato il fato a decidere, perché se fosse stato per me non avrei mai avuto il coraggio di eliminare quel piccolo gioiello. Così ho deciso di ripartire installando due distribuzioni Lubit, ciascuna in una propria partizione, mantenendone due di scambio in NTFS, oltre a quella di swap. Tutto bene, ma avevo a disposizione un solo DVD e il bios di Romeo non era in grado di avviare da USB. Inutile tentare di fargli capire che "In tutti i più moderni computer è possibile avviare il computer da USB, grazie ad un'impostazione del BIOS che consente di farlo. I vantaggi dell'avvio da USB per installare, ad esempio, un nuovo sistema operativo sono principalmente legati alla velocità in lettura e scrittura di una penna USB che risultano essere migliori rispetto a quello che può offrire su CD."
La ASUS di Romeo era nata vecchia...
Così mi son detto che era giunto il momento di mettere alla prova l'ultima release di Plop Boot Manager, che non avevo ancora avuto modo di testare. E magari di farne un post per il nostro blog...

Ho iniziato scaricando da

qui 

l'archivio compresso plpbt-5.0.15-test.zip, che contiene la versione 5.0.15 test di Plop, di cui trovate un breve cenno alla fine della

terza parte 

del lungo post dedicato a Plop Boot Manager, quello nel quale vengono illustrate le modalità di utilizzo della 5.0.14 per la modifica del boot di sistema, prima in Linux, poi su Windows.

Una volta scompattato l'archivio, ed estratte le cartelle, ho creato un DVD contenente l'immagine del file plpbtin.iso, quello che trovate nella cartella «install»




Fatto questo sono passato all'installazione.

Ho inserito la penna USB in una porta di Romeo (attenzione ad utilizzare una di quelle direttamente collegate alla mother board)


ho predisposto il file immagine di Plop nel lettore DVD


ed ho effettuato il riavvio.

E senza bisogno di intervenire sul GRUB o sui registri di Windows, ecco il risultato


Alla prossima di Topo Squit

mercoledì 24 luglio 2013

Costruire giochi con Python


Il bello del Web è che dentro ci trovi tante cose, anche tante di quelle che dovresti|vorresti fare te ma ti manca il tempo e a volte anche la capacità. E sono lì, da usare, copiare, modificare, fare quello che si vuole e l'autore di questa roba è contento che si faccia. È buona norma ringraziarlo ogni tanto.

Per esempio come si fa a fare un gioco? È difficile o si può fare? E che linguaggi bisogna usare?
Ecco oggi vi rispondo a tutte queste domande. Anzi, vi presento Trevor Appleton, vi racconta tutto lui. È didascalico, preciso, quasi pistino (insomma come vorrei essere io). E vi da il codice, i link alle librerie che servono, tutto quello che serve.

Poi se navigate il suo blog trovate altri esempi, con grafica e senza (io sono più per gli algoritmi come avrete visto, sono vecchio). E lo trovate anche su G+ (click su About Me).

Insomma partite da qui: Python - Game of Life.


E non dimenticate di dire grazie a Trevor.

martedì 23 luglio 2013

Minoranze etniche, discriminazioni & consigli

Fare previsioni è difficile, specie per il futuro (cit.), ma una cosa che prima o poi capita, di sicuro, è un crash del disco. Anzi di uno o più dischi. Il back-up esiste per questo, e ogni tanto lo faccio anch'io.
Così l'altro giorno ho acquistato un hard-disk esterno, 500 GB che ormai è la capacità minima e sullo stesso ho copiato i mie dati, quelli che reputo importanti.
Poi ho verificato cosa avevo dimenticato, fatto le aggiunte del caso, tutto OK.
Poi ho provato a vedere se riuscivo a recuperare i dati, sembra di sì.
OK, staccato e messo in un posto sicuro, non troppo vicino al 'puter, metti che un fulmine o un incendio o un'inondazione o, ... OK.

Oggi, cercando altro, ho trovato il PDF che era nel disco e ho copiato in ~/cose-da-vedere-non-troppo-urgenti-ma-da-fare-quasi-subito. Toh! già che ci sono diamogli una scorsa, chissà se...

Quando si dice la professionalità: istruzioni in 22 lingue! Bene vuol dire che in italiano sono meno di 10 pagine, si possono leggere. E qui cominciano le perplessità, ecco cosa ho trovato:


ahemmm... veramente io uso Linux, e sarò retrocompatibile?


ahemmm
... il back-up lo faccio su questo disco.


ahemmm
... è la prima cosa che ho fatto, sai con quella di Windoze® i caratteri maiuscoli e minuscoli sono considerati uguali anche se sono diversi.

Sono così giunto a questo paragrafo:


A questo punto, come devo sentirmi? Perpluto? Ve lo dirò al primo crash.