X-Git-Url: http://git.piffa.net/web?p=doc%2F.git;a=blobdiff_plain;f=ricettario.html;fp=ricettario.html;h=e03fcf74676d1e7d09bfac803c687958c7510ec9;hp=0000000000000000000000000000000000000000;hb=413470c3ca2cc58c8d39d176111aa9d8541a0f55;hpb=da76034044c2e819085f8c96e5d2b24599ed5bcf diff --git a/ricettario.html b/ricettario.html new file mode 100644 index 0000000..e03fcf7 --- /dev/null +++ b/ricettario.html @@ -0,0 +1,1227 @@ + + + + +
+ + + + +++ ++
++ + + + + + +Author: + +Andrea Manni ++ + +Copyright: + +GFDL ++ + +Version: + +1.0 +
Indice
+ +Generato con: http://docutils.sourceforge.net/rst.html
+ +Appunti ed esempi sull'utilizzo di alcuni comandi + comuni.
+ +Vediamo come leggere l'output del comando + ls:
++ls -l + +drwxr-xr-x 2 andrea staff 4096 2008-09-16 22:05 cartella + | | | | | | | Nome file + | | | | | | Data di creazione e ora + | | | | | inodes (non e' la dimensione del file) + | | | | gruppo + | | | utente + | | ooo = others + | ggg = group + uuu = user ++ +
Propieta' | +||
---|---|---|
rwx | +||
r | + +readable | + +Il file e' leggibile | +
w | + +writable | + +Il file e' scrivibile e modificabile | +
x | + +excecute | + +Il file e' eseguibile | +
Il primo carattere indica la natura o il tipo del + file:
++-rw-r--r-- 1 andrea andrea 26 2008-09-16 22:03 dns.conf +lrw-r--r-- 1 andrea andrea 0 2008-09-16 22:07 link_dns +drwxr-xr-x 1 andrea andrea 77352 2008-09-16 21:47 cartella ++ +
Tipi comuni | +|
---|---|
d | + +directory | +
- | + +file | +
l | + +link | +
Per la sintassi e le opzioni vedere le pagine + man dei singoli comandi.
+Breve lista delle opzioni del comando tar + (archiviazione dei files)
+ +-c + nome_arch | + +creare un archivio con nome nome_arch | +
-t | + +visualizzare il contenuto di un archivio | +
-x | + +estrarre da un archivio | +
-f | + +nome dell'archivio | +
-z | + +compresso con gunzip | +
-j | + +compresso con bzip2 | +
Per meglio comprendere la natura dei filesystems virtuali + proc e sys possiamo provare + a muoverci al loro interno, vedere alcuni degli esempi piu' + interessanti e provare anche a intervenire su di essi.
+ +!PERICOLO!
+ +Non sparate dei valori a caso su + oggetti come ventole di raffreddamento: potreste cuocere le + CPU e provocare danni irreparabili (quindi niente echo > + ...)
+Storia:
++51 cat /proc/ +52 cat /proc/cpuinfo +53 htop +54 cat /proc/meminfo +55 free +56 cat /sys/devices/system/cpu/cpu0/cpuidle/state0 +57 cat /sys/devices/system/cpu/cpu0/cpuidle/state0/usage +58 cat /sys/devices/system/cpu/cpu0/cpuidle/state0/power +59 cat /sys/devices/system/cpu/cpu0/crash_notes +60 cat /sys/devices/system/cpu/cpu0/topology/core_id +61 cat /sys/devices/system/clocksource/clocksource0/available_clocksource +62 cat /sys/devices/system/clocksource/clocksource0/current_clocksource +63 cat /proc/meminfo +64 cat /sys/class/thermal/cooling_device +65 cat /sys/class/thermal/cooling_device0/cur_state +66 cat /sys/class/thermal/cooling_device0/cur_state +67 echo "1" > /sys/class/thermal/cooling_device0/cur_state +68 cat /sys/class/thermal/cooling_device0/cur_state +69 echo "0" > /sys/class/thermal/cooling_device0/cur_state +70 echo "0" > /sys/class/thermal/cooling_device1/cur_state +71 echo "1" > /sys/class/thermal/cooling_device1/cur_state +72 cat /sys/class/thermal/cooling_device1/cur_state +73 echo "0" > /sys/class/thermal/cooling_device1/cur_state +74 echo "0" > /sys/class/thermal/cooling_device1/max_state +75 cat /sys/class/thermal/cooling_device1/max_state +76 echo "7" > /sys/class/thermal/cooling_device1/max_state +77 echo "7" > /sys/class/thermal/cooling_device1/cur_state +78 echo "7" > /sys/class/thermal/cooling_device0/ +79 echo "7" > /sys/class/thermal/cooling_device0/max_state +80 cat /sys/class/thermal/cooling_device0/max_state +81 echo "7" > /sys/class/thermal/cooling_device0/cur_state +82 cat /sys/class/thermal/cooling_device0/cur_state +83 echo "0" > /sys/class/thermal/cooling_device0/cur_state +84 echo "0" > /sys/class/thermal/cooling_device1/cur_state +85* cat /sys/class/thermal/cooling_device1/ +86 cat /sys/class/thermal/cooling_device1/cur_state +87 cat /sys/class/thermal/cooling_device0/cur_state +88 cat /sys/class/hwmon/hwmon0/fan1_pwm +89 cat /sys/class/net/eth0/address +90 cat /sys/class/net/eth0/broadcast +91 cat /sys/class/net/eth0/features +92 cat /sys/class/net/eth0/flags +93 cat /sys/class/net/eth0/mtu +94 cat /sys/class/net/eth0/statistics/rx_errors +95 cat /sys/class/net/eth0/statistics/rx_bytes +96 cd /tmp/ +97 history > proc_nav ++
Il modello OSI: 7 livelli. Il modello TCP/IP: 4 + livelli.
+ +Link ai livelli dell'OSI: - http://it.wikipedia.org/wiki/Open_Systems_Interconnection + - + http://upload.wikimedia.org/wikipedia/commons/5/56/Rm-osi_parallel.png
+ +Comparazione livelli OSI / TCP/IP:
++ OSI TCP/IP +------------- ------------ +Applicazione Applicazione +Presentazione +Sessione +------------- ------------ +Trasporto Trasporto +------------- ------------ +Network Internet +------------- ------------ +Collegamento Network +Fisico +------------- ------------ ++ +
Il modello TCP/IP e' quindi una semplificazione del + modello OSI.
+ +Per una descrizione dei vari livelli del TCP/IP vedere: - + http://www.tutorialpc.it/tcp1.asp + - http://www.docmirror.net/it/linux/howto/misc/NET-3-HOWTO/ + - http://it.wikipedia.org/wiki/TCP/IP
+ +Il livello "Network" e' quello che si occupa di far + funzionare l'hardware di rete. E' quindi dipendente dalla + macchina su cui viene implementato lo stack TCP/IP.
+Alias: secondo livello...
+ +il livello internet si occupa di indirizzamenti, di + suddivisione in frammenti, e instradamenti in TCP/IP. I + protocolli che lavorano a questo livello,che è internet, + interagiscono con i livelli immediatamente superiore ed + inferiore.
+ +Links:
+ + +Documentazione su IP:
+ +http://www.freesoft.org/CIE/Course/Section3/7.htm + Tutorial in inglese
+Consigliato: Manuale del TCP/IP + dell'Apogeo.
+Tutorial in italiano + relativamente semplice
+Analizziamo gli indirizzi IP e le sotto reti
+ +Consideriamo gli indirizzi IP della classe C:
++ 212.22.136.0 (0 mi permette di identificare la rete) + +andrea 212.22.136.177 11010100.00010110.10001000. 10110001 +giulio 212.22.136.178 11010100.00010110.10001000. 10110010 +papo 212.22.136.166 11010100.00010110.10001000. 10100110 ++ +
Cosa notiamo?
+ +Be'... Che la parte relativa alla rete ovviamente non + cambia:
++11010100.00010110.10001000. che corrisponde a 212.22.136. ++ +
Questa e' la sotto rete
++255.255.255.0 ++ +
Come calcola il computer le sotto reti per il routing + dei pacchetti?
+ +Facendo la MESSA in AND dell'host0/rete host1/rete
+ +Proviamo con andrea e papo:
++andrea IP 11010100.00010110.10001000. 10110001 +andrea rete 11111111.11111111.11111111. 00000000 +risultato andrea: 11010100.00010110.10001000 + +papo IP 11010100.00010110.10001000. 10100110 +papo rete 11111111.11111111.11111111. 00000000 +risultato papo 11010100.00010110.10001000 + +Confrontiamoli: 11010100.00010110.10001000 + 11010100.00010110.10001000 + +Sono uguali -> stessa rete ++
link a cavi coassiali / thin :
+ ++ ++
++ + ++
+- http://it.wikipedia.org/wiki/Wifi
+ +- http://it.wikipedia.org/wiki/IEEE_802.11 + Standard WiFi
+
Configurare un device di rete:
+ ++ # ifconfig eth0 192.168.0.1 # ifconfig eth0 down # + abbatte una scheda di rete # ifconfig eth0:1 192.168.0.1 + # abilita una scheda di rete virtuale # ifconfig eth0:1 + 192.168.1.1 # abilita una scheda di rete VIRTUALE ++
Test della connessione tra due hosts (ICMP):
++ping 192.168.0.254 # ping all'infinito un indirizzo IP, per fermarlo: CTR + c +ping -c 2 192.168.0.254 # manda solo due pacchetti poi si interrompe ++
Modifica delle tabelle di instradamento / routing:
++# route -n #visualizza la tabella di routing attuale +# route add default gw 192.168.0.254 #aggiunge un gateway di default +# route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.254 + # aggiunge la rotta per una rete +# route add -host 192.168.1.2 gw 192.168.0.254 + # aggiunge la rotta per un singolo host +# route del ... # elimina una rotta precedentemente attivata +es: # route del -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.254 ++
Ricerca dei passaggi (hops) attraverso i quali + comunicano due hosts:
++traceroute 192.168.0.254 # visualizza gli hops frapposti tra noi e un IP ++
Risoluzione di nomi di dominio / IP:
++$ host bender.piffa.net # risolve l'indirizzo IP di bender.piffa.net +$ host 212.22.136.248 # risoluzione inversa di un indirizzo IP ++
Per poter utilizzare le funzionalita' di routing del + kernel di Linux e' necessario abilitare l'ip-forwarding + dello stesso kernel
+ +Si puo' verificare se l'instradamento (IP forwarding) e' + abilitato leggendo in /proc il valore di:
++$ cat /proc/sys/net/ipv4/ip_forward ++ +
Si puo' scrivere un valore diverso con echo e il + re-indirizzamento dell'output:
++# echo "1" > /proc/sys/net/ipv4/ip_forward ++ +
Nota
+ +Vedi pag: 295 del manuale cartaceo
+Analizzatore di traffico a riga di comando:
++$ tcpdump -q # Output semplificato, usare -v -vv per maggior dettaglio +$ tcpdump udp # Per catturare il traffico UDP +$ tcpdump port http # Per catturare il traffico sulla porta 80 (http) +$ tcpdump src 192.168.1.100 and dst 192.168.1.2 and port ftp + # Per catturare il traffico FTP tra src (sorgente) e dst (destinazione) + # sulla porta di FTP +$ tcpdump -A # Per visualizzare il contenuto dei pacchetti intercettati ++
Breve lista dei comandi per una sessione FTP (non usate + FTP, usate SFTP...):
++ftp nome_host # stabilire la connessione + # poi chiedera' la password dell'utente + # se avete sbagliato utente: user + +help # Lista dei comandi disponibili +help [nome_comando] # cosa fa quel comando +put # per caricare un file +get # per scaricare un file +ls # lo sapete cosa fa... +cd # fa il cambio directory +lcd # cambio directory in LOCALE +mput/mget # per lavorare su file multipli +prompt # per uscire dalla modalita' interattiva + # (non vi chiede conferma di ogni singola operazione + # sul singolo file...) +binary # entra in modalita' trasferimento binario +ascii # entra in modalita' trasferimento ascii +bye # per chiudere la sessione ++
Mancano (non inseriti in questo file ma presenti come + frammenti di testo semplice):
+ +