Tutto per tutti: FTPIntroduzioneÈ stato calcolato che attualmente, sparpagliati nelle memorie degli host computer connessi a Internet, ci sono più di tre milioni di file. Si tratta di uno sconfinato serbatoio di programmi, immagini digitali, suoni, ecc. molti dei quali di 'pubblico dominio'. Ancora prima di affrontare qualsiasi discorso legato all'FTP, riteniamo valga la pena a questo punto soffermarci sulla definizione di software di pubblico dominio (PD per brevità), e cercare di illustrarne i principi base; a beneficio in particolar modo di coloro che ancora non ne hanno compresa l'utilità e non ne rispettano le regole. Anni fa, chiunque avesse realizzato un programma di un qualche valore senza lavorare per una software house, avrebbe avuto scarse possibilità di vederlo usato da molti, e quasi nessuna di guadagnarci qualcosa. C'erano le riviste tecniche che pubblicavano i cosiddetti 'listati', o che allegavano un dischetto, ma in ogni caso, a parte la difficoltà di venire pubblicati, i programmi originali disponibili al di fuori dal circuito strettamente commerciale erano poche decine. C'era anche chi, per eccesso di modestia o per mancanza di intraprendenza, pur avendo realizzato qualcosa di valido, non lo proponeva alle ditte distributrici. Strada ancora più impervia toccava al software che potremmo definire 'di nicchia', quello che comunque non interessa il grande pubblico: le applicazioni scientifiche, i progetti di ricerca universitaria e via discorrendo. Oggi tutti questi ostacoli sono superati. Infatti praticamente tutte le università, i centri di ricerca, e numerose altre organizzazioni, anche commerciali, riservano parte delle proprie risorse di sistema per ospitare i programmi di pubblico dominio. Negli enormi hard disk di questi enti sono memorizzati un gran quantitativo di file, prelevabili gratuitamente e da qualsiasi località (più avanti vedremo come). Con la telematica è finalmente possibile scovare il software più specialistico: dal database testuale per gli studiosi di linguistica, a una riedizione del gioco Pong per Windows. Affinché però questa incredibile macchina non si fermi, è necessario rispettarne le poche regole. Chi preleva da un sito Internet o da una BBS un programma shareware, e poi lo utilizza, deve - secondo le clausole di distribuzione - versare i pochi dollari di registrazione: non perché qualcuno altrimenti lo denuncerà per pirateria - probabilmente non succederebbe - ma perché alle spalle del programma prelevato gratuitamente c'è chi ci ha lavorato molto e ha scelto un canale di distribuzione che è assai vicino alle esigenze dell'utente. Chi preleva un programma con questo sistema può infatti fare qualcosa che nessun'altra fabbrica o ditta del mondo gli consentirebbe: verificare la qualità di ciò che vuole comprare con delle prove, anche prolungate, prima di pagare. È un modo di vendere che va incoraggiato, perché è il più equo, è quello che consente davvero di scegliere il meglio (visto che il prelievo e l'uso a titolo di prova sono gratuiti, l'acquirente ha la facoltà di prelevare anche cinque o sei tipi di programma simili, per poi versare la quota solo del migliore) e infine perché allarga enormemente le possibilità di scelta: sono poche le software house in grado di raggiungere ogni angolo del pianeta con le proprie reti distributive, mentre tutti, o quasi, possono arrivare a Internet. Oltre allo shareware ci sono anche altre categorie di software. C'è quello completamente gratuito (di solito identificato con il termine freeware), quello che richiede come pagamento un versamento volontario anche non necessariamente in denaro (giftware) e quello che si accontenta di una cartolina (cardware). Chi non versa la quota di registrazione forse si sente furbo, perché ha un programma senza averlo pagato, e senza aver violato apparentemente nessuna legge; in realtà nuoce a sé stesso, perché se un giorno la politica shareware dovesse fallire, la scelta di software di cui possiamo beneficiare attualmente verrebbe enormemente ridotta, e sul mercato sopravviverebbero solo le grandi software house con la loro politica dei prezzi. Usare FTP: concetti di baseNei capitoli successivi, quando parleremo di Archie e della VSL, affronteremo il tema della ricerca di un programma su Internet; ora diamo invece un'occhiata a come funziona il protocollo che ci consentirà di trasferirlo sul nostro computer, dando per scontato che già ne conosciamo la localizzazione. Indipendentemente dal tipo di applicazione utilizzata per attivare una sessione FTP, ci sono due modalità di collegamento ad una macchina remota: FTP anonimo, e FTP con account. FTP anonimoIl trasferimento di file tramite FTP anonimo è quello tradizionalmente utilizzato per il prelievo di file presso università, enti, società. Consiste in un login, ovvero nell'ingresso in un computer remoto, effettuato senza fornire codice utente e password, quindi anonimamente. In questa modalità non avremo, per ovvi motivi di sicurezza, pieno accesso al computer remoto; potremo quindi entrare solo in determinate directory - tipicamente la directory chiamata pub (ovvero public) e derivate - e potremo solo leggere alcuni file, ma non cancellarli, spostarli o modificarli. FTP con accountL'utilizzazione di FTP con account è invece riservata ai dipendenti dell'università, dell'ente o della società che ospita il server FTP, oppure ai loro collaboratori, oppure ancora ai loro clienti. Se, ad esempio, decidete di pubblicare su Internet una vostra pagina Web, acquistando lo spazio presso un Internet provider, quest'ultimo con ogni probabilità vi concederà un account FTP e una password personale. Grazie a questo account avrete pieno accesso ad una determinata directory del sistema remoto, nella quale potrete inserire, modificare e cancellare file, proprio come se fosse una directory del vostro hard disk. Alcuni programmi per l'uso di FTPCi sono sostanzialmente due tipi di programmi per fare FTP (client FTP): quelli che dispongono di una interfaccia a caratteri, e quelli con una interfaccia grafica. Programmi con interfaccia a caratteriI client FTP con interfaccia a caratteri hanno un aspetto 'primitivo', ma sono molto efficienti e versatili. Nella figura che segue è visibile, a titolo di esempio, il client FTP fornito di serie con Windows 95.
Per vedere quali sono i comandi di cui si dispone in una sessione FTP, anziché limitarci a una semplice lista, effettuiamo un collegamento di prova con la McAfee Associates, negli Stati Uniti, la nota software house specializzata in programmi antivirus. La prima cosa da fare, ovviamente, è attivare il client FTP. La procedura cambia a seconda del programma utilizzato, del sistema operativo adottato, ecc., ma è quasi sempre una operazione molto semplice. Vediamo ad esempio come si procede con Windows 95: stabilito che l'host computer della McAfee Associates ha per 'indirizzo' mcafee.com, è sufficiente scrivere dalla shell di comando (fare click su 'Avvio' e poi su 'Esegui...'):
Dopo qualche secondo, si ottiene la risposta:
A questo punto i computer della McAfee mi chiedono il nominativo. Poiché non disponiamo di account, e desideriamo semplicemente avere accesso alla directory 'pub' (e alle sue sottodirectory), forniamo come risposta 'anonymous' (senza virgolette). A video compare quanto segue:
Siamo entrati. Da notare che, come ci ha suggerito lo stesso server, abbiamo fornito il nostro indirizzo di posta elettronica in luogo della password. Ecco il benvenuto della McAfee Associates: 230-Welcome to the McAfee Associates FTP site! ftp> Da questo momento in poi abbiamo a disposizione alcuni comandi, come 'dir' o 'cd', del tutto simili a quelli del nostro personal; la differenza è che in questo caso operano sugli hard disk del computer remoto. Attenzione: non è il nostro personal computer a eseguirli, non variano perciò da sistema operativo a sistema operativo, ma vengono eseguiti dal computer al quale ci siamo collegati (nel nostro esempio, il server FTP della McAfee Associates) e del quale ora il nostro PC è diventato a tutti gli effetti un terminale. Conosciamo già la struttura del sito della McAfee e perciò decidiamo subito di entrare nella directory chiamata 'antivirus', che si trova nella directory 'pub'. Per farlo utilizziamo il comando 'cd' (lo riconoscete? È il medesimo comando che utilizzeremmo con un normale computer MS-DOS):
Notare che il carattere usato per dividere 'antivirus' da 'pub' è la barra inclinata a destra (/), secondo la consuetudine Unix, piuttosto che la barra inclinata a sinistra, propria dell'MS-DOS. Infatti la quasi totalità dei server FTP gira su Unix, o comunque ne rispetta la sintassi. La struttura dei siti FTP 'pubblici' è quasi sempre la stessa, basta conoscerne una per potersi muovere con facilità in moltissime altre. Diamo un'occhiata a cosa c'è on-line nella directory 'pub/antivirus' del sito della McAfee. Il comando 'dir' è quello che fa al caso nostro: ftp> dir total 2522 Nella parte sinistra dell'elenco vediamo alcune informazioni di sistema, che a noi comunque in questo momento interessano poco. Sulla destra invece individuiamo piuttosto facilmente i dati relativi alla lunghezza del file, alla data e all'ora di rilascio. Gli ultimi caratteri sono per il nome del programma. Certo, il semplice nome può non dirci molto sul tipo di programma. In questi casi, può essere opportuno per prima cosa prelevare un indice più dettagliato. Lo troviamo quasi sempre in file con un nome simile a '00-Index' (lo 00 iniziale serve a farlo comparire per primo nell'elenco, come nell'esempio appena visto). Possiamo quindi scrivere:
Questo comando, 'get <nome_del_file>' seguito dal trattino '-', è l'unica novità da imparare rispetto ai semplici comandi MS-DOS. Serve a vedere su video il contenuto di un file di testo. Del tutto simile a un 'type'. Ecco il risultato: 200 PORT command successful. 150 Opening BINARY mode data connection for 00-Index (1760 bytes). 311lib.exe Novell CLLIB update req'd for running The NetScan programs have been removed, as their functionality has been completely
incorporated into ViruScan. Come ci aspettavamo, il file '00-Index' contiene elenco e descrizione dei file memorizzati in questa determinata directory. Il file talvolta si chiama '00_index', oppure '00-index.txt', oppure ancora semplicemente 'index'. Supponiamo di voler prelevare la versione 1.13 del programma Vshield (file vsh113.zip): dovremo comunicare al computer remoto che si tratta di un file binario e non di testo, cosa che viene fatta usando il comando 'bin'. Tale comando non è sempre necessario, dato che molti host capiscono da soli quando impostare il trasferimento in modalità binaria; tuttavia non è male usarlo comunque.
Ora possiamo prelevare il file. Non ricorriamo al comando 'copy', come faremmo in una sessione MS-DOS, ma riutilizziamo il comando 'get'. Questa volta nella forma 'get <nome_del_file>', senza trattino finale. ftp> get vsh113.zip 226 Transfer complete. Fatto! Il 'get' ha copiato il file 'vsh113.zip' dal server FTP della McAfee Associates al nostro hard disk. A questo punto, possiamo chiudere la connessione con il computer remoto:
Il comando 'get' offre anche altre piccole potenzialità. Ad esempio ci consente di prelevare un programma e di riceverlo con un nome diverso dall'originale:
'Get' utilizzato in questo modo preleva il file chiamato 'pippo.zip' e ce lo fa arrivare con nome 'paperino.zip'. È una comodità soprattutto per chi usa MS-DOS e si imbatte in file con nomi lunghi o non gestibili (perché magari contengono più di un punto al loro interno). Es.:
Una piccola variante rispetto a 'get' è 'mget'. Con 'mget' si possono prelevare più programmi contemporaneamente. Ad esempio:
preleva tutti i file che iniziano con 'term' e finiscono con '.zip' (terminus.zip, terminal.zip, ecc.). Il comando 'mget *.*' spedisce (teoricamente) tutti i file presenti nella directory dell'host system cui si è collegati. La maggior parte dei computer, tuttavia, disabilita questa funzione perché può scatenare un traffico di dati enorme; si pensi che ci sono hard disk con molti gigabyte liberamente duplicabili (e anche con modem veloci ci vorrebbero giorni prima di smaltire tanto traffico). I principali comandi dell'FTP con interfaccia a caratteriRiepiloghiamo ora, schematicamente, i principali comandi che abbiamo utilizzato nella nostra sessione FTP di prova, e diamo un'occhiata ad alcuni altri, selezionati tra i più utili.
N.B. Può succedere che il server al quale ci si collega non metta a disposizione alcuni di questi comandi, o ne metta a disposizione altri. I fondamentali, comunque, come 'dir', 'get', 'bin' e 'cd' sono sempre disponibili. Altre informazioni utili legate all'FTP con interfaccia a caratteriPrima di lasciarvi avventurare tra gli sterminati archivi di programmi di pubblico dominio, vale la pena aggiungere qualche altra informazione:
=================================================== Il file 'ftp-list.zip' si può prelevare via anonymous FTP al seguente indirizzo: garbo.uwasa.fi, nella directory: /pc/doc-net/ (la URL è quindi ftp://garbo.uwasa.fi/pc/doc-net/ftp-list.zip, oppure presso oak.oakland.edu, directory: /SimTel/msdos/info/ (la URL in questo caso è perciò: ftp://oak.oakland.edu/SimTel/msdos/info/ftp-list.zip). Programmi con interfaccia graficaLe interfacce grafiche hanno definitivamente avuto la meglio nel mondo delle telecomunicazioni, così anche per il prelievo di file sono ormai disponibili programmi a base di icone e mouse. Ce ne sono diversi, per tutti i sistemi operativi; qui di seguito illustriamo il client FTP inserito in Netscape (il suo funzionamento è identico sia che si possieda un PC con Windows, sia che si utilizzi un Macintosh, o un sistema Unix con ambiente X-Window) e l'ottimo programma specifico CuteFTP, per Windows (molto buono è anche WS_FTP, il cui funzionamento comunque è molto simile). Netscape e l'FTP anonimoIl client FTP di Netscape è fortemente integrato con le altre funzionalità del programma. Per collegarsi con un sito FTP tramite Netscape è sufficiente inserire la URL del sito che vogliamo raggiungere (se il sito è ad esempio 'sunsite.dsi.unimi.it', la relativa URL sarà 'ftp://sunsite.dsi.unimi.it') dopo aver fatto click con il mouse sul bottone 'Open' presente all'interno della barra degli strumenti, così come illustrato nella figura che segue:
Notare che è possibile inserire la URL completa di path (/pub/culture/Manuzio/), così da saltare direttamente alla subdirectory che ci interessa. Con Netscape la procedura iniziale di login, durante la quale solitamente si inserisce 'anonymous' alla voce utente, e il proprio recapito e-mail in luogo della password, si salta: provvede il programma a spedire automaticamente queste informazioni. Nella figura seguente, riportiamo una schermata tipo di una sessione FTP di Netscape.
La sua interpretazione è molto semplice. I 'foglietti bianchi' sono i file, i 'foglietti con le righe' sono file di testo (per leggerli è sufficiente farci click sopra con il mouse, il che equivale al 'get nome_file -' dell'FTP con interfaccia a caratteri), le 'cartelline', infine, sono le directory. Per entrare in una directory, o per prelevare un file, basta un click del mouse. In quest'ultimo caso, dopo qualche secondo, compare quasi sempre un box simile a quello della figura che segue:
Per trasferire il file sul proprio hard disk, a questo punto, non si deve fare altro che un click su 'Save File' e attendere che il trasferimento sia completo (possono essere necessari alcuni secondi o molti minuti: dipende dalla dimensione del file, e dalla velocità del proprio collegamento). Vale la pena soffermarci sulla reazione di Netscape al click su un file: il programma non attiva immediatamente il salvataggio su hard disk, come sembrerebbe preferibile, ma ci mette a disposizione anche il bottone 'Pick App...'. Vediamo di cosa si tratta: nei vasti archivi di Internet ci sono molti file, e molti tipi di file. Abbiamo già visto che il client FTP di Netscape, quando si imbatte in un file di testo (suffisso .txt), anziché proporci di memorizzarlo lo visualizza a schermo direttamente (il file può poi essere comunque memorizzato su hard disk con il comando 'Save As...', nel menu 'File'). Si comporta allo stesso modo con i file grafici di tipo GIF e JPEG (suffissi, rispettivamente, .gif e .jpg). Questo perché i programmatori di Netscape lo hanno 'istruito' a gestire automaticamente questi tipi di file. Il bottone 'Pick App...' mette anche noi in grado di fare una cosa simile, consentendoci di indicare a Netscape che programma utilizzare quando si imbatte in un determinato tipo di file. Ad esempio: possiamo istruirlo affinché, quando incontra un file sonoro di tipo .ra (cioè RealAudio), avvii automaticamente il programma RealAudio per riprodurlo. Può essere utile, a questo punto, fornire una tabella con i principali tipi di file che possiamo trovare sui siti FTP:
Si consideri che i file compressi, di qualsiasi tipo (zip, lzh, ecc.), vanno di norma trasferiti sul proprio hard disk, prima di espanderli al loro formato originale utilizzando programmi specifici. Netscape e FTP con accountIl funzionamento di Netscape in una sessione FTP con account è identico a quello di una sessione anonima. Aggiungiamo solo un paio di note su come si forniscono al sistema remoto il proprio codice e la propria password e su come si invia un file (ovvero su come si effettua l'equivalente di un PUT). Non si tratta, al momento, di un metodo propriamente amichevole - è probabile che le versioni future di Netscape finiscano per adottare un modulo FTP più vicino a quello disponibile in client specifici come Cute FTP (v. oltre). A partire dalla versione 2.0 di Netscape, l'inserimento del codice e della password avviene a livello di indirizzo; quando si indica a Netscape l'indirizzo del computer al quale ci vogliamo collegare, dobbiamo aggiungere il codice e la password secondo questa sintassi:
Ovvero: 'ftp://' + il proprio codice + ':' + la propria password + '@' + l'indirizzo del server FTP vero e proprio. Ad esempio, se vogliamo collegarci a MC-link (indirizzo del server FTP: 'ftp.mclink.it'), con codice 'MC0000' e password 'abcd.1', dobbiamo scrivere:
Da notare che la password non deve contenere né il carattere ':' (due punti) né il carattere '@'. Nel caso ci fosse uno di questi due caratteri, le uniche alternative sono quelle di modificare la password, o di adottare un altro client FTP. Un altro limite di questo sistema è che nel digitare la password, questa rimane in chiaro sul video, aumentando il rischio che qualcuno la veda. Perciò: prudenza! L'invio di un file (put) con il client FTP di Netscape (possibile solo a partire dalla versione 2.0 del programma) si effettua semplicemente con un click sul comando 'Upload file...' che troviamo sotto il menu 'File' una volta posizionatici nella directory di destinazione. CuteFTPIl client FTP di Netscape è comodo ogni qual volta dobbiamo prelevare un file medio-piccolo tramite una sessione anonima, in altre circostanze è preferibile utilizzare un client FTP specifico, che oltre a fornire un maggior numero di comandi, solitamente garantisce anche prestazioni migliori in termini di velocità di trasferimento. Non potendo esaminare ogni singola applicazione esistente per i diversi sistemi operativi, forniamo sinteticamente delle indicazioni sul client CuteFTP per Windows 95 di Alex Kunadze (e-mail: alex@sbk.trigem.co.kr). Si consideri tuttavia che esistono prodotti più o meno simili per qualità e funzionalità per quasi tutti i sistemi operativi (nello specifico, CuteFTP è disponibile anche per Windows3.x). Alcune comode caratteristiche, inoltre, come la rubrica interna di indirizzi FTP, sono quasi universali. Potete reperire una copia del programma CuteFTP di Alex Kunadze sul sito: papa.indstate.edu, nella directory /winsock-l/ftp/. La URL è quindi: ftp://papa.indstate.edu/winsock-l/ftp/. Nella figura che segue potete vedere la schermata iniziale, con attiva la rubrica di indirizzi FTP. Il programma viene distribuito con alcuni indirizzi FTP già impostati, selezionati tra i più famosi (es.: il sito FTP della Microsoft, ftp://ftp.microsoft.com) o i più utili, come gli archivi - veramente vasti e aggiornati - di programmi di pubblico dominio CICA (ftp://ftp.cica.indiana.edu), GARBO (ftp://garbo.uwasa.fi) e SimTel (ftp://ftp.coast.net).
La filosofia che è alla base del funzionamento dei client grafici è, fortunatamente, molto razionale: il programma, o meglio, questo tipo di programmi, suddivide generalmente lo schermo in quattro sezioni. La prima, in alto, costituisce una fila di bottoni, che vengono associati ai comandi più frequentemente utilizzati. In CuteFTP, ad esempio, il primo bottone in alto a sinistra richiama la rubrica di indirizzi, il gruppo di bottoni dal quarto al settimo determina il criterio di ordinamento dei file (alfabetico, alfabetico inverso, in base alla data, in base alla dimensione) e così via. La seconda sezione, larga quanto tutto lo schermo, ma di norma piuttosto sottile (è comunque possibile ridimensionarla), è la finestra destinata ai messaggi inviatici dal sistema remoto; tipicamente, in questa finestra controlleremo se il login è avvenuto correttamente, e se il trasferimento di un file è andato a buon fine oppure no. La terza e la quarta sezione (nella figura parzialmente coperte dalla rubrica) occupano la maggior parte dello schermo e presentano, quella di sinistra, il contenuto dell'hard disk dell'utente, e quella di destra il contenuto dell'hard disk remoto. Per trasferire un file dal sito FTP fino al proprio computer, non si deve fare altro che 'prendere' con il mouse l'icona relativa e trascinarla nella sezione a sinistra dello schermo. Il processo inverso permette di effettuare una operazione di upload (dal nostro computer al sistema remoto). Il prelievo e l'invio di più file sono possibili semplicemente selezionando più icone. Anche per i programmi con interfaccia grafica valgono le considerazioni fatte a proposito del prelievo di file binari anziché di testo. In CuteFTP il tipo di trasferimento si determina con il comando 'Transfer type' che troviamo sotto il menu 'FTP'. Ci sono 3 opzioni: 'binary', 'ASCII' e 'auto'. Si può lasciare tranquillamente attivo il riconoscimento automatico di trasferimento, non abbiamo mai notato problemi; e nella remota eventualità che un trasferimento non parta in modalità binaria automaticamente, c'è sempre il comodo bottone 'Stop', che consente di interrompere qualsiasi operazione in corso. In CuteFTP tale bottone si trova nella porzione in alto a destra del video. L'uso di programmi come CuteFTP è molto semplice, e non vale la pena soffermarvisi oltre. Come nota conclusiva, per gli utenti che facessero un uso evoluto di FTP, segnaliamo che la versione più recente di CuteFTP ha integrato una funzione estremamente utile: i 'Custom Commands' (sotto il menu 'Commands'), che permettono di attivare anche con l'interfaccia grafica particolari procedure, personalizzabili. Ad esempio, il 'Change Files Access Mask' consente di modificare gli attributi di protezione dei file con sintassi Unix (utile a chi gestisce da casa un sito FTP pubblico ospitato - come accade quasi sempre - su un sistema Unix, oppure a chi ha pubblicato pagine Web su siti che richiedono particolari procedure di attivazione). |