Newsgroup: it.comp.os.linux.iniziare
Titolo: manuale per iniziare

Ciao a tutti.
Sono un arcistufo utente di windows e ho l'irrefrenabile impulso di passare
a Linux. Non so nulla di questo sistema operativo e vorrei sapere se
conoscete qualche buon manuale (la documentazione di suse 6.2 è un po'
scarna) .
Grazie.
Luca

scarna) .
  Su 
http://www.pluto.linux.it
 ci sono gli Appunti di Informatica
Libera (gia' conosciuti come Appunti Linux), inoltre quasi
giornalmente viene postato un messaggio contenente i link alle
principali risorse per Linux.
-- 
  Ciao :-)
  Massimo
  Rivendita on line software e gadget Linux
  Disponibile Slackware 8.0, MadeinLinux 4.0SE
 
http://www.thule.it
  Nell'indirizzo, inserire una "h" tra la "t" e la "u"
  In the address, insert an "h" between the "t" and the "u"

 wrote:

Gli "Appunti di informatica libera" sono la bibbia di chi vuole
lavorare con linux.
Esistono in rete inoltre infinite risorse per chi vuole iniziare.
Attenzione però, qualsiasi sia l'approccio che avrai con linux
DIMENTICA tutta la tua esperienza che hai avuto con Windows, e
preparati ad un duro lavoro. Linux non è ancora gentile con i newbie.
Per gli url fai riferimento al post precedente.
Io ti segnalo questo url, adatto forse per un primissimo approccio ad
un pubblico alle prime armi.
http://www.tuxmania.6go.net

Questo (Manuale) è libero ed è stato realizzato anche con la
collaborazione di altri appassionati (GRAZIE !!!).
Ultimo aggiornamento giorno 17/09/2001. v.3.5
Consultabile e stampabile da vi. AIUTACI A MIGLIORARLO.
                             MENU'
 1)COMANDI COMUNI PER MUOVERE I PRIMI PASSI SU LINUX.
 2)L'AMBIENTE GRAFICO.
 3)COMANDI VARI.
 4)RICERCA FILE.
 5)VI ED EMACS PER MODIFICARE UN FILE DI TESTO.
 6)ARCHIVIAZIONE E COMPRESSIONE FILES.
 7)OCCUPAZIONE DISCO.
 8)I PROCESSI.
 9)FAX.
10)RAM.
11)MONTARE UNA MINI-LAN TRA 2 PC CON I SOLI COMANDI TESTUALI E NON.
12)AGGIORNARE IL KERNEL CON UNO NUOVO.
13)RICOMPILARE IL KERNEL PER MASTERIZZARE  CON DISCHI IDE.
14)RICOMPILARE IL KERNEL CON ADATTATORE SCSI
15)MASTERIZZARE, ECCO COME !!!!
16)MONTARE UN FLOPPY.
17)MONTARE UN CDROM.
18)MONTARE UNA PARTIZIONE WINDOWS.
19)MONTARE UNA PARTZIONE LINUX.
20)DUPLICARE UN FLOPPY.
21)COLLEGARSI AD INTERNET TRAMITE SCRIPT SENZA KPPP.
22)COLLEGARSI AD INTERNET CON KPPP.
23)INTERNET.
24)INSTALLARE PROGRAMMI.
25)MTOOLS.
26)LO SCANDISK DI LINUX. 
27)INFORMAZIONI SUL SISTEMA.
28)TELNET E FTP. 
29)FILES MANAGER.
30)PASSWORD NEL LILO (ATTENZIONE COMANDO PERICOLOSO!!!).
31)APRIRE PIU' CONSOLE CONTEMPORANEAMENTE.
32)STAMPARE. 
33)MANIPOLAZIONE DEI DIRITTI DI ACCESSO.
34)CAMBIARE LA PROPRIETA' DI UN FILE.
35)MANIPOLAZIONE DEI DIRITTI DI ACCESSO - METODO ALTERNATIVO.
36)FLOPPY DI AIUTO. 
37)ELIMINARE LILO.
38)RPM E DPKG (INSTALLARE PROGRAMMI DA REDHAT E DEBIAN).
39)CREARE ED AGGIUNGERE GRUPPI ED UTENTI.
40)GRUB
41)DSELECT ????????
42)CONDIVIDERE CONNESSIONE AD INTERNET (LINUX-LINUX-CLIENT).
43)VUOI AGGIUNGERE ALTRI ARGOMENTI ??? SCRIVIMI !!!
1)COMANDI COMUNI PER MUOVERE I PRIMI PASSI SU LINUX.
Questo vale per tutti i comandi
1 - I comandi dati possono essere riscritti, sulla riga di comando, 
    semplicemente premendo i tasti di direzione.
2 - Tramite il comando "history" e' possibile vedere tutti i comandi   
    dati, se dopo gli viene inserito un numero, visualizza gli ultimi n.
    comandi dati (es. history 14 ;visualizza gli ultimi 14 comandi)
2 - Spesso lanciando dei comandi, si generano file di testo.
    Per uscirne, bisogna premere "q" oppure, qualora si voglia fermarne 
    il processo perche' l'esecuzione del comando genera caratteri
    incomprensibili o non vengono accettati altri input da tastiera, 
    bisogna premere "Ctrl+c".
3 - Spesso, i comandi lanciati, forniscono serie di dati che superano
la  
    visualizzazione di una sola schermata, mostrando cosi', solo una
    parte di essi. Per ovviare a questo fenomeno, si usa una opzione 
    "|more" o "| less" aggiunta alla fine del comando (ls -la |more)
    oppure dopo il nome del file (cat nomefile |more).
4 - Inoltre, dopo avere utilizzato alcune procedure sopracitate, bisogna 
    sapere che : premere "invio", continua la visualizzazione per riga e 
    "space" continua per pagina.
