
DVk
Members-
Posts
46 -
Joined
-
Last visited
Everything posted by DVk
-
Da interfaccia web: http://192.168.1.1 (x entrare sul router) dopo aver visualizzato la pagina principale, seleziona PVCs, poi clicca su advanced Internal IP Address: IP della tua scheda di rete (192.168.1.2) Internal Port: se vuoi aprire tutte le porte metti 0 altrimenti il numero della porta che vuoi aprire ( es. relativo a WniMX 6699 x la TCP 6257 x la UDP) External Port: come sopra Protocol: TCP poi stesso procedimento per UDP alla fine premi ADD. se usi il programma di manutenzione: dopo essere entrato in Configuration vai in General configuration -> port mapping configuration -> table view click su ADD protocol type TCP il primo IP ADDRESS lo lasci a zero TCP IP port ANY il secondo IP ADDRESS e' quello della tua scheda di rete (192.168.1.2) TCP IP port ANY Buona fortuna stesso procedimento per UDP ----------------------------------------------------------------------------------------------- 1. Impostare il proprio PC con indirizzo IP 192.168.1.2, subnet 255.255.255.0, gateway 192.168.1.1 e dns previsti 2. Installare l?applicativo del CD presente nella confezione (solo per la prima volta) 3. Collegare il PC al router e lanciare l?applicativo 4. Se il PC e il router hanno la stessa rete si passa al pannello di configurazione, altrimenti seguo le indicazioni delle varie finestre per modificare gli indirizzi. Configurazione del router ? mono IP 1. Nel pannello di Telindus 9100 maintenance application cliccare su CONFIGURATION. 2. Cliccare su GENERAL CONFIGURATION 3. Scegliere l?opzione IP ROUTING TABLE e cliccare ADD e inserire nelle prime due righe 8 volte 0 (zero). Premere quindi APPLY. Si torna cos? indietro dove compaiono tutti i parametri inseriti. 4. Cliccare su DSL CONFIGURATION e selezionare nel campo DSL line mode il valore G.DMT. 5. Cliccare su ATMPVC0 e verificare se VPI=8 e VCI=35. 6. Nel men? di sinistra selezionare PROTOCOL CONFIGURATION e selezionare alla voce Encapsulation Type il valore SNAP/IP 7. Sempre a sinistra selezionare IP PROPERTIES ed inserire l?indirizzo IP pubblico e subnet mask (? quello indicato come IP di base) ed abilitare la voce SPECIFIED WAN IP ADDRESS AND SUBNET MASK 8. Selezionare a sinistra la voce NAT PROPERTIES ed abilitare ENABLE Network Address Translation (NAT) -di default ? gi? abilitato-; abilitare anche Specified NAT IP Address ed inserire l?indirizzo IP di base (quello indicato al punto 7) 9. Cliccare su APPLY. 10. Dal men? principale scegliere LAN CONFIGURATION e scegliere DHCP, disabilitarlo e cliccare su APPLY. 11. Premere su FINISH in modo che vengano inviati tutti i dati al router, premere quindi EXIT e spegnere e riaccendere il router. E? ora possibile provare la linea dal proprio PC; se tutto ok si pu? procedere al resto della programmazione. 12. Premere su FINISH in modo che vengano inviati tutti i dati al router, premere quindi EXIT e spegnere e riaccendere il router.
-
Configurazione Router Pirelli AGE Il router Pirelli AGE ? raggiungibile via LAN all' indirizzo IP 192.168.2.1 ed ? configurabile via http con un browser web digitando: http://192.168.2.1. Per accedere al router occorre configurare un indirizzo IP sulla scheda di rete della stessa classe del router ed impostare i DNS del provider nel TCP/IP della scheda di rete. Dopo aver effettuato la configurazione della rete e del sistema, accedere al router via http://192.168.2.1 , il router richiede userid e password per l'autenticazione Non ? possibile effettuare il reset di tali impostazioni se non si riesce ad accedere via http al router; in tal caso quindi occorrer? effettuare la sostituzione del dispositivo. Se l'autenticazione avviene con successo appare la finestra di configurazione del router riporata sotto. Verifica/Diagnostica dello stato operativo del router Accedere alla Home Page del router e clliccare su General Configuration Viene presentata la schermata riepilogativa sullo stato del Router e delle interfacce Ethernet e ATM da questo men? ? inoltre possibile verificare anche la versione firmware installata sul router. Cliccare su ADSL viene visualizzata la modulazione ADSL, i margini di rumuore e l'attenuazione del segnale ADSL E' quindi possibile monitorare disturbi sul segnale che possono causare problemi di allineamento instabile, la pagina esegue un refresh automatico e i dati vengono costantemente aggiornati. Modifica/Controllo della configurazione LAN - Indirizzo IP, Servizio DHCP e DNS Non ? possibile effettuare il reset di tali impostazioni se non si riesce ad accedere via http al router; in tal caso quindi occorrer? effettuare la sostituzione del dispositivo. Sulla parte sinistra della pagina scorrere in basso fino alla voce Private LAN Attraverso tale finestra di configurazione ? possibile impostare un indirizzo IP LAN diverso da 192.168.2.1 ATTENZIONE: Se si modifica l'indirizzo IP del router ? necessario modificare anche la regola di NAT per condividere la connessione alla rete LAN. Dopo aver modificato l'indirizzo IP e cliccato su Submit, spostarsi nella sezione NAT e modificare il range di indirizzi IP a cui condividere la connessione; sar? poi necessario salvare le impostazioni e riavviare il router. Se necessario, attivare il DHCP Server: abilitare la voce corrispondente (si consiglia di mantenere attiva la voce System Allocated in modo che sia il router a determinare il corretto pool di indirizzi IP da assegnare), dopo aver eseguito le modifiche premere sul pulsante Submit. Affinch? le modifiche diventino attive occorre salvare le impostazioni e riavviare il router; quindi sulla parte sinistra della pagina, scorrere in fino alla voce Save Settings e cliccare sul pulsante Submit. ATTENZIONE: Se ? stato modificato l'indirizzo IP del router, il dispositivo sar? raggiungibile soltanto attraverso il nuovo indirizzo IP configurato. Impostazioni NAPT : Reinstradamento porte NAT Sulla parte sinistra della pagina, scorrere in basso fino alla voce Private LAN Attraverso tale schermata ? possibile reinstradare il traffico Web pubblico verso una o pi? porte interne alla rete LAN. Dalla stessa finestra di configurazione ? possibile impostare un indirizzo IP LAN diverso da 192.168.2.1 ed ? possibile anche attivare il servizio DHCP Server in modo che il router assegni in automatico gli indirizzi IP all'interno della rete ; dopo aver inserito tutti i dati necessari cliccare su Add This Settings. La finestra che appare ? simile a quella riportata qui in basso (l'esempio si riferisce al reinstradamento per un Web server http) Per rendere attive e permanenti le impostazioni, occorre salvare la configurazione e riavviare il router; sulla parte sinistra della pagina scorrere in fino alla voce Save Settings e cliccare sul pulsante Submit. Configurazione connessione PPPoE - IP Dinamico Spostarsi nella sezione WAN e compilare i campi cos?: Default Getaway: 0.0.0.0 Enabled: Yes VPI: 8 VCI: 35 Static IP Adress: 0.0.0.0 Subnet Mask: 0.0.0.0 spostarsi pi? in basso sulla pagina in modo che sia visualizzabile la parte Encapsulation Selezionare PPPoA - VCMux e inserire nelle sezioni specifiche User e password di accesso ad Internet, postarsi alla fine della pagina ed abilitare la voce Automatic Reconnect; infine cliccare sul pulsante Submit. Occorre successivamente impostare i DNS, quindi nella sezione DNS e inserire gli indirizzi di due server DNS Infine cliccare sul pulsante Submit. Per abilitare il NAT, spostarsi nella sezione preposta NAT; la schermata, visualizza la situazione iniziale, dove il NAT non ? abilitato per nessuna connessione PPP. Nella tabella superiore inserire i valori come segue: Nat Configuration: Enabled #: 1 Public IP Adress: 0.0.0.0 Private LAN IP Adress Start: 192.168.2.1 Private LAN IP Adress End: 192.168.2.254 La schermata si riferisce ad un router con l'indirizzo IP di default; se si cambia indirizzo IP del router occorre inserire il range di indirizzi IP appropriati. Selezionare la voce Modify e cliccare poi su Submit, verr? cosi' creata una regola NAT valida per il range di indirizzi IP specificato. Occorre poi salvare le impostazioni e riavviare il router, sulla parte sinistra della pagina, scorrere in fino alla voce Save Settings e infine cliccare sul pulsante Submit,il router si riavvia con le nuove impostazioni. Per le connessioni PPP ? possibile verificare lo stato della connessione dalla sezione General Configuration dove compare l'indirizzo IP pubblico assegnato. Configurazione connessione RFC 1483 Routed - IP Statico Spostarsi nella sezione WAN e compilare i campi cos?: Default Getaway: Inserire IP Getaway NAS Enabled: Yes VPI: 8 VCI: 35 Static IP Adress: Inserire IP pubblico Subnet Mask: inserire la subnet mask Spostarsi pi? in basso sulla pagina in modo che sia visualizzabile la parte Encapsulation, selezionare RFC1483 Routed IP LLC, spostarsi alla fine della pagina e salvare le impostazioni cliccando su Submit. Occorre successivamente impostare i DNS, quindi nella sezione DNS e inserire gli indirizzi di due server DNS Infine cliccare sul pulsante Submit. Per abilitare il NAT, spostarsi nella sezione preposta NAT; la schermata, visualizza la situazione iniziale, dove il NAT non ? abilitato per nessuna connessione PPP. Nella tabella superiore inserire i valori come segue: Nat Configuration: Enabled #: 1 Public IP Adress: IP pubblico Private LAN IP Adress Start: 192.168.2.1 Private LAN IP Adress End: 192.168.2.254 La schermata si riferisce ad un router con l'indirizzo IP di default. Se si cambia indirizzo IP del router occorre inserire il range di indirizzi IP appropriati Selezionare la voce Modify e cliccare poi su Submit, verra' cosi' creata una regola NAT valida per il range di indirizzi IP specificato. Occorre poi salvare le impostazioni e riavviare il router, sulla parte sinistra della pagina, scorrere in fino alla voce Save Settings e infine cliccare sul pulsante Submit,il router si riavvia con le nuove impostazioni. Per le connessioni PPP ? possibile verificare lo stato della connessione dalla sezione General Configuration dove compare l'indirizzo IP pubblico assegnato.
-
Come funzionano i router In una rete a commutazione di messaggio, i router eseguono la funziona basilare di ricezione e trasmissione dei messaggi. Il presente articolo descrive il funzionamento dei router I router sono allo stesso tempo semplici e complessi. Siccome la dorsale Internet - e delle intranet - dipende da essi, ? utile conoscere ci? che i router fanno e come lo fanno. Questo articolo descrive i router in termini generali e, quando appropriato, fa riferimento a comuni protocolli di rete. Una rete a commutazione di messaggi ? composta interamente da elementi con funzione riflettente, di specchio, o mirror. I mirror sono device denominati router, bridge e switch, che ricevono i messaggi su una interfaccia, verificano le destinazioni di tali messaggi tramite tabelle e li ritrasmettono verso altra interfaccia. Una delle principali differenze fra un router e qualsiasi altro tipo di scambio di messaggio risiede nelle modalit? con cui il router costruisce le tabelle. I router trasmettono i messaggi verso le reti, mentre le tabelle di destinazione bridge e switch contengono l?elenco degli indirizzi MAC (Media Access Control) Strato 2. Le due pi? importanti funzioni del router sono la commutazione del traffico e il mantenimento dell?ambiente in cui ? possibile realizzare questo. Le due funzioni sono implementabili sul medesimo processore, ma si consiglia di non farlo. Sovente, un distinto processore di interfaccia, o una routine di interrupt kernel, commuta il traffico, mentre i processi di mantenimento ambiente vengono eseguiti in background. La Figura 1 riporta i principali componenti di un servizio di router integrati, ossia router che supportano algoritmi QOS (Quality Of Service). La parte superiore della Figura 1, lo strato di Routing ? la parte del servizio di mantenimento dell?ambiente. Un router esegue operazioni che possono essere intrinseche nell?architettura della rete, oppure configurate a seconda delle necessit? del manager di rete. Queste applicazioni, o processi, vengono eseguite sullo strato Applicazione di Routing (Routing Application) del router. Un processo che a volte ? implementato dai router ? il DNS (Domain Name Service), il quale memorizza nella cache dati DNS, in prossimit? dei sistemi che li utilizzano. Comunque, il DNS non ? fondamentale per l?architettura di un router IP, e non tutti concordano che un router debba offrire tale servizio. Per converso, due servizi che i router prevedono come routine sono la mappatura della topologia e la ingegnerizzazione del traffico. I protocolli di routing mappano la topologia della rete e memorizzano le relative valutazioni di quella topologia nella tabella di routing. Se un router non comprende un protocollo di routing, utilizza instradamenti statici per mappare la rete, oppure utilizza un protocollo distinto su ciascuna interfaccia. Di solito, i router utilizzano un protocollo di routing. La tabella di routing, o database di routing, ? il set di routing utilizzati da un router in qualsiasi momento predeterminato. I dati della tabella di routing includono, almeno: ? l?indirizzo o la serie di indirizzi attualmente conosciuti come esistenti sulla rete, ? i dati calcolati o richiesti dal protocollo di routing, ? i dati necessari per acquisire un messaggio su un router pi? vicino alla destinazione. I dati di routing comprendono la metrica, una misura amministrativa del tempo o della distanza, e diversi contrassegni temporali. L?indirizzamento dei dati include le interfacce di uscita e gli indirizzi del sistema successivo lungo il percorso. Per i router ? normale memorizzare i dati relativi agli indirizzi per pi? router potenziali del nodo adiacente in una singola entit? della tabella di routing. I protocolli utilizzati per la costruzione della tabella di routing variano, ma tutti rientrano in poche categorie generali. Per esempio, i protocolli possono essere relativi a vettori di distanza, stato del link, o protocolli di routing secondo privilegi. Protocolli di vettori di distanza I protocolli di vettori di distanza (distance vector protocols) sono i pi? semplici e i pi? comuni protocolli di routing. La gran parte di questi protocolli utilizzati attualmente hanno le root nel RIP (Routing Information Protocol) di Xerox Internet Transport e talvolta si fa riferimento a essi con questa sigla. I protocolli di questa classe comprendono RIP IP, RIP IPX, RTMP (AppleTalk Routing Table Management Protocol) e IGRP (Interior Gateway Routing Protocol) Cisco. Il nome di questa classe di protocolli deriva dalle modalit? tramite le quali i protocolli si scambiano le informazioni. Periodicamente, ciascun router copia gli indirizzi di destinazione e le metriche di routing dalla propria tabella di routing e li inserisce nei messaggi di aggiornamento, che il router trasmette ai router prossimi. Questi router confrontano il contenuto degli aggiornamenti di percorso ricevuti con le proprie tabelle di routing, rilevando e applicando le modifiche. Questo algoritmo ? semplice e apparentemente infallibile; sfortuna vuole che funzioni meglio in piccole reti che presentano una ridondanza limitata o nulla. Le reti estese richiedono messaggi periodici per descrivere una rete e la gran parte dei dati ? ridondante. E? per questa ragione che le reti complesse hanno problemi quando le connessioni cadono a causa di percorsi morti che possono restare nella tabella di routing per qualche tempo. Il traffico su un percorso morto non pu? raggiungere alcuna destinazione. L?euristica pu? rapportarsi con tali problemi, ma nessuno di questi metodi si dimostra realmente deterministico. Alcuni di tali problemi vengono risolti da un algoritmo migliorato, denominato DUAL, Diffusing Update Algorithm o algoritmo ad aggiornamento diffuso. Con questo algoritmo, i router utilizzano l?algoritmo di vettore di distanza per mantenere una mappa relativa alle modalit? di reciproca interconnessione utilizzata per il collegamento affidabile con le LAN che supportano direttamente. Sulla rete vengono anche diffusi i dati inerenti le modifiche della topologia. Un esempio di questo protocollo migliorato ? l?Enhanced IGRP Cisco. La seconda categoria dei protocolli di mantenimento ambiente ? quella dei protocolli di stato del link. Proposti inizialmente nel 1970 da un documento di Edsger Dijkstra, questi protocolli sono pi? complessi di quelli di vettore di distanza. La loro complessit? li rende per? in grado di offrire la risoluzione deterministica dei problemi posti dai protocolli di vettore di distanza. Invece di comunicare ai vicini i contenuti della tabella di routing, ciascun router trasmette sulla rete un elenco dei router e delle LAN con cui esso pu? dialogare. Il router esegue con efficacia il multicast dei dati di "stato del link" in avvisi relativi allo stato del link. Oltre alla diffusione dei periodici messaggi di allerta fra se stesso e gli altri router, ciascun router produce report aggiornati di stato del link soltanto quando le informazioni cambiano, o quando ? trascorso un determinato periodo di tempo. Risultato di questi processi, successivamente a una modifica della topologia, la rete passa a un traffico minimo di routing. Gli svantaggi dei protocolli di stato del link, quali l?OSPF (Open Shortest Path First), l?IS-IS (Intermediate System to Intermediate System) ISO e l?NLSP (NetWare Link Services Protocol) Novell, sono la complessit? e le richieste di memoria. L?implementazione di questi protocolli pu? risultare difficile e richiedono una grande quantit? di memoria per la registrazione delle comunicazioni pertinenti lo stato del link. Mentre sono in genere superiori dei pi? datati protocolli di vettore di distanza, non sono ancora ben chiare le loro prestazioni rispetto all?algoritmo DUAL. La terza categoria di protocolli di mantenimento dell?ambiente di routing sono i protocolli di routing secondo privilegi. Contrariamente ai protocolli di vettore di distanza e di stato del link che rilevano il modo migliore per portare un messaggio a destinazione, questi protocolli rilevano il modo migliore per far giungere un messaggio a destinazione utilizzando percorsi che hanno il permesso di usare. Protocolli quali il BGP (Border Gateway Protocol) o l?IDRP (Interdomain Routing Protocol) consentono ai provider di dorsale Internet di accettare informazioni di routing da provider vicini sulla base dei contrasti o di altri criteri non tecnici. Gli algoritmi a cui si fa ricorso per questi protocolli sono vettori di distanza, ma i dati di metrica e di percorso si basano sugli elenchi di provider di dorsale invece di semplici numeri. Una implicazione di questo tipo di protocollo prevede che i percorsi su Internet di una transazione e della relativa risposta siano in genere distinti. Nelle intranet, che di solito non impiegano protocolli di routing secondo privilegi, i percorsi dei versi di una transizione sono in genere lo stesso. Servizi di router integrati Un servizio di router integrati supporta il protocollo RSVP (Resource Reservation Protocol) di Internet Engineering Task Force. Questo tipo di router aggiunge un protocollo di risorsa, un modulo di accesso e un?interfaccia alle modalit? di coda utilizzate nello strato di Switching (vedi Figura 1). L?RSVP consente ai sistemi di richiedere servizi da una rete, quali le garanzie di resa globale, percentuali di perdita ridotte, o maggiore prevedibilit? dei ritardi. I messaggi del "percorso" RSVP provengono da una sorgente informativa e definiscono la via che i dati devono seguire, lasciando puntatori a monte sui router che incontrano. Questo processo permette ai router di stabilire eccezioni deterministiche sul percorso corretto, anche quando le vie sono asimmetriche. I messaggi di "prenotazione" RSVP vengano trasmessi dai ricevitori dei dati mentre richiedono i servizi necessari. Le eccezioni seguono i puntatori a monte alle rispettive sorgenti, realizzando eccezioni lungo il trasferimento. Nel router, i messaggi di prenotazione vengono combinati mentre risalgono il flusso delle informazioni. Come risultato, il trasmettitore - che pu? essere una workstation sulla rete - riceve un messaggio di prenotazione dal router adiacente e non da ciascuno delle centinaia o migliaia di potenziali riceventi. Comunque, le eccezioni vengono accettate e installate soltanto se possono essere garantite dalla disponibilit? di sufficienti risorse. La relativa valutazione ? responsabilit? del modulo di accesso. Le eccezioni accettate determinano modifiche nel database delle code e nel database di prenotazione. Pi? oltre in questo articolo viene descritta la struttura delle code - i sottostanti algoritmi che definiscono l?ordine con cui i messaggi sono gestiti. Lo strato di Switching comprende le altre operazioni principali del router. Con la definizione della topologia della rete e delle modalit? relative alle code, ? importante considerare il motivo dell?esistenza del router: la commutazione, lo smistamento, lo switching del traffico. La commutazione ? il processo comprendente la ricezione del messaggio, la selezione di un percorso appropriato su cui trasmetterlo e la trasmissione su quel percorso. Queste operazioni comportano quattro processi distinti: il driver di ingresso, il processo di selezione del percorso, il processo relativo alle code e il driver di uscita. Il percorso pu? prevedere numerose possibilit? opzionali, i produttori comunque di solito tendono a ottimizzare la velocit?. E? quindi per questa ragione che un percorso di commutazione di router ? tanto affidabile quanto il suo produttore ? in grado di renderlo tale. Di solito si fa riferimento a queste ottimizzazioni come a percorso veloce. Caratteristiche utilizzate meno di frequente od opzionali, quali la frammentazione del messaggio o il processo di opzioni in header IP, sono relegate a un percorso di processo pi? lento ma pi? completo. Si pensa spesso al modulo di selezione del percorso come al cuore di un router. La selezione del percorso viene realizzata tramite tecniche "classiche". Per esempio, nella pi? semplice delle situazioni il codice di switching del router rileva gli indirizzi di destinazione nella tabella di routing, seleziona una delle possibilit? per il prossimo nodo (con il protocollo di routing derivato), rimuove l?header di ingresso su strato Link, associa l?header di uscita su strato Link e trasmette il messaggio. E? chiaro che il router esegue queste operazioni esclusivamente per messaggi validi. La gran parte dei protocolli di strato di Rete definiscono procedure di convalida per la qualificazione del messaggio. Qualora il messaggio fosse troppo esteso per essere supportato dall?interfaccia di uscita, il router deve frammentarlo o rifiutarlo. Per le architetture dotate di checksum (DECnet IV e IPv6 non ne dispongono ma la gran parte di altre lo prevedono), viene dapprima verificato il checksum. In pratica, tutte le architetture comprendono anche un campo di conteggio dei passaggi, salti o nodi; lo switch lo incrementa di un nodo e lo compara con una soglia. Il router rifiuta sommariamente i messaggi invalidi e pu? inviare al trasmettitore un messaggio di controllo indicante quanto avvenuto. Alcuni protocolli, in particolare l?IPv4, l?IPv6 e l?IP ISO, supportano anche campi opzionali, che permettono al router di registrare il percorso di un messaggio sulla rete e di forzare il messaggio alla visita di determinati sistemi lungo la via, alla raccolta di contrassegni temporali, a eseguire l?autenticazione dei dati, oppure alla esecuzione di altri servizi sulla strato di rete. Queste procedure opzionali vengono realizzate anche nel modulo di selezione del percorso. Una volta che il messaggio ? stato commutato dal modulo di selezione del percorso, il programma relativo al messaggio determina quando trasmettere il messaggio. Lo scheduling del messaggio ? la funzione pi? semplice e pi? complessa svolta dallo strato di Switching. La gran parte dei router aggiunge semplicemente i messaggi a un elenco FIFO di traffico in attesa, o rifiuta il traffico entrante qualora la coda fosse piena. Questo semplice algoritmo risulta efficace, ma le esperienze di gestione di lunga data e ricerche recenti indicano che di rado si dimostra ottimale. In un router che implementa l?architettura Integerated Services Architecture IETF, gli algoritmi relativi alle code si occupano di ordinare il traffico con sequenzialit? che soddisfano le specifiche. Sovente, router non QOS implementano anche algoritmi simili per scopi di gestione del traffico. Coda FIFO Nelle code di tipo FIFO (First In First Out), l?ordine di uscita dei messaggi corrisponde a quello di entrata (il primo entrato ? il primo a uscire). Le comuni implementazioni FIFO presentano anche la caratteristica di esclusione dalla coda quando la stessa ? piena. Studi recenti hanno rilevato che l?esclusione dalla coda comporta seri effetti collaterali, almeno per il TCP/IP. Per esempio, quando un messaggio viene perduto, l?applicazione che l?ha trasmesso pu? intendere quel segnale come un segnale trasmesso troppo rapidamente. Il TCP risponde a questo segnale rallentandolo. Ma se la coda ? piena, in genere pi? messaggi vengono rifiutati contemporaneamente, con il risultato in molte applicazioni di rallentamento simultaneo. Siccome queste applicazioni mettono alla prova le capacit? della rete, raggiungono assieme il massimo del rendimento causando, pochi secondi dopo, un altro evento di congestione. La rilevazione RED (Random Early Detection) rappresenta un?alternativa alle code FIFO che distribuisce perdite di traffico - anche in condizioni di carichi pesanti - cosicch? le applicazioni non risultano sincronizzate come nel caso precedente. Le code sono sempre di tipo FIFO, ma invece di forzare l?esclusione del traffico quando una coda ? piena, la RED esclude il traffico statisticamente quando la profondit? della coda principale in un periodo di tempo recente supera un certo valore. L?occupazione della coda viene pertanto ottimizzata con stabilit? maggiore. Questo processo ? per l?utilizzo con TCP, ma coloro che l?hanno progettato ritengono che sia in genere applicabile al traffico di picco. Quello della priorit? della coda ? un algoritmo che prevede che pi? code FIFO (a esclusione o RED) costituiscano un singolo sistema di coda. Il traffico viene distribuito in queste code tramite criteri di selezione, quali le specifiche applicazione o destinazione. Comunque, il traffico viene rimosso secondo una rigida sequenza di coda: la coda con priorit? massima viene dapprima svuotata, quindi viene considerata la coda con priorit? media, e cos? via. Questo algoritmo ? facile da comprendere e da implementare, ma non funziona perfettamente in condizioni di carichi pesanti, pertanto le code con bassa priorit? possono essere bloccate fuori per periodi di tempo estesi, o il relativo carico pu? richiedere ritardi di attesa altamente variabili ed essere funzionalmente inutili. Quello delle code CBQ (Class-Based Queuing) basate sulla classe ? un algoritmo in cui il traffico viene suddiviso in classi differenti. La definizione di una classe di traffico ? arbitraria. Una classe pu? contenere tutto il traffico indirizzato da una specifica interfaccia, il traffico che supporta una determinata applicazione, il traffico diretto verso una serie particolare di destinazioni, oppure il traffico garantito RSVP per una certa qualit? del servizio. Ciascuna classe viene inserita in una singola coda FIFO ed ? assicurata almeno per una parte della larghezza di banda del link. Quando vi sono classi che non utilizzano pienamente la corrispondente larghezza di banda minima garantita, altre classi aumentano in proporzione le relative percentuali massime. L?algoritmo WFQ (Weighted Fair Queuing) ? una variante dell?algoritmo CBQ, che prevede che flussi singoli costituiscano classi distinte. Come per il CBQ, ciascuna classe WFQ viene messa in coda in singola coda FIFO e ad essa viene garantita una determinata percentuale della larghezza di banda del link. Quando vi sono flussi che non utilizzano pienamente la corrispondente larghezza di banda minima garantita, altri flussi aumentano in proporzione le relative percentuali massime. Siccome ciascuna classe ? un flusso separato, la garanzia della larghezza di banda CBQ diventa anche una garanzia di ritardo. Se si conoscono i parametri di un messaggio, esiste una formula utilizzabile per il calcolo del ritardo massimo sulla rete. Questa allocazione di larghezza di banda addizionale per un flusso comporta un confinamento migliore del ritardo. I driver di ingresso e di uscita sono programmi e chip che introducono e fanno uscire messaggi da un sistema. Comunemente, essi possono essere trattati dal protocollo di strato di Rete. Comunque, il protocollo di routing deve tener conto di alcuni aspetti di topologia. Per questo motivo, i protocolli di routing in genere trattano in modo diverso i componenti dello strato di Link. Normalmente si fa riferimento ai componenti dello strato di Link come a LAN, connessioni punto-punto, reti a circuito virtuale multiaccesso, accesso occasionale, o collegamenti telefonici. E? probabile che le LAN siano gli elementi di strato di Link pi? familiari ai tipici frequentatori di Internet. Esempi comprendono reti Ethernet, Token Ring ed FDDI, oltre a (in modo piuttosto paradossale) reti SMDS (Switched Multigigabit Data Service). Le LAN sono progettate non per alta utilizzazione, ma per elevata disponibilit?; pertanto, quando non sono sottoposte a carico, le relative prestazioni in genere sono meno prevedibili e meno prossime alla perfezione. Le LAN possono essere implementate in diversi modi, tramite combinazioni varie di cavi fisici, hub di cablaggio e switch LAN. Ma i sistemi correlati, siano essi host o router, condividono caratteristiche comuni. A meno che si stia scrivendo per davvero il driver, le LAN si possono intendere come mezzi che forniscono un?elevata disponibilit? di servizio fra una serie di sistemi a determinate velocit?. Ciascuna sistema sulla LAN ? provvisto di un indirizzo MAC, che identifica il sistema localmente. Quando un sistema trasmette un messaggi verso una destinazione, l?indirizzo di strato di Rete del sistema di destinazione deve essere convertito in indirizzo MAC prima della trasmissione. Le modalit? di questo processo variano in funzione dello specifico protocollo: in NetWare, l?indirizzo MAC ? parte dell?indirizzo dello strato di Rete, mentre AppleTalk e IP prevedono che vi sia un protocollo di definizione indirizzo, che richiede ai sistemi quali sono i relativi indirizzi di strato di Rete e di strato di Link e che ne memorizza nella cache la conversione. Siccome questa conversione deve essere realizzata, ? necessario che ciascun sistema su una LAN presenti un unico indirizzo di strato di Rete, affinch? i messaggi sulla rete possano essere ad esso indirizzati. Questo indirizzo deve comprendere sufficienti informazioni riguardanti la topologia (di solito in forma di numero di rete o prefisso di indirizzo), per consentire ai router di indirizzare i messaggi alle corrispondenti destinazioni. Tale identificazione del sistema permette al router dell?ultimo nodo di trasmettere il messaggio specificatamente al relativo sistema destinazione. Le operazioni di coda in una LAN sono problematiche, in quanto i sistemi non possono prevedere con certezza il comportamento di quelli adiacenti. I protocolli LAN dispongono di meccanismi che permettono ai sistemi di negoziare l?utilizzo del supporto su base messaggio per messaggio. Questa negoziazione viene di solito realizzata mediante sensibilit? alla collisione o voting sui token. Talvolta questo processo pu? essere dispendioso in termini di tempo, perch? la rete pu? soffrire code estese; comunque, grazie alla elevata larghezza di banda della LAN, le code estese sono insolite. Le connessioni punto-punto, come le connessioni PPP o HSSI (High-Speed Serial Interface), sono all?estremo opposto delle LAN, perch? sono interessate soltanto due estremit? - o peer. Alcune architetture di routing le considerano come interfacce interne fra le met? di un router, mentre altre le intendono come casi degradati di LAN. Comunque, queste connessioni normalmente non presentano indirizzo, perch? i router sulle terminazioni della connessioni le possono identificare come "router su questa interfaccia" invece di cercare di conferire loro un nome formale. Questa configurazione presenta vantaggi nell?allocazione dell?indirizzo: non c?? necessit? di assegnare un numero di rete alla connessione. Ci? significa anche che non avviene alcuna conversione degli indirizzi. Le operazioni relative alle code sono anche pi? semplici nelle configurazioni punto-punto. Sulle interfacce punto-punto, non c?? negoziazione per l?utilizzo della connessione - il sistema la controlla completamente. Pertanto, il sistema ? in grado di controllare deterministicamente il comportamento del traffico. Connessioni di accesso occasionali, come le connessioni telefoniche asincrone o ISDN, sono molto simili alle connessioni punto-punto, ma con una importante eccezione. Quando una connessione punto-punto ? disattivata, per poterla utilizzare deve essere necessariamente attivata. Quando le connessioni sono disattivate, i router comunicano fra essi per individuare un altro percorso sulla rete. Comunque, quando una connessione di accesso occasionale ? disattivata, essa ? disponibile in caso di richiesta di chiamata. In questo scenario, i router assumono che la connessione possa essere attivata su richiesta e desumono una topologia che comporti l?attivazione della connessione. Questa utile finzione - ossia che una connessione di fatto disattivata venga intesa come attivata - richiede una serie di profili per il supporto delle chiamate e meno modifiche dei protocolli di routing. Le reti a circuito virtuale multiaccesso (o reti NBMA - NonBroadcast MultiAccess) comprendono reti X.25, frame relay e ATM. Dal punto di vista del router, le reti a circuito virtuale vengono in genere trattate come LAN o gruppi di interfacce punto-punto. Sono simili alle LAN in quanto ciascun sistema connesso presenta indirizzi, ma differiscono perch? l?indirizzo fa riferimento al circuito virtuale e non al sistema o all?interfaccia. Se due circuiti virtuali si collegano alla stessa coppia di router, su ciascun router ? presente un indirizzo. Le reti a circuito virtuale sono simili anche alle connessioni punto-punto; per esempio, il sistema ha il completo controllo delle proprie code, inoltre c?? proprio un peer da cui i dati possono essere creati su un circuito virtuale. Il peer pu? essere conosciuto semplicemente come "quello che sta usando il circuito virtuale" pertanto non occorrono indirizzi di interfaccia. Dall?ottica del router, le reti a strato di Link devono essere supportate con attenzione. I problemi di routing sorgono dall?ipotesi che, per esempio, una rete a circuito virtuale multiaccesso opera in modo simile a una LAN. Per esempio, la perdita di un tratto di rete - un percorso comune per pi? circuiti - all?interno di una rete frame relay, ad alcuni protocolli di rete (in particolare OSPF) pu? causare la perdita della connessione con tutti i peer della rete, anche se in realt? i peer possono scambiare messaggi. Per questa ragione, ? opportuno intendere le reti a circuito virtuale multiaccesso come a raccolte di connessioni punto-punto non numerate. La corretta comprensione dei componenti del router attuale riduce i tempi e facilita l?utilizzo, il funzionamento e la manutenzione della rete dotata di router.
-
Swap File XP con oltre 512 di ram Memoria virtuale dimensionamento e allocazione per Windows NT4 - 2000 - XP Spero con questo breve articolo di portare un contributo e un chiarimento a tutti gli utenti di NT4 , Windows 2000 ed XP che si pongono il problema della quantita? , dell?allocazione, e soprattutto della sua utilita?, disponendo di 512 Mb di RAM o piu?. La memoria virtuale o file di scambio (swap), rappresenta un elemento fondamentale per la stabilita? e la performance del S.O. E? pertanto sconsigliabile non allocarla o impostare a ?1? il valore => ConservativeSwapFileUsage nel file system.ini. Come primo passo, per utilizzatori con 512MB e piu?, con regedit cerchiamo la chiave LargeSystemCache ed impostiamo il valore ad 1. (registro di configurazione pronto) Consigliamo invece di inserire alla voce: [386enh] il parametro: LocalReboot=On => permette di riavviare l'applicazione locale ed alla voce : [vcache] il parametro: AllocPageFixed=OFF => permette di allocare lo SWAP in modo dinamico Se non gia? fatto definiamo con la solita modalita? un file di swap con valore minimo 768mb e massimo 1024mb. Dopo aver riavviato il pc, attiviamo tutte le applicazioni che di solito usiamo, lasciando attive tutte quelle in background. Possiamo inoltre lavorare sulle applicazioni aperte, oppure aprirne delle altre che utilizziamo poco. A questo punto apriamo il task manager, tasto dx sulla systray. Nella parte bassa ci sono quattro rettangoli, Totals, Physical memory , Commit Charge , Kernel memory. Nel Commit Charge (memoria allocata dai programmi) ci sono tre valori espressi in KB: Total , Limit, Peak. Il valore numerico della voce Peak rappresenta il dimensionamento ottimale della memoria virtuale. Per sicurezza su PC client aggiungiamo 256MB e su PC server 512MB. Se ad esempio troviamo un valore 577214, aggiungiamo 256000 ed otteniamo 833214 Kb. A questo punto dividiamo per 1024 ed otteniamo il presunto valore ottimale in MB della memoria virtuale che va reimpostato in Pannello di controllo ? Sistema . L?allocazione ottimale, dal momento che Windows 2000 che XP utilizzano il MultiPaging , consiste nell?inserire il file di swap in ogni HD fisico che non contiene il sistema operativo, qualora si abbia un controller SCSI. Nel caso di RAID 0-1 , 5 , IDE , andremo chiaramente ad impostare un solo file di swap file nell?HD. Non e? stata provata l?efficacia di utilizzare una partizione logica a se stante come da alcuni suggerito sul FORUM , , ma nulla vieta di farlo. Migliorare le prestazioni del file di swap In Windows 98 - di Casper per Wintricks I sistemi operativi Microsoft, da Windows 95 in poi, sono famosi per la loro fame di memoria. Sono ormai lontani i tempi in cui Bill Gates dichiarava che ?640 Kb di RAM basteranno a tutti per far girare qualunque cosa?. Oggi possiamo considerarci fortunati se Windows 98 riesce a girare con prestazioni pi? o meno accettabili su un PC dotato di 64 Mb. In ogni caso, indipendentemente dalla dotazione di RAM del sistema, fin dalla versione 3.x le finestre colorate dello zio Bill hanno fatto uso di una particolare estensione della memoria fisica, conosciuta come memoria virtuale. Per farla breve, Windows gestisce la memoria fisica disponibile in modo dinamico, trasferendo di volta in volta su hard disk in un file denominato win386.swp blocchi di dati non immediatamente necessari, per fare posto alle diverse necessit? delle applicazioni avviate. In un sistema standard il file di memoria virtuale (swap) si trover? sull?unit? predefinita del sistema operativo e avr? dimensioni variabili a seconda della configurazione e delle applicazioni attive. La principale differenza fra la memoria fisica e quella virtuale ? rappresentata dal fatto che la prima ? costituita da un supporto completamente elettronico con tempi di accesso misurabili in nanosecondi, e quindi estremamente veloce. La seconda ? invece gestita su hard disk, un supporto meccanico con tempi di accesso neppure paragonabili e pesantemente condizionata da diversi fattori, fra cui la velocit? di funzionamento dei componenti, lo stato di frammentazione del file di swap e la sua posizione verso l?inizio o la fine dell?unit?. Probabilmente tutti conosciamo almeno qualcuno dei sistemi tradizionali per aumentare le prestazioni della memoria virtuale: 1.disattivare il file di swap, deframmentare l?hard disk e riattivare la memoria virtuale impostata con una dimensione fissa 2.impostare una dimensione fissa e usare una utility, come Speed Disk delle Norton Utilities, per spostare il file di swap all?inizio dell?unit? disco, dove la velocit? di lettura e scrittura dei dati (transfer rate) ? massima 3.creare una partizione riservata esclusivamente al file di swap Di questi, il metodo che garantisce le migliori prestazioni ? il n. 2, ma anche in questo modo la memoria virtuale dovr? pur sempre fare i conti con i tempi di accesso tipici di un supporto meccanico. Vi siete mai chiesti cosa succederebbe se fosse possibile togliere il file di swap dall?hard disk e spostarlo in memoria RAM? Trasferire il file di swap in memoria RAM In teoria non ? realizzabile. Windows infatti non permette di trasferire il file di swap su una unit? disco costituita di memoria RAM attraverso le impostazioni delle Propriet? di sistema. Come spesso succede, per?, quello che non si pu? fare con sistemi normali pu? essere comunque ottenuto attraverso un piccolo trucco? In ambiente DOS ? possibile creare una specie di hard disk virtuale all?interno della memoria RAM. Senza scendere in particolari, questa nuova unit? avr? la sua brava lettera come le altre, potr? avere un?etichetta e si comporter? esattamente come un hard disk qualsiasi, con due sole differenze: sar? enormemente pi? veloce e, spegnendo il PC o mancando la corrente, tutto il suo contenuto verr? cancellato. (Wintricks.com copyright) Trasferendo il file di swap su una unit? di questo tipo, in teoria le prestazioni del sistema dovrebbero aumentare in modo eccezionale. Facile a dirsi? I problemi pi? gravi da risolvere per ottenere questo risultato sono stati tre: ? Windows non permette di trasferire il file di swap su un disco RAM ? con gli strumenti di DOS ? possibile creare dischi RAM di max. 32 Mb ? i dischi RAM sono gestiti sotto Windows in modalit? DOS compatibile Vedremo fra poco come aggirare il primo problema. Il secondo ? stato finora risolto solo in parte: ramdrive.sys fornito con DOS gestisce infatti unit? RAM non pi? grandi di 32 Mb, cio? del tutto insufficienti se il nostro scopo ? spostarci il file di swap di Windows. La ricerca di un gestore di unit? RAM pi? moderno, meno limitato del vecchissimo ramdrive.sys e freeware ha richiesto ore di noiosa navigazione in rete. A questo proposito voglio ringraziare Paolo Russo, che per primo ha recuperato da Internet un gestore gratuito in grado di andare oltre i 32 Mb e sempre per primo ? stato cos? gentile da testare questo esperimento su una piattaforma completamente non-Intel. Purtroppo anche questa prima soluzione si ? rivelata insufficiente: il gestore alternativo (Turbodsk 2.2) ? in grado di arrivare fino a 64 Mb, ma Windows risponde trattando tutte le unit? del PC in modalit? DOS compatibile, riducendo fortemente le prestazioni. Altre ore di ricerca con il sospetto che fosse tempo perso? finch? ho trovato Xmsdsk 1.9i, di Franck Uberto, un programmatore francese. Xmsdsk 1.9i ? freeware e il suo autore afferma che pu? generare senza nessun problema unit? RAM fino a 2 Gb (!) Durante i test, Windows ha gestito normalmente tutte le unit? HD del PC, limitandosi a riconoscere in modalit? DOS compatibile solo l?unit? RAM. Quest?ultimo particolare rappresenta appunto il terzo problema, finora senza soluzione. Una unit? disco funzionante in modalit? DOS compatibile avr? prestazioni inferiori al normale, ma noi stiamo parlando di un disco virtuale fatto di memoria RAM?che nonostante tutto sar? sempre infinitamente pi? veloce di qualsiasi hard disk Dalla teoria alla pratica Prima di proseguire, tenete presente che la procedura descritta di seguito ? del tutto sperimentale, non ? di alcuna utilit? su PC con meno di 128 Mb di RAM e pu? essere provata solo se avete una buona esperienza del funzionamento di Windows e una certa confidenza con DOS. Vi suggerisco di stampare questa pagina o di tenerla aperta sul browser mentre fate la prova. - Dato per scontato che vi troviate in Windows 98, per prima cosa scaricate Xmsdsk cliccando qui. Si tratta di un file zippato autoeseguibile.Terminato il download (56 Kb) fate doppio clic sul file e quindi sul tasto Unzip, che copier? il contenuto nella directory c:windows. Se preferite siete liberi di estrarlo in un?altra cartella a vostra scelta, ma in questo caso ricordatevi del giusto percorso del file. - Cliccate ora su START, quindi su Esegui e scrivete sysedit . Cliccate su ok e avrete davanti a voi l?editor di configurazione di sistema. La finestra che vedete in primo piano si riferisce al file autoexec.bat . In fondo alle varie stringhe di comandi, aggiungete questa riga: c:windowsxmsdsk 65536 F: /t /y Fate attenzione al percorso corretto del file, sostituendo se necessario c:windows con la cartella in cui avete decompresso Xmsdsk dopo il download. La stringa suggerita presuppone che abbiate un PC con almeno 128 Mb di RAM. Su un sistema con almeno 164 Mb potete sostituire 65536 con 102400. F: indica che l?unit? RAM virtuale sar? creata con la lettera F: . Naturalmente potete indicare la lettera che preferite, purch? non ancora occupata da unit? gi? esistenti. In generale, lasciare F: andr? benissimo. - A questo punto cliccate sulla barra della finestra di system.ini per portarla in primo piano. Scorrete la lista di istruzioni fino a trovare nel gruppo [386Enh] la voce PagingDrive=C: - Sostituite C: o qualsiasi altra lettera ci sia, con la lettera F: (o comunque con la stessa lettera che avete gi? scelto per la stringa qua sopra) - Subito sotto la voce PagingDrive= troverete anche MinPagingFileSize=xxxx e MaxPagingFileSize=xxxx dove xxxx sta per un numero. Semplicemente, cancellate questi numeri lasciando lo spazio vuoto. - Infine salvate tutto e uscite dall?editor di configurazione di sistema. Per ripristinare la configurazione originale, sar? sufficiente in qualsiasi momento avviare Windows, aprire nuovamente autoexec.bat e cancellare la stringa che avete aggiunto. Stesso discorso con system.ini , togliendo la lettera F: alla voce PagingDrive= e ripristinando C: o qualunque altra cosa ci fosse. Aumento delle prestazioni? A questo punto potete riavviare il sistema. Durante il riavvio, Windows sposter? il file di swap sulla nuova unit? RAM virtuale. Se il vostro PC ? dotato di almeno 128 Mb di memoria, noterete un eccezionale aumento di prestazioni nel caricamento e nell?esecuzione di applicazioni piccole e medie. In linea di massima non potrete per? lanciare applicazioni o giochi particolarmente pesanti, o tenere aperte molte applicazioni insieme. Se disponete di almeno 164 Mb di memoria, potrete tranquillamente giocare e lavorare sul vostro PC come avete sempre fatto.
-
Risolvere i problemi che impediscono l'avvio del sistema operativo Quando il sistema non si avvia... In passato abbiamo avuto gi? modo di presentare gli strumenti che consentono di risolvere i principali problemi di avvio di Windows XP. Per riparare un'installazione danneggiata di Windows XP, inserite il CD ROM di XP nel lettore e riavviate il sistema (accertandovi che il BIOS del vostro pc sia regolato per il boot da CD ROM). A questo punto lasciate che abbia inizio la prima parte della procedura di setup quindi premete Invio per avviare l'installazione; F8 per accettare il contratto di licenza d'uso. La procedura di setup provveder? a ricercare la precedente vostra installazione di Windows XP. Premete R per avviare la procedura di riparazione nell'installazione di Windows XP gi? presente sul sistema. I dati memorizzati sul disco fisso rimarranno infatti: verranno invece sovrascritti tutti i file di sistema potenzialmente danneggiati. Per questo motivo, dopo la riparazione del sistema si dovr? procedere nuovamente all'applicazione di tutte le patch necessarie ricorrendo all'uso di Windows Update e/o di MBSA (ved. http://www.ilsoftware.it/querydl.asp?ID=551 e http://www.ilsoftware.it/cerca.asp?stringa=mbsa&dove=tutto). - Risolvere i problemi con NTLDR e NTDETECT.COM Come gi? illustratovi in passato, anche a noi ? pi? volte accaduto che su sistema ad avvio multiplo (cio? con un boot manager che permetta di scegliere quale sistema operativo eseguire di volta in volta all'avvio del personal computer) dopo aver, per esempio, reinstallato qualche software - o lo stesso boot manager (ad es. "BootMagic" di Powerquest) -, Windows 2000/XP si sia rifiutato di ripartire visualizzando immediatamente un messaggio simile al seguente: NTLDR mancante. Impossibile avviare il sistema. Premere CTRL+ALT+DEL per riavviare. Come fare per risolvere un problema simile e permettere di nuovo l'avvio di Windows XP? Formattate da un sistema su cui ? installato Windows XP un floppy disk (non copiatevi i file di avvio, eseguite semplicemente il comando FORMAT A:) quindi copiate dalla cartella /I386 del CD ROM di installazione di Windows XP i file NTLDR e NTDETECT.COM Create, sempre all'interno del disco floppy appena formattato, un file denominato BOOT.INI quindi copiatevi all'interno quanto segue: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(N)WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(N)WINDOWS="Microsoft Windows XP" /fastdetect Sostituite la lettera N con il numero della partizione contenente Windows XP, salvate, quindi riavviate il computer con il dischetto inserito (assicuratevi che Windows XP sia stato installato nella cartella WINDOWS altrimenti specificate quella corretta). Infine, copiate i tre file BOOT.INI, NTLDR e NTDETECT.COM nella cartella principale della partizione contenente Windows XP. Il sistema operativo dovrebbe cos?, d'ora in poi, essere avviato correttamente. In alternativa, avviate la Console di ripristino di Windows XP e digitate quanto segue: COPY X:i386NTLDR C: COPY X:i386NTDETECT.COM C: - Quando NTOSKRNL sembra danneggiato o mancante Se in fase di avvio del sistema operativo viene visualizzato un messaggio che informa su un problema riscontrato sul file NTOSKRNL (file danneggiato o mancante), ecco la soluzione per "far resuscitare" il vostro Windows XP. Inserite il CD ROM d'installazione di Windows XP nel lettore e riavviate il sistema (accertandovi che il BIOS del vostro pc sia regolato per il boot da CD ROM). A questo punto lasciate che abbia inizio la prima parte della procedura di setup quindi premete Invio per avviare l'installazione; F8 per accettare il contratto di licenza d'uso. La procedura di setup provveder? a ricercare la precedente vostra installazione di Windows XP. Premete R per avviare la Console di ripristino del sistema (sar? necessario indicare l'installazione di Windows che si desidera riparare e la password dell'amministratore). Una volta avviata la Console di ripristino, digitate l'identificativo associato al lettore CD ROM ove ? inserito il CD di Windows XP (es.: D:) quindi, in sequenza, i seguenti comandi: CD i386 expand ntkrnlmp.ex_ C:WindowsSystem32 toskrnl.exe Si ? supposto che Windows XP sia installato in C:Windows: se ? stato installato in una cartella diversa, effettuate gli opportuni cambiamenti. Estraete il CD ROM di Windows XP dal lettore e digitate EXIT. - HAL.DLL danneggiato o mancante Se, in fase di avvio di Windows, ricevete un errore facente riferimento al file HAL.DLL ? possibile che sia il file BOOT.INI ad essere danneggiato. Accedete alla Console di ripristino di Windows XP, cos? come spiegato in precedenza, quindi al prompt dei comandi digitate: bootcfg /list Otterrete l'attuale configurazione del file BOOT.INI. Il comando bootcfg /rebuild vi consentir? di ricreare il file. - WINDOWSSYSTEM32CONFIG danneggiato o mancante In questo caso, sempre dal prompt della Console di ripristino ? necessario digitare: cd windowssystem32config A seconda che l'errore visualizzato riguardi WINDOWSSYSTEM32CONFIGSYSTEM o WINDOWSSYSTEM32CONFIGSOFTWARE, digitate quanto segue: 1. nel caso di "SYSTEM" digitate: ren system system.bad copy windows epairsystem 2. nel caso di "SOFTWARE": ren software software.bad copy windows epairsoftware Estraete, anche in questo caso, il CD d'installazione di Windows XP dal lettore e digitate il comando EXIT.
-
un'icona per cambiare velocemente utente Questa funzione ? molto simpatica e pu? rimanere utile: Clicchiamo con il destro in una zona vuota del desktop Selezioniamo Nuovo quindi Collegamento Nel Wizard che ci apparir? incolliamo questa riga di comando: rundll32.exe user32.dll,LockWorkStation Immettiamo come nome Spegni PC Quindi fine A questo punto possiamo anche personalizzarla scegliendo l'icona che pi? ci piace e il gioco ? fatto Salut DVk
-
elenco dei comandi pi? comuni usati nel prompt di WinXP bootcfg - Configurare, interrogare o modificare le impostazioni del file Boot.ini. driverquery - Visualizzazione di un elenco dei drivers di tutte le periferiche installate e delle loro propriet?. getmac - Visualizzazione dell'indirizzo MAC (Media Access Control) e di un elenco dei protocolli di rete associati ad ogni indirizzo per tutte le schede di rete in ogni computer. gpresult - Visualizzazione delle impostazioni del Group Policy e dell'RSOP (Resultant Set of Policy) di un utente o di un computer. netsh - Questo comando pu? essere utilizzato all'interno del "Netsh Interface IP" al fine di configurare il protocollo TCP/IP. schtasks - Schematizzazione dei comandi e dei programmi che girano peridicamente o in un tempo specifico sul computer. systeminfo - Visualizzazione di informazioni dettagliate sulla configurazione del computer e del sistema operativo installato su di esso.
-
Come recuperare il Product Key di WindowsXP Molti utenti disattenti smarriscono il product key di WindowsXP, indispensabile per installare il sistema operativo. Questo piccolo applicativo (ViewKeyXP) risolve questo problema: http://www.sysadmin.it/download/viewkeyxp/viewkeyxp.exe oppure dal sito ufficiale http://www.thatcomputerguy.us/file/ViewKeyXP.exe qui lo dico e qui lo nego :P DVk
-
Software Utilizzato : Divx ;-) 3.11 Alpha Dvd Decrypter Adv. Bitrate Calculator Flask Mpeg Virtual Dub Ac3 Ac3 filter PASSO 1:(Installazione) Prima di tutto va installato il codec video Divx;-) sul vostro computer, eseguendo l'unico file eseguibile contenuto nel pacchetto zip (ricordate di eseguire dopo l'installazione il "Run me First"). Dopo aver installato il codec, installate tutti i programmi presenti nella lista qui su (sempre se non l'avete gi? fatto). PASSO 2: (Fase di Decrypting ) Lanciate ora il Dvd Decrypter, il programma autoselezioner? i file principali del filmato cos? che abbia inizio il trasferimento dei dati sulla cartella da voi scelta del vostro Hard Disk. Se il programma non vi consente di trasferire i dati, allora lanciate il vostro lettore DvD (ad esempio li Power DVD) e rieseguite il programma. PASSO 3: (Calcolo del Bitrate) Questo ? il passaggio su cui verter? la qualit? video ed audio del filmato, nonch? la dimensione finale del file video. Selezionate, adesso, nel programma il numero di supporti e la loro dimensione (74 o 80 min). Per selezionate il bitrate Dato che avete deciso di non processare lo stream audio (ovvero di lasciarlo in AC3) scegliete come bitrate il valore pi? alto ovvero 320 Kbit/s (alla fine dovrete sottrarre una differenza di 64 Kbit/s bitrate visto che lo stream AC3 ? a 384 Kbit/s). E' qui riportata l'immagine del programma per maggiori chiarimenti (attenzione l'immagine non si riferisce al caso qui trattato). Quindi adesso impostate la durata del filmato che andrete a comprimere, e il valore riportato nella casella "Set Video DivX Bitrate" - sottratto di 64 Kbit/s (per le motivazioni sopra menzionate) sar? il bitrate del vostro filmato. Si consiglia di memorizzarlo in quanti vi servir? nel passo successivo. PASSO 4 : (Compressione Video) Aprite il vostro FlaskMpeg (? consigliato l'uso di quello ottimizzato per la vostra cpu). Scegliete immediatamente l'"idioma" che vi pi? congeniale, e successivamente selezionate dal menu "file" la voce "Open Dvd File". A questo vi apparir? la classica finestra di apertura files del vostro sistema operativo, portatevi nella cartella che avete selezionato nel passo 2 per l'operazione di Decrypting, ed aprite l'unico file di estensione "ifo" che vi troverete nella suddetta cartella. Vi apparir?, cos?, una finestra. Selezionate il flusso audio ed il flusso video (in caso di ambiguit? dovuta alla presenza di pi? flussi video scegliete solo quello di durata maggiore). Se desiderate la visualizzazione dei sottotitoli durante la riproduzione del filmato, allora selezionateli, consapevoli che successivamente non potranno essere disabilitati, in quanto "incorporati" alla traccia video. Cliccate il pulsante "Flask this DVD!". Dal menu "Opzioni" del programma selezionate alla voce "Seleziona il formato in Uscita": "Avi Output", fatto ci? all'interno di questo stesso menu cliccate sulla voce "Opzioni Formato in Uscita" In basso a destra c'? l'opzione "Split File after", non attivatela in quanto altrimenti vi risulter? scomoda l'unione dei files video con quelli audio. Cliccate sul primo bottone "Select Codec" sotto Video 0x0 : Nel campo "Programma di compressione" selezionate il codec video "Divx;-) MPEG-4 Low-Motion" per creare un DvX (E' possibile scegliere anche altri codec ma la loro compressione ? pessima). Una volta selezionate cliccate sul bottone "Configura.." e vi apparir? una finestra. Lasciate invariati i campi "Options" e "Compression Control" mentre selezionate il Bitrate, calcolato nel Passo 2, nel campo "Data Rate (Kilobits per Second)".Premete OK e tornate nella finestra "Opzione Formato in Uscita". Ignorate il campo "audio" e premendo su "OK" riportatevi nella finestra del programma. Riaprite il menu "Opzioni" e questa volta scegliete la voce "Opzioni Globali Progetto (Settaggio Film)", vi comparir? un'altra finestra. selezionate "Copia direttamente il flusso audio" : Il programma creer? un file .Ac3 che successivamente andr? unito con il flusso video tramite il "VirtualDub" con supporto Ac3. Passiamo ora alla finestra "Post Trattamento" Nella parte sinistra va scelto il ridimensionamento della qualit? video. Vi consiglio di lasciare il "Filtraggio Bicubico HQ" per ottenere una buona qualit? video. Nella parte destra si possono scegliere le opzioni del riquadro. Con questa opzione potete ridimensionare il formato video (16:9 o 4:3) in "Full Screen" (Schermo intero). Per fare ci? cliccate su "Mostra pannello in uscita" : Qui potrete ritagliare il bordo nero intorno l'immagine. Lasciate invariati gli altri due campi : "Dimensione in Uscita" e "Inquadramento" , perch? potrebbero distorcere l'immagine. Cliccate su nascondi per tornare indietro. Nella sezione successiva "File" va indicato il percorso su cui saranno salvati i File. Per l'ultima opzione "Generali" non occorrono spiegazioni vista la sua chiarezza Torniamo ora nella finestra "Esegui" Se selezionate "Lettore" potrete vedere (molto lentamente) il filmato che avete caricato. Per finire andate su "inizia la conversione" Verr? cosi lanciata la compressione. Non badate ai valori riportati riguardo al tempo, visto che non sono molto attendibili. Infine durante la compressione vi consiglio di non selezionare "Display Output" perch? potrebbe rallentare il processo. PASSO 5 : (Unione flusso audio e flusso video e Cutting del file finale) Aprite adesso il VirtualDub versione AC3, selezionate dal menu "File" la voce "Open Video File", e cos? caricate il file video precedentemente compresso con il FlaskMpeg. Alla voce del menu "Video" attivate l'opzione "Direct Stream Copy", fate lo stesso in quella "Audio", nella quale dovrete anche selezionare "Wav File", vi apparir? la finestra di apertura file, impostate alla voce "Tipo di File": "Tutti i File". Portatevi nella cartella dove il FlaskMpeg ha precedentemente salvato la traccia AC3 ed adesso apritela. Fatto ci? procedete con la selezione dal menu "File" di "Save Avi.." e quindi scegliete il nome del nuovo file nel quale l'audio sar? unito al flusso video. Il programma inizier? il veloce processo di unione, terminato il quale otterrete il filmato definitivo. Se nel Passo 3 (Calcolo del Bitrate) avete selezionato pi? supporti ora dovrete dividere in pi? parti il filmato finale visto che quest'ultimo vi risulter? di dimensioni elevate rispetto a quelle supportate dai comuni cd-r. Per far ci? dovrete sempre operare nel Virtual Dub, infatti una volta riaperto il filmato finale selezionate nel menu "File" la voce "Save segmented Avi". Qui impostate nel campo "File segment size limit in Megabytes" una dimensione consona alle capienza dei supporti scelti ( 700 o 650 Mb), quindi una volta selezionato il nome del File, cliccate su "Salva". Otterrete cos? il filmato diviso in pi? parti pronto per essere masterizzato. PASSO 6: (Fine) A questo punto il vostro Divx;-) ? terminato, rimane a vostra discrezione se masterizzarlo o meno. Buona Visione...
-
il .avi non si cancella? ci pensa DVk Problemi con i files AVI Chi di voi possiede numerosi files AVI (divx) potrebbe essere incappato nell'impossibilit? di eliminarli (spesso incompleti o corrotti) o nel crash di explorer o utilizzo della CPU all'estremo. Per eliminare gli AVI chiudete tutte le le applicazioni aperte. Aprite un COMMAND PROMPT e puntate alla cartella che contiene i files da cancellare. Quindi aprite il Task Manager e nel TAB Processi selezionare "explorer.exe" e "Termina Processo". Vi trovere cos? solo con il prompt e il Task Manager. Nel Prompt fate un DEL del file scelto (Es: DEL *.avi, DEL video.avi) quindi nel task manager andate nel TAB Applicazioni clickate "Nuova operazione" e digitate explorer.exe e OK per ricaricare la shell. Per risolvere in un colpo invece entrambi i problemi: Start >> Esegui >> regedit >> OK HKEY_CLASSES_ROOTSystemFileAssociations.avi shellexPropertyHandler E eliminate la chiave "Default" (magari facendone un backup prima).
-
[attachmentid=4] ...e chi mi ferma pi? !!! :lol: DVk
-
[attachmentid=3] ma quanto mi do da fare!?!?!?
-
So che ? un problema comune x molti utenti generare la famosa ~ (sisi proproi quella che sotto Winzozz si fa con Alt+126 della tastierina numerica) Sotto Linux invece: a) Per generarla all'interno di una console testuale si deve utilizzare la combinazione di tasti [AltGr+0]. B) Nelle applicazioni per il server X si deve utilizzare la combinazione [AltGr+?]. Saluti e Baci DVk
-
1. IMPORTANTE!!! Disclaimer e Copyright La procedura su cui questo documento cerca di essere una guida ? pericolosa per i programmi ed i dati immagazzinati nel computer. Portate avanti detta procedura a vostro rischio. I passi descritti in questo documento hanno funzionato per l'autore; non c'? nessuna garanzia che funzionino per voi, n? che possiate cercare di seguirle senza seri danni ai programmi ed ai dati contenuti nel vostro computer. Qualsiasi uso delle informazioni qui date ? a vostro rischio e pericolo, e l'autore non pu? essere considerato responsabile per qualsiasi danno o inconveniente di qualsiasi tipo che vi possa accadere nel farlo. La suddetta clausola ? valida anche per quanto riguarda la traduzione italiana: il traduttore non potr? essere considerato responsabile per qualsiasi errore o inesattezza della traduzione. Usate le informazioni contenute in questo documento completamente a vostro rischio e pericolo. Questo documento ? copyright 1996 Dynamicro Consulting Limited, ed ? distribuito sotto la licenza General Public License GNU; ci? significa che potete copiarlo e modificarlo a vostro piacimento, ma non potete evitare che altri facciano lo stesso. Sono ben accette, per uso in versioni successive, relazioni su upgrade riusciti di sistemi complessi. 2. bla bla bla 3. Introduzione 3.1 Come uccidere e resuscitare Linux Lo scopo di questo documento ? di dare dei suggerimenti per aiutarvi nella distruzione e riinstallazione di un sistema Linux. Non ? affatto un libro di "ricette" sicuro, ma spero che servir? come indicazione su quello a cui si deve pensare, e sull'ordine in cui fare le cose. Mi sarebbe stato molto di aiuto se qualcun altro avesse scritto una cosa del genere prima del mio primo upgrade; quindi spero che sia di aiuto a voi, se dovete ricostruire una macchina Linux. Non prendetelo come vangelo! Alcune cose cambieranno quasi sicuramente. Anche i nomi delle directory presenti nel documento possono essere diverse da quelle che dovete usare; alcuni hanno /usr/home invece di /home, ad esempio; altri la chiamano /u, ed altri (brivido mettono addirittura tutti gli utenti direttamente sotto /usr stessa! Non posso essere specifico per il vostro sistema, quindi ho semplicemente usato i nomi come sono nel mio. Noterete anche che uso la distribuzione Slackware, e che assumo abbiate abbastanza RAM e spazio disco per installare i sorgenti del kernel Linux e compilare il kernel. Se il vostro sistema ? diverso, alcune delle mie raccomandazioni non saranno applicabili, ma spero che potrete comunque trovare lo schema generale che vi possa essere di aiuto nel progetto di ricostruzione. 3.2 Perch? farlo? Buona domanda! Se si pu? evitare, non fatelo! (E questa ? la raccomandazione pi? importante di tutta questa guida!!!) ...ma ci sono occasioni in cui non se ne pu? fare a meno. Ad esempio, ho installato un hard disk da 4Gb e poi ho scoperto che Linux della Slackware 2.0 non sapeva che gli hard disk potessero essere pi? grandi di 2Gb, e si confondeva orribilmente; quindi ho dovuto fare un upgrade all'allora ultima Slackware 2.3. Quell'upgrade ? stata un'esperienza estenuante, ed ? parte della ragione per cui sto scrivendo queste note. Ho sbagliato praticamente tutto, e solo la fortuna ed il fatto che avessi un'altro Linux funzionante mi ha salvato dal disastro. Un altro esempio: ho scoperto che non potevo compilare un kernel linux a.out funzionante con la serie 1.3, usando un'installazione esterna della Slackware 2.3 (un'altra macchina, non quella con cui ho impasticciato). Ho preso la palla al balzo, ho comprato la Slackware 3.0 su CDROM e ho convertito tutto a ELF. Stavolta la reinstallazione ? andata meglio, grazie in parte all'esperienza precedente, ed ? servita come spunto per la maggior parte delle idee che vi sto offrendo qui. 3.3 Devo per forza ``distruggere e reinstallare''? Stranamente ? pi? sicuro. Se installate sopra un sistema Linux esistente, ? probabile che abbiate una miscela di binari vecchi e nuovi, e in genere un vero problema per l'amministrazione. Ripulire il sistema del tutto, e poi rimettere solo quello di cui sapete avere bisogno ? un modo drastico ma efficace di avere un risultato pulito. (Naturalmente stiamo parlando di installare una distribuzione per intero, non di aggiornare uno o due pacchetti! Il modo migliore per evitare una reinstallazione completa ?, precisamente, di tenere aggiornati i singoli componenti -- specialmente gcc e le sue librerie, e le binutils. Se quello che usate ? ragionevolmente aggiornato, e potete tenercelo prendendo, e se necessario compilando, del nuovo codice di tanto in tanto, non c'? bisogno di un aggiornamento di massa). Come nota Patrick Volkerding (anche lui raccomanda di togliere tutto per fare gli upgrade), installare ELF sopra un sistema funzionante a.out ? il modo sicuro per provocare un disastro: almeno, se ne sapete abbastanza per provarci, non avete bisogno di questa guida! Anche senza questa complicazione, per?, sarebbe meglio ricostruire tutto da zero. 3.4 Quanto tempo ci vuole? Naturalmente dipende dalla complessit? del sistema, ma posso dire che, per l'aggiornamento andato bene (l'altro? -- non chiedetemelo! ci ho messo circa dieci ore per i backup, sei ore per ricostruire il sistema per poter riabilitare i login, e un'altra mezza giornata pi? o meno per rimettere a posto le cose meno cruciali. Col passar del tempo mi accorgo che ci sono delle piccole cose che non sono come le vorrei -- le aggiusto mano a mano che le trovo -- ma in tutto dovrebbero bastare venti ore di lavoro per un progetto ragionevolmente complesso. Forse meno se state reinstallando da hard disk (io ho usato il CDROM) o pi? se dovete installare da floppy. Forse meno se avete un Pentium veloce, pi? se avete un 386. Avete capito il concetto. E questo per quanto riguarda l'installazione. Ecco come impostarla, una volta deciso che deve essere fatta. Armatevi di forza d'animo, di caffeina o cose del genere, e: 4. Scrivete tutto quello che fate. E' estremamente prezioso avere un registro di quello che avete fatto nel processo di preparazione e di applicazione delle modifiche. E' specialmente importante una lista dei backup che farete in preparazione della distruzione del sistema esistente. 5. Fate un backup completo del sistema esistente. Generalmente parlando, i backup tendono a venir scritti su mezzi ad accesso sequenziale. Posto questo, non vorrete usare il backup completo per reinstallare un numero significativo di file: ne ha troppi che non volete. E' meglio creare dei piccoli backup di segmenti individuali che sapete che dovrete reistallare del tutto. Far? degli esempi pi? avanti. Perch? cominciare con un backup completo? Ci sono due ragioni principali: per prima cosa, nell'eventualit? di una catastrofe nell'installazione del nuovo sistema, avrete modo di tornare indietro al punto di inizio con un minimo sforzo. Secondo, non importa quanto prepariate bene la nuova installazione, c'? una probabilit? molto alta che uno o due file importanti vengano dimenticati; in questo caso la scomodit? di dover estrarre questi file dal backup completo sar? preferibile a farne a meno. Per risparmiare tempo e spazio, se avete ancora il mezzo di distribuzione per la vecchia versione Linux, potete salvare solo i file che hanno l'mtime o il ctime pi? recente della data dell'installazione originale. 6. Fare il backup di /etc e delle sue sottodirectory su uno o pi?floppy. Questo ? l'estremo opposto: non reinstallerete questi file (per la maggior parte, almeno), ma li paragonerete con quelli nuovi che vengono creati durante l'installazione. Perch?? Perch? i file nuovi potrebbero contenere informazioni che i vecchi non hanno, o potrebbero esprimere le stesse cose in modo diverso. I cambiamenti nei protocolli, l'aggiunta di nuovi strumenti o l'implementazione di nuove caratteristiche in strumenti esistenti sono tutte cose che possono apportare dei cambiamenti nel formato dei file di configurazione e negli script di avvio contenuti nell'albero /etc, e molto probabilmente dovrete immettere i vostri vecchi dati nei nuovi file per mantenere i formati nuovi e sfruttare i miglioramenti. 7. Fate backup separati di ogni gruppo di file che volete conservare. Questa ? la parte pi? variabile del lavoro, e tutto quello che posso fare ? descrivere quello che ho fatto io nel mio sistema, nella speranza che servir? come guida. Sostanzialmente, dovete dare un'occhiata a tutte le directory che contengono: ?file che non fanno parte della vostra installazione linux standard, o ?file pi? recenti di quelli che installerete con la nuova installazione e separate solo quei file che volete mantenere. (Un'altra strategia possibile ? di fare il backup di tutti i file con mtime o ctime pi? recenti del giorno della precedente installazione di Linux, come detto sopra, e recuperarli da l?. Se fate cos?, dovrete tener conto che la nuova distribuzione di Linux potrebbe contenere dei file ancora pi? recenti di quelli che avete salvato.) Nel mio caso, ho finito per fare un file .tgz sul mezzo di backup per ciascuna di queste directory: ?/usr/lib/rn ?/usr/lib/smail ?/usr/lib/trn (il resto di /usr/lib era da reinstallare) ?/usr/local/src ?/usr/local/bin ?/usr/local/lib ?/usr/local/lpfont ?/usr/local/man ?/usr/local/sbin ?/usr/local/thot (c'erano altri file in /usr/local che non mi servivano) ?/usr/openwin ?/usr/src/lilo-17 (perch? la mia Slackware nuova aveva ancora la versione 16) ?/usr/src/linux-1.2.13 (perch? l'avevo configurato) ?/usr/X11R6/lib/X11/app-defaults ?/usr/X11R6/lib/X11/initrc (il resto di Xfree86 era da reinstallare) ?/var/named ?/var/openwin ?/var/texfonts La mia macchina era relativamente semplice, dato che non c'erano file di spool di cui preoccuparsi. Non ho uno spool di news in quel sistema, e dato che ci sono solo due utenti ? pi? semplice leggere tutta la posta prima di fare lo shutdown. Negli altri casi bisogna fare il backup delle directory /var/spool all'ultimo momento, come naturalmente le directory delle librerie e dei siti delle news! 8. Preparate i dischi di root e boot per la nuova installazione. I dettagli di come farlo si possono trovare nella guida di installazione della distribuzione che usate. 9. Formattate i dischetti per il kernel temporaneo e per lacompilazione finale. Ve ne serviranno due, un dischetto per ciascuno. Fatto tutto questo, siete pronti per l'Ora X. Il passo successivo rende il sistema non disponibile. 10. Inibite i login e fate il backup delle directory /root e /home. E' l'ultima cosa da fare sui vecchi sistemi prima di distruggerli, in modo da poter avere i dati di root e degli utenti il pi? aggiornati possibile. 11. Avviate il sistema dai dischetti di boot e root. 12. Cancellate le partizioni Linux con fdisk e ricreatele. La guida di installazione vi spiegher? come farlo; cos? distruggerete il sistema. Da ora in poi dipendete dalla qualit? dei backup che avete fatto nei passi precedenti! Siete stati avvisati! 13. Installate la nuova versione di Linux. Ci sono gi? diversi buoni documenti che descrivono come portare avanti questo passo, quindi non scender? nel dettaglio. Continuate da qui quando il nuovo sistema pu? essere avviato dal'hard disk. Nel frattempo, assicuratevi di creare un dischetto da cui possiate avviare il sistema, dato che il kernel installato di default da Linux deve essere sostituito, e nel farlo possono accadere degli incidenti. Assicuratevi di installare i pacchetti di sviluppo e i sorgenti del kernel. 14. Con il nuovo sistema linux avviato dall'hard disk, modificate/etc/fstab ed aggiungete la partizione di swap. Poi date il comando "swapon -a". Non so perch?, ma il programma di installazione della Slackware non si offre di farlo se la partizione di swap gi? esiste. Poi, quando avviate il sistema nuovo e lo script rc.S prova ad abilitare lo swap, non trova la partizione nel file fstab e lo swap non funziona. Questo procedimento risolve il problema. 15. Recuperate le configurazioni nella directory /etc e nelle suesottodirectory. Come descritto sopra, non potete semplicemente copiare i vecchi file in /etc ed aspettarvi che funzioni tutto; con alcuni file si pu? fare, ad esempio /etc/XF86Config (sempre che stiate usando la stessa versione di Xfre86 -- e lo stesso hardware video -- dell'installazione precedente). Per la maggior parte, per?, ? meglio usare diff per paragonare i file vecchi ai nuovi prima di copiarli. Controllate specialmente dei cambiamenti significativi nei file in /etc/rc.d, dove potreste dover modificare tutto a mano, invece di copiare i vecchi script dal backup. Una volta finito, riavviate il sistema. 16. Configurate e ricompilate il kernel di Linux. Anche se questo passo non ? necessario per avere un kernel che supporta il vostro hardware, vale la pena farlo per evitare di avere nel kernel i driver di tutta quella roba che sulla macchina non c'?. Per dettagli su questo, leggete il Kernel HOWTO. Installate prima il kernel ricompilato su un dischetto: quando vedete che da l? l'avvio ? a posto, installatelo sull'hard disk, avviate lilo se lo state usando, e riavviate il computer. 17. Recuperate quello che avevate salvato. Potrebbe essere necessario reinstallare alcuni dei binari dai sorgenti: io ho dovuto farlo con lilo, ad esempio, dato che la mia versione era pi? recente di quella nell'installazione Slackware, e non avevo fatto il backup del file binario da /sbin. Dovreste controllare tutti i programmi che recuperate dai backup, e confermare l'esistenza e la correttezza dei file di configurazione, delle librerie e cos? via. In alcuni casi potreste dover recuperare i programmi in un ordine specifico: avete annotato delle cose durante il backup, vero? ;-) 18. Controllate la sicurezza. Controllate i permessi dei file e delle directory in modo da essere sicuri che l'accesso non ? n? troppo ristretto n? troppo facile. Io trovo che la Slackware tende ad essere un ambiente un po' aperto per i miei gusti, quindi vado in giro a cambiare i 755 in 711 per i binary nelle directory ../bin e cose del genere. O addirittura i 700 in quelli ../sbin. Ci vuole un'attenzione particolare se state facendo girare un server ftp, ma probabilmente ci avete gi? pensato ;-). 19. Abilitate i login. E' tutto a posto. Nel prossimo periodo, ci saranno probabilmente dei dettagli da chiarire, ma il grosso del lavoro ? fatto. Buon divertimento! DVk
-
NTLDR mancante, impossibile avviare il sistema Quando si hanno sistemi con pi? sistemi operativi installati, e quindi con avvio multiplo (boot manager), pu? capire che, a seguito dell'installazione di qualche software particolare, il sistemi si rifiuti di "boottare" e mostri il seguente messaggio: "NTLDR mancante, impossibile avviare il sistema, premere CTRL+ALT+CANC per riavviare" Per ovviare a questo problema, operare come segue: 1. Formattare un floppy da un sistema con Windows2000 2. Copiare dal CDROM di installazione i files NTLDR e NTDETECT.COM (presenti nella cartella I386) 3. Creare il file BOOT.INI, e inseriteci le seguenti righe: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(N)WINNT [operating systems] multi(0)disk(0)rdisk(0)partition(N)WINNT="Microsoft Windows 2000 Professional" /fastdetect Inserire, al posto della lettera N, il numero corrispondente alla partizione che contiene Windows 2000, e riavviate la macchina con il floppy inserito. Una volta riavviato, copiare i files BOOT.INI, NTLDR e NTDETECT.COM nella partizione di Windows 2000.
-
[attachmentid=2] a qualcuno potrebbe servire allego doc saluti DVk
-
Anche se ormai ? divenuto un sistema operativo vecchissimo e non pi? utilizzato, pu? sempre tornato utile usare i comandi DOS. Questa stringa consente di ottenere la lista di tutti i comandi DOS. - Da Start -> Esegui, inserire la seguente stringa: hh.exe mk:@MSITStore:C:WINNTHelpwindows.chm::/ntcmds.htm
-
Felice di essere d'aiuto nel mio piccolo
-
Telnet ? un'applicazione standard di 'Internet' ed ? disponibile nella maggior parte delle implementazioni del TCP/IP, indipendentemente dal sistema operativo host. Si tratta di un semplice protocollo di login remoto, implementato secondo un modello di tipo client-server, che permette ad un utente attestato ad una certa macchina di stabilire una connessione TCP con un server di login che si trova su un'altra macchina, la porta che utilizza ? la numero 23. Subito dopo Telnet rilancia i caratteri battuti sulla tastiera dell'utente direttamente al calcolatore remoto come se essi fossero battuti su una tastiera direttamente connessa ad esso. Inoltre Telnet rimanda l'output della macchina remota indietro fino allo schermo dell'utente. Il servizio ? definito trasparente perch? d? l'apparenza che la tastiera e lo schermo dell'utente siano attaccati direttamente alla macchina remota. Sebbene Telnet non sia molto sofisticato se paragonato ad altri protocolli di terminale remoto, esso risulta tuttavia largamente diffuso. Di solito, il codice client di Telnet permette all'utente di specificare la macchina remota a cui ci si vuole connettere dando il suo nome di dominio oppure il suo indirizzo IP. Come aprire telnet Telnet ? un client presente di default in windows e ci si pu? accedere in tre diversi modi: 1)premendo avvio/start, poi esegui e si digitando "telnet" nella finestra di dialogo. 2)facendo click sul file "telnet.exe" presente nella cartella "windows". 3)digitando "telnet" nel prompt ms-dos. Generalit? e Processi: Telnet offre tre servizi di base. Per prima cosa, definisce un network virtual terminal (terminale virtuale di rete) che fornisce una interfaccia standard verso i sistemi remoti. Il programma client non pu? essere istruito sui dettagli di tutti i possibili sistemi remoti, cos? esso ? realizzato per usare l'interfaccia standard. In secondo luogo, Telnet include un meccanismo che permette ai due moduli client e server di negoziare delle opzioni, e fornisce un insieme di opzioni standard (ad esempio, una delle opzioni controlla se i dati trasmessi attraverso la connessione debbano essere rappresentati mediante il set standard di caratteri ASCII a 7 bit oppure mediante un set di caratteri ad 8 bit). Infine, Telnet tratta simmetricamente entrambi gli estremi della connessione. In particolare, Telnet non obbliga che l'input del client provenga da una tastiera, e nemmeno che l'output di tale client sia costituito per forza da uno schermo. In questa maniera, Telnet permette ad un qualsiasi programma di diventare utente del client. Inoltre, entrambe le parti possono negoziare le opzioni. Quando un utente invoca Telnet, un determinato programma applicativo sulla macchina dell'utente diviene il client. Esso stabilisce una connessione TCP con il server, tramite la quale comunica con questo. Una volta stabilita la connessione, il client legge i caratteri battuti sulla tastiera dell'utente e li trasmette al server, e nel frattempo legge i caratteri che il server gli ritorna indietro per visualizzarli sullo schermo dell'utente. Il server deve accettare la richiesta di connessione dal client, dopodich? deve rilanciare i dati ricevuti tramite questa connessione al sistema operativo della macchina su cui si trova. In pratica il server deve gestire connessioni multiple concorrenti. Di solito, un processo padre aspetta su una determinata porta una richiesta di connessione e, quando questa arriva, crea un processo figlio che gestisce tale connessione. Perci? il processo illustrato rappresenta il processo figlio che gestisce una particolare connessione. Si adopera il termine pseudoterminale per descrivere il punto di ingresso (entry point) del sistema operativo che permette ad un programma quale il server Telnet di immettere caratteri nel sistema operativo della macchina remota facendo credere a quest'ultimo che essi provengano da una tastiera. Sarebbe impossibile realizzare un server Telnet senza che il sistema operativo fornisca una tale possibilit?. Se il sistema supporta un dispositivo di pseudoterminale, il server Telnet pu? essere implementato mediante programmi applicativi. Nel server, ogni processo figlio funge da collegamento tra il flusso di dati provenienti dalla connessione TCP ed un particolare dispositivo di pseudoterminale. Fare in modo che il server Telnet sia un programma a livello applicativo comporta sia vantaggi che svantaggi. Il vantaggio pi? ovvio ? che risulta pi? semplice la modifica ed il controllo del server rispetto al caso in cui il codice sia contenuto nel sistema operativo. Lo svantaggio ? chiaramente l'inefficienza, poich? ciascun carattere deve viaggiare dalla tastiera d'utente, attraverso il sistema operativo, fino al programma client, dal programma client tornare al sistema operativo e, attraverso la connessione di rete, arrivare alla macchina remota. Qui, i dati devono arrivare, attraverso il sistema operativo, fino al programma applicativo server, e da quest'ultimo di nuovo indietro al sistema operativo in un dispositivo di pseudoterminale. Alla fine, il sistema operativo remoto invia il carattere al programma applicativo che l'utente sta facendo correre. Si capisce che, nel frattempo, l'output (compresi i caratteri di echo se tale opzione ? stata selezionata) viaggia a ritroso dal server al client lungo lo stesso percorso. Passaggio di comandi per controllare la parte remota: Sopra ho accennato al fatto che molti sistemi forniscono un meccanismo che permette agli utenti di terminare un programma in esecuzione. Di solito, il sistema operativo accoppia tale meccanismo ad un particolare tasto o sequenza di caratteri. Ad esempio, a meno che l'utente non specifichi diversamente, molti sistemi Unix riservano al carattere generato dalla sequenza Control-C la funzione di interruzione. Digitando Control-C si costringe Unix a terminare il programma in esecuzione; il programma non riceve Control-C come input. Il sistema inoltre pu? riservare altri caratteri o sequenze di caratteri per altre funzioni di controllo. NVT di Telnet adatta le funzioni di controllo definendo come esse devono essere passate dal client al server. Dal punto di vista concettuale, si immagina che NVT possa accettare immissioni di caratteri da una tastiera in grado di generare pi? dei 128 possibili caratteri. Si suppone cio? che la tastiera dell'utente abbia tasti virtuali (immaginari) che corrispondono alle funzioni tipicamente usate per controllare i processi. Ad esempio, NVT definisce un tasto concettuale di "interruzione" ("interrupt") che serve a richiedere la terminazione di un programma. Nella pratica, la maggior parte delle tastiere non fornisce tasti in pi? per i comandi. Tuttavia, certi sistemi operativi o interpreti di comandi presentano una variet? di modi per generarli. Abbiamo gi? menzionato la tecnica pi? comune: accoppiare un determinato carattere ASCII ad una funzione di controllo cosicch?, quando l'utente preme il tasto, il sistema operativo effettua l'azione appropriata invece di accettare il carattere come input. I progettisti dell'NVT hanno scelto di tenere separati i comandi dal normale set di caratteri ASCII per due ragioni. Per prima cosa, definire separatamente le funzioni di controllo significa conferire a Telnet una maggiore flessibilit?. Esso pu? infatti trasferire tutte le possibili sequenze di caratteri ASCII tra il client ed il server cos? come tutte le possibili funzioni di controllo. Inoltre, tenendo separati i segnali dai normali dati, NVT permette al client di specificare i segnali senza ambiguit?, ovvero senza confusione circa il fatto se il carattere immesso debba essere trattato come dato o come funzione di controllo. Per mandare le funzioni di controllo attraverso la connessione TCP, Telnet le codifica adoperando una cosiddetta sequenza di escape. Una sequenza di escape usa un ottetto riservato per indicare che ? in arrivo un ottetto in cui ? codificato un comando. In Telnet, l'ottetto riservato che apre una sequenza di escape ? noto come l'ottetto interpret as command (IAC). I segnali generati dai tasti concettuali di una tastiera NVT corrispondono ciascuno ad un comando. Ad esempio, per richiedere che il server interrompa il programma in esecuzione, il client deve inviare la sequenza di due ottetti IAC IP (255 seguito da 244). Comandi addizionali permettono al client ed al server di negoziare il set di opzioni da usare e di sincronizzare la comunicazione. Faccio notare che la codifica NVT di tutti i caratteri stampabili e di controllo, qualora sia in vigore il comportamento di default, coincide con la codifica standard ASCII a 7 bit, la quale comporta una corrispondenza di tali caratteri con i primi 128 numeri naturali (da 0 a 127), e conseguentemente il valore nullo del bit pesante (o pi? significativo, cio? quello a sinistra) nell'ottetto che rappresenta il dato. Poich? la codifica NVT delle funzioni di controllo prevede l'impiego di ottetti ai quali, secondo la rappresentazione binaria, corrispondono numeri naturali maggiori di 128, cio? col bit pesante settato ad 1, si evince che non pu? esservi confusione tra alcun dato e qualsiasi ottetto di comando, in particolare l'ottetto IAC, formato interamente da bit unitari (codifica decimale 255, cio? in binario 11111111). Tale confusione pu? per? verificarsi qualora sia in vigore l'opzione cosiddetta di trasmissione binaria, la quale prevede l'uso di un set di caratteri ad 8 bit, cio? di ottetti in cui il bit pesante pu? essere settato ad 1 anche per la codifica di dati. In tal caso, ? previsto che se deve essere trasmesso un dato (ovvero un carattere) tale che l'ottetto che lo codifica ? uguale all'IAC, allora tale ottetto deve essere trasmesso due volte. size"4">Come si forza il server a leggere una funzione di controllo: size"2">L'invio delle funzioni di controllo assieme ai normali dati non sempre ? sufficiente per garantire il risultato desiderato. Per capire il perch?, consideriamo la situazione in cui un utente vuole mandare la funzione di controllo interrupt process al server. Di solito, un tale evento ? necessario quando il programma in esecuzione sulla macchina remota sta funzionando male e l'utente vuole che il server termini il programma. Per esempio, il programma potrebbe star eseguendo un loop infinito senza leggere l'input o generare alcun output. Sfortunatamente, se l'applicazione sulla macchina remota smette di leggere l'input, i buffer del sistema operativo si riempiono ed il server non potr? pi? scrivere dati sullo pseudoterminale. Quando ci? accade, ? previsto che il server smetta di leggere i dati che provengono dalla connessione TCP, i cui buffer di conseguenza si riempiono. In una circostanza del genere, l'entit? TCP sulla macchina del server notifica la situazione all'entit? paritaria sulla macchina locale informandola circa la dimensione nulla della finestra di flusso, ed in seguito a tale notifica si interrompe il flusso di dati lungo la connessione. Se l'utente genera una funzione di controllo di interruzione nel momento in cui i buffer sono pieni, la funzione di controllo non raggiunger? mai il server. Ovvero, il client pu? senz'altro generare la sequenza di comando IAC IP e scriverla sul proprio socket, ma poich? l'entit? TCP ha interrotto la trasmissione verso l'entit? paritaria remota, il server non potr? leggere la suddetta sequenza di controllo. Per risolvere il problema, Telnet adopera un segnale cosiddetto fuori-banda (out of band signaling). Il TCP implementa la segnalazione fuori banda col meccanismo di urgent data. Ogniqualvolta deve inserire una funzione di controllo all'interno del flusso di dati, il modulo client di Telnet genera un comando di SYNCH, costituito dalla sequenza "IAC (segnale utente) IAC DMARK" (per esempio, se l'utente ha generato il segnale di interrupt process premendo la combinazione Control-C sulla propria tastiera, il comando di SYNCH sar? formato dalla sequenza "IAC IP IAC DMARK"). Tale sequenza viene passata all'entit? TCP sottostante contemporaneamente ad un'apposita segnalazione che forza la stessa entit? TCP a trasmettere un segmento (col bit di URGENT DATA settato ad 1) che elude il controllo di flusso e giunge immediatamente all'entit? TCP remota. Questa, ricevendo un cos? fatto segmento, segnala al modulo server di Telnet che sono arrivati dati con la massima priorit?, ed ? previsto che il server, in virt? di una tale segnalazione, scarichi dal buffer della connessione TCP tutti i dati che trova, continuando per? ad interpretare i comandi. Di conseguenza il server, durante tale operazione, ? destinato ad incontrare dapprima la sequenza di comando "IAC (segnale utente)", dalla quale capisce cosa l'utente vuole che faccia, e subito dopo la sequenza di comando "IAC DMARK", che ha il significato "torna al normale modo di processamento". Opzioni di Telnet: Finora abbiamo omesso la descrizione di uno degli aspetti pi? complessi di Telnet: le opzioni. In Telnet, le opzioni sono negoziabili, e rendono possibile a client e server riconfigurare la loro connessione Ad esempio, abbiamo gi? detto che di solito il flusso di dati ? a 7 bit e gli ottetti col bit pesante settato ad 1 sono usati per passare informazioni di controllo come il comando di interrupt process. Comunque, Telnet fornisce anche un'opzione che permette a client e server di scambiarsi dati ad 8 bit (quando questo succede, l'ottetto riservato IAC deve essere raddoppiato se appare come dato). Client e server hanno bisogno di una fase di negoziazione, ed entrambi devono accettare il passaggio di dati ad 8 bit prima che un tale tipo di comunicazione sia possibile. L'area delle funzionalit? delle opzioni Telnet ? vasta: alcune estendono le possibilit? in modo maggiore, mentre altre si occupano di dettagli meno importanti. Per esempio, il protocollo originale fu progettato per un ambiente half-duplex in cui era necessario dire all'altra parte di "andare avanti" (go ahead) prima che essa potesse trasmettere altri dati. Una delle opzioni controlla se Telnet opera in modo half-duplex o full-duplex. Un'altra opzione permette al server sulla macchina remota di determinare il tipo di terminale d'utente. Il tipo di terminale ? importante per il software che genera le sequenze di posizionamento del cursore (ad esempio un editor a tutto schermo in esecuzione sulla macchina remota). La maniera in cui Telnet negozia le opzioni risulta interessante. Siccome talvolta ha senso anche per il server iniziare l'esecuzione di una particolare opzione, il protocollo prevede di permettere ad entrambe le parti di effettuare una richiesta. In tal maniera, si dice che il protocollo ? simmetrico per quanto riguarda il processamento delle opzioni. Entrambe le parti inoltre rispondono ad una richiesta con un'accettazione o un rifiuto. Nella terminologia Telnet, la richiesta ? WILL X, che significa permettimi di usare l'opzione X; e la risposta pu? essere sia DO X che DON'T X, ovvero rispettivamente ti permetto di usare l'opzione X e non ti permetto di usare l'opzione X. La simmetria consiste nel fatto che DO X richiede che il ricevente cominci ad usare l'opzione X, mentre WILL X o WON'T X significa voglio cominciare ad usare l'opzione X o non voglio cominciare ad usarla. Un altro interessante aspetto della negoziazione consiste nel fatto che entrambi i moduli Telnet devono essere in grado di eseguire una implementazione base di NVT (cio? senza alcuna opzione in vigore). Se una delle due parti tenta di negoziare un'opzione che l'altra non capisce, la parte che riceve la richiesta si limita semplicemente a declinare l'invito. In questa maniera, ? possibile fare interagire versioni di moduli Telnet pi? recenti e sofisticate (cio? software che comprende pi? opzioni) con versioni meno sofisticate. Se sia il client che il server capiscono le nuove opzioni, essi potranno incrementare la qualit? dell'interazione, altrimenti faranno riferimento ad uno stile meno efficiente ma comunque funzionante. Una volta collegati: Come ho detto, telnet ? solo un protocollo di login remoto, quindi tranne che per i comandi del formato NVT per ottimizzare la trasmissione di dati, non esiste un linguaggio universale da utilizzare quando ci si collega con telnet ad un sistema, questo per cercare di avere una compatibilit? pressoch? assoluta. Quindi se si vuole comunicare con un sistema tramite telnet bisogna conoscere i comandi del sistema operativo utilizzato dal sistema remoto. Ci sono fondamentalmente tre metodi per hackerare un sistema remoto tramite telnet: 1) Default Login 2) Password List o Password Guessing 3) Backdoors 1) Default Login: Questo ? il primo dei tre metodi di intrusione in un sistema e consiste nell'inserire una lista di account seguiti da password comuni, ovvero di quelle password che i sysop ( system operator: operatori di sistema cio? coloro che controllano tutto il sistema ) pi? ingenui mettono per controllare i propri accessi. Solitamente il login ? di 1-8 lettere mentre la password di 6-8. Prima di incominciare ad inserire le password e gli account, dovete scoprire tutte le informazioni possibili sul bersaglio per esempio tramite comandi come whois, finger, showmount. Usate questi comandi anche sull'account root. In poche parole tenta di trovare un account che abbia il nome di un servizio ed aggiungergli una password con un altro nome di servizio oppure con qualcosa che abbia a che fare con il sistema ( nome del proprietario quando si f? il whois, nome del sistema, ecc...). Probabilmente avrete sentito ancora parlare di social engineering e il default login ? una possibile applicazione di questa tecnica. 2) Password List o Password Guessing: Un altro metodo per inserirsi in un sistema ? quello di "rubare" la password di un altro utente. Per prendere un valido account a cui dare una password bisogna "fingerare" l'utente e leggere (anche se criptato) il passwd file; ? meglio se il finger viene fatto durante il giorno. Una volta trovato l'account (tramite il finger oppure nel passwd file), bisogna inserire una alla volta le password della lista consigliata per ogni sistema per cercare di individuarne una giusta e per poter cos? accedere al sistema. La serie di login e password caratteristici e standard di ogni sistema operativo le potrete trovare sul fondo della pagina. 3) Backdoors: Le backdoors sono quelle password che il programmatore del sistema mette per avere accesso in futuro a quel dato computer e che solamente lui conosce. Per cercare di individuare la password bisogna fare lunghe ricerca sulla persona che ha impostato tutto il sistema: che squadra tifa, quali sono i suoi hobby, i suoi idoli, il nome dei vari componenti della famiglia, le date di nascita, queste ultime al contrario o mischiate tra loro, ecc. Tanto per capirci se avete visto il film "wargames", il protagonista passa intere giornate a studiare vita morte e miracoli del programmatore del sistema oppure anche nel pi? recente film "hackers" i due protagonisti cercano addirittura gli appunti gettati via nella spazzatura pur di trovare una password o qualcosa che li possa aiutare. Anche qui tanto e tanto social engineering. Sicuramente questo ? il sistema pi? difficile ma credo che dopo una lunga ricerca sia anche il pi? sicuro poich? poche persone (cioe' quelle furbe) inseriscono come password qualcosa che non gli ? famigliare. In genere tutti gli user che si connettono ad internet usano nomi che riescono a ricordarsi facilmente tipo una data di nascita, il nome della ragazza o del giocatore preferito o anche qualcosa di meno evidente ma sempre e comunque legato a loro e che difficilmente potrebbero scordarsi. Del resto molti pensano che sarebbe molto noioso dovere cambiare la propria password perch? ce la siamo scordata, no? Altri metodi: Ci sono altri sistemi per penetrare in un computer ma sono molto pi? complessi di questo anche se magari pi? efficaci. Due tra i tanti sono l'IP SPOOFING e successivamente a questo l'Hijacking. Penso che ne parler? pi? avanti in una guida pi? approfondita. Ora, se volete essere veramente paranoici (meglio esserlo che fregarsene) e avete paura ad hackerare dalla vostra linea di casa (comprensibile per chi non l'ha mai fatto), potreste, se avete le opportunit? e i mezzi, collegarvi ad una cabina telefonica tramite un computer portatile oppure collegare il vostro computer alla linea telefonica del vicino di casa. Forse metter? pi? avanti una guida anche sul phreacking per approfondire questi due metodi, ma per ora mi limito a suggerirvi un metodo che ho provato molte volte e che ? anche molto pi? semplice: Per prima cosa procuratevi uno spazio web gratuito (tiscali, digiland, xoom,... vanno benissimo), poi spedite su questo spazio web tutti i programmi che vi serviranno nell'operazione. Una volta fatto questo andate in un luogo dove non vi chiedono nessun documento per utilizzare internet (per esempio in biblioteca) e vi collegate al vostro spazio web per fare il download dei programmi che vi servono. Quando avete finito il download installateli e fate pure come se foste a casa vostra... (alla fine della sessione di lavoro consiglio di eliminare i file scaricati) Programmi Utili: Ci sono dei programmi che si rendono indispensabili in questo campo: Il primo ? il ToneLoc oppure l'A-Dial o qualsiasi altro war dialer. Poi oltre agli scompattatori (winzip,...) sono utili anche i seguenti programmi: Il SATAN ( o SANTA ) ? un programma che gira sotto macchine Unix e sue emulazioni e richiede perl5.0, un browser ( netscape v? bene ), 32 MB di ram; questo programma consente l'analisi di reti e sottoreti di un sistema per trovare falle e aperture. E' stato progettato per poter trovare ingressi non controllati nei sistemi ed eventualmente chiuderli. E' stato usato (oltre a questo nobile scopo) da un certo signore chiamato Kevin Mitnick il quale ha fregato programmi segreti del governo, una cosa tipo 20.000 numero di carte di credito e chi pi? ne ha pi? ne metta. Un altro programma simile al SATAN ? l'ISS che lo precede come data di uscita su internet. L'Internet Security Scanner funziona in modo simile al SATAN ma non s? dire che requisiti voglia per girare. Se vi siete accorti che qualcosa nel vostro sistema non v? potete usare due programmi per vedere se il SATAN o altri netscanners (esaminatori di reti) vi hanno fatto una "visitina". Uno ? il GABRIEL, l'altro il COURTNEY che sono due strumenti che riescono a capire se si ? stati sottoposti all'attacco del SATAN. Un altro programma indispensabile ? il crack jack (o crackerjack) oppure il BruteForce. Questi due programmi comparano le password di una lista, che voi avrete compilato prima in un file di testo, con quelle del passwd file cercando di trovarne una uguale per poter cos? usufruirne al momento del login. Attenzione perch? possono solo decifrare le password criptate col metodo DES, NON quelle shadowed. Una cosa: chi ha detto in giro che ha decriptato il passwd file racconta solo un mucchio di balle perch? non ? possibile decriptarlo al momento attuale. Al massimo si pu?, utilizzando i programmi sopra citati comparare una lista di password e trovarne una (o pi? se si ? MOLTO fortunati) giusta. Altri programmi utili possono essere il pgp ( Pretty Good Privacy ) e il pgpcrack. primo serve per criptare dei messaggi in modo che nessuno ( tranne il ricevente con la giusta chiave ) possa capire. Questo programma ha, diciamo, fatto un p? di confusione su internet poich? riusciva a criptare i messaggi con una sicurezza quasi totale e i militari ( soprattutto americani ) non erano un gran che contenti di questa cosa. Il secondo programma, pgpcrack, serve per l'opposto: crakkare i messaggi criptati col il pgp ( vedi sotto ). Anche qua bisogna comparare una lista di password con il file pgp a meno che non si conosca un p? di assembler il che ti potrebbe permettere ad esempio di scrivere al posto della lista di password la parola Random e ci? ( dopo aver appositamente modificato il programma ) ti permetterebbe di fare una scansione di tutti i caratteri ascii. Email Bomb con telnet Supponiamo di voler, per un motivo qualsiasi, inviare una e-mail a qualcuno facendo sembrare che essa sia stata mandata da qualcun altro. Il metodo pi? semplice ? utilizzare uno dei siti per hackers che offrono la possibilita` di inviare FakeMail (basta cercare questa parola in un motore di ricerca su Internet, ad esempio http://www.yahoo.com ha una sezione apposita per FakeMail e posta anonima). Ma per ora tralasciamo i siti e vediamo in pratica come funziona la tecnica delle FakeMail (che tra l'altro ? applicabile, in modo diverso, anche alle news). Il motivo per cui la studieremo ? che provandone il funzionamento, ne approfitteremo per imparare ad utilizzare Telnet e soprattutto SMTP, ovvero il servizio della posta in uscita. Questa ? infatti la base per capire come funzionano molte delle tecniche pi? utilizzate, e vi permetter?, quando sarete padroni della materia, di implementarne di nuove. Iniziamo dunque imparando ad usare Telnet. Usandolo per collegarvi a un sito semplicemente inserendo un host name, vi collegherete al servizio Telnet. Ma abbiamo detto che non e` questo il nostro obiettivo. A noi interessa il servizio SMTP. Dunque, come fare per accedervi? Bisogner? inserire, oltre all'indirizzo del server a cui vogliamo collegarci, anche un numero di "porta". Ma cos'? una porta? Se riflettete, ogni server ha un unico indirizzo "centrale" (nome.com) ma gestisce molti servizi (web, ftp, posta...). Di conseguenza dovrebbe avere altrettanti server su altrettanti indirizzi diversi. Per evitare un proliferare di indirizzi inutili esistono le porte, in pratica nient'altro numeri a cui sono associati i vari servizi. Vogliamo collegarci a SMTP? Basta utilizzare la porta 25. Ci interessano le news? La porta e` 119. Oppure FTP, porta 21... sono tutti numeri "fissi" (standard) e quindi, tranne in rarissimi casi, collegandosi - per esempio - alla porta 25 ci rispondera` sempre SMTP. NOTA: se avete Winsock potete leggere il file "services", contenente i numeri delle porte piu` usate. Il file si trover? nella directory di Winsock. Ora che abbiamo chiarito il discorso delle porte, supponiamo di volerci collegare a SMTP usando Telnet. Scegliamo un server qualsiasi (sono davvero rari i casi in cui un server non gestisca la posta) e, in base al programma usato, dovremmo operare differentemente. La maggior parte di essi funziona in questo modo: per collegarsi a SMTP del server prova.it bisogna inserire prova.it:25 come nome del server. Alcuni invece non prevedono l'uso dei due punti per delimitare nome e porta,ma hanno uno spazio in cui inserire, separatamente, il numero o il nome del servizio. Dunque, una volta connessi a prova.it:25 avremo un messaggio di questo tipo: 220 prova.it Sendmail x.x/x.x 11/11/97 ready at Mon, 30 Oct 97 06:22:19 -0200 e niente altro. Il server sta ora aspettando comandi da parte nostra. La prima cosa da fare e` identificarsi, e cio` va fatto con il comando HELO in questo modo: HELO nomeprovider.it sostituendo nomeprovider.it con il nome del nostro provider. NOTA: usando Telnet *NON* ? possibile cancellare. Quindi digitate senza fretta, e se proprio sbagliate riavviate la connessione e ripetete tutto,oppure - in alcuni casi - puo` essere sufficiente premere invio e riscrivere la riga da zero. Non cancellate, anche se sembra funzionare. I risultati possono essere imprevedibili e potreste rivelare la vostra identita`. Talvolta e` possibile inserire un nome falso, ma i nuovi server conoscono gia` il vostro IP Address quando vi collegate, quindi tanto vale inserire il vero nome. La risposta sara`: 250 prova.it Hello NOMEPROVIDER.IT, pleased to meet you A questo punto dovremo dire al server qual'e` il nostro indirizzo di e-mail. Usiamo allo scopo il comando "MAIL FROM" e digitiamo: MAIL FROM: ...ovviamente l'indirizzo da inserire e` quello falso =) Il server rispondera` con un messaggio. Se avremo sbagliato qualcosa, sara`un messaggio d'errore, e dovremo ripetere l'immissione. A questo punto dobbiamo scegliere la nostra "vittima", che supponiamo essere vittima@lamer.it. Usiamo il comando "RCPT TO" e scriviamo: RCPT TO: Il server rispondera` con un altro messaggio. Ed ora che abbiamo definito sorgente e destinazione passiamo all'invio delle intestazioni e del corpo del messaggio. Avvisiamo il server che siamo pronti, scrivendo: DATA e il server ci dira` di scrivere il messaggio e di concludere con un punto su una riga vuota. Fermiamoci un attimo. In ogni e-mail esistono delle intestazioni (headers) che si trovano prima del corpo del messaggio vero e proprio. Il loro scopo ? elencare tutti i computer attraverso i quali ? passato il messaggio,nonch? il nostro IP Address! Ci? potrebbe rivelare la nostra identit? a un hacker o a un SysAdmin esperto. Per evitarlo, digitiamo: Received: by nomeprovider.it id AA11212 with SMTP; Sun, 12 Oct 97 13:40:58 dove nomeprovider.it ? il nome del vostro provider (quello che avete usato con HELO) e l'ultima parte (Sun, 12 Oct...) ? la data in formato standard. ID AA11212 va cambiato. Potete mettere un numero qualsiasi (possibilmente che inizi con AA1 piu` altre 4 cifre, per farlo sembrare piu` reale). Si tratta solo di un numero di serie del server, niente di importante. Ora dobbiamo digitare: Message-ID: Cio` serve a far credere che il messaggio sia partito effettivamente dal server "microsoft.com" con l'ID AA11345 (puo` essere un numero qualsiasi, purche` NON uguale a quello inserito prima con l'intestazione "Received:"). Inseriamo ora di nuovo il destinatario, la data e il soggetto della e-mail: To: Date: Sun, 12 Oct 97 11:30:27 Subject: questa e` una prova... Lasciamo uno spazio e scriviamo il messaggio che vogliamo inviare (lungo quanto vogliamo). Per concludere il messaggio lasciamo due righe vuote, digitiamo un punto, premiamo invio, scriviamo QUIT e invio. La FakeMail verra` inviata automaticamente dal server, e noi possiamo anche chiudere Telnet. E` importante inviare a se stessi dei messaggi di prova per vedere se il server scelto ha ricevuto i dati correttamente, se non sono stati commessi errori e, soprattutto, per vedere se il proprio IP Address si trova in mezzo alle intestazioni "Received:", oppure (sbagliato) alla fine. Ora che sappiamo come fare ad inviare una FakeMail, possiamo passare al passo successivo: usare le FakeMail per far danni... vogliamo seppellire la mailbox di qualcuno? Creiamo una normale FakeMail con il metodo spiegato sopra, ma come mittente dovremo inserire l'indirizzo e-mail della vittima e come destinatario usiamo un "listserv" (come ad esempio listserv@brownvm.brown.edu). Un Listserv e` un programma che invia programmi tramite e-mail nel caso non si riesca a prelevarlo via FTP. Se ad esempio sappiamo che nella directory "mieifiles" del server pluto.it c'e` un file di 20 megabyte il cui nome e` "enorme.gz" possiamo fare in modo che quei 20 MB vengano inviati sotto forma di testo nella e-mail della nostra vittima... Nell'esempio di cui sopra, dopo aver scritto i primi comandi della FakeMail, arrivati a "Subject:" scriviamo quanto segue: REPLY vittima@lamer.it CONNECT pluto.it anonymous indirizzo@falso.com BINARY GET mieifiles/enorme.gz QUIT e concludiamo quindi con le due righe vuote, il punto, QUIT, ecc. Ecco la spiegazione passo passo: REPLY indica l'indirizzo e-mail a cui rispondere CONNECT specifica il nome del provider a cui collegarsi e l'account da usare BINARY specifica un file di tipo binario (non va cambiato) GET specifica il nome del file da prelevare (completo di eventuali directory) QUIT termina la connessione Ovviamente, se dopo GET anziche` QUIT usiamo altri GET, il risultato sara` molto piu` dannoso. Nel caso di un file di 20 MB, riscrivendo altre 10 volte il comando "GET ..." verranno mandati un totale di ben 200 megabyte al povero utente destinatario! E poiche` i server di e-mail spezzano i messaggi in tanti piccoli messaggi, la vittima riceverebbe migliaia e migliaia di messaggi... E` un buon motivo per non dare in giro il proprio indirizzo di e-mail, no??????
-
############################################### # I comandi fondamentali per iniziare # # Ottenere ulteriori informazioni: man : formatta e mostra le pagine della guida in linea. info : sistema di consultazione dei manuali tramite ipertesti. help : richiama l'help per i comandi builtin della shell. # Lavorare con file e directory: cd : cambia la directory corrente. ls : mostra il contenuto di una directory. cp : copia file e directory. mv : muove o rinomina un file o una directory. rm : cancella file e directory. mkdir : crea una directory. ln : crea link a file e directory. pwd : mostra la directory corrente. chmod : modifica i permessi di accesso di un file. chown : cambia il proprietario di un file. cat : mostra il contenuto di un file. find : cerca un file tra le directory. vi : l'editor di testo. l'unico ed il solo. # Filesystem e processi df : mostra lo spazio libero sul disco fisso. free : mostra lo stato della memoria. mount : monta un filesystem. umount : disattiva un filesystem. ps : visualizza un elenco dei processi correnti. kill : invia un messaggio (TERM di default) ad un processo. # Sistema: halt : chiude il sistema. reboot : riavvia il sistema. hostname : mostra e cambia il nome dell'host. # Vari: startx : avvia l'ambiente grafico (X Window System). date : mostra la data. gzip : comprime e decomprime file .gz. tar : crea backup di file (file .tar). more : separa l'output in piu' pagine (anche less). reset : resetta il terminale alle impostazioni iniziali. lynx : browser web solo testo. zip e unzip : comprime e decomprime file .zip. ######################################### # Editor di testo # Accadra` spesso, durante la configurazione del sistema, di dover modificare # dei file di testo. Per Linux esistono numerosi edito di testo, eccone # alcuni # elvis : clone di vi, sintassi colorata. emacs : sia per console che per X11, e` un editor di testo potente ed estensibile (puo` essere usato come browser, lettore di news e molto altro). Per salvare il file corrente si deve premere "CTRL+x" e di seguito "CTRL+w" (oppure "CTRL+s" se si vuole sovrascrivere il file correntemente aperto). Premere "CTRL+x" e poi "CTRL+c" per uscire. mcedit : editor di mc, semigrafico simile a edit del DOS. molto semplice da usare: consigliato ai principianti. nedit : grafico, con molte funzioni. jed : pensato soprattutto per programmatori; simile a emacs. joe : editor con una sintassi simile a quella di WordStar. pico : distribuito con pine, abbastanza semplice da usare. vi : editor classico, difficile da usare inizialmente. In realta` questo eseguibile e` sempre un link ad un clone del programma originale. Una volta lanciato ci si trova in modalita` "comandi"; per passare in modalita` "inserimento" (e poter scrivere o modificare un file) si deve premere "i" oppure "o" per iniziare ad editare dalla linea seguente. Si torna in modalita` "comandi" premendo "ESC". Si salva il file scrivendo, in modalita` "comandi" ":w", si esce con ":q"; se si vuole uscire senza salvare, scrivere ":q!". vim : ottimo clone di vi, sintassi colorata e molto altro. xemacs : editor (e altro) grafico simile a emacs. ################################### # Shell builtin: comandi interni alla shell bash # non sono considerati i comandi specifici della programmazione. # per maggiori informazioni sui comandi builtin: help nome_comando # alias : definisce alias di comandi. bg : manda un processo sospeso in background. cd : cambia la directory corrente. exec : sistituisce la shell corrente con un nuovo processo. exit : chiude la shell. export : esporta una variabile nelle shell figlie. fg : porta in foreground un processo. help : richiama l'help per i comandi builtin. history : mostra l'history della shell. jobs : mostra i processi fatti partire dalla shell corrente. logout : esce da una shell di login. set : setta una variabile. type : mostra dove si trova l'eseguibile di un comando. ulimit : controlla le risorse disponibili per la shell. umask : setta i permessi di default per la creazione di nuovi file. ############################################## # Di seguito vengono presentati i comandi piu' o meno standard di Linux # divisi per directory. # Ricordo brevemente che le directory /sbin/ e /usr/sbin/ contengono file # di solito eseguibili solo dal superutente (root) e di norma non sono # inserite nel PATH degli utenti normali (l'elenco di directory in cui # si cercano gli eseguibili) # ############################################### # arch : informazioni sull'architettura del sistema. bash : la shell (interprete di comandi) normalmente usata. cat : mostra il contenuto di un file. -n numera le righe. -b salta le righe vuote. chgrp : cambia il gruppo di appartenenza di un file. chmod : modifica i permessi di accesso di un file. metodo numerico: primo numero (opzionale): 4 : set user ID 2 : set group ID 1 : swappa la text image secondo numero; permessi del proprietario: 4 : lettura 2 : scrittura 1 : esecuzione terzo numero; permessi del gruppo, stessi valori. quarto numero; permessi degli altri, stessi valori. -R ricorsivo. chown : cambia il proprietario di un file o directory. user.group setta il proprietario a user.group -R ricorsivo. cp : copia file e directory. -r ricorsivo. -a mantiene gli attributi. -f forza. cpio : lavora su archivi di file (come i .tar). cut : taglia un file di testo. -b x-y mostra le colonne da x a y del file; conta i byte. -c x-y mostra le colonne da x a y; conta i caratteri. -f x mostra i campi x separati da TAB. -d specifica un altro delimitatore al posto di TAB. date : mostra la data. dd : data duplicator, copia da un dispositivo di input su un output. if=xxx nome del file o device di input. of=yyy nome del file o device di output. df : mostra lo spazio libero sul disco fisso. -h usa un formato piu' "umano". dmesg : riporta i messaggi mostrati durante il boot. du : mostra lo spazio usato da file o directory. -c mostra un totale -h usa un formato piu` leggibile -m dati in megabyte. echo : stampa una stringa. -e interpreta i caratteri speciali. -n non va a capo. ed : editor di testo line-oriented. red edita solo file nella directory corrente. false : ritorna 1 come codice di uscita. fuser : identifica i processi che stanno usando un file. grep : trova testo all'interno di un file. -i ignora Maiuscolo/minuscolo. -r scende le directory in modo ricorsivo. -v inverte il senso della ricerca. gzip : comprime e decomprime file (estensione .gz). -d decomprime. -f forza. -r ricorsivo. -1 piu' veloce. -9 miglior compressione. hostname : mostra e cambia il nome dell'host. -f mostra il nome completo (host.dominio). kill : invia un messaggio (TERM di default) ad un processo. -s specifica che deve inviare il segnale s. -l lista dei segnali. ln : crea link a file o directory. -s crea un link simbolico. loadkeys : carica un layout della tastiera. ls : mostra il contenuto di una directory. -a mostra anche i file nascosti (quelli che iniziano per '.'). -d mostra le directory (senza elencarne il contenuto). -f disordinato. -i mostra il numero di inode. -k dimensione in Kb. -l formato lungo. --color colora i file secondo il tipo. -F classifica i file a seconda del tipo. mkdir : crea una directory. mknod : crea un device (file speciale) a caratteri o a blocchi. more : separa l'output in piu' pagine. mount : monta un filesystem. -r monta un filesystem in sola lettura. -w monta un filesystem in lettura/scrittura. -t xxx monta un filesystem di tipo xxx (fat, vfat, ext2,...). -a monta tutti i filesystem presenti in /etc/fstab. mv : muove o rinomina un file o una directory. -b crea copie di backup. -i chiede conferma. netstat : mostra informazioni sulle connessioni di rete. ping : invia pacchetti ICMP ECHO_REQUEST ad un host. ps : visualizza un elenco dei processi correnti. l formato esteso. u nome utente ed ora di avvio. m informazioni sull'utilizzo della memoria. a mostra anche i processi di altri utenti. r mostra solo i processi attivi. x mostra anche i processi che non controllano un terminale. pwd : mostra la directory corrente. rm : cancella file e directory (nota bene: NON esiste undelete!!!). -d anche directory. -i chiede conferma. -f forza. -r ricorsivo. rmdir : rimuove una directory. sed : legge un file e lo processa con determinati comandi. setserial : setta la porta seriale. sh : la shell base di unix. sleep : si blocca per x Secondi (s) Minuti (m) Ore (h) Giorni (d). stty : setta il terminale. Esempio: "stty sane su : login come un altro utente (default root). -p preserva l'ambiente. sync : svuota la cache del disco. tar : crea od estrae backup di file. x estrae. c archivia. v verbose. f file (in cui archiviare o da estrarre). z processa prima con gzip (per file .tar.gz o .tgz). touch : cambia la data di un file (se non esiste lo crea). -a ora di accesso. -d cambia la data. -m cambia la data di modifica. true : ritorna 0 come codice di uscita. umount : smonta un filesystem. -a smonta tutti i filesystem inclusi in fstab. -t smonta solo i filesystem di un certo tipo. uname : mostra informazioni sul computer. -m tipo di macchina. -n nome dell'host. -r release dell'OS. -s nome dell'OS. -v versione dell'OS. -a tutte le informazioni. zcat : mostra il contenuto di un file compresso con gzip (file .gz). ############################################## # Directory /sbin/ # SVGATextMode : setta parametri avanzati dello schermo. badblocks : controlla la superficie di un disco fisso. chattr : cambia gli attributi di un file. -R ricorsivo. a in scrittura appende al file. i il file non pu? essere modificato, spostato, eliminato, linkato. s quando il file viene cancellato lo spazio su disco viene azzerato. S il file viene sincronizzato immediatamente. dosfsck : controlla un filesystem DOS. dumpe2fs : stampa info sul super block e sui blocks del disco fisso. e2fsck : controlla una partizione ext2fs. -c controlla anche i badblocks. -f forza (anche su filesystem "pulito"). -n controlla in modo read-only. fdisk : manutenzione delle partizioni del disco fisso (anche cfdisk). fsck : controlla una partizione. fsck.minix : controlla una partizione minix. getty : apre una porta tty con richiesta di login (anche agetty, mgetty o mingetty). halt : ferma il sistema. hwclock : setta il clock hardware. ifconfig : configura una interfaccia di rete. init : lancia i processi di inittab e cambia il runlevel (e' il primo processo eseguito dal sistema). insmod : installa un modulo nel kernel. -f forza anche se le versioni sono diverse. ipfwadm : amministrazione del firewall IP. kbdrate : cambia l'intervallo di ripetizione della tastiera. kerneld : demone che rimuove/installa automaticamente i moduli non usati/richiesti. ldconfig : aggiorna l'elenco delle librerie. lilo : installa il boot loader che consente di selezionare il sistema operativo all'avvio. losetup : associa dispositivi loop a file. lsattr : elenco degli attributi dei file. -R ricorsivo. -a tutti i file. lsmod : mostra informazioni sui moduli del kernel caricati. mkdosfs : crea una partizione DOS. mke2fs : crea una partizione ext2fs (il filesystem nativo di Linux). mkfs : crea una partizione del tipo specificato. mkfs.minix : crea una partizione minix. mklost+found : crea una directory lost+found nella directory corrente. mkswap : crea un dispositivo di swap. pidof : mostra il PID di un processo. runlevel : stampa il system runlevel corrente e precedente. shutdown : chiude il sistema. -t x aspetta x secondi. -r dopo la chiusura effettua un riavvio (reboot). -h blocca il sistema (halt). -f effettua un reboot veloce. -c blocca uno shutdown in corso. swapon : attiva un dispositivo o una partizione di swap. swapoff : disattiva un dispositivo o una partizione di swap. tune2fs : setta una partizione ext2fs. -c x nr. di reboot prima di un filesystem check. -g setta il gruppo che puo' beneficiare dei blocchi riservati. -l mostra le impostazioni correnti. -r setta i blocchi riservati. -u setta l'utente beneficiario dei blocchi riservati. update : svuota periodicamente il buffer del filesystem. -S usa il metodo tradizionale (Chiama sync ogni 30 sec.). -s x chiama sync ogni x secondi. -f y svuota il buffer senza chiamere sync ogni y sec (def: 5). ################################################# # alien : converte pacchetti da/a vari formati (debian deb, redhat rpm, tgz) apropos : cerca tra i man un determinato argomento. apt-cache : manipola la cache di apt (per Debian). apt-config : configura apt. apt-get : scarica ed installa pacchetti deb (Debian): gestisce le dipendenze e gli aggiornamenti della distribuzione. ar : crea, modifica ed estrae file da un archivio. arj : comprime file con arj (file .arj). as : assembler per Linux. at : esegue un programma ad una determinata ora. awk : linguaggio di ricerca ed elaborazione di testo (anche gawk, nawk o mawk). basename : elimina directory e suffissi dai nomi dei file. batch : identico ad at, ma viene eseguito solo se il sistema non e' troppo carico. bc : una calcolatrice solo testo. biff : avvisa dell'arrivo di posta. bison : parser generator (anche yacc). bunzip2 : decomprime file .bz2 bzip2 : comprime file .bz2 cal : mostra un calendario. chfn : cambia le proprie finger information nel file /etc/passwd. chsh : cambia la propria shell di login. chvt : passa ad un altro terminale virtuale. clear : pulisce lo schermo del terminale. cmp : compara due file. colrm : rimuove le colonne da un file. column : crea delle colonne. comm : compara due file ordinati linea per linea. compress : comprime un file (estensione .Z). cpp : preprocessore C. crontab : avvia un processo ad una determinata ora. csplit : spezza un file in sezioni predeterminate. ddate : converte la data da gregoriana a discordian. dialog : per creare finestre e dialog box da shell script. diff : visualizza le differenze tra due file. -b ignora gli spazi. -B ignora le linee vuote. -i ignora M/m. diff3 : confronta 3 file. dircolors : per settare il colore dei file mostrati da ls. dirname : stampa solo la directory di un riferimento. dos : lancia l'emulatore DOSemu. xdos apre l'emulatore in una finestra in X11. dpkg : gestire i pacchetti Debian. -i installa un pacchetto. -r rimuove un pacchetto (--purge rimuove anche i file di configurazione). -s [--info] stampa informazioni su un pacchetto [non] installato. -L [--contents] mostra i file contenuti in un pacchetto [non] installato. -l mostra l'elenco dei pacchetti installati. dselect : interfaccia per gestire i pacchetti Debian. dumpkeys : stampa la mappa dei tasti. emacs : editor di testo (e non solo!) anche in ambiente grafico. Se ne esce con ctrl+x ctrl+c. env : esegue un programma in un determinato ambiente. expand : converte le tabulazioni in spazi. expr : valuta espressioni (anche aritmetiche). fdformat : formatta un dischetto. -n non verifica la formattazione. fdmount : monta un dischetto. fetchmail : scarica la posta da host POP3, IMAP o altro. file : determina il tipo di file. -z controlla all'interno dei file compressi. filesize : stampa la dimensione di un file. find : cerca un file tra le directory. -name xxx cerca file di nome xxx. -type X cerca file di tipo X (_d_irectory, _f_ile) finger : mostra le finger information di un utente di un sistema. flex : per creare analizzatori lessicali (anche lex). free : mostra lo stato della memoria. -m dati in megabyte. fromdos : converte un testo dal formato DOS a quello Unix (anche dos2unix). ftp : client ftp (anche ncftp). funzip : filtro per utilizzare unzip in una pipe. g++ : compilatore C++. gcc : compilatore C. gdb : debugger a riga di comando. gpm : demone che controlla il mouse. groff : interfaccia per la compilazione di manuali. groups : stampa il nome del gruppo di un utente. gzexe : crea eseguibili compressi che si decomprimono al volo. head : stampa le prime 10 righe di un file. -c x primi x byte. -n y prime y righe. hexdump : mostra un file in un determinato formato. id : stampa l'ID e l'UID. indent : indenta in vari modi un sorgente C. info : sistema di consultazione dei manuali tramite ipertesti. install : copia dei file ed assegna permessi e proprietario. installpkg : installa un pacchetto Slackware. irc : client irc (anche ircII). ispell : controllo grammaticale su un file. kbd_mode : setta la tastiera. killall : invia un messaggio a tutti i processi con uguale nome. -s specifica che deve inviare il segnale s. -i chiede conferma per ogni processo. jed : editor di testo con interfaccia. joe : editor di testo con interfaccia. join : unisce linee di due file in campi comuni. last : stampa informazioni sull'ultimo login. ld : linker. ldd : stampa informazioni sulle librerie condivise. less : visualizza file di testo (anche more). locale : mostra e setta le informazioni sul LOCALE (settaggi internazionali). locate : cerca un file nel database locale. logger : scrive un messaggio nei log di sistema. logname : stampa il nome di login di un utente. look : mostra le linee che cominciano con una certa stringa. lpr : stampa un file. lpq : mostra la coda di stampa. lprm : cancella un lavoro dalla coda di stampa. lsdev : mostra informazioni sul proprio hardware. lynx : browser web solo testo. m4 : macro processor. make : GNU make. mail : semplice programma per gestire le email (utile negli script). man : formatta e mostra le pagine di guida in linea. mc : shell Norton Commander-like. md5sum : crea cecksum CRC di un file. mesg : mostra o meno messaggi da altri utenti inviati da talk o write. mev : riporta i mouse-events. mkfifo : crea un file FIFO. mkisofs : crea un filesystem iso9660 (CD-ROM). mtools : collezione di programmi per manipolare file DOS. mattrib : setta gli attributi msdos di un file. mbadblocks : controlla un filesystem FAT. mcd : cambia la directory corrente. mcopy : copia file e directory. mdel : cancella file. mdeltree : cancella directory. mdir : visualizza il contenuto di una directory. mformat : formatta un dischetto msdos. mlabel : setta il label di un disco dos. mmd : cre una directory. mmount : monta un filesystem msdos. mmove : sposta file e directory. mrd : cancella una sottodirectory. mren : rinomina file e directory. mtest : visualizza i settaggi degli mtools. mtype : stampa a schermo il contenuto di un file msdos. mutt : ottimo gestore email in console. newgrp : cambia il proprio gruppo di appartentenza. nice : esegue un programma e ne modifica la priorita' d'esecuzione. -20 : priorita' maggiore (solo root puo' settare valori negativi). 19 : minima priorita'. nl : numera le righe di un file. nohup : esegue un comandi immune da hangup: continua a girare anche dopo un logout. od : dump di un file in ottale e altri formati. open : apre un comando in un altro terminale. passwd : cambia la password di un utente. paste : unisce linee di files. patch : applica il risultato di un diff (una patch) ad un file. pathchk : controlla se un dato file_name e' valido. perl : interprete per script in linguaggio perl. pine : gestore email in console. pkgtool : gestire pacchetti Slackware. printenv : stampa informazioni sull'ambiente. procinfo : mostra informazioni tratte dal filesystem /proc. procmail : manipola la posta in entrata. pstree : mostra un albero di processi. quota : mostra le percentuali di dischi utilizzabili dagli utenti. removepkg : elimina un pacchetto Slackware. renice : modifica la priorita' di un processo attivo. reset : resetta il terminale alle impostazioni iniziali. rev : inverte le linee di un file. rpm : gestire pacchetti RedHat. -i installa un pacchetto. -e rimuove un pacchetto. -qi [-qip] mostra informazioni su un pacchetto [non] installato. -ql [-qlp] mostra i file contenuti in un pacchetto [non] installato. -qa mostra l'elenco dei pacchetti installati. script : stampa su un file tutto l'input da tastiera. sdiff : confronta due file ed elimina le differenze. setfont : seleziona il font da usare. setleds : setta i led della tastiera. setterm : setta gli attributi del terminale. shar : crea shell archives. showfont : mostra il font usato. showkey : mostra i codici della tastiera. size : mostra dimensione e info di un file obj (e chi ha generato un file core). skill : invia un signal o cambia la priorita' di un programma. slrn : news reader. sort : ordina linee di testo. -b ignora gli spazi all'inizio di riga. -f ignora Maiuscolo/minuscolo. -i ignora i caratteri estesi. -n segue l'ordine numerico. -r inverte l'ordine. split : spezza un file in blocchi di dimensioni date. -l xxx ogni blocco contiente xxx linee. -b xxx [b,k,m] ogni blocco e' di xxx byte, kilo, mega. strings : trova linee stampabili in un file. strip : elimina simboli da un obj. sudo : esegue un programma come superutente (root). sum : Crea un CRC di un file. superformat : formatta floppy ad alte capacita'. tail : mostra la fine di un file. -s solo le ultime s righe. -c x ultimi x byte. -f continua a leggere un file, utile se questo viene modificato. tee : legge da standard input e stampa su stdout e su file. -a append sul file. -i ignora segnali di interruzione. telnet : apre una sessione telnet. test : esegue dei test su file o condizioni. time : esegue un programma e mostra informazioni sul tempo di esecuzione e carico. tin : ottimo news reader in console. tload : rappresenta graficamente il carico medio del sistema. todos : converte un testo da Unix a MSDOS (anche unix2dos). top : mostra i processi che usano piu' tempo CPU o memoria. tr : converte o cancella caratteri. troff : formatta i documenti come le manpage. tty : stampa il nome del file terminale connesso allo standard input. tunelp : setta vari parametri per la stampante. unarj : decomprime file .arj. uncompress : decomprime file compressi (file .Z). unexpand : converte spazi in tabulazioni. uniq : rimuove linee indentiche in file ordinati. unzip : decomprime file .zip. updatedb : update di un file database di nomi di file (usato da locate). uptime : mostra da quanto il sistema e' attivo. users : mostra il nome degli utenti correntemente collegati. uudecode : decodifica un file ASCII in un binario. uuencode : codifica un file binario in ASCII. vi : l'editor di testo. l'unico ed il solo. Se ne esce (senza salvare) con "ESC :q!" salvando con "ESC :wq". vim : la migliore versione di vi :-). vmstat : riporta statistiche sulla memoria virtuale. w : mostra chi e' loggato e cosa sta facendo. wall : invia un messaggio a tutti i terminali. wc : conta il nr di byte, parole e linee di un file. -c conta i byte. -w conta le parole. -l conta le newline. wget : scarica (anche ricorsivamente) pagine web e file da ftp; simile a GetRight (credo). whatis : ricerca nel database della guida per una parola. whereis : indica dove si trova un determinato file. which : indica il percorso completo di un file. who : mostra chi e' loggato. whoami : indica l'username con cui si e' attualmente loggati. whois : interroga un database whois. wine : consente di eseguire programmi Microsoft Windows in Linux; richiede MS Windows. wish : interprete per script in linguaggio Tk. workbone : interfaccia solo testo per ascoltare CD audio. write : invia un messaggio ad un altro utente. xargs : appende ad un comando opzioni prese dallo stdin. yes : emette continuamente una stringa finche' non viene killato (default y). zcmp : usa cmp su file compressi. zdiff : usa diff su file compressi. zgrep : esegue grep su file compressi. zgv : visualizza in un terminale molti formati di immagini. zip : comprime file con zip. znew : ricomprime file da .Z a .gz. ############################################### # Directory /usr/sbin/ # addgroup : aggiunge un gruppo (acnhe groupadd). adduser : aggiunge un nuovo utente al sistema (anche useradd). cfdisk : manipola graficamente le partizioni del disco fisso. chroot : cambia la directory root e vi esegue un programma. ctrlaltdel : setta la funzione della combinazione CRTL+ALT+DEL. debugfs : debugga un filesystem ext2. groupdel : elimina un gruppo di utenti. hdparm : mostra e setta molti parametri del disco fisso. inetd : gestore di molti servizi di rete. irqtune : cambia la priorita` degli interrupt; utile per migliorare le prestazioni di un collegamento via modem esterno. liloconfig : script che aiuta a configurare lilo. makewhatis : genera il database per il comando whatis. psupdate : aggiorna il file /etc/psdatabase che rappresenta l'immagine della mappa di sistema attuale (dopo aver ricompilato il kernel). rdev : setta i dispositivi di un kernel (HD, swap, video mode...). traceroute : mostra il percorso per raggiungere un dato host. userdel : elimina un utente del sistema. vipw : edita il file /etc/passwd. visudo : edita il file sudoers. ############################################## # /usr/X11R6/bin/ # SuperProbe : identifica la scheda video. X : il sistema a finestra X Window (di norma un link ad un X Server o un wrapper). bitmap : editor di bitmap. clock : un orologio. editres : edita le risorse delle applicazioni Xt. ghostview : visualizza file postscript (anche gv). startx : avvia il sistema a finestre. xbiff : avvisa graficamente se e' arrivata posta. xcalc : piccola calcolatrice. xclipboard : visualizza gli appunti. xconsole : visualizza i messaggi mandati a console. xdm : gestisce il login grafico. xedit : editor di testo base. xev : mostra eventi del mouse e della tastiera. xeyes : occhi che seguono il puntatore. xf86config : configura l'ambiente grafico. xfontsel : seleziona un font. xhost : controlla l'accesso all'X Server da altri host. xinit : inizializza il sistema grafico (chiamato da startx). xkill : uccide una applicazione in finestra. xman : consultare le pagine di manuale graficamente. xpaint : semplice programma di paint. xrdb : setta le risorse X. xset : setta vari parametri (mouse, screensever,...). xsetroot : setta il colore dello sfondo e il puntatore. xterm : apre una finestra terminale. xv : visualizza molti formati di immagini. xvidtune : aggiusta i parametri dello schermo. ############################################# p.s. un gentile ringraziamento a Davide Alberani