Usare Linux su Windows.

Mauro Goretti - Programmatore.







 Usare Linux su Windows.

Cygwin Stufi di Windows al lavoro? Dipendenza da Vi? Sintomi di astinenza da grep?
Smettetela di soffrire, installate Cygwin!

La cosa che mi manca di più in quelle rare occasioni
in cui sono costretto a usare Windows è la riga
di comando: cose fondamentali come ls, cp e Vi,
strumenti classici come find e grep e naturalmente
una shell decente. Quindi, appena si presenta la minima
opportunità, installo Cygwin, un ambiente Linux-like
per Windows. Il nocciolo di Cygwin è una DLL Windows
che funziona come strato di compatibilità con Linux
(cioè emula la API delle chiamate di sistema di Linux).
Sopra ad essa si trova una ampia collezione di strumenti
GNU e di altri che sono stati portati in questo ambiente.
Cygwin è in circolazione da moltissimo tempo,
ma è ancora attivamente sviluppato: l’ultimo
aggiornamento è della fi ne di agosto di quest’anno.
Cygwin non è una versione di Linux. Non è un ambiente
di virtualizzazione: il computer continua a far girare
Windows. E non offre alcuna compatibilità binaria con
le applicazione native Linux. Un’applicazione deve essere
ricompilata dai sorgenti per poter girare su Windows.

Installazione
Dal sito di Cygwin è possibile scaricare un programma
d’installazione (un’applicazione nativa Windows)
che propone un certo numero di schermate con valori
preimpostati validi per la maggior parte delle esigenze.
L’unica eccezione è la schermata che permette
di scegliere un mirror per scaricare il software.
Un’altra schermata su cui conviene soffermarsi
è quella della scelta dei pacchetti, senza lasciarsi
spaventare dall’enorme quantità di quelli disponibili,
per decidere cosa si intende installare. Anche in questo
caso i valori di default sono abbastanza ragionevoli
ed è comunque possibile installare altri pacchetti
in seguito. Il programma d’installazione è in grado
di creare un’icona sul desktop e una voce nel menu
Programmi, ognuna delle quali lancia una fi nestra
di terminale Cygwin che esegue una shell Bash. Da qui
è possibile lavorare in maniera del tutto simile a quanto
si farebbe su Linux, usando i propri strumenti preferiti.
È possibile scrivere script di shell e persino combinare
strumenti Windows e Linux, come nell’esempio seguente:
$ ipconfi g | grep ‘IP Address’
in cui ho usato un comando Cygwin per filtrarew l’output
di un comando nativo Windows. Anche per gli sviluppatori
c’è un supporto notevole. In effetti Cygwin è self-hosting,
l’ambiente cioè è sufficiente completo da poter essere usato
per compilare sè stesso.

Il filesystem Cygwin.

Cygwin si installa per
default nella cartella
C:\cygwin, che risulta
essere la directory
root per il filesystem
Cygwin. Vengono
inoltre montati
C:\cygwin\bin su /usr/bin e C:\cygwin\lib su /usr/lib.
È comunque possibile montare qualsiasi cartella
Windows su un punto di montaggio Cygwin
come nell’esempio che segue:
$ mkdir /mnt
$ mount ‘C:\Programmi’ /mnt
Un caso particolare è costituito dai dischi del sistema,
ognuno dei quali è montato sotto /cygdrive, usando
la lettera del disco come nome. Ad esempio,
se in Windows il CD è il disco D:, esso sarà accessibile
da Cygwin come /cygdrive/d. Non aspettatevi però
che tutto appaia esattamente come sotto Linux. Windows
non è Linux: i filesystem sono sostanzialmente diversi
e lo è anche il modello di creazione dei processi,
tra le altre cose. Nessun tipo di emulazione, per quanto
effi cace, potrà mascherare completamente le differenze,
e alcune cose devono essere simulate: gli inode,
la chiamata di sistema chroot, i link simbolici.
Solo occasionalmente mi capita di incontrarmi faccia
a faccia con la realtà Windows sottostante; per esempio:
$ su -
su: user root does not exist
La maggior parte dei tool Cygwin viene distribuita sotto
GPL, alcuni sono di pubblico dominio e altri hanno
una licenza stile X11. La libreria Cygwin è anch’essa
sotto GPL. Dato che tutti i programmi portati sotto
Cygwin usano questa libreria, devono anch’essi
essere distribuiti nei
termini della GPL. Red
Hat offre ai venditori
di software la possibilità
di acquistare una
licenza buy-out, anche
se sia il sito di Red Hat
che quello di Cygwin
sono un po’ vaghi in
merito (e non indicano
alcun prezzo). Ma se
siete semplicemente
degli utenti finali che
desiderano solo usare
Cygwin e i suoi tool
la GPL va più che bene.

Commenti

Post popolari in questo blog

INSTAFETCH - Android -

I pesci abissali. Zoologia marina.

La Centrale Idroelettrica.