PER DIRECTORY
cd 		= cd (da solo) torna nella homedir (~ o $HOME)
cd ..		= porta alla directory precedente (da cui dipende)
cd / 		= torna alla radice da qualsiasi punto ci si trovi
ls 	     = visualizza il contenuto di una directory orizzontalmente
ls |more   	= visualizza il contenuto x pagina e verticalmente 
                (tramite enter prosegue con una singola linea x volta)
                (tramite space prosegue x pagina)
ls -l 	    = l'opzione -l visualizza molti dettagli 
ls -la 	    = l'opzione -a visualizza le directory precedute da un punto
		(questo e' il comando consigliato)
cp -av   	= copia intere directory
   	        es. partenza (/usr) destinazione (/mnt/dove_vuoi_tu)   
cp -r		= per copiare directory
mkdir    	= per creare una directory 
rmdir    	= per rimuovere directory vuote
rm -r 	= elimina le dir/sottodir e tutto in esse contenuto
pwd		= per controllare in quale directory ci si trova
tree nomedir    = visualizza le directory dipendenti da quella indicata
PER FILE
cp 	   	= per copiare file 
rm  	   	= per cancellare i file 
mv 	   	= per spostare/rinominare file 
mv nome nomenuovo = rinomina il file (es.  mv cri.txt  cro.txt) 
mv nomefile /nomedir = sposta il file nella dir indicata
                        (es.  mv cri.txt /usr) 
cat nomefile  = mostra il contenuto di un file
touch nomefile = per creare un file vuoto all'istante 
PER IL SISTEMA 
shutdown -r now 	= riavvio del sistema
reboot                  = come sopra
shutdown -h now 	= chiusura del sistema
halt                    = come sopra
halt -p                 = fa shutdown e spegne il sistema
exit 		= chiude la consolle
startx 		= avvia l'esecuzione del server grafico
ctrl+alt+backspace = riavvia la modalita' grafica riportando al 
                     login iniziale
ctrl+alt+F1 	= apre una consolle non emulata
ctrl+alt+F7 	= passa semplicemente sullo screen 0 se c'e' un server 
                  X attivo. Non chiude la console da cui si proviene.
 PER HELP E INFORMAZIONI
- comandi
nomecomando --help = mostra la sintassi del comando (un aiuto generico)
man nomecomando = mostra la spiegazione in dettagli 
	(enter ;prosegue per linea - space ;per pagina - 
         q ;per uscire e tornare alla riga di comando)
           info nomecomando = idem
- file installati
makewhatis	= crea un database con le informazioni che riguardano 
i file installati (senza visualizzare nulla), poi con il comando 
" apropos tipofile " viene restituito un elenco di quell
o che riguarda il tipo di file (es. apropos edit).
- pacchetti rpm
rpm -qa |more = visualizza l'elenco dei pacchetti rpm installati
- X server
*Per sapere quale Xsever si sta usando, andare in /etc/X11 e dare il 
comando ls -la  ,guardare dove punta il link --> l'ultimo file indica 
l'X server usato*
- kernel
uname -a = per sapere la versione del kernel
- sistema e kernel
du -h  	= quantita' di spazio usata nella directory e sottodirectory 
          in kb e mb.
top 	= mostra i processi in uso dalla cpu (per interrompre Ctrl+c).
df  	= mostra le partizioni montate 
free -mt = mostra la memoria ram e swap occupata, libera e totali
	   free (-t ;x i totali  -m ;x i megabytes)
Se linux non vede tutta la ram che avete (per es. 128M) allora 
aggiungete questa riga nel file /etc/lilo.conf tra (default e keytable) 
append = "mem=128M" Salvate il file e digitate lilo, riavviate il pc ed 
una volta tornati a linux digitate "free". 
uname 	= mostra le informazioni sul sistema. 
uname -m 	= tipo di macchina
uname -n 	= nome della macchina sulla rete
uname -r 	= release del sistema operativo (versione kernel)
uname -s 	= nome del sistema operativo
uname -v 	= versione del sistema operativo
uname -a 	= riepilogo generale delle opzioni sopra descritte
PER FLOPPY E CDROOM
mount -t tipofilesyistem /dev/fd0 directory = monta il floppy 
formattato nel tipo x nella tal dir ( vfat per windows-msdos-
 dos; hfs per mac )
eject /dev/device = espelle il cdrom o il masterizzatore 
(es. eject /dev/hdc oppure eject /dev/scd0) 
ALTRI COMANDI PER LA VISUALIZZAZIONE DI FILE
E PRECISAZIONI
Oltre al comando "cat", ci sono altri comandi, spesso piu' utili, per 
visualizzare il contenuto di un file.
more nomefile = per i file di grandi dimensioni
oppure
less nomefile 
Es.
Digitare:
more /dev/hda = verra' visalizzata la mappa delle partizioni
less /dev/hda = viene visualizzato di aggiungere l'opzione -f
less -f /dev/hda = questo e' il caso in cui non si capisce nulla 
(premere "q")
cat /dev/hda = questo e' il caso in cui bisogna fermare il 
               processo (Ctrl+c)
IL CARATTERE JOLLY "*"
*	= significa tutto 
se introdotto a fianco di una parola, fa riferimento alla parola e 
quelle che hanno caratteri aggiunti 
es. pippo* = pippo pippo1 pippociao pippopluto pippo..............
Bisogna stare attenti quando lo si usa per eliminare file o directory, 
perche', un comando sbagliato come "rm pippo * "; elimina il file pippo 
e anche tutti i file dentro quella directory. Meglio controllare con 
ls -a pippo* prima di cancellare qualcosa; in questa maniera, si potra' 
controllare cosa verra' eliminato.
 
 
 IL COMANDO CAT
 (precisazioni)
 
 Puo' essere usato per creare
file di testo :
 cat > nomefile
digitare il testo
ctrl+d 		= per chiudere il file
cat nomefile 	= per guardare il contenuto del file
Puo' essere usato per riassemblare files divisi o unire vari files :
es.
cat file1.txt file2.txt file3.txt > ris.txt
IL COMANDO CP
(precisazioni)
Puo' essere usato anche per trasferire un file esistente in un file 
che viene creato all'istante cp fileesistente file creatoadesso
La stessa cosa avviene per le directory
cp -r diresistente dircreataadesso
I COLLEGAMENTI
ln nome nomelink	  = per creare collegamenti fisici
ln -s	nome nomelink = per creare collegamenti simbolici
2)L'AMBIENTE GRAFICO. 
Per lanciare l'Xgrafico scrivere ( twm ) e se si vuole avviarlo 
automaticamente scrivere nel file .xinitrc (nella tua home directory) la 
scritta twm  e nel file .profile o .bash_profile(startx) Invece di 
scrivere twm e' possibile scrivere anche mwm, 4dwm, afterstep, 
fvwm95 (/etc/X11) 
3)COMANDI VARI. 
pushd (Dice in che directory eravate prima) 
popd (vi porta nella directory dove eravate prima)
cd - (come sopra) 
4)RICERCA FILE.
find (directory-file)   es. find /root cri.txt 
find /root -size 990k ( trova un file di dimensione 990k nella 
directory /root) 
locate file (es. locate cri.txt)  maniera velocissima di trovare un file 
which cri.txt in varie directory predeterminate ( which cri.txt 
/usr /tmp/root) 
grep cerca una parola all'interno di un documento 
(es. grep  "casa" *.txt )     
5)PER MODIFICARE UN FILE DI TESTO CON L'EDITOR VI ED EMACS.
                      VI 
vi nomefile = per creare o aprire (se gia' esistente) un file 
Premere in sequenza i tasti per fare queste operazioni :
tasto (i) per iniziare a scrivere e quindi entrare in modalità testo. 
tasto esc : w tasto invio per salvare il file. 
tasto esc : w (nome file) per salvare il file con il nome scelto. 
tasto esc : q tasto invio per uscire da vi. 
tasto esc : q!  per uscire senza salvare. 
 
                   EMACS 
Per salvare il file modificato premere CTRL+x+CTRL+s 
Per salvare il file modificato con un  
altro nome premere CTRL+x+CTRL+w <nome file> 
Per uscire dal file premere CTRL+x+CTRL+c 
 
 
             ALTRE UTILITA' 
wc 	= per vedere le statistiche su un file di testo. 
split = per dividere un file in più parti. 
6)ARCHIVIAZIONE E COMPRESSIONE FILES. 
.Z        compress cri.txt                 uncompress cri.Z 
.zip      zip cri.txt                      unzip cri.zip 
.gz       gzip cri.txt                     gunzip cri.gz 
.bzip2    bzip2 cri.txt                    bunzip2 -d cri.bz2 
.tar.gz   tar zcvf cri.tar.gz</dir/files>  tar zxvf cri.tar.gz 
.lzh      lha a cri.lzh</dir/files>        lha x cri.lzh
.rar      rar a cri.rar</dir/files>        unrar x cri.rar 
.zoo      zoo -add cri.zoo</dir/files>     zoo -extract cri.zoo
7)OCCUPAZIONE DEL DISCO
du -h  (per visualizzare la quantita' in kilobyte e megabyte) 
8)I PROCESSI. 
&  (da mettere a fine riga di comando) per eseguire un comando in 
background ossia dietro le quinte e darà questo risultato [3] 32566 
dove  3 e' il numero del processo  mentre 32566 e' l'ID del processo. 
Se vi dimenticate di mandarlo in background (non avete messo &) premere 
i tasti CTRL+z per interrrompere momentaneamente e scrivere ( bg 3 ). 
 
fg  se avete mandato un processo in background per sbaglio dare  
il comando ( fg ) seguito dal n° del processo  ( fg 3 ) 
ps  	= per visualizzare i processi in memoria. 
kill 	= per uccidere un processo (con kill -l si visualizzano i 
segnali da mandare a morte, 
(killall) uccide tutti i processi). 
9)FAX.
Per mandare e ricevere fax usare efax, lo si trova in tutte le distro.
Basta modificare lo script /usr/bin/fax andando a modificare 
queste righe.
DEV=ttyS0 oppure cua0 (ho il modem su com1)
FROM=123456789 (scrivere il numero di telefono)
NAME=Panther (nome mittente)
PAGE=a4
PRTYPE=ps
PRCMD=lpr (oppure lp0, il comando con cui stampate di solito)
DIALPREFIX=T (T a toni, P a impulsi)
TELCVT='sed -e s/+39// -e s/+/00/'  (inserite pure questa riga)
INIT="-iZ -i&FX3E&D2S7=120 -i&C0"
Salvare il tutto e riavviare il pc.
Ora e' possibile mandare e ricevere fax :
fax send n.telefono filedainviareq	( per mandare 1 file allegato) 
fax receive 				( per ricevere fax) 
fax view 			        ( per vedere il fax mandato) 
Es: fax send 061234567 /root/prova.txt 
11)MONTARE UNA MINI-LAN TRA 2 PC CON I SOLI COMANDI TESTUALI E NON.
Scrivere il seguente testo immettendo l'indirizzo LAN:
ifconfig eth0 192.168.0.2 netmask 255.255.255.0 up
(Ricordarsi che la netmask è uguale per tutti)
A questo punto dopo aver messo su la vostra rete scrivete pure 
telnet o ftp ecc... (vedere punto 28)
In modalità grafica per vedere gli indirizzi di rete scrivere (ifconfig) 
Per settare la rete su RedHat scrivere (netcfg), mentre su  
Suse scrivere ( yast ) e cercare la voce rete.Per le altre distribuzioni 
controllare il supporto cartaceo o all'interno della distribuzione. 
12)AGGIORNARE IL KERNEL CON UNO NUOVO. 
Andare nella directory /usr/src se si trova un link chiamato linux 
eliminarlo, se invece e' presente una directory di nome linux 
rinominarla in linux.old (mv /usr/src/linux /usr/src/linux.old). 
Copiare linux-nuovavers.tar.gz in /usr/src e scompatta il file con: 
tar -zxvf linux-ver_del_nuovo_kernel.tar.gz 
A questo punto entra nella nuova directory linux (cd linux) e inizia a  
ricompilare il kernel con questi comandi:  
make mrproper  
make xconfig ( oppure make menuxconfig) 
Salva la configurazione da te scelta, e scrivi: 
make dep && make clean && make bzImage && make modules &&  
make modules_install  
Vai in /usr/src/linux-2.2.2/arch/i386/boot  e copia bzImage in /boot  
con il comando cp (bzImage /boot). Entra in /etc/lilo.conf con l'editor 
vi e dove vedi scritto (image=vmlinuz)  sostituiscilo con 
(image=bzImage). Esci e salva (vedi punto 5) e scrivi lilo premendo 
invio, riavvia il tutto. Complimenti hai ricompilato il kernel. 
 
13)RICOMPILARE IL KERNEL PER MASTERIZZARE CON DISCHI IDE. 
Andare su /usr/src/linux 
make mrproper 
make xconfig o make menuconfig 
Entrare in Block Device disabilitare IDE/ATAPI cdrom support e 
abilitare SCSI Emulation 
Entrare in SCSI Support e abilitare Scsi support, Scsi cdrom support e 
disabilitare la voce Lun 
Entrare in Sound e abilitare la voce Sound support  
salvare e scrivere:  
make dep && make clean && make bzImage && make modules && 
make modules_install 
Copiare il file System.map nella dir /boot, andare in 
/usr/src/linux/arch/i386/boot/ e scrivere  
rdev -R bzImage l /dev/hda5 (partizione dove e' installato linux) 
copiare bzImage di questa directory nella directory /boot  , entrare in 
/etc/lilo.conf  e dove c'e' scritto vmlinuz sostituirlo con bzImage. 
Uscire e salvare il file ed infine scrivere su xtern lilo e premere 
invio. Riavviare il pc, ed una volta ritornato in linux scrivere 
cdrecord -scanbus e vedere se i 2 dispositivi (cdrom e masterizzatore) 
sono riconosciuti.   
 
14)RICOMPILARE IL KERNEL CON ADATTATORE SCSI. 
Basta scegliere il driver adatto per l'adattatore e *non* includerlo 
come modulo (a meno di saper creare poi un ramdisk per il boot), ma 
compilarlo direttamente nel kernel. (opzione <Y> in menuconfig)
 
15)COME MASTERIZZARE  ( facendo cdrecord -scanbus, il mio cdrom((scd0)) 
e' 0,0,0 e il mio masterizzatore((scd1)) e' 0,1,0 )  
Se si e' un utente generico e si vogliono avere i permessi adatti 
scrivere:  chmod u+s /usr/bin/cdrecord
-Prelevare le tracce audio dal cd per metterle in una directory. 
cdda2wav -D0,0,0 -t 1 -B -x 
 
-Masterizzare le tracce audio.  
cdrecord -v -dev=0,1,0 -speed=4 -audio audio*.wav 
 
-Creare un'immagine ISO. 
mkisofs -v -o 
immagine.cd
 -J /root/directory con files che si vogliono 
masterizzare 
-Masterizzare l'immagine ISO. 
cdrecord -v -dev=0,1,0 -speed=4 -data 
immagine.cd
 
-Masterizzare in piu' volte. (ricordarsi di mettere sempre una 
sottodirectory) 
Creare la prima sessione di un cd multisessione. 
mkisofs -R -r -J -D -l -T -v -o /1/2/isoimage.raw /directdovcisonifiles
&& cdrecord -v -speed=4 dev=0,1,0 -multi /1/2/isoimage.raw 
Creare la seconda sessione. 
cdrecord -msinfo dev=1,0 (si otterranno dei numeri del tipo 0,11702 
ossia la prima traccia dal settore 0 al settore 11702) 
mkisofs -o isoimage_2.raw -R -C 0,11702 -M /dev/scd1 
/directdovcisonifiles && cdrecord -v -speed=4 dev=1,0 -eject -multi 
isoimage_2.raw 
Per le successive sessioni basta cambiare i numeri che richiede 
l'opzione -C usando l'opzione msinfo di cdrecord.  
 
-Ripulire un cd riscrivibile 
cdrecord dev=1,0 blank=fast ( ho il masterizzatore 0,1,0 ) 
L'opzione fast e' più veloce mentre l'opzione all e' più lenta 
ma completa. 
 
-Masterizzare l'immagine ISO (per es. una distribuzione in formato ISO)
cdrecord -v speed=4 dev=1,0 mandrake.iso
-Copia al volo da cd a cd (solo dati)
cdrecord -v speed=4 dev=1,0 -isosize /dev/scd0
 
-Copia al volo da cd a cd (solo audio)
?????? cdrdao copy --on-the-fly --paranoia-mode 0  ?????????
-Copiare una distribuzione Linux 
mkisofs -a -l -J -R -T -v -b percorso/ImmagineAvvio -c 
percorso/FileCatalogo 
percorso=<directory dove hai copiato i file>/<directory file avvio>
16)MONTARE UN FLOPPY 
Per montare un floppy il comando e': 
mount -t ext2 /dev/fd0 /mnt/floppy ( nome directory che devi creare 
con mkdir ) 
Se al posto di ext2 (linux) scrivi msdos puoi utilizzare dischetti  
che vanno bene anche su sistemi dos/windows 
umount -t ext2 /dev/fd0 Per smontarlo. 
 
17)MONTARE UN CDROM 
Per montare un cdroom il comando è: 
mount -t iso9660 /dev/hdc /mnt/cdrom (nome dir che devi crearecon mkdir) 
Controlla che il tuo cdrom sia hdc o hdd o scd0 o scd1 (se SCSI) e  
ricordati di creare una directory di nome cdrom. 
 
18)MONTARE UNA PARTIZIONE WINDOWS 
Per montare una partizione windows il comando e': 
mount -t vfat /dev/hda1 /mnt/win ( nome dir che devi creare con mkdir) 
Controlla che la partizione windows sia in hda1 (nel mio caso) e 
ricordati di creare una directory di nome win ( a tua discrezione ). 
Per montare una partizione windows NT il comando e':
mount -t ntfs /dev/partizione_di_nt /mnt/winnt
 
19)MONTARE UNA PARTZIONE LINUX 
Per montare una partizione linux il comando e': 
mount -t ext2 /dev/hda5 /mnt/linux1 (nome dir che devi creare con mkdir) 
 
20)DUPLICARE UN FLOPPY 
cat /dev/fd0H1440 > myfloppy 
Dopodiche', basta inserire il floppy destinazione, ed eseguire: 
cat myfloppy > /dev/fd0H1440 
 
21)COLLEGARSI AD INTERNET TRAMITE SCRIPT SENZA KPP. 
Connessione con script 
Come posso fare a collegarmi ad internet senza usare kppp e simili? Ho 
sentito che si può fare tramite degli script, ma come faccio?  
In Linux si usano due programmi, essenzialmente: 
"chat" che invia i comandi al modem 
"pppd" , il demone che instaura il dialogo secondo il protocollo ppp 
con il  server dell'ISP. 
 
I files su cui interverremo sono sostanzialmente 5: 
/etc/ppp/pap-secrets 
/etc/resolv.conf 
/etc/host.conf 
/bin/ispup 
/bin/ispdown 
Come si può intuire tratterò il caso di accesso con autenticazione PAP. 
Innanzitutto dovremo inserire il nostro username e password, 
comunicateci dal provider, nel primo di questi files, in questo modo: 
 
# /etc/ppp/pap-secrets 
username        *       password        *   # (es.  luca  *  lucchetto) 
# fine 
 
Poi dovremo modificare il secondo, che semplicemente indica al nostro 
sistema i dns da usare durante la connessione, controllando che 
compaiano le righe: 
 
# /etc/resolv.conf 
search 
dominioprovider.it
            # (es. search 
libero.it
)
nameserver 111.222.111.222         # (1° DNS)
nameserver 222.111.222.111         # (2° DNS)
# fine 
 
dove ovviamente dovremo inserire i dati forniteci dall'ISP al momento 
della stipulazione del contratto al posto degli esempi che ho scritto :) 
 
Poi bisogna comunicare al sistema in che modo deve risolvere i nomi dei  
computer sulla rete (non importa se non avete una rete locale e l'unica 
rete per voi e' internet, dovete specificarlo lo stesso...). Per fare 
questo bisogna operare su /etc/host.conf. 
 
# /etc/host.conf 
order hosts,bind 
multi on 
# fine 
 
Fatto tutto ciò il nostro sistema è pronto, e possiamo quindi passare 
alla realizzazione dei veri e propri script di connessione, cioe' 
quelli che eseguiremo quando vorremo connetterci o disconnetterci. 
Questo per connettersi: 
 
# /bin/ispup 
IP_ISP="0.0.0.0" 
IP_LOCALE="0.0.0.0" 
DISPOSITIVO="/dev/ttyS1"  #Se non funziona provare a scrivere /dev/modem
VELOCITA="115200"         # nel mio collegamento ho messo 115200
TELEFONO="0123456789" 
NOMEUSER="username"       #user con cui vi collegate ad internet
##da qui in poi non modificare nulla##
/usr/sbin/pppd \ 
connect "/usr/sbin/chat -v \ 
TIMEOUT 3 \ 
ABORT BUSY \ 
ABORT 'NO CARRIER' \ 
'' \dATZ \
OK \dATM0 \                  #per non sentire il suono
OK \dATX0 \ 
OK \dAT\d$TELEFONO \           
TIMEOUT 60 \ 
CONNECT '' " \ 
user $NOMEUSER -d \ 
-detach crtscts modem \ 
defaultroute noipdefault \ 
$IP_LOCALE:$IP_ISP \ 
$DISPOSITIVO \ 
$VELOCITA 
# fine 
 
e questo per disconnettersi   
#se non funziona basta fare un ps aux e vedere dove c'è scritto ppp
# comunque il n° del pid compare appena parte la connessione.
# /bin/ispdown                             
kill -INT `cat /var/run/ppp0.pid`  
# fine 
 
A questo punto, se volete collegarvi senza essere loggati come root, la 
via più semplice anche se la meno sicura e' quella di dare i permessi
di  
esecuzione degli script a tutti gli utenti (oppure vi create un gruppo 
di utenti apposito) e di dare il bit di suid group al pppd. 
 
Per connettervi digitate al prompt "ispup&" (la & serve a mandare in 
back-ground il processo, in modo che abbiate ancora libera la shell 
per copiare altre operazioni. 
 
22)COLLEGARSI AD INTERNET CON KPPP. 
E' molto semplice, lanciate kppp e settate il tutto come se foste in
windows. Fate riconoscere il modem, ricordate che la com1 corrisponde
a ttyS0, com2 a ttyS1 ecc..., inserite pure la riga di inizializzazione
che di solito è (ATX3), a questo punto collegatevi.Se usate un modem 
interno settate correttamente i jump (come ad es. nel mio ex modem 
interno Trust 33.6). Benissimo vi auguro buona navigazione. 
 
23)INTERNET 
wget -r -c l 
http://www.sitochevuoi.it/
 (per scaricare e riprendere 
interi siti).
wget -r -c l 
ftp://ftp.sitochevuoi.it/
 (per scaricare e riprendere 
interi siti).
lynx può essere utilizzato come browser ma non visualizza immagini. 
netstat -vat visualizza il collegamento e le porte aperte durante 
la connessione. 
 
24)INSTALLARE PROGRAMMI (Prima leggere il file install)
Se il file ha estensione *.tar.gz scompattarlo prima  con 
(tar zxvf *.tar.gz)  
./configure 
make  
make install
25)MTOOLS 
mdir a: ( elenca i file presenti nel floppy) 
mcopy a:prova.bat (copia il file prova.bat dal floppyalla dir. corrente) 
mformat ( formatta con parametri dos) 
mdel a:prova.bat (cancella il file prova.bat dal floppy) 
mdeltree  (cancella una directory e tutto il suo contenuto) 
 
26)LO SCANDISK DI LINUX 
fsck -a /   (ripara automaticamente il file system senza porre domande)
ATTENZIONE è consigliato di non usare (-a) su filesystem non-ext2. 
fsck /dev/<device> deve essere smontata o montata in sola lettura
 
28)TELNET E FTP (per spostare files) 
Consideriamo 2 pc: 
pc1 con indirizzo 192.168.0.1 
pc2 con indirizzo 192.168.0.2 
telnet 192.168.0.2 ed inserire la passoword: 
Per spostare i files da pc1 a pc2 scrivere: 
mput /aa/* 
Per prelevare i files da pc2 a pc1 
mget /bb/* 
Usare il comando lcd (local directory) per sapere in quale directory ci 
troviamo dal pc dal quale stiamo operando. 
Provare anche i comandi put e get. 
 
29)FILES MANAGER 
Un semplice e facile file-manager da usare e' mc. 
Basta scrivere questo comando (mc) e per accedere ai comandi posti in  
alto premere il tasto F9. Addirittura lo si può usare per entrare  
in telnet ed ftp. 
 
30)PASSWORD NEL LILO (ATTENZIONE COMANDO PERICOLOSO!!!) 
Entrare nel file /etc/lilo.conf e inserite questa riga 
password = "password che volete" 
 
31)APRIRE PIU' CONSOLE CONTEMPORANEAMENTE 
Tenendo premuti contemporaneamente i tasti (Ctrl + Alt) e il tasto F1 si 
apre una finestra unix puro in cui inserire l'user e la password, a 
questo punto e' possibile utilizzare questa schermata mentre magari 
state gia' utilizzando un altro programma. A questo punto premete i 
tasti Ctrl+Alt+F2 e cosi' via.
Per tornare all'unico server X <ctrl>+<alt>+<F7>
Per utilizzare due server X sulla stessa macchina (pesante) devi fare:
ctrl+alt+F2 per passare alla seconda console, fare il login, e digitare:
    startx -- :1
Il primo X-server stava e continua a stare su ctrl+alt+F7 il secondo si
piazza su ctrl+alt+F8. Il display occupato dal primo e' "0" mentre
quello occupato dal secondo e' "1". Da tenerne conto nel caso si debba 
fare il forwarding della conessione X. 
 
32)STAMPARE  
lpr ( per stampare un file es. lpr /root/cri ) 
lpr -p /root/cri (se il testo ha linee molto lunghe ed escono dai 
limiti della pagina) 
lpq (controllare lo stato della stampa) 
lprm (per annullare il comando di stampa). Utilizzare prima il comando 
(lpq) per sapere quale è l' ID della stampa.  es.(lprm 28) es. (lprm -) 
per eliminare tutte le stampe richieste. 
enscript (converte il testo in un file PostScript)
enscript -r (per stampare in orizzontale)
enscript -r -2 (per stampare 2 pagine su un singolo foglio)
enscript -n 3 (per stampare per es. 3 copie)
enscript -a <inizio page> <end page> per stampare un solo
intervallo di pagine
33)MANIPOLAZIONE DEI DIRITTI DI ACCESSO
Se un file o una directory è di mia proprietà allora posso impostare a 
mio piacimento i suoi attributi (= diritti di accesso). Il comando per 
fare ciò è chmod (change modes). La sua sintassi è la seguente:
              chmod chi azione cosa nomefile
dove:
il parametro chi può essere u (user) g (groups) o (others) a (all) 
il parametro azione può essere + (aggiungere) - (togliere) 
il parametro cosa può essere r (read) w (write) x (execute) 
il campo nomefile è il file o la directory oggetto del cambiamento. 
(*) all indica contemporaneamente i tre tipi di utente.
Vediamo ora degli esempi pratici.Supponiamo di voler aggiungere accesso, 
lettura e scrittura a tutti nella directory. 
               drwx------ verdi users 512 pippo
Il modo più semplice è 
               chmod a+rwx pippo
ovvero a parole "aggiungi (+) a tutti (a) lettura (r) scrittura (w) e 
accesso (x) al file pippo " (che poi è una directory perché c'è d). 
Il risultato è: 
               drwxrwxrwx verdi users 512 pippo
Altro esempio. Supponiamo di voler rendere il file 
               -r-------- verdi users 4096 paperino
leggibile da tutti e scrivibile solo dal proprietario : 
               chmod a+r paperino
               chmod u+w paperino
E il risultato è: 
               -rw-r--r-- verdi users 4096 paperino
Altro esempio. Supponiamo di avere il file
               -rw-rw-rw- rossi superuser 1234 pluto
Se eseguiamo: 
                chmod o-rw pluto
invece di ottenere: 
                -rw-rw---- rossi superuser 1234 pluto
si ottiene il messaggio: 
                 Permission denied
Questo perché io (verdi) sto tentando di modificare gli attributi di un 
file che non mi appartiene (è di rossi)
34)CAMBIARE LA PROPRIETA' DI UN FILE 
Se sono proprietario di un file e volessi "regalarlo" a qualcuno, cioè 
fare in modo che questo qualcuno ne divenga il nuovo proprietario, 
esiste il comando chown (change owner). La sua sintassi è: 
               chown nuovoproprietario.nuovogruppo file
Vediamo gli esempi. Supponiamo che rossi, dopo aver depositato nella
mia directory il file: 
               -rw-rw-rw- rossi superuser 1234 pluto
voglia fare in modo che esso divenga di mia proprietà. Dovrà allora 
eseguire: 
                chown verdi.users pluto
Il risultato sarà: 
               -rw-rw-rw- verdi users 1234 pluto
35)MANIPOLAZIONE DEI DIRITTI DI ACCESSO - METODO ALTERNATIVO 
Un metodo più sbrigativo per assegnare gli attributi ad un file si 
basa su questo ragionamento. Supponiamo di attribuire dei valori 
numerici ai permessi possibili:
   Lettura    = 4         (r)
   Scrittura  = 2         (w)
   Esecuzione = 1         (x)
(Ricordatevi che per una directory x significa accesso). In tale 
maniera, eseguendo delle semplicissime somme: 
   0 = Nessun permesso                       -
   1 = Esecuzione                            x
   2 = Scrittura                             w
   3 = Esecuzione + Scrittura                wx
   4 = Lettura                               r
   5 = Esecuzione + Lettura                  rx
   6 = Scrittura + Lettura                   rw
   7 = Esecuzione + Scrittura + Lettura      rwx
Se affianchiamo i tre codici di accesso user / groups / others 
otteniamo dei numeri di tre cifre, ognuna delle quali indica i permessi 
di ogni tipo di utente in modo sintetico. Per esempio: 
             rwxrwxrwx      777
             rw-rw-rw-      666
             r--r--r--      444
             rwx------      700
             rw-r--r--      644
e così via.... Perciò è possibile inglobare in un solo colpo tutti gli 
accessi di ogni singolo tipo di utente. Esiste allora la sintassi 
alternativa di chmod: 
          chmod codice nomefile
Esempio. Il secondo esempio sulla prima sintassi di chmod voleva 
trasformare 
               -r-------- verdi users 4096 paperino
nel file: 
               -rw-r--r-- verdi users 4096 paperino
e necessitava di 2 chmod consecutivi, il primo per assegnare a+r e il 
secondo per assegnare u+w. Con la sintassi alternativa di chmod è 
possibile fare il tutto in un solo colpo, usando: 
               chmod 644 paperino
36)FLOPPY DI AIUTO
Dando per scontato di aver ricompilato il kernel e di aver creato il 
file  /boot/bzImage posizionatevi in questa directory e scrivete 
(cp bzImage /dev/fd0)
37)ELIMINARE LILO 
Da linux dai il comando (lilo -U), da Dos (fdisk /mbr)
38)RPM E DPKG (INSTALLARE PROGRAMMI DA REDHAT E DEBIAN)
                        RPM
Installazione rpm -ivh nomedelpacchetto.i386.rpm
Disintallazione rpm -e nomedelpacchetto
Aggiornamento rpm -Fvh nomedelpacchetto.i386.rpm
                        DPKG
Installazione dpkg -i nomedelpacchetto.deb
Disinstallazione dpkg -purge nomedelpacchetto.deb
39)CREARE ED AGGIUNGERE GRUPPI ED UTENTI
Ad es. creare un gruppo chiamato supporto:
groupadd supporto
Ad es. creare un utente ed inserirlo nel gruppo supporto
useradd utente -c (commento) -d (home directory) -g (gruppo)
useradd cristian -c ordinato -d /reparto -g supporto
Adesso bisogna inserire una password:
passwd cristian
Controllare i permessi con il comando: ls -al  (33-34-35)
Per eliminare utente e gruppo scrivere:
groupdel supporto
userdel cristian
40)GRUB 
Installazione di grub in pochissimi semplici passi. Posto che sia stato 
installato il  pacchetto di grub facente parte della propria 
distibuzione preferita, andare a reperire i seguenti file, che in Debian 
sono in /usr/lib/grub/i386-pc/:
    e2fs_stage1_5
    fat_stage1_5
    ffs_stage1_5
    minix_stage1_5
    reiserfs_stage1_5
    vstafs_stage1_5
    stage1
    stage2
Metterli in una directory a  scelta, preferibilmente qualcosa nel genere 
di /boot/grub.
grub indica  le partizioni diversamente  da Linux: una coppia  di numeri 
tra parentesi, con i numeri che partono da zero. Per fare un esempio:
/dev/hda --> (hd0)
/dev/hda1 --> (hd0,0)
/dev/hda5 --> (hd0,4)
/dev/hdb6 --> (hd1,5)
e cosi` via, il concetto dovrebbe essere chiaro (spero).
I file  si indicano  attaccando un percorso alla partizione.  Se volete 
installare grub  in /boot/grub, dove  /boot e` in una partizione  a se` 
(come di solito dovrebbe essere sui  PC), il tutto e` semplicissimo: 
dal prompt di  Linux chiamate il comando  "grub", e date i  seguenti 
comandi (assumendo che la vostra /boot sia /dev/hda5):
    root (hd0,4)
    setup (hd0)
Tutto qui. Il  primo dice che grub e` installato  nella prima partizione 
del disco, il secondo chiede l'installazione del bootloader nell'MBR.
Riavviando il sistema e` gia` disponibile la console di grub, che pero` 
e` un po' scomoda per avviare  il sistema ogni volta. Aggiungere un menu 
e` semplice tanto  quanto installare il bootloader  stesso: basta creare 
un file "menu.lst" fatto in questo modo:
    title Linux (X11)
    kernel (hd0,4)/vmlinuz-2.2.19
root=/dev/hda6 devfs=mount 5
 
    title Linux (failsafe)
    kernel (hd0,4)/vmlinuz-2.2.19
root=/dev/hda6 devfs=mount single
    title WindoZzzzz
    root (hd0,0)
    chainloader +1
Un  paio di  chiarimenti: i  file vanno specificati relativamente  alla 
partizione  in cui  risiedono. grub  infatti non sa  che (hd0,4)  viene 
montata sotto  /boot, in  compenso vede  che nella  radice di  quel file 
system c'e` un  file di nome vmlinuz-2.2.19. Il parametro "root" invece 
va scritto  nella notazione  di Linux,  perche` e`  un parametro  per il
kernel di  Linux, che  grub ignora  e passa cosi`  com'e` al  kernel. Le 
diverse opzioni  che si possono  passare al kernel si mettono  una dopo 
l'altra sulla stessa riga (qui ho specificato il montaggio di devfs e il 
runlevel  in cui  partire). Per  caricare Window$,  invece, si  passa il 
controllo al  suo bootloader semplicemente dicendogli che e`  sul primo 
settore della prima partizione.
E` bene tener presente che
1) al contrario di  lilo, grub non ha bisogno di  essere aggiornato ogni 
volta che si fa una modifica al menu. Essendo in grado di leggere dal 
file system per conto suo, grub legge il menu ad ogni avvio.
2) se qualcosa dovesse  andare storto nella creazione del  menu (tipo un 
errore di sintassi), no panic: gli stessi identici comandi si possono 
dare alla console di grub per  avviare il sistema e quindi correggere 
l'errore. Se vedete il prompt "grub>", niente e` perduto, anzi.
Magari, con  lo stesso procedimento,  createvi un dischetto di  boot 
con grub (lo potete  mettere anche su un filesystem FAT  e metterci su 
anche dell'altra roba, come per esempio un kernel "di scorta"). Tale 
dischetto vi salvera` il fondoschina piu` spesso di quanto il "disco di 
ripristino di Window$" l'abbia mai fatto. ;-)
41)DSELECT ????????
42)CONDIVIDERE CONNESSIONE AD INTERNET (LINUX-LINUX-CLIENT).
Server linux    192.168.1.1    server
client linux     192.168.1.2    linux
client windows  192.168.1.3   windows
                                        A
Nel kernel del server linux 192.168.1.1 abilitare le seguenti opzioni:
Code maturity level options: Prompt for development
Lodable module support: Enable loadable module support, Kernel daemon 
support (non è indispensabile)
Networking options: Metwork firewalls, tcp/ip networking, ip 
forwarding/gatewaying, ip firewalling, ip masquerading, ipautofw 
masquerading, icmpmasquerading, always defragment.
Network device support: Dummy net driver support
Ethernet 10 or 100 Mbit: selezionare la propria scheda di rete.
Nel kernel del client linux 192.168.1.2 abilitare le seguenti opzioni:
Code maturity level options: Prompt for development
Lodable module support: Enable loadable module support, Kernel daemon 
support (non è indispensabile)
Networking options: tcp/ip networking
Network device support: Dummy net driver support
Ethernet 10 or 100 Mbit: selezionare la propria scheda di rete.
 
                                               B
Entrare in /etc/hosts e scrivere nel server linux:
127.0.0.1     localhost
192.168.1.1  server.rete.locale  server
Entrare in /etc/hosts e scrivere nel client linux:
127.0.0.1     localhost
192.168.1.2  linux.rete.locale  linux
Entrare in /etc/hostname del server e scrivere:
#
server.rete.locale
#
linux.rete.locale
Sul server linux scrivere:
ifconfig 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.0
Sul client linux scrivere:
ifconfig 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.0
Sul server linux scrivere:
route add -net 192.168.1.0 dev eth0 (se da error scrivere senza il -net)
Sul client linux scrivere:
route add -net 192.168.1.0 dev eth0 (se da error scrivere senza il -net)
route add default gw 192.168.1.1
Su windows mettiamo l'indirizzo di rete 192.168.1.3, la netmask 
255.255.255.0, i/il dns fornito dal provider ed il gateway 192.168.1.1 
(il tutto su ipostazioni rete).
Sul server linux scrivere (se non va bene ipfwadm scrivere 
ipfwadm-wrapper):
ipfwadm -F -p deny
echo 1> /proc/sys/net/ipforward (scriverlo se da errore la riga sopra).
ipfwadm -F -a m -S 
192.168.1.0/24
 -D 
0.0.0.0/0
modprobe ip_masq_ftp
modprobe ip_masq_irc
modprobe ip_masq_quake
Sul client linux scrivere:
entrare in /etc/resolv.conf
search dominio.isp  (es. search 
galactica.it
)
nameserver 195.210.91.100 (1° dns)
nameserver 193.70.192.100 (2° dns)
Adesso dovreste essere in grado di navigare dai client windows e linux.
43)VUOI AGGIUNGERE ALTRI ARGOMENTI ??? SCRIVIMI !!!

 6.2 è un po' scarna).
http://a2.swlibero.org
 (appunti di informatica libera)
http://www.attivissimo.net
 (da windows a linux)
http://www.linuxfacile.org
 (omonimo)
-- 
Configura internet, junkbuster, fetchmail, procmail, leafnode, firewall,
dns, wwwoffle, postfix, mutt, slrn, kernel, ed altro, visitando il sito:
http://mrshark.sourceforge.net
 od 
http://mrshark.cjb.net
 e scaricando il
"Quick&Easy Configuration Howto". Cosenza LUG: IRC: 
irc.openprojects.net
canale #cslug - Mailing-list: 
http://www.linux.it/mailman/listinfo/cslug