Crea sito

GNU-Manualinux

by Cristiano Macaluso

Abstract:

GNU-Manualinux è una guida semplice e veloce all'uso di linux da console. Comprende un'introduzione ai principali comandi linux, alcune guide alle operazioni di configurazione del sistema, molti tips&trick e veloci tutorial per le applicazioni, anche in ambiente grafico.

GNU-Manualinux è stato scritto da Panher con il contributo di altri appassionati ed è ospitato sul sito del Lug della Versilia [ www.tivedotonico.it ]. Potete trovare l'ultima versione di Manualinux all'indirizzo

http://www.tivedotonico.it/manualinux

Quella che state leggendo è una versione ``beautified'' di Manualinux, riscritta con con LATEX per rendere piu' agevole la stampa e la lettura: le modifiche fatte riguardano essenzialmente l'impaginazione. Alcune variazioni non sostanziali al testo sono precedute e segnalate dalla dicitura ``NDR''.

Manualinux-restyle è attualmente aggiornato alla versione 5.20 di Manualinux ed è disponibile in vari formati all'indirizzo

http://it.geocities.com/liliweb1/manualinux-restyle.html.

Per info e commenti sulla versione stampa scrivi a Lili [ [email protected] ]

Per info su Manualinux e per aggiungere nuovi argomenti scrivi a Panther [ [email protected] ]

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. A copy of the license is included in the section entitled `GNU Free Documentation License`.

``GNU-Manualinux'' Copyright (c) 2004 Cristiano Macaluso (aka Panther) E' garantito il permesso di copiare, distribuire e/o modificare questo documento seguendo i termini della Licenza per Documentazione Libera GNU, Versione 1.2 o ogni versione successiva pubblicata dalla Free Software Foundation. Una copia della licenza è acclusa in fondo al documento nella sezione intitolata `GNU Free Documentation License`.

``Manualinux-restyle'' Copyright (c) 2004 Eleonora Borelli (aka Lili) E' garantito il permesso di copiare, distribuire e/o modificare questo documento seguendo i termini della Licenza per Documentazione Libera GNU, Versione 1.2 o ogni versione successiva pubblicata dalla Free Software Foundation. Una copia della licenza è acclusa in fondo al documento nella sezione intitolata `GNU Free Documentation License`.


Contents

Comandi

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.

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
rm -r -f
= elimina le dir/sottodir e tutto in esse contenuto senza chiedere conferma
pwd
= per controllare in quale directory ci si trova
tree nomedir
= visualizza le directory dipendenti da quella indicata

Files

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
wc
= vedere le statistiche su un file di testo
split
= dividere un file in piu' parti (che possono essere ricongiunte con cat, NDR)

Aggiornare ora e data

hwclock -set -date
='12/30/2004 18:55:01'
date -s
18:55:01
date -s
12/30/2004

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.

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 quello cheriguarda 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 il server X 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

Floppy e cdrom

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 files 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
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 :

cat > nomefile
cat

ctrl+d = per chiudere il file
cat nomefile
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

COMANDI VARI.

pushd (Dice in che directory eravate prima)

popd (vi porta nella directory dove eravate prima)

cd - (come sopra)

OCCUPAZIONE DEL DISCO.

du -h (per visualizzare la quantita' in kilobyte e megabyte)

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 ).

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 nomeprocesso'' uccide tutti i processi con un certo nome).

RAM

Per poter visualizzare la ram scrivere: free

Per avere informazioni sulla ram utilizzata scrivere: top e controllare la parte in alto a sinistra dello schermo.

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.

esempio

Supponiamo di voler aggiungere accesso, lettura e scrittura a tutti in una directory immaginaria ``pippo'' (visualizzare i dettagli di ``pippo'' con ls -l)

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

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

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)

CAMBIARE LA PROPRIETÀ DI UN FILE

Se sono proprietario di un file e voglio `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

esempio

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

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 a+r,u+w paperino ### (attenzione alla virgola) ###

oppure nella maniera più semplice:

chmod 644 paperino

CREARE ED AGGIUNGERE GRUPPI ED UTENTI.

Fare tutto come utente root.

creare un gruppo chiamato supporto:

groupadd supporto

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
Sotto la slackware 9.1 e `forse` sotto altre distro usare anche:

adduser
(completo di tutto, pure di inserimento password).
Verranno proposti i parametri di default , sono possibili delle modifiche. Per eliminare utente e gruppo scrivere:

groupdel supporto

userdel cristian

FORMATTARE FLOPPY.

Classica formattazione:

fdformat /dev/fd0H1440 formatta il drive A: a 1440 kb

fdformat /dev/fd1h1200 formatta il drive B: a 1.2 Mb

fdformat /dev/fd0H720 formatta il drive A: a 720 kb

Per cercare blocchi danneggiati:

badblocks /dev/fd0H1440

Formattare un floppy per msdos o per win:

fdformat /dev/fd0H1440 && mkfs -t msdos /dev/fd0

fdformat /dev/fd0H1440 && mkfs -t vfat /dev/fd0

CONTROLLARE L'EFFICIENZA DEI DISCHI IDE

Un grazie a Riccardo Pelizzi [[email protected]]

NB:
queste opzioni possono danneggiare i vostri dischi ide
Se il dispositivo ide (che può essere sia un hard disk sia un cd-rom sia un dvd) e la vostra scheda madre sono recenti, il vostro disco supporta la modalità di trasferimento a 32-bit, la modalità ultra-DMA e l'irq unmasking.

Il kernel è molto conservativo sotto questo punto di vista (poichè attivando queste opzioni su schede o su dispositivi che non le supportano si rischia di rovinarli) e se non ci ha pensato la vostra distro a configurare a puntino i vostri dischi, lo faremo noi con il comando hdparm:

Usiamo il comando:

hdparm -i /dev/hdX
dove X sta per il dispositivo che dovete controllare. Di solito sono a, b, c, d.

Una delle prime voci di output sarà il modello del vostro dispositivo,

così potrete capire che dispositivo IDE state interrogando.

Non sarà possibile interagire con i dischi senza avere il supporto per il proprio chipset integrato nel kernel o caricato come modulo. Per esempio avendo un chipset via ed avendo compilato il driver come modulo, prima di ogni altra operazione bisogna scrivere `modprobe via82cxxx`.

hdparm /dev/hdX
darà un output simile a questo:

multcount = 16 (on)
IO\_support = 1 (32-bit)
unmaskirq = 1 (on)
using\_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 9964/255/63, sectors = 160086528, start = 0

Questo è l'output di un disco che dovrebbe essere già configurato a puntino. L'unica opzione importante ma non visibile da questo menù è la modalità udma. Con il comando precedente potete vedere se la modalità dma è attivata, ma non che modalità è attivata. Ma a questo penseremo alla fine.

Cominciamo dando il comando:

hdparm -t /dev/hdX
e segnatevi il vostro transfer rate. Se IO_Support è uguale a 0, attiviamolo con il comando:

hdparm -c1 /dev/hdX.
Alcune combinazioni di schede madri / dispositivi richiedono il parametro c3. Questa opzionedovrebbe da sola raddoppiare il transfer rate del vostro dispositivo. Unmaskirq serve per mantenere il sistema operativo `responsive` (come lo traduco? Scattante? Pronto? Sono orribili...) mentre si legge dal dispositivo, utile soprattutto per cd/dvd. Si attiva con:

hdparm -u1 /dev/hdX
E ora passiamo alla parte più interessante: la modalità dma. Date il comando:

hdparm -t /dev/hdX
dopo ogni operazione. Ogni operazione dovrebbe aumentare il vostro transfer rate. Se così non è, dovrete tornare all'opzione precedente, perchè la corrente non è supportata. Cominciamo con:

hdparm -d1 /dev/hdX
Questa opzione non porta necessariamente ad un aumento di prestazioni, se non è stata attivata una modalità dma valida: andiamo a settarla. Questa è la tabella dei parametri da fornire ad hdparm (rubata ai gentili signori della intel):

(ATA/33) -X66
(ATA/66) -X68
(ATA/100) -X69
Per esempio per attivare la modalità ATA/66, date il comando:

hdparm -X68 /dev/hdX.
C'è un ultima opzione da settare, un poco più pericolosa delle altre: multicount. Date il comando:

hdparm -i /dev/hdX
e leggete la voce max_multicount. Sarà il valore da settare come:

hdparm -mY /dev/hdX
Ovviamente questa opzione non è settabile per i cd/dvd che hanno una sola testina, il laser. A questo punto dovreste avere un transfer rate di almeno 40MB al secondo con un disco ATA/66. Confrontatelo con quello ottenuto prima di ogni operazione. Godete o rimanete impassibili a seconda del risultato :-)

NOTA: Queste opzioni non sono permanenti, per cui dovrete mettere
tutti i vostri bei comandi in uno script e eseguirlo all'avvio mettendo
il nome del file in fondo a /etc/rc.d/rc.local

Utility

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, fvwm, gnome-session ecc.. (/etc/X11).

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) [ NDR: definite dalla variabile $PATH ]
grep
cerca una parola all'interno di un documento (es. grep `casa` *.txt )

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

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

Per smontarlo:

umount -t ext2 /dev/fd0

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.

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

MONTARE UNA PARTIZIONE LINUX.

Per montare una partizione linux il comando e':

mount -t ext2 /dev/hda5 /mnt/linux1 (nome dir che devi creare con mkdir)

DUPLICARE UN FLOPPY

cat /dev/fd0H1440 > myfloppy

Dopodiche', basta inserire il floppy destinazione, ed eseguire:

cat myfloppy > /dev/fd0H1440

INSTALLARE PROGRAMMI DA SORGENTE

Se il file ha estensione *.tar.gz scompattarlo prima con

tar zxvf nomefile.tar.gz

NB: prima di continuare leggere il file install

./configure

make

make install

LO SCANDISK SU LINUX.

df
(per controllare su quale partizione è installato linux)
badblocks
/dev/hda1 (se linux è installato su /dev/hda1)
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

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.

PASSWORD NEL LILO (ATTENZIONE COMANDO PERICOLOSO!!!).

Entrare nel file /etc/lilo.conf e inserite questa riga

password = `password che volete`

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.

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

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)

Su RedHat scrivere:

mkbootdisk -device /dev/fd0 2.2.4.5 (è il n^ vers. di /boot/vmlinuz)

ELIMINARE LILO

Da linux dai il comando (lilo -U), da Dos (fdisk /mbr)

DISABILITARE O ABILITARE IL CLASSICO SUONO BIP

Per disabilitare entrare nel file /etc/inputrc oppure nel file ./inputrc e scrivere:

set bell-style none

Per abilitare entrare nel file /etc/inputrc oppure nel file ./inputrc e scrivere:

set bell-style visible

Per far emettere il suono scrivere:

echo -e `\007`

Per aumentare il volume da riga di comando:

aumix -L percorso/.aumixrc

DISABILITARE IL CTRL-ALT-CANC DA CONSOLE O REMOTO

Entrare nel file /etc/inittab e disabilitare con un # davanti la seguente riga:

ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

AVVIARE LA GRAFICA SENZA INSERIRE NE' LOGIN NE' PASSWORD.

Inseriamo un utente con la home e il gruppo di appartenenza.

Modificare il file /etc/profile inserendo questi dati:

HOME=`/nomeutente`

export HOME

Salvare il file.

Entrare in /etc/inittab disabilitare dalla riga Run gettys fino in fondo mettendo un # davanti a tutte le righe. Sopra la riga Run getty inserirne un'altra:

1:12345:wait:/bin/bash -login

Salvare il file e riavviare. Al riavvio si entra come utente senza immettere nè il nome utente nè la password. Se dentro /home/utente inseriamo un file .xinitrc in cui scriviamo desktop grafico da avviare, per esempio fvwm2. Volendo è consigliabile copiare il file

/etc/X11/fvwm2/system.fvwm2rc in /home/utente e rinominarlo in .fvwm2rc

Dentro il file .bash_profile in fondo scriviamo startx, così partirà la grafica in automatico. Riavviano il pc si entra in automatico come utente ed in automatico si avvia l'X scelto.

ABILITARE LA ROTELLINA DEL MOUSE con XFree vers.4

Entrare nel file /etc/X11/XF86Config-4 ed andare nella voce mouse la situazione dovrebbe essere come questa:

Section `InputDevice`

Identifier `Mouse0`

Driver `mouse`

Option `Protocol` `IMPS/2`

Option `Device` `/dev/psaux` ##oppure `/dev/mouse`

Option `ZAxisMapping` `4 5`

Option `Emulate3Buttons` `no`

EndSection

COPIARE PARTIZIONI DA HARD-DISK A AD HARD-DISK B

Creare il floppy di ripristino di linux della vostra distro che avete installato, servirà per installare il lilo se il pc non si avvierà. Inserire nel pc il nuovo hard-disk (b) e avviare il pc in modo che carichi linux dal primo hard-disk (a). Cancellare tutti i dati su b:

fdisk /dev/hdb (Se da come errore Impossibile aprire /dev/hdb vuol dire che l'hard-disk non è stato riconosciuto; provare con hdc, hdd ecc... )

Continiuamo presupponendo che (b), il secondo hard-disk, sia stato riconosciuto. Cancelliamo le eventuali partizioni presenti in (b).

fdisk /dev/hdb

Comando (m per richiamare la guida): Premere d e poi il numero della partizione (da 1 a 4)

ES:

	d invio
	1 invio
	d invio
	2 invio
	d invio
	3 invio
	d inviod
	4 invio
	w (per salvare ed uscire da fdisk)
	q (per uscire senza salvare)
Diciamo che adesso il disco b è vuoto, lo possiamo verificare con cfdisk /dev/hdb. Ora, visualizzare le partizioni in /dev/hda (primo disco) e le rispettive dimensioni in megabyte (segnarsele in un foglio di carta). Creiamo le partizioni vuote nel disco b con:

Creiamo la partizione linux ext2

cfdisk /dev/hdb

Nuova

Primaria (Spostarsi con le freccie)

Dimensioni: Inserire le dimensioni in mb, un consiglio, se possibile aumentarle di 5 mb., ossia

Inizio

Avviabile

Tipo (potete scegliere il tipo del file-system)

Creiamo la partizione swap

Nuova

Logica

Dimensioni: Inserire le dimensioni in meb, consiglio se possibile aumentarle di 5 mega

Fine

Tipo (potete scegliere il tipo del file-system, ossia swap)

Scrivi (Scrive e salva le partizioni vuote)

Fino ad ora abbiamo cancellato le partizioni sul disco b e le abbiamo create vuote della stessa dimensione (o quasi). Adesso come ultima cosa copiamo le partizioni dall'hard-disk a all'hard-disk b.

dd if=/dev/hda1 of=/dev/hdb1 (partizione linux)

Aspettare finchè non avrete la nuova linea di comando (dipende da quanto è grande la partizione), dopo di che scrivere:

dd if=/dev/hda5 of=/dev/hdb5 (partizione swap)

Una volta finito, stoppare il sistema con il comando halt, spegnere il pc e staccare l'hard-disk a ed inserire al suo posto l'hard-disk b in modo che diventi il primo disco (spostate la linguetta sull'hard-disk). Se compare lilo e dando invio il pc si blocca su kernel panic inserire il floppy di ripristino ed al lilo scrivere:

linux root=/dev/hda1 (gli diciamo dove si trova il filesystem di linux).

Arrivati sul sistema configurare /etc/lilo.conf in modo che carichi lilo correttamente. Se non funziona il lilo, inserire il floppy di ripristino, andare su linux e riscrivere lilo, riavviare il pc. Se non funziona ancora, riavviare il pc sempre con il floppy di ripristino e modificare la prima linea di /etc/lilo.conf in:

boot=/dev/hda1

oppure in

boot=/dev/hda

salvare e scrivere lilo, riavviare il pc.

Se al riavvio con l'hard-disk b si presenta fsck (una specie di scandisk) che automaticamente corregge gli errori non preoccupatevi, se invece vi chiede la password di root vuol dire che l'installazione non è andata bene. Cosiglio di ripetere l'installazione. Se arrivate al login e scrivete top (invio) è possibile che la partizione swap non sia attiva, sicuramente all'avvio ci saranno stati degli errori invece dei soliti ok. Per attivara basta dare una solta volta:

mkswap -c /dev/hda5

swapon /dev/hda5

Se ridate `top` la partizione swap sarà attiva per sempre, anche al prossimo riavvio.

AVVIARE KDE O GNOME DENTRO XTERM USANDO XNEST

Installare il programma Xnest (Xfree86-Xnestxxxxx), avviare l'interfaccia grafica prescelta e da qui aprire il primo xterm. All'interno scrivervi:

Xnest :1 (potete scegliere anche 2 od il 3 ecc....)

Apparirà una finestra nera.

Aprire un secondo xterm lanciare xterm -display : 1 ( lo stesso di Xnest)

Se ricontrollate dentro la finestra nera c'è un xterm aperto e vuoto.

Non rimane che aprire l'interfaccia grafica desiderata scrivendovi all'interno ad esempio:

startkde

startgnome

Adesso si aprirà solo nella finestra nera l'interfaccia grafica da voi scelta.

COME IMPOSTARE I SINGOLI TASTI DELLA TASTIERA

Modificare la tastiera su console , copiarsi per sicurezza il file:

cd /lib/kbd/keymaps/i386/qwerty/

oppure

cd /usr/lib/kbd/keymaps/i386/qwerty/

cp it.kmap.gz it.kmaoriginale.gz

gunzip it.kmap.gz

vi it.kmap.gz

Esempio modificando il tasto (Caps_lock) facccio scrivere la lettera e.

Modificare la riga da:

keycode 58 = Caps_Lock

a

keycode 58 = e

Uscire e salvare il file premendo Esc:wq!

Zippare nuovamente il file con:

gzip -9 it.kmap

Riavviare il pc, quando premerete il tasto Caps_lock invece di saltare di qualche spazio comparirà la lettera e.

CREARE E RICREARE I DEVICES IN /DEV

Collegarsi come utente root.

Come ricreare /dev/fd0:

1 possibilita':

cd /dev

./MAKEDEV fd0

2 possibilità :

mknod -m 660 /dev/fd0 b 2 0

seguito da:

chgrp floppy /dev/fd0

Credo che vada bene anche per gli altri devices

SPEGNERE IL PC IN AUTOMATICO

Metodo 1

Se avete una slackware (nel mio caso) e se non volete ricompilare il kernel andare in /etc/rc.d/rc.modules e togliere il cancelletto a /sbin/modprobe/apm.

Chiaramente si deve riavviare il pc per caricare il modulo al boot prima di provare a dare il comando: halt

Metodo 2

Per chi avesse ricompilato il kernel 2.2.x basta abilitare il modulo APM ed il pc si spegnerà in automatico. Per chi avesse ricompilato il kernel 2.4.x andare in General Setup abilitare con y sia Advanced Power Management BIOS support che Use real mode APM BIOS call to power off. Ricompilare il kernel (come descritto nei precedenti punti) ed aprire con vi il file /etc/lilo.conf. Per la vostra distro ricompilata dovrà apparire una schermata tipo questa, basta aggiungere l'ultima riga come segue:

image=/boot/bzImage
label=`Mandrake91`
root=/dev/hda5
read-only
append=`apm=power-off`
Salvare il file, ridare un lilo e riavviare il pc. Quando scriverete halt il pc si spegnerà automaticamente, 'bloccando' prima gli hard-disk e poi spegnendosi da solo.

TASTIERA ITALIANA SOTTO SLACKWARE 91

Se avete avviato kde, ricordatevi di installare anche con installpkg:

kde-i18n-it-3.1.4-noarch-1.tgz

koffice-i18n-it-1.2.1-noarch-1.tgz (non si sa mai)

Andate in Centro di Controllo di Kde, Regionali e Accesso Facilitato, Layout della tastiera, cliccare su abilita Layout della tastiera e scegliere:

Modello tastiera -> Scegliere tastiera a 105-key

Layout Principale Italiano

Politica di Cambiamento -> Globale

Cliccare su Applica.

Andare su Lingua e paese/regione, sotto Impostazioni nazionali scegliere:

Stato Italia

Lingua italiano

Sotto Denaro come valuta cancellare EUR e scrivervi il simbolo dell'euro con AltGr e Cliccare su Applica, poi su File ed infine su Esci.

Ricordarsi di settare in xf86config tastiera a 105 tasti e nazionalità italiana (40).

Adesso vediamo la shell grafica,

NB: farsi d'ora in poi una copia di tutti i files che modificheremo

Modificare il file /etc/X11/XF86Config e cambiando nella sezione Core keyboard's InputDevice section la riga da:

Option `XkbLayout` `de`
in

Option `XkbLayout` `it`
Entrare nel file /etc/profile ed aggiungere:

LC\_ALL=it\[email protected]

LANG=it\[email protected]
Copiare il file /usr/share/kbd/keymaps/i386/qwerty/it.map.gz in una directory e scompattarlo così (fare un backup del file che andremo a modificare):

gunzip it.map.gz
Editarlo poi con vi andare al punto 18 e modificarlo così comè scritto (occhio alle tabulazioni):

keycode 18 = e E currency

alt keycode 18 = Meta\_currency
Per sicurezza scriverò anche gli spazi: tra keycode e 18 ce ne sono 2

tra 18 e = ce ne sono 1

tra = ed e ce ne sono 1

tra e ed E ce ne sono 9

tra E ed currency ce ne sono 7

tra il lato e l'alt ce ne sono 8

tra l'alt e keycode ce ne sono 5

tra keycode e 18 ce ne sono 2

tra 18 e = ce ne sono 1

tra = e Meta_currency ce ne sono 1

Salvare ed uscire dal file, ricomprimerlo e sostituirlo con quello esistente:

gzip it.map.gz

cp -f it.map.gz /usr/share/kbd/keymaps/i386/qwerty/it.map.gz
Creare il file vuoto /etc/rc.d/rc.font e scirvervi all'interno:

setfont -v /usr/share/kbd/consolefonts/lat9w-14.psfu.gz
Dargli poi i permessi 770 per farlo eseguire all'avvio. Riavviare il pc e la vostra shell avrà il simbolo dell'euro.

ABILITARE NUMLOCK SU SLACKWARE 91

Sotto Kde e cliccare su:

Impostazioni > Centro di Controllo > Periferiche > Tastiera > Numlock
(Cliccare su Acceso)
Sotto la bash (per intenderci ctrl-alt-F6) inserire questa stringa in fondo al file /etc/rc.d/rc.keymap:

INITTY=/dev/tty{[}1-6{]}
for tty in \$INITTY; do
setleds -D +num < \$tty
done

GRUB SU FLOPPY DI BOOT

Se volete avere sempre un floppy di boot a disposizione, sia per sicurezza sia per fare esperimenti con i vari kernel ricompilati, grub su floppy fa per voi. Innanzi tutto installate grub sotto linux da utente root:

tar zxvf grub-0.94.tar.gz
cd grub-0.94/
./configure && make && make install
cd /usr/local/share/grub/i386-pc/
mkdir /boot/grub
cp -f * /boot/grub/

Prendete un floppy, formattatelo con file-system msdos (così sarà possibile modificare il file menu.lst sia da dos/windows che da linux) e montatelo:

fdformat /dev/fd0
mkfs.msdos /dev/fd0
mount -t msdos /dev/fd0 /mnt/floppy/
mkdir -p /mnt/floppy/boot/grub
cp /boot/grub/stage{*} /mnt/floppy/boot/grub
cp /boot/grub/fat\_stage1\_5 /mnt/floppy/boot/grub
Aprire un'altra shell e scrivere:

grub
root (fd0)
setup (fd0)
quit
Adesso non rimane che copiare, modificare o creare ex-nuovo il file menu.lst che racchiude le istruzioni per far partire un s.o. all'avvio. Se avete sbagliato qualcosa non vi preoccupate, grub al boot permette da linea di comando di modificare temporaneamente il file menu.lst e di far partire il s.o. scelto, una volta avviato dovrete modificare il file menu.lst a mano. Ecco il mio file menu.lst:

default 0
color red/black
timeout 10
#password provadiboot
title Slackware
#lock
kernel (hd0,1)/boot/bzImage root=/dev/hda2 apm=power-off
title Slackware originale
#lock
kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 hdc=ide-scsi hdd=ide-scsi
apm=power-off
title WindowsMe
#lock
root (hd0,0)
makeactive
chainloader +1
Modificate il mio file secondo le vostre esigenze, oppure createne uno nuovo. Salvate il file in /mnt/floppy/boot/grub/menu.lst e smontate il floppy:

umount /mnt/floppy
Riavviate il pc con il floppy inserito. Se per caso avete scritto qualcosa di sbagliato o non avete inserito un s.o. da avviare potete sempre farlo da riga di comando. Quando comparirà la schermata semi-grafica di grub avete la possibilità di modificare la riga che avvia il s.o. oppure di inserirne una nuova.

Ad esempio se scegliete il s.o. Slackware, premete il tasto e (sta per edit), poi di nuovo e, modificare la riga per es. togliendo `apm=power-off`, premete il tasto Esc e poi la lettera b di boot. Adesso si riavvierà il s.o. Slackware ma senza la riga power-off. Premendo la lettera c entrerete sulla lina di comando, con la lettera o editerete una nuova riga, ecc..

I vantaggi di grub sono tanti, una è quella di poter modificare a mano la riga che avvia il s.o, l'altra è quella che non ha problemi a gestire partizioni di diversi giga, non ha problemi del 1024^ cilindro (cosa che ha lilo), se avete più s.o. Su diversi dischi ho constatato che lilo mi dava grandi problemi, con grub ho risolto il tutto.

UTILIZZARE IL FORMATO .OGG VORBIS

Convertire un file .ogg in un file .wav (per informazioni man oggdec)

oggdec file.ogg
Convertire un file .wav in .ogg (per informazioni man oggdec)

oggenc file.wav
Per avere informazioni su un file .ogg

ogginfo -v file.ogg
Ascoltare un file .ogg usare xmms oppure da linea di comando:

ogg123 file.ogg
oppure

ogg123 -d alsa09 file.ogg

PRIMI PASSI CON LA SLACKWARE

Come configurare la parte grafica ??

Entrare nella shell come utente root e lanciare xf86config. In questo esempio setterò la mia scheda video Nvidia GeForce2 con risoluzione 800x600:

Invio
(Protocol Number) 4 Invio
Do you want to enable Emulate3Buttons? n Invio
Mouse device: /dev/psaux Invio
Enter a number to choose the keyboard. 4 Invio
Enter a number to choose the country. 40 Invio
Invio
n Invio
Invio
Invio
Enter your choice (1-11): 6 Invio
Enter your choice: 3 Invio
Enter an identifier for your monitor definition: Invio
Do you want to look at the card database? y Invio
349 NVIDIA GeForce GeForce (Scrivere 349 Invio)
Press enter to continue, or ctrl-c to abort. Invio
Enter your choice: 8 Invio
Enter an identifier for your video card definition: Invio
Enter your choice: 3 Invio
Which modes? 3 Invio
Do you want a virtual screen that is larger than the physical screen?
n Invio
Enter your choice: 4 Invio
Enter a number to choose the default depth. 5 Invio
Shall I write it to /etc/X11/XF86Config? y Invio

All'avvio non parte la grafica??

Andare in /etc/inittab e modificare la seguente stringa così:

id:4:initdefault:

Come configurare la stampante (4 Metodi):

1 Disinstallare lpr ed usare cups con WebAdmin con stampante parallela

Andare nella directory /usr/bin e fare un `ls -l lp*` e ci si accorgerà che di comandi lp* ce ne sono parecchi; Fare questi link (se esistessero già o non fossero validi cancellarli e rifarli):

ln -s lp-cups lp
ln -s lpstat-cups lpstat
ln -s lpr-cups lpr
ln -s lprm-cups lprm
ln -s lpq-cups lpq

A questo punto controllare che /etc/rc.d/rc.cups sia eseguibile (-rwxr-xr-x), se non lo è, dare `chmod 755 rc.cups`, poi dare `/etc/rc.d/rc.cups start`

Andare su /etc/rc.d/rc.local e commentare con un # davanti la seguente riga (se presente):

\#/usr/sbin/lpd

Andare in /etc/rc.d/rc.M e commentare queste righe (abilitare solo cups e non più lpd):

# Start the print spooling system. This will usually be LPRng (lpd)
or CUPS.
if [ -x /etc/rc.d/rc.cups ]; then
# Start CUPS:
/etc/rc.d/rc.cups start
#elif [ -x /etc/rc.d/rc.lprng ]; then
# \# Start LPRng (lpd):
# . /etc/rc.d/rc.lprng start
fi

Se /etc/rc.d/rc.cups è eseguibile, aprire un browser e scrivere:

http://localhost:631/

Cliccare su Administration e Add Printer, su name inserire il nome della stampante (es. hp610c), andare con una nuova pagina del browser su http://www.linuxprinting.org/ e poi su http://www.linuxprinting.org/printer_list.cgi, selezionare la marca e poi il modello della vostra stampante, cliccare poi su download PPD e scaricare il file in /usr/share/cups/model/.

Dentro location scrivere ad es. /usr/share/cups/model/HP-DeskJet_610C-hpijs.ppd, cliccare su continue, scegliere su Device (Parallel Port #1), ancora su continue; su Make selezionare la marca HP, su Model selezionare il modello della stampante ed infine su continue.

2 Disinstallare lpr ed usare cups Kde-Periferiche-Stampanti con stampante usb

Andare nella directory /usr/bin e fare un `ls -l lp*` e ci si accorgerà che di comandi lp* ce ne sono parecchi; Fare questi link (se esistessero già o non fossero validi cancellarli e rifarli):

ln -s lp-cups lp
ln -s lpstat-cups lpstat
ln -s lpr-cups lpr
ln -s lprm-cups lprm
ln -s lpq-cups lpq

A questo punto controllare che /etc/rc.d/rc.cups sia eseguibile (-rwxr-xr-x), se non lo è, dare `chmod 755 rc.cups`, poi dare `/etc/rc.d/rc.cups start`

Andare su /etc/rc.d/rc.local e commentare con un # davanti la seguente riga (se presente):

#/usr/sbin/lpd

Andare in /etc/rc.d/rc.M e commentare queste righe (abilitare solo cups e non più lpd):

# Start the print spooling system. This will usually be LPRng (lpd)
or CUPS.
if [ -x /etc/rc.d/rc.cups ]; then
# Start CUPS:
/etc/rc.d/rc.cups start
#elif [ -x /etc/rc.d/rc.lprng ]; then
# \# Start LPRng (lpd):
# . /etc/rc.d/rc.lprng start
fi

Se /etc/rc.d/rc.cups è eseguibile, su KDE andare su Periferiche, stampanti, in alto cliccare con il tasto dx del mouse Aggiungi stampante/classe, stampante locale (parallela, seriale, USB), Successivo, selezionare USB Printer #1 (3550) se usb come nel mio caso, cliccare su altro, e selezionare il file *.PPD della vostra stampante scaricato e salvate da http://www.linuxprinting.org/printer_list.cgi, poi su Successivo, Impostazioni, Successivo, Successivo, Successivo, Successivo, mettere il nome della stampante e poi su fine.

3 Usare lpr ed apsfilter

Una volta installato il programma apsfilter andare in /usr/share/apsfilter e scrivere ./SETUP e configurare la stampante.

4 Stampare con OpenOffice con cups, Kde-Periferiche-Stampanti-OpenOffice Gestione Stampanti

Se non riuscite a stampare con OpenOffice, seguire quanto segue:

Disinstallare il pacchetto lp (eseguire come root, pkgtool, andare su remove e togliere in pacchetto lpd-.......)

Andare nella directory /usr/bin e fare un `ls -l lp*` e ci si accorgerà che di comandi lp* ce ne sono parecchi;

Fare questi link (se esistessero già o non fossero validi cancellarli e rifarli):

ln -s lp-cups lp
ln -s lpstat-cups lpstat
ln -s lpr-cups lpr
ln -s lprm-cups lprm
ln -s lpq-cups lpq

A questo punto controllare che /etc/rc.d/rc.cups sia eseguibile (-rwxr-xr-x), se non lo è, dare `chmod 755 rc.cups`, poi dare `/etc/rc.d/rc.cups start`.

Vai qui: http://www.linuxprinting.org/printer_list.cgi ed in fondo alla pagina sotto Type: Filter clicca su uno dei download PPD (dipende dal modellodella tua stampante) e salvalo in /usr/share/cups/model/

Se /etc/rc.d/rc.cups è eseguibile, su KDE andare su Periferiche, stampanti, in alto cliccare con il tasto dx del mouse Aggiungi stampante/classe, stampante locale (parallela, seriale, USB), Successivo, selezionare USB Printer #1 (3550) se usb come nel mio caso, cliccare su altro, e selezionare il file *.PPD della vostra stampante scaricato e salvato da http://www.linuxprinting.org/printer_list.cgi, poi su Successivo, Impostazioni, Successivo, Successivo, Successivo, Successivo, mettere il nome della stampante e poi su fine.

Da Kde vai su OpenOffice Gestione Stampanti, rimuovi la stampante (se presente una generica), clicca su NewPrinter, Add Printer, Import, Browser e vai sulla cartella /usr/share/cups/model/, selezioni il file PPD da te salvato poco prima, clicchi su OK, riselezioni la tua stampante sulla lista di stampanti, Next, scrivi lpr ed infie Finish. Selezioni la stampante e clicchi su Properties (proprietà) e qui la setti.

Buona stampa.

Non parte il driver di stampa??:

Andare in /etc/rc.d/rc.local ed inserire la seguente stringa:

/usr/sbin/lpd

ed eventualmente se usate cups come driver di stampa:

cd /etc/rc.d/

chmod 755 rc.cups

./rc.cups restart

Ogni volta che vi loggate o aprite xterm compaiono diverse scritte ??

[NDR: Non preoccupatevi, non è grave, sono i \emph{fortunes}, ovvero
i ``biscottini della fortuna'' della sezione bsd-games.
Per evitare l'esecuzione ad ogni login seguite il consiglio di Panther
:) ]

chmod a-x /etc/profile.d/bsd*

Configurare l'adsl

Avviare il programma adsl-setup e configurarlo con i pochi dati richiesti. Per iniziare la connessione scrivere:

adsl-start

Per stopparla scrivere:

adsl-stop

Come installare un file .rpm su slackware:

rpm -i -nodeps -force file.rpm

[NDR: attenzione! l'uso di rpm su slack non è consigliato (beh, anche l'uso di --nodeps
 e di --force non è consigliato); se proprio non potete farne a meno provate prima
 il comando rpm2tgz]

Come convertire un file .rpm in .tgz e .tar.gz

rpm2tgz file.tgz

rpm2targz file.tar.gz

Installare, upgradare, disinstallare file .tgz su slack.

Oltre a swaret è possibile utilizzare il programma (già installato automaticamente):

pkgtool
[NDR: ovvero il gestore di pacchetti ufficiale di Patrick]

Oppure utilizzare questi comandi:

installpkg file.tgz (Per installare un pacchetto) 
removepkg file.tgz (Per disinstallare un pacchetto) 
upgradepkg file.tgz (Per aggiornare un pacchetto)
makepkg (crea un pacchetto compatibile per slackware)
explodepkg (scompatta il pacchetto nella directory seguente)

[NDR: un'altra utility simile a swaret è slapt-get [http://software.jaos.org]; per l'aggiornamento della distro dalle solo fonti ufficiali ci sono slackpkg e slackupdate]

Abilitare tutte le console (ctrl-alt-Fx)

Editare il file /etc/inittab ed inserire il numero 4 così:

c1:12345:respawn:/sbin/agetty 38400 tty1 linux
c2:12345:respawn:/sbin/agetty 38400 tty2 linux
c3:12345:respawn:/sbin/agetty 38400 tty3 linux
c4:12345:respawn:/sbin/agetty 38400 tty4 linux
c5:12345:respawn:/sbin/agetty 38400 tty5 linux
c6:12345:respawn:/sbin/agetty 38400 tty6 linux

Al prossimo riavvio le modifiche avranno effetto

Abilitare il reboot e l'halt agli utenti

Installare sudo Inserire queste due righe nel file /etc/sudoers (eventualmente rinominarlo):
utente ALL=(root) NOPASSWD: /sbin/poweroff
utente ALL=(root) NOPASSWD: /sbin/reboot
Sostituire "utente" con il nome utente che volete che faccia l'halt od il reboot e scrivere su xterm:
sudo /sbin/poweroff
sudo /sbin/reboot

next tip by Lili
Eventualmente potete aggiungere alcuni alias nel vostro file .bashrc

alias halt=``/sbin/halt''
alias shutdown=``/sbin/shutdown''
alias poweroff=``/sbin/poweroff''
alias reboot=``/sbin/reboot''
per poter digitare i comandi senza farli precedere da sudo e dal path completo.

Configurare il server Proftpd

Entrare nella directory /etc/ e modificare il file inetd.conf Trovare le 2 righe seguenti ed abilitare la seconda:
# File Transfer Protocol (FTP) server:
ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  proftpd
Salvare ed uscire da questo file ed entrare nel file /etc/proftpd.conf:
Abilitare od inserire le seguenti righe
ServerName                    "ProFTPD Default Installation"
ServerType                     standalone
ServerType                     inetd
DefaultServer                  on
RootLogin                      on 
                               (solo se si vuole accettare il login come utente root).
Salvare il file e riavviare inetd

Installare server vsftpd

Cancellare il server proftpd con:
removepkg proftpd
Installare vsftp con:
installpkg vsftp*.tgz
Andare in /etc e configurare il file vsftpd.conf Aggiungere:
listen=YES
local_enable=YES
write_enable=YES
chroot_list_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
Scegliere poi le opzioni desiderate.
Creare la directory empty:
mkdir /usr/share/empty
touch  /etc/vsftpd.chroot_list
Infine scrivere:
vsftpd &
Se si vuole che il server ftp parta all'avvio inserire la stringa in: /etc/rc.d/rc.local

AGGIORNARE FEDORA IN MODO SEMPLICISSIMO

by Gianni Giusti ([email protected])

Ho cercato su internet i migliori siti che contengono i pacchetti di fedora (anche i più strani). Tra questi ho selezionato i repository più veloci. Successivamente ho installato il programma Synaptic che è un interfaccia grafica a apt-get. Risultato: adesso ho un un programma di installazione programmi (Synaptic) che ti scarica anche la macchinetta per fare il caffè :-)

Altro che windows....provare per credere.

Se volete configurare anche voi apt-get e synaptic con la lista dei repository che uso, dovete procedere in questo modo (lungo ma semplicissimo).

1)scaricate e installate il pacchetto apt:

http://ftp.freshrpms.net/pub/freshrpms/fedora/linux/1/apt/apt-0.5.15cnc3-0.1.fr.i386.rpm
2) andate sotto /etc/apt/

3) editate il file sources.list e incollate il testo sotto, cancellando quello che c'è gia:

# List of available apt repositories available from ayo.freshrpms.net.
# This file should contain an uncommented default suitable for your
system.
# See http://ayo.freshrpms.net/ for a list of other repositories
and mirrors.
# \$Id: sources.list.i386,v 1.3 2003/11/26 10:07:55 dude Exp \$
# Fedora Linux 1
rpm http://ayo.freshrpms.net fedora/linux/1/i386 core updates freshrpms
#rpm http://ayo.freshrpms.net fedora/linux/1/i386 tupdates
#rpm http://ayo.freshrpms.net fedora/linux/1/i386 extras alternatives
#rpm-src http://ayo.freshrpms.net fedora/linux/1/i386 core updates
freshrpms
#rpm-src http://ayo.freshrpms.net fedora/linux/1/i386 tupdates
#rpm-src http://ayo.freshrpms.net fedora/linux/1/i386 extras alternatives
### Dag Apt Repository for Red Hat Fedora Core 1 (rhfc1)
rpSm http://apt.sw.be redhat/fc1/en/i386 dag
#newrpms.sunsite.dk
rpm http://newrpms.sunsite.dk/apt/ redhat/en/i386/fc1 newrpms
rpm-src http://newrpms.sunsite.dk/apt/ redhat/en/i386/fc1 newrpms
rpm http://rpm.livna.org/ fedora/1/i386 stable unstable testing
rpm-src http://rpm.livna.org/ fedora/1/i386 stable unstable testing
rpm http://dries.studentenweb.org apt/fedora/fc1/i386 dries
rpm-src http://dries.studentenweb.org apt/fedora/fc1/i386 dries
4) Andate sul terminale e posizionatevi sulla cartella /tmp/

5) Eseguite i seguenti comandi:

wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
wget http://rpm.livna.org/RPM-LIVNA-GPG-KEY
wget http://newrpms.sunsite.dk/gpg-pubkey-newrpms.txt
wget http://freshrpms.net/packages/builds/apt/RPM-GPG-KEY.freshrpms
6) eseguiti il comando (sempre sotto /tmp/):

rpm --import RPM-GPG-KEY.dag.txt
rpm --import RPM-LIVNA-GPG-KEY
rpm --import gpg-pubkey-newrpms.txt
rpm --import RPM-GPG-KEY.freshrpms
7) Adesso eseguite il comando (sempre da terminale):

apt-get update
in questo modo verrà scricata la lista dei pacchetti disponibili e le dipendenze

8) adesso lanciate il comando:

apt-get install synaptic
In questo modo installiamo il programma Synaptic

9) Adesso andate sul menu principale (cappello rosso), andate sul menu `strumenti di sistema` e lanciate l'applicazione `Synaptic...`

10) I pulsanti che vi trovate di fronte sono:

`Update list` -> Aggiorna la lista disponibile on-line dei pacchetti
scaricabili

`Upgrade system` -> aggiorna tutti i pacchetti vecchi

`Execute` -> Esegue le installazioni e disinstallazioni che avete
selezionato
Sulla sinistra è presente un riquadro in cui potete inserire il pacchetto da installare.

Il programma vi mostra il pacchetto, vi dice se è già installato, la versione, la versione presente on-line ecc...

Non vi resta che selezionarlo e decidere (tramite i pulsanti di sinistra), se installarlo disinstallarlo ecc...

UTILITY FIREFOX E THUNDERBIRD

Java su Firefox

Scaricare java per linux e scompattarlo per es. in: /usr/local/ avrete così la directory:
/usr/local/j2re1.4.2_01/
Installare Firefox o Mozilla per es. in: /usr/local/ avrete così la directory: /usr/local/Firefox/ Non rimane che copiare il link di un file dentro la directory plugin di Firefox. Nel mio caso ho dato questo comando:
ln -s
/usr/local/j2re1.4.2_01/plugin/i386/ns610-gcc32/libjavaplugin_oji.so
/usr/local/Firefox/plugins/

Installare plugin macromedia flash ed i font su Firefox.

L'installazione è stata fatta su Slackware 9.1 Scaricare il plugin di macromedia flash da qui:
http://
www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash
La versione è: install_flash_player_6_linux.tar.gz Scompattarlo con
tar zxvf install_flash_player_6_linux.tar.gz
Installiamo i font urw. Scaricare il file urw-fonts-1.0.7pre22.tar.bz2 (o una versione successiva) dal sito: ftp://ftp.izmiran.rssi.ru/pub/fonts/urw/ Scompattare questo file cosi:
cp urw-fonts-1.0.7pre22.tar.bz2 /usr/X11/lib/fonts/Type1/
cd /usr/X11/lib/fonts/Type1/
bunzip urw-fonts-1.0.7pre22.tar.bz2
tar xvf urw-fonts-1.0.7pre22.tar (sovrascrivere i files presenti se
richiesto)
fc-cache
Installiamo i font TrueType da Windows.
cd /usr/X11/lib/fonts/TTF/
mkdir msttf
Montare la partizione di windows e copiamo i font su linux.
cp -f /mnt/windows/fonts/ari*.ttf msttf/
fc-cache msttf
Installiamo anche i font Times New Roman.
cp -f /mnt/windows/fonts/times*.ttf msttf/
fc-cache msttf

Adesso entriamo nella directory install_flash_player_6_linux appena creata e scriviamo: ./flashplayer-installer Premere 3 volte il tasto Enter, digitare la directory del browser, ad es. /usr/local/Firefox/ Infine premere il tasto y e poi il tasto n L'installazione è completata, chiudere eventualmente il browser, se aperto e poi riaprirlo.

Aprire Firefox da Thunderbird

Andare nella directory thunderbird nella propria home page (dove si trova il file bookmarks.html), ad es: /home/.thunderbird/Default User/ue0y72hv.slt/ oppure /home/.thunderbird/default.wbu/ Entrate nella directory *default* (sarà sicuramente diversa dalla mia) e vedere se esiste il file user.js, se no crearlo ed inserire la seguente stringa all'inizio:
user_pref("network.protocol-handler.app.http", "/usr/local/Firefox/firefox");
Modificarlo a seconda di dove è il file eseguibile firefox. chiudere Thunderbird, se aperto, riaprirlo, se adesso cliccate su un link si aprirà firefox.

Aprire i link in tab diversi da thunderbird in firefox?

(Grazie a Leone2000) E' un casino ma dopo ore di googleggiamenti ho preparato questo: Mettere in
~/.thunderbird/<cartella_del_profilo>/user.js (se non esiste, crearlo):
user_pref("network.protocol-handler.app.http", "/usr/local/bin/firefox-start");
user_pref("network.protocol-handler.app.https", "/usr/local/bin/firefox-start");
user_pref("network.protocol-handler.app.ftp, "/usr/local/bin/firefox-start");

Successivamente creare in /usr/local/bin lo script firefox-start che contiene:

#!/bin/bash
### la sintassi -remote non funziona se è già aperto thunderbird!
###/usr/local/firefox/firefox -remote "OpenURL($1,new-tab)"
/usr/local/firefox/mozilla-xremote-client OpenURL\($1,new-tab\)
if [ $? -gt 0 ]; then
/usr/local/firefox/firefox $1
fi

Inviare le email da Firefox, aprendo il gestore di posta.

Creare il file user.js nella directory: /tuahome/.mozilla/firefox/default..../ Inserirvi all'interno la scritta:
user_pref("network.protocol-handler.app.mailto", "/usr/local/Thunderbird/thunderbird"); Salvare il file, chiudere sia il browser che il gestore di posta (in questo caso Thunderbird), riaprire solo Firefox e cliccare su un link email.

USARE LA TV CON UNA ATI RADEON 7200

Curato da: Leonardo Lorenzetti aka Leone2000 (leone2000 (at) inwind.it) (Grazie)

Premessa:

Ho pensato di scrivere questo post per aiutare chi come me possiede una ATI Radeon 7200 e vuole usare l'uscita TV su Linux. Ho girato parecchio su internet e mi sono accorto che e' opinione diffusa che cio' non si possa fare con ATI precedenti alla serie 9000 per tutta una serie di problematiche legali relative al macrovision & c. Ebbene io ci sono riuscito e ora vi spiego come (dalle mie parti sono famoso per aver sempre fatto funzionare sotto linux qualsiasi cosa abbia piu' di una resistenza e un condensatore ^__^)

Iniziamo:

Requisiti

Io lo sto usando su una Slackware 9.1 con kernel e Xfree86 di default quindi rispettivamente 2.4.22 per il kernel e 4.3.0 per Xfree86

Occorrente

Innanzitutto scarichiamo i drivers ati radeon del progetto gatos io ho scaricato ati-4.3.0-14.i386.tar.gz ma sinceramente credo che sia superfluo i drivers presenti in Xfree86 4.3.0 secondo me dovrebbero gia' andare bene, comunque li trovate qui:
http://sourceforge.net/project/showfiles.php?group_id=12629
Poi ci occorre un progammino chiamato atitvout lo potete scaricare qui'
http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/atitvout-0.4.tar.gz

All'opera

Assicuratevi che quando X parte sia configurato con il driver radeon. Da console lanciate atitivout auto pal, e' importante che lo facciate con il cavo collegato alla tv e che la tv sia accesa. Fatto questo uscira' fuori un errore: "VBE call failed. Maybe this command is not supported by your graphics adapter? Did your parameters (if you specified some) really make sense? Please try all other available commands before complaining!" Fregatevene!!!! Ora viene il bello, andate sul file di configurazione /etc/X11/XF86Config e nella sezione Device cambiate il Driver da radeon a vesa ed inoltre aggiungete le seguenti righe:
Option "TVOut" "1"
Option "TVStandard" "PAL-B"

Il risultato finale deve essere simile a questo:

Section "Device"
Identifier "Ati Radeon 7200"
Driver "vesa"
#Driver "radeon"
Option "TVOut" "1"
Option "TVStandard" "PAL-B"
VideoRam 65536
EndSection

Ci siamo

A questo punto un riavvio di X con Ctrl+Alt+BS compiera' la magia.... vedrete l'output sia sul monitor che sulla tv... mentre vi scrivo sto vedendo uno strepitoso Gigi Proietti in "Febbre Da Cavallo" ahahahhah!!!!

CONFIGURARE GNOME

Configurare gdm per avere i pulsanti Riavvia e Arresta computer:

Da root aprire xterm e scrivere: gdmsetup andare in Sicurezza selezionare mostra il menù Azioni: se volete altre opzioni cliccate anche le due opzioni sotto. Sotto Generale potete far fare anche il login in automatico ad un utente, ecc..... Il file di configurazione di gdm è in /etc/X11/gdm /gdm.conf le righe interessate per lo shutdown e il reboot sono:
RebootCommand=/sbin/shutdown -r now;/usr/sbin/shutdown -r now
HaltCommand=/usr/bin/poweroff;/sbin/poweroff;/sbin/shutdown -h now;/usr/sbin/shutdown -h now

Ridurre le icone ed aprirle con un solo click del mouse sotto gnome:

Preferenze Desktop, Gestione dei file, Preferenze vista a icone.

Lista di finestre aperte sulla barra degli strumenti:

Tasto dx sulla barra, Aggiungi al pannello, utilità, lista finestre.

Programmi

VI ED EMACS PER MODIFICARE UN FILE DI TESTO

VI

NDR: precisazioni su insert mode - command-mode by Lili

Vi(m), al contrario della maggior parte degli editor, utilizza differenti modalità a seconda del tipo di lavoro che dovete fare. La semplice scrittura del testo avviene in insert mode (modalità inserimento), mentre i comandi di salvataggio e uscita, ad esempio, possono essere dati solo in command mode.

E' importante tenere a mente questa distinzione, per evitare di impazzire subito: ricordatevi anche che Vi(m) parte sempre in command mode.


Questi i comandi per le operazioni basilari:


vi nomefile = per creare o aprire (se gia' esistente) un file

tasto i per iniziare a scrivere e quindi entrare in modalità inserimento

tasto Esc per tornare in command mode


Premere Esc per entrare in command mode prima di dare i seguenti comandi (non dimenticare il carattere : )


: w tasto invio per salvare il file.

: w (nome file) per salvare il file con il nome scelto.

: q tasto invio per uscire da vi.

: q! per uscire senza salvare.

Altri comandi utili

NDR: this section by Lili

In command mode:

[premere ESC]


u annulla l'ultima operazione

shift-r ripristina l'ultima operazione annullata


a inizia l'inserimento subito dopo il cursore

o va a capo e inizia l'inserimento nella riga successiva


x cancella il carattere corrente [quello su cui trova il cursore ;)]

dd cancella la riga corrente (e la copia in memoria)

dw cancella la parola corrente

yy copia la riga corrente in memoria: è pressappoco l'equivalente di un 'incolla'

yw copia la parola corrente in memoria

p incolla il testo contenuto in memoria (es: l'ultima frase cancellata)


yn copia n righe in memoria

ynw copia n parole in memoria

Lo stesso principio si applica ai comandi di cancellazione dn, dnw


: ! comando permette di eseguire un qualsiasi comando di shell senza uscire da Vi(m)

Comandi di ricerca e sostituzione

La ricerca all'interno di un documento si effettua allo stesso modo delle manpages, ossia attraverso lo slash e l'uso di espressioni regolari. In command-mode scrivere:


$\slash$ testodacercare

n per ripetere la ricerca

N per ripetere la ricerca all'indietro


Sostituzioni semplici di lettere o parole si effettuano con

r nuovalettera sostituisce la lettera sotto il cursore con $nuovalettera

R nuovelettere entra in modalità sostituzione finchè non viene premuto il tasto ESC


Per effettuare sostituzioni all'interno del testo, Vi(m) permette di utilizzare comandi sed. Ad esempio, per sostituire una parola con un'altra (windows con linux):


:%s/windows/linux oppure Esc :%s/windows/linux/gc

% cerca in tutto il documento

s è il comando di sostituzione

g dice di cercare ogni occorrenza dell'espressione da sostituire

c chiede conferma prima della sostituzione


Per commentare intere porzioni di testo:

:RIGAINIZO,RIGAFINEs/^/#/

End Of Lili section

Esempi

Copiare una riga intera:

Premere Esc, posizionarsi sulla riga e scrivere 2 volte y, posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Copiare 2 o più righe

Premere Esc, posizionarsi sulla riga e scrivere y1, posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Se le righe sono 3 scrivere y2, se sono 4 scrivere y3 ecc....

Copiare la prima parola di una riga vicino al cursore

Premere Esc, posizionarsi sulla riga e scrivere yw, posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Copiare le prime 3 parole di una riga vicino al cursore

Premere Esc, posizionarsi sulla riga e scrivere y2w, posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Cancellare la riga corrente

Premere Esc dd

Tagliare la riga corrente ed incollarla

Premere Esc dd posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Cancellare le successive 4 righe

Premere Esc d3

Tagliare le successive 4 righe ed incollarle

Premere Esc d3 posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Cancellare la parola corrente

Premere Esc dw

Tagliare la parola corrente ed incollarla

Premere Esc dw posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

Cancella 3 parole successive

Premere Esc d3w

Tagliare le 3 parole successive ed incollarle

Premere Esc d3 posizionarsi dove si vuole incollare il testo selezionato e premere il tasto p

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

Muovere il cursore

Premere i tasti con le frecce sulla tastiera oppure

ctrl f sposta il cursore in avanti

ctrl b sposta il cursore indietro

ctrl n sposta il cursore alla linea successiva

trl p sposta il cursore alle linea precedente

Altri comandi

ctrl k la la linea dove si trova il cursore

ctrl y permette di tornare indietro nelle operazioni precedenti

ctrl g interrompre ciò che si sta facendo

ctrl j sposta verso il basso il testo sottostante dopo il cursore

ctrl s permette di cercare del testo (scrivere in basso la parola da cercare)

Esc info

Esc x (premere poi 2 volte la barra spaziatrice)

FAX CON EFAX

Per mandare e ricevere fax usare efax, lo si trova in tutte le distro, oppure scaricarlo da internet, al momento la versione è: efax-0.9.tar.gz

Scompattare il file e dare make e poi make install.

Basta modificare lo script /etc/fax.conf oppure /usr/bin/fax andando a modificare queste righe.

DEV=modem oppure ttyS1 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 :

Inviare un fax:

fax send n.telefono FILEDAINVIARE (per mandare 1 file allegato)

Es: fax send 061234567 /root/prova.txt

Ricevere un fax:

efax -d /dev/ttyS1 -w -is0=1 2>&1 >> FAX.LOG (per ricevere fax)

[ /dev/ttyS1 è la com1 e 1 è il numero di squilli prima della ricezione (verranno creati file 001 002 nella directory)]

Visualizzare un fax:

Utilizzare OpenOffice per visualizzare i file *.001 *.002

fax view (per vedere il fax mandato)

Programma grafico per gestire efax

Sono necessari i seguenti pacchetti:

efax-gtk, gtkmm, libgtkglextmm, libsigcplusplus

Ad esempio, per Slackware 9.1 basta andare su http://www.linuxpackages.net e nel search inserire per es.(gtkmm, libgtkg, libsigc)
efax-gtk-2.2.6-i686-1.tgz
gtkmm-2.2.8-i686-1.tgz
libgtkglextmm-1.0.1-i686-1bux.tgz
libsigcplusplus-1.2.5-i686-1bux.tgz

Avviare il programma eseguendo: efax-gtk

MASTERIZZARE, ECCO COME !!!!

E' possibile individuare il proprio device con cdrecord -scanbus (il mio cdrom /dev/scd0 e' 0,0,0 e il mio masterizzatore /dev/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

Velocità di masterizzazione

se volete masterizzare ad una certa velocità basta inserire vicino a cdrecord la seguente linea: -speed=4 se volete masterizzare a 4x Se non funziona: -speed=4 usare --speed=4 Non inserendo questa scritta si masterizzerà alla massima velocità possibile

Prelevare le tracce audio dal cd per metterle in una directory.

Inserire il cd e posizionarsi dentro /mnt/cdrom e dare:

cdda2wav -D0,0,0 -t 1 -B -x

oppure

cdparanoia -B

Masterizzare le tracce audio

.

cdrecord -v -dev=0,1,0 -speed=4 -overburn -eject -audio audio{*}.wav

Creare un'immagine ISO

.

mkisofs -v -D -J -R -T -o immagine.iso /dir-con-files-da-masterizzare

E' possibile controllare il file immagine.iso se è stato creato correttamente, basta montarlo:

mkdir /mnt/prova

mount -t iso9660 -o ro,loop=/dev/loop0 immagine.iso /mnt/prova

umount /mnt/prova

Masterizzare l'immagine ISO

.

cdrecord -v dev=0,1,0 -overburn -eject -data immagine.iso

Cd autoavviabile creiamo l'iso di OpenBsd e lo masterizziamo

La cosa importante è selezionare il file di avvio che normalmente sarebbe nel floppy nel nostro caso è floppy34.fs, quindi con questo metodo si possono scaricare distribuzioni linux complete scaricando anche l'immagine del floppy con il quale il cd si autoavvierà. (si presuppone che i files sono stati scaricati da http://ftp.sunet.se/pub/OpenBSD/3.4/i386/ e che risiedono nella directory /scarico/openbsd/, posizionarsi subito in questa directory)

mkhybrid -b floppy34.fs -c boot.catalog -l -J -L -r -o openbsd34.iso *

cdrecord -v speed=4 dev=0,1,0 -eject -data openbsd34.iso

Masterizzare in piu' volte (ricordarsi di mettere sempre una sottodirectory)

Ripulire un cd riscrivibile

.

cdrecord -eject dev=1,0 blank=fast
( ho il masterizzatore alla posizione 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 dev=1,0 -overburn mandrake.iso

Copia al volo da cd a cd (solo dati)

.

cdrecord -v -speed=4 dev=1,0 -overburn -eject -isosize /dev/scd0

Copia al volo da cd a cd (solo audio) scrivere tutto sulla stessa linea

.

cdrdao copy --driver generic-mmc --on-the-fly --device 0,1,0 -eject --source-device 0,0,0 --source-driver generic-mmc --fast-toc --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>

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)

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

Rimuovere il pacchetto

dpkg -r nomedelpacchetto.deb

Purgare (purge=rimuovere i file riguardanti il pacchetto.deb)

dpkg -P nomedelpacchetto.deb

GRUB al posto di LILO.

Installazione di grub in pochissimi semplici passi. Innanzi tutto crearsi un floppy di ripristino di linux, disinstallare lilo con:
lilo-U
dd if=/dev/zero of=/dev/iltuodiscofisso bs=512 count=1

Installare da utente root grub così:

tar zxvf grub-0.94.tar.gz
cd grub-0.94/
./configure && make && make install
cd /usr/local/share/grub/i386-pc/
mkdir /boot/grub
cp -f * /boot/grub/

Se invece grub fa parte della propria distibuzione preferita, andare a reperire i seguenti file, che in Debian sono in /usr/share/grub/i386-pc/ ed in Mandrake in /boot/grub:

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 in /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) (primo hard-disk)
/dev/hdb --> (hd1) (secondo hard-disk)
/dev/hda1 --> (hd0,0) (prima partizione, nel mio caso c'e' WindowsMe)
/dev/hda5 --> (hd0,4) (seconda partizione, nel mio caso c' e' Mandrake)
/dev/hdb2 --> (hd1,1) (prima partizione, nel mio caso c' e' Debian)

e cosi` via, il concetto dovrebbe essere chiaro.

Il mio pc è così partizionato:

hda1 WindowsMe che sotto grub diventa (hd0,0)
hda5 Mandrake che sotto grub diventa (hd0,4)
hdb2 Debian che sotto grub diventa (hd1,1)

1^ Metodo installazione grub

Andare in /boot/grub/ e rinominare il file menu.lst in menuold.lst. Crearne un nuovo menu.lst e scrivere quanto segue (sempre secondo la mia configurazione):

default 0
color white/blue \#(white sono le scritte, blue è lo sfondo)
timeout 5
title Mandrake
kernel (hd0,4)/boot/bzImage root=/dev/hda5 apm=power-off
title Slackware
kernel (hd1,0)/boot/vmlinuz root=/dev/hdb1 hdc=ide-scsi hdd=ide-scsi
title WindowsMe
root (hd0,0)
makeactive
chainloader +1
Salvare il file ed in un shell (es. in xterm) scrivere:

grub-install /dev/hda (grub si installa nel boot-manager)
Se nella prima riga comparira ``Installation finished. No error reported'', l'installazione è finita: riavviare il pc e vedrete il vostro nuovo boot-manager.

Se volete una password al boot, nel file menu.lst sotto timeout scrivere:

password prova (scegliete la password che volete)

Sotto ogni scritta title inserite la scritta:

lock

Dipende quale sistema operativo volete rendere inaccessibile.

Scrivete poi su xterm: grub-install /dev/hda

Riavviate il pc.

Al boot se scegliete un s.o. avrete un errore:

Error 32: Must be authenticated

Dovete premere la lettera p sulla tastiera e scrivere

la password inserita in /etc/boot/menu.lst

Scegliete adesso quale sistema operativo far avviare

spontandovi con le frecce e premendo poi invio.

2^ Metodo installazione grub

Adesso creiamo il file /etc/grub.config inserendo i seguenti dati modificandoli a piacere, qui è presente la mia configurazione:

default 0 \#(indica quale voce far partire)
color black/red (colore scritte nero con sfondo rosso). Da cambiare
a piacere.
timeout 5 \#(tempo di attesa)
title Mandrake \#(primo sistema operativo da far partire)
kernel (hd0,4)/boot/bzImage root=/dev/hda5
title Debian \#(secondo sistema operativo da far partire)
kernel (hd1,1)/boot/vmlinuz-2.2.20 root=/dev/hdb2
title WindowsMe \#(terzo sistema operativo da far partire)
chainloader (hd0,0)+1 \#(deve partire dal primo settore del disco)

Salviamo il file ed andiamo in /boot/grub e digitiamo grub e comparira':

grub>

NOTA: `L'operazione sottostante è stata fatta da Mandrake (hd0,4), se la cosa fosse stata fatta da Debian avrei dovuto scrivere (hd1,1). A quanto mi risulta (hd0) deve essere fisso poichè grub viene installato nell'mbr, se fosse stato messo nella prima partizione doveva essere scritto (hd0,0)`. --->>>>>> Da testare

Adesso scriviamo:

install (hd0,4)/boot/grub/stage1 (hd0) (hd0,4)/boot/grub/stage2 p
(hd0,4) /etc/grub.config

(Scrivere da install a grub.config tutto in una riga)

Se tutto è andato bene alla fine comparirà solo la scritta grub, per salvare ed uscire scrivere quit.

Riavviate il pc ed ecco il nuovo boot-loader, per scegliere il sistema operativo utilizzare le frecce sulla tastiera. Il sistema operativo che partirà di default è Mandrake (il primo in lista), per quanto riguarda windows e la riga sottostante (chainloader ecc....) posso solo dire che così parte regolarmente. Per chi ha Debian 2.2r4 disinstallare la versione presente di grub e scaricarsi via internet. Così a me funziona. Va detto che seguendo il primo metodo, nel caso caso facciate delle modifiche non occorre scrivere sempre grub-install /dev/hda: grub acquisisce automaticamente le modifiche fatte al contrario di lilo.

3^ Metodo - Installazione grub con dischi scsi

.

Grazie a Giamma per il contributo.

Ecco come ho installto Grub sul mio hdd:

La versione che ho usato è la: 0.9.3 Per installare Grub sul disco hd0 dopo aver installato grub ho creato una directory /boot/grub e vi ho copiato tutti i file che ho trovato dentro /usr/local/share/grub/i386 ed ho aggiunto anche il file menu.lst precedentemente creato come sotto quindi dalla directory /boot/grub ho digitato:

grub

root (hd0,0) dovrebbe riconoscere il filesistem del disco hd0 setup (hd0) cerca i file stage1 e stage2 e si installa
quit

Per far partire con grub windows che si trova su hdd SCSI (e se presente anche dischi EIDE sullo stesso PC): modificare menu.lst come sotto ( questo title deve essere l'ultimo ):

title windows

rootnoverify (hd1,0) 1
makeactive (1)
chainloader +1
map (hd0) (hd1)
map (hd1) (hd0)
boot

spiegazione di quanto sopra

:

rootnoverify (hd1,0) 1
per ora il disco SCSI non è hd0 ma è quello dopo l'ultimo disco EIDE (nel mio caso il secondo, quindi hd1) (1 finale dice a grub di usare il bios scsi per quel disco anziche il bios della scheda madre) map (hd0) (hd1)
map (hd1) (hd0)
(queste due righe map scambiano il disco scsi facendolo diventare il primo disco (quindi c:)

Tutto questo perche grub assegna sempre ad EIDE il primo disco (c:) Se si vuol prevedere anche un reboot da windows sarà meglio mettere un'altro title come sotto ( i dischi sono già stati scambiati prima con l'avvio):

title reboot winsoz

rootnoverify (hd0,0)
makeactive (1)
chainloader +1
boot

(questo non l'ho però provato)

Per chi ha Debian 2.2r4 disinstallare la versione presente di grub e scaricarsi via internet. Così a me funziona. Va detto che seguendo il primo metodo, nel caso caso facciate delle modifiche non occorre scrivere sempre grub-install /dev/hda grub acquisisce automaticamente le modifiche fatte al contrario di lilo.

MASTERIZZARE MP3->WAV->MP3->FILE AUDIO

Convertire da mp3 a wav:

mpg123 file.mp3 -w nuovofile.wav

Convertire da wav a mp3

(installare il programma lame http://lame.sourceforce.net/)

lame -h -b 128 nuovofile.wav file.mp3

Creare un cd audio partendo dagli mp3:

Creare uno script:

#!/bin/sh

for I in *.mp3

do

mpg123 -cdr - `$I` > `$I.cdr`;

done

Dargli tutti i permessi ed eseguirlo.

Creare un cd audio partendo dai wav:

Creare uno script:

#!/bin/sh

for I in *.mp3

do

mpg123 -cdr - `$I` | cdrecord -audio -pad -nofi -

done

cdrecord -fix

Dargli tutti i permessi ed eseguirlo.

COME UTILIZZARE LE SCHEDE NVIDIA PER IL 3D

Chi la una slacware il file da modificare è: /etc/X11/XF86Config

Per chi usa una distro ``vecchia''

Scaricare dal sito http://www.nvidia.it i 2 file che al momento sono NVIDIA_kernel-1.0-2802.tar.gz e NVIDIA_GLX-1.0-2802.tar.gz e scrivere di seguito:

tar zxvf NVIDIA_kernel-1.0-2802.tar.gz

tar zxvf NVIDIA_GLX-1.0-2802.tar.gz

Una volta scompattato entrare in ognuna delle 2 directory e scrivere:

make && make install

Entrare nel file /etc/rc.d/rc.local ed in fondo al file scrivere:

/sbin/modprobe NVdriver

continua sotto ........

Distro con kernel 2.4

Per chi utilizza una delle ultime distro tipo Mandrake 9.1 scaricare dal sito www.nvidia.com il file per linux (disponibile in questo momento NVIDIA-Linux-x86-1.0-5328-pkg1.run) ed installarlo da modalità testo (Ctrl-Alt-F1 oppure F6):

ps ax

cancellare i pid con la grafica (X:0, kdm, /usr/X11R6/bin/X ecc..)

chmod 770 NVIDIA-Linux-x86-1.0-5328-pkg1.run

sh NVIDIA-Linux-x86-1.0-5328-pkg1.run

Se vi da errore cancellate il file /tmp/.X0-lock e riprovate.

Per chi ha ricompilato il kernel non deve aver selezionato l'opzione Frame-buffer support dentro Console drivers.

continua sotto .........

Distro con kernel 2.6

Per chi utilizza il kernel 2.6 scaricare dal sito http://www.sh.nu/download/nvidia/ il file (disponibile in questo momento NVIDIA-Linux-x86-1.0-5328-pkg0.run) ed installarlo da modalità testo (Ctrl-Alt-F1 oppure F6):

ps ax

cancellare i pid con la grafica (X:0, kdm, /usr/X11R6/bin/X ecc..)

sh NVIDIA-Linux-x86-1.0-5328-pkg0.run

Se vi da errore cancellate il file /tmp/.X0-lock e riprovate.

Per chi ha ricompilato il kernel non so se deve aver selezionato l'opzione Frame-buffer support dentro Console drivers.

continua sotto .........

Una volta installati il o i drivers continuare con queste opzioni.

Entrare nel file /etc/X11/XF86config-4 (se non c'è entrare nel file XF86config) e sostituire la riga:

driver `nv`

con

driver `nvidia`

Inserire le righe:

Load `glx`

Load `dri`

e disabilitare

Load `dbe`.

Salvare e riavviare, scrivere startx,se vedete il logo Nvidia siete a posto.

Se notate problemi al riavvio, andare su ctrl-alt-F6, loggarsi e modificare il file /etc/X11/XF86Config-4, reinserire nv al posto di nvidia.

Riavviare il pc.

Piccolo problema, una volta installato il nuovo driver NVIDIA, ho notato un problema all'avvio di xawtv (programma per vedere la tv), in pratica non si vede, lo schermo è nero ed ho il seguente errore:

Warning: Cannot convert string `-*-ledfixed-medium-r-*-39-*-*-*-c-*-*-*` to type FontStruct

Ho `risolto` scrivendo il device a cui si appoggia:

xawtv -c /dev/video0

oppure anche utilizzando un altro programma, tvtime.

Intanto, buon divertimento con il gioco tuxracer.

COME INSTALLARE MULINUX

Mettere tutti i pacchetti dentro una directory (es. mu), scompattare il file dostools.zip, copiarvici all'interno nella directory appena creata(c:\mu\dostools) il file mulinux-13r0 (o la versione che si vuole), lanciare il file unpack ed il file mulinux-13r0 verrà scompattato all'interno. Se invece si vuole creare il floppy di installazione lanciare il file makefi e premi enter. Ritornare nella directory c:\mu e scompattare il file mulinux-13r0.zip (se ti viene posta una domanda rispondere si), all'interno della directory creata copiarci tutti i file compressi scaricati dal sito mulinux compresi lo stesso file mulinux-13r0.zip ed il file dostools.zip. Adesso o si riavvia il pc con il floppy inserito appena creato, oppure andare in modalità msdos pura (premere il tasto F8 appena parte windows e scegliere l'ultima opzione (prompt dei comandi in modalità provvisoria) od anche usare il floppy di ripristino di win98. Se si usa il floppy si incontrerà il menù, se invece si utilizza il dos entrare in c:\mu\dostools (cd mu\dostools) e lanciare il file boot, in questa maniera si va allo stesso menù del floppy che ti ho appena descritto. Al menù che compare ci saranno 4 opzioni:

1)Installare mulinux solo su più floppy (dipende da quanti file zippati sono stati messi in c:\mu\mulinu13r0 )

2)Installare mulinux solo su hard-disk dentro msdos (creerà una directory c:\linux in automatico)

3)Si ritorna in modalità testo

4)Si riavvierà il pc

Scegliere il n^ 2.

Compariranno la o le partizioni del tuo disco fisso, si dovrà installare mulinux dove è installato windows, es. /dev/hda1 (si dovrà scrivere o premere invio per confermare)

Adesso il programma chiede dove sono i files scaricati dal sito e bisogna scrivere: /mu/mulinu~/ e premere invio. Il carattere tilde (l' ''ondina'') si fa con alt126 . Il programma creerà la directory c:\linux ed alla fine chiederà di riavviare il computer, si dovrà premere 0 e ripremere enter. Ritornare in msdos puro, vai in c:\linux (cd linux) e lanciare il file linux. Alla domanda dello swap scegliere no ed alle altre scegliere si, dopo di che iniziare la vera e propria installazione.

CLUSTER LINUX CON OPENMOSIX.

Per chi utilizza la Mandrake 9.0 adesso è disponibile la patch openMosix-2.4.19-7.gz

per il kernel 2.4.19.

Utilizzare il source del kernel già presente nei cd di installazione oppure scaricare e copiare il kernel linux-2.4.19.tar.gz, posizionarsi in /usr/src e scompattare il kernel appena scaricato:

tar zxvf linux-2.4.19.tar.gz (oppure tar xvf linux-2.4.19.tar)
Trasferire il file openMosix-2.4.19-7.gz in /usr/src ed entrare nella cartella (linux o linux-2.4.19) appena creata e scrivere:

zcat ../openMosix-2.4.19-7.gz | patch -p1

make mrproper

make menuconfig
Compilare il kernel e selezionare dentro OpenMosix (il primo in alto), selezionate le opzioni che vi interessano. Per le altre impostazioni del kernel selezionate le periferiche del vostro pc, scegliete ciò che vi interessa (scheda audio, di rete, masterizzatore, scanner ecc..).

Salvare ed a questo punto dare un:

make dep \&\& make clean \&\& make bzImage \&\& make modules \&\&
make modules\_install

cp System.map /boot (sovrascrivere il file già presente)

cd arch/i386/boot

df

rdev -R bzImage l /dev/hda5 (controllare con df la partizione linux)

cp bzImage /boot
Ricontrollare lilo o grub che carichi il file /boot/bzImage, esempio:

image=/boot/bzImage

label=Linux

root=/dev/hda5

read-only

1)Entrare nel file /etc/inittab ed inserire la stringa:

/bin/mosrun -h

all'interno del file inserire la stringa solo in queste righe e come in questo esempio:

# System initialization.(Tralasciare la prima riga che per me è si::sysinit:/etc/rc.d/rc.sysinit)

l0:0:wait:/etc/rc.d/rc 0

che diventerà

l0:0:wait:/bin/mosrun -h /etc/rc.d/rc 0

fare la stessa cosa anche per le altre righe fino alla numero 6 (l'ultima)

# Things to run in every runlevel.

ud::once:/sbin/update

che diventerà

ud::once:/bin/mosrun -h /sbin/update

# Trap CTRL-ALT-DELETE

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

che diventerà

ca::ctrlaltdel:/bin/mosrun -h /sbin/shutdown -t3 -r now

Salvare ed uscire dal file.

2)Creare il file /etc/mosix.map e scrivervi:

1 [IP prima macchina] [numero macchine]

1 192.168.1.1 2 (Ho due pc in camera mia)

Questo file deve essere lo stesso per tutti i pc in cluster e l'indirizzo indicail primo pc server che fa da cluster al quale tutti si `appoggiano`. Mi spiego dal `primo pc` che usate attraverso il programma mosmon (all'interno dei tools di openmosix` è possibile vedere anche gli altri pc in cluster.

3)Copiare il file scritto qui sotto dove volete

(es nella directory che creerete`mkdir /omosix`), rinominarlo in openmosix e lanciarlo all'avvio. Basta mettere un link in fondo al

file /etc/rc.d/rc.local, es:

cd /omosix && ./openmosix start

Dare un chmod 777 al file /omosix/openmosix

####---------------------------Copiatelo da qui in giù----------------------------#####

#! /bin/sh
#chkconfig:2345 95 5
#daemon openmosix

stop_mosix() {
echo 0 > /proc/hpc/admin/mospe
rm -f /var/lock/subsys/openmosix
}

start_mosix() {

OVERHEADS=/etc/overheads
MFSCOSTS=/etc/mfscosts

if [ -s $OVERHEADS -a -f /proc/hpc/admin/overheads ]; then
/bin/grep -v ^# $OVERHEADS > /proc/hpc/admin/overheads

fi

if [ -s $MFSCOSTS -a -f /proc/hpc/admin/mfscosts ];
then /bin/grep -v ^# $MFSCOSTS > /proc/hpc/admin/mfscosts

fi

a1=
[ -s /etc/mospe ] && a1=-p 'cat /etc/mospe'
a2=
[ -s /etc/mosgates ] && a2=-g 'cat /etc/mosgates'
/sbin/setpe -W $a1 $a2 -f /etc/mosix.map
cat /proc/hpc/admin/speed > /proc/hpc/admin/sspeed
touch /var/lock/subsys/openmosix
}

alarm() {
t=$2
while :
do
case $t in 0) break ;; esac
sleep 1
t=$(($t-1))
done
kill -1 $1
exit 0
}

#See how we were called
case $1 in
start )
echo Initializing openmosix
if [ ! -f /etc/mosix.map ]
then
echo You have no mosix configuration
-please edit yours now:
echo -n Editor to use [q to quit] - [vi] :-
trap echo Timed-Out ; exit 1 1
alarm $$ 120 &
killer=$!
read editor
kill $killer
trap
case $editor in [qQ]) exit
;;
*) editor=/usr/bin/vi
[ -f $editor ] || editor=/bin/vi
;;
esac

echo #MOSIX CONFIGURATION > /etc/mosix.map
echo #====================>> /etc/mosix.map
echo # >> /etc/mosix.map
echo # Each line should contain 3 fields, mapping IP address to mosix node numbers: >>
/etc/mosix.map
echo # 1) first MOSIX node number in range. >> /etc/mosix.map
echo # 2) IP address of the above node (or node-name from /etc/hosts). >> /etc/mosix.map
echo # 3) number of nodes in this range. >> /etc/mosix.map
echo # >> /etc/mosix.map
echo # MOSIX-# IP number-of-nodes >> /etc/mosix.map
echo # ============================ >> /etc/mosix.map

$editor /etc/mosix.map
echo
while :
do
echo If this node s standard IP address is not part
echo of the table that you just edited, because MOSIX
echo uses a different or separate network,
echo you need to type this node s MOSIX-number now.
echo
/bin/echo -n Otherwise please press only <Enter> :-
read me
case $me in *) /bin/rm -f /etc/mospe ; break ;;
[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-6][0-9][0-9][0-9][0-9])

echo $me > /etc/mospe ; break ;;

*) echo Improper MOSIX number please try again: ;;

esac

done
fi
start_mosix ;;
stop)
echo Stopping openmosix
stop_mosix ;;
status)
/sbin/setpe -r ;;
restart|reload)
echo Restarting openMosix
stop_mosix
start_mosix ;;
*)
echo Usage: openmosix{start|stop|status|restart|reload}
exit 1
esac

exit 0 



####---------------------------Copiatelo fino a qui----------------------------#####
Per fermare /omosix/openmosix basta scrivere:

cd /omosix && ./openmosix stop

oppure per riavviarlo:

cd /omosix && ./openmosix restart

4)Scaricare il file openmosix-tools-0.2.2.tar.gz od il file openMosixUserland-0.2.0.tar.gz (consigliato)

scompattarli con (tar zxvf) in una directory a piacere ed installarli (seguire il file INSTALL all'interno).Dovrete configurare il file configure ed indicare dove si trova la patch di openmosix, cancellate la scritta e sostituitela con questa:

# Here is an OpenMosix kernel

OPENMOSIX = /usr/src/linux-2.4.19

Uscire e salvare il file ed installarlo con:

make all

Se da errore allora provare con questa riga, omettendo mos:

OPENMOSIX = /usr/src/linux-2.4.19

Una volta installati, riavviare il pc e lanciarli dalla grafica (basta scrivere mos in xterm e compariranno tutti i programmi che iniziano per mos). Adesso non vi rimane che gestire il cluster appena creato.

MINI WEBSERVER: BOA (SOLO 118K)

Dal sito http://www.boa.org/ , scaricare boa-0.94.12.tar.gz e scompattarlo, andare in boa-0.94.12/src e scrivere come utente root:

./configure && make

Copiare il file boa in /usr/sbin e scrivere

boa -c /usr/local/boa &

Se da errore, creare la directory boa, copiarvici il file boa.conf e riscrivere il comando cosi:

mkdir /usr/local/boa && cp boa-0.94.12/boa.conf /usr/local/boa && boa -c /usr/local/boa &

Se nuovamente da errore allora creare il file access_log in /var/log :

mkdir /var/log/boa && touch /var/log/boa/access_log

Configurare eventualmente il file /usr/local/boa/boa.conf

Una volta fatte le modifiche al file boa.conf killare e far ripartire boa (vedi sotto). Inserire un file es. index.html in /var/www/, il file di esempio index.html conterrà le seguenti righe:

<html>

prova

</html>

Se su un browser scrivete l'indirizzo di rete del vostro pc, oppure localhost od anche 127.0.0.1 ecco il vostro mini webserver attivato. Se volete fermare boa basta dare un:

ps aux

(Comparirà una schermata con il numero del pid di boa, es USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND nobody 4672 0.0 0.2 1720 800 pts/3 S 00:49 0:00 boa -c /usr/local/boa/ )

killare il numero del processo:

kill 4672

Per far ripartire boa basta riscrivere:

boa -c /usr/local/boa & (Legge le impostazioni di boa.conf)

INSTALLARE E CONFIGURARE ACROBAT DENTRO NETSCAPE

Scaricare dal sito di Adobe il file linux-506.tar.gz e come utente root e scompattarlo:

tar zxvf linux-506.tar.gz

Installarlo così:

./INSTALL (premere invio)

In basso a sinistra comparirà una percentuale, premere la barra spaziatrice fino al 100%. Il testo chiederà di scrivere accept e premere il tasto invio.

Nella riga successiva si chiede la directory di installazione (lasciare quella proposta premendo ancora il tasto invio). Se la directory non esiste premere il tasto y per farla creare in automatico dal programma di installazione. Adesso basta copiare l'eseguibile in /usr/bin ed il plugin di acrobat nella directory plugins del browser.

cd /usr/local/Acrobat5/bin/ && cp -f acroread /usr/bin/

cd /usr/local/Acrobat5/Browsers/intellinux/ && cp -f nppdf.so /usr/lib/netscape/plugins/

Aprire netscape e cliccare in alto a destra sulla voce Help e poi su About Plug-ins, vedere la prima riga su Enabled compare la lettera Y. Per sicurezza andare in Edit, Preferences, Navigator, Applications e cercare la voce Portable Document Format, ossia pdf, selezionare la voce, cliccare su edit e poi su Plug-ins scegliendo nppdf.so. Cliccare su OK, OK, File ed Exit. L'unica cosa che non sono riuscito a risolvere è `l'errore` di apertura del primo file pdf che dice che c'è un errore sul font. Questo errore compare solo una volta, basta cliccare su ok e non si presenterà più finchè non chiudere ed riaprirete netscape per visualizzare un documento pdf.

PRIMI PASSI CON IL DATABASE POSTGRESQL

Scaricare l'ultima versione di postgres, nel mio caso postgresql-7.4.tar.gz e scompattarlo come utente root:

tar zxvf postgresql-7.4.tar.gz
cd postgresql-7.4
./configure
gmake
gmake install
adduser postgres (come home directory scegliere /home/postgres, se
possibile non inserire la password e farlo in un momento successivo)
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile
2>\&1 \& (Avvia postgresql, premere invio, per killarlo scrivere ps
aux)
oppure

pg\_ctl -D /home/postgres/postgres start \& (Avvia postgresql, premere
invio, per killarlo scrivere ps aux)
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test
createuser pippo (L'utente postgres può creare altri sotto-utenti
ad es. pippo)
createdb prova (Crea il database prova)
psql prova (Entro nel database prova)
create table tabella2(numerazione int, cognome text, nome varchar(20),
anni int); (Crea la tabella tabella2)

Esempio

-----------Esempio su come autoincrementare un numero------------

create sequence numerazione;
create table tabella2 (numerazione int4 not null default nextval('numerazione'),
cognome text, nome varchar(20), anni int);
create unique index numerazione\_id\_key on tabella2 (numerazione);
Adesso non rimane che scrivere per esempio:
insert into tabella2 (cognome, nome, anni) values ('Rossi', 'Alessio', 18);
insert into tabella2 (cognome, nome, anni) values ('Bianchi', 'Riccardo', 48);
select {*} from tabella2;

-----------Fine esempio----------------------------------

Comandi

\d
(Seleziona tutte tabelle)
\d
nometabella (lista tabelle)
insert
into tabella2 (numerazione, cognome, nome, anni) values ('1', 'rossi', 'mario', 18); (Inserisce i dati dentro tabella2, ricordarsi il segno ').
select
* from tabella2 (selezionare i dati dalla tabella2)
select
* from tabella2 where cognome='rossi'; (seleziona tutti i rossi)
truncate
tabelladiprova; (cancella il contenuto di una tabella)
drop
table tabella2; (Cancella tabella2 e quindi tutti i dati in essa contenuti)
update
tabella2 set nome='andrea' where nome='mario'; (Modifica ed aggiorna il
nome
da mario ad andrea nella colonna chiamata nome della tabella2)
delete
from tabella2 where nome='andrea'; (Cancella tutte le righe della tabella2 che contengono il valore specificato (andrea) nella colonna specificata (nome))
\h
(Per vedere i comandi)
\?
(per vedere la lista dei comandi)
\q
(per uscire dal database)

Sotto windows 98/ME:

Visto che postgresql è un database opensource (non come mysql che è a pagamento nel caso venga usato per farci un guadagno), lo si può utilizzare sia in ambiente linux (installato di default) sia sotto windows.

Ci occupiamo su come installare postgresql sotto windows:

Scaricare il file setup di cygwin da http://www.cygwin.com/setup.exe, lanciarlo e scegliere Install from Internet

C:\cygwin (Dove installarlo)

Install For: All Users (impostazioni)

Default Text File Type: DOS (impostazioni)

Scegliere Avanti

C:\WINDOWS\Desktop (Dove salvare i files)

Direct Connection

Scegliere un server disponibile (es. http://mirrors.kernel.org)

Cliccare sul + di Database, andare in fondo su e cliccare l'ultima voce skip nella stessa riga di postgresql. Dando uno-due click

si visualizzano le versioni, scegliere l'ultima (nel mio caso 7.3.4-2). Cliccare sulla voce n/a, diventerà un quadratino con un croce sotto la voce `Bin` ossia binario. Cliccare Avanti ed aspettare di scaricare il tutto (circa 14 mega). Avrete a disposizione così un compilatore gratuito c per windows ed il database postgresql. A fine scaricamento, viene installato tutto da se, non dovete fare nulla, solo cliccare su ok alla fine. Se controllate, adesso avete la directory c:\cygwin piena di 51 mega di files (sono i 14 mega zippati e scompattati).

Se volete installare cygwin + postgres su un altro pc, non dovete far altro che lanciare setup.exe, scegliere `Install from local directory`, scegliere la directory di destinazione (es. c:\cygwin) e poi Local Package Directory che è la directory (cliccare fino alla scritta release) di circa 14 mega che avete scaricato precendentemente.

Passiamo alla configurazione (oddio si devono lanciare solo dei comandi).

Avviate il file c:\cygwin\cygwin.bat ed aspettate che alla fine compaia il simbolo `$`

Sempre dentro la stessa finestra cygwin aperta scrivete:

ipc-daemon2 & (scrivere sempre questo comando prima di avviare il server Postgresql o di inizializzare il database).

Adesso scrivere:

initdb -D /usr/local/pgsql/data -W -E LATIN1 (creerà un cluster nella directory /usr/local/pgsql/data, verrà chiesta una password dell'amministratore)

Non rimane che avviare postgres con questo comando:

ipc-daemon2 &
initdb -D /usr/share/postgresql/data
pg_ctl start -D /usr/share/postgresql/data/
Comparirà postmaster successfully started
Aprire un altro prompt cygwin.bat e scrivere:
pg_ctl stop -D /usr/share/postgresql/data/
Aprire il file:
c:\cygwin\usr\share\postgresql\data\postgresql.conf e modificare la riga:
#tcpip_socket = false
in
tcpip_socket = true
Riavviare postgresql così:
pg_ctl start -D /usr/share/postgresql/data/

Su Windows per collegarmi da remoto modificare il file:
c:\cygwin\usr\share\postgresql\data\pg\_hba.conf\ In fondo al file inserire una riga come questa: host prova Nome_Utente 192.168.100.101 255.255.255.0 trust Quando si userà il programma pgadmin i parametri saranno questi:

Server 192.168.100.101
Porta 5432 (fisso)
SSL Disabilita
Database iniziale prova
Nome Utente Nome_Utente
Trusted lasciarlo vuoto
Password (Inserire la password di sistema di Windows)

Per gestire Postgresql in Locale o da Remoto

andare sul sito http://www.pgadmin.org/pgadmin3/index.php e scaricare la versione per Windows 9xMe oppure quella per 2000Xp e avviarla immettendo il nome utente del pc es. Panther e senza password.

Eventuali errori

:

VEDERE LA TV SU LINUX

La scheda video utilizzata è la WIN TV GO della hauppauge con chip 878A. Credo però che con questo chip questa procedura funzioni su tutte le distro, ricompilando il kernel.

La Mandrake 8.2 e la 9.0 la riconoscono come scheda con chip (Brook...), per cui dopo l'installazione comparirà una icona sul desktop.Vediamo però come farla riconoscere ricompilando il kernel 2.4.19. Vedere nelle opzioni in alto come ricompilare il resto del kernel per adattarlo al proprio pc. Quello che interessa a noi sono queste opzioni a cui va aggiunto la y o l'asterisco dipende come lo ricompilate (make mrproper e poi date make xconfig oppure make menuconfig):

Character Devices, I2C support, I2C support e I2C bit banging interfaces. Multimedia devices, Video for linux, V4L information in proc filesystem, I2C on parallel port, BT848 Video for linux, SAA5249 Teletext processor. Console drivers, VGA text consoles. Sound, Sound Card Support, BT878 audio dma, TV card (bt 848) mixer support.

Non rimane che dare:

make dep && make clean && make bzImage && make modules && make

modules_install && cp -f System /boot && cd arch/i386/boot && rdev -R bzImage

l /dev/hdx && cp -f bzImage /boot && lilo.

Configurate ovviamente il lilo per leggere bzImage all'avvio invece di vmlinuz. Riavviate il pc ed è fatta. I programmi da utilizzare per vedere la tv sono xawtvoppure zapping (le trovate su quasi tutte le distro). Per cercare le tv avviate dal prompt della shell `scantv`. Zapping è completo di televideo mentre xawtv no, ecco come rimediare. Scaricare dal sito http://www.goron.de/~froese/alevt/ l'ultima versione disponibile (al momento 1.6.1). Scompattare il file ed installarlo:

tar zxvf alevt-1.6.1.tar.gz

cd alevt-1.6.1

make && make install

Avviare xawtv e posizionarsi sul canale desiderato, aprite un prompt della shell e scrivere:

alevt

da tastiera scrivere i numeri 100 e premere invio, scegliere il numero di pagina di televideo che si vuole visualizzare.

GUARDDOG COME SI INSTALLA, SI CONFIGURA E SI USA.

by Corteccia [[email protected]]

Premessa

Questo documento rappresenta solo una piccola guida all'istallazione
e configurazine con Linux Mandrake 9.0, Guarddog è un firewall grafico,
che facilita di molto la configurazione di Iptables, per il quale
vi rimando alle informazioni contenute all'interno di questo documento.
Tutto il procedimento di istallazione e di configurazione viene trattato
sotto interfaccia grafica ed è rivolto a chi ha poca dimestichezza
con il `Pinguno`.

Installazione

Questa fase è veramente molto semplice, potete scaricare Guarddog dal sito
http://www.simonzone.com/software/guarddog/
e per essere installato correttamente richiede la presenza di Iptables quindi se non lo avete già istallato caricate istall software prendete i cd di Mandrake e in poco tempo il vostro sistema avrà tutto il necessario per accogliere Guarddog. Adesso da konqueror basta cliccare su il file rpm di Guarddog e in modo completamente automatico kpackage metterà tutto apposto.

Adesso possiamo creare una comoda icona sul desktop per avere il nostro firewall sempre a portata di mano, quindi clik destro -> Crea nuovo -> collegamento ad un applicazione... nel tab `Generale` possiamo scegliere un icona che ci piace di più, tra quelle disponibili e nel form accanto scriviamo il nome che vogliamo dare al collegamento, dal tab `Esegui` nel form `comando:` mettiamo il percorso per l'esegubile 'usr/bin/guarddog' , se non abbiamo esigenze particolari possiamo lasciar perdere tutti gli altri tab.

Adesso è tutto pronto, ed non abbiamo scritto nemmeno un riga alla shell, alla faccia di chi sbandiera che Linux è difficile!

Configurazione

Eccoci pronti ad erigere la nostra piccola barriera al nostro sistema, lanciamo guarddog e mettiamoci a lavoro. Precisiamo subito che qui tratteremo una configurazine di massima adatta ad un utente generico, ma che con prove successive necessita di una rifinitura alle nostre specifice esigenze, queste sono le basi per capire i meccanismi.

Aperto il programma notiamo subito i quattro tab, cominciamo dal primo `Zona`, qui troviamo subito la divisione di default di guarddog, tra Ip locali `Locale` ed Ip esterni `Internet`. Per cominciare possiamo lasciare tutto così ma dobbiamo segnalare un importante funzionalità di questa sezione da attuare man mano che si prende confidenza, selezionando `New Zone` possiamo creare un accesso specifico ad alcuni protocolli ad Ip conosciuti. Vediamo nel dettaglio, una volta selezionato `New Zone` potremo assegnare un nome alla zona, un commento e con `New Address` inserite l'indirizzo Ip numerico o sotto forma di Dns. Sotto Connection possiamo decidere se permettere il traffico da una Zona ad un altra, per comprendere il concetto potete dare un occhiata alle impostazioni di default, se evidenziate la Zona Internet, vedrete spuntata la casella Locale, questo significa che è permesso il traffico da Internet a Locale, evidenziando invece la Zona Locale troveremo l'opposto, creando nuove zone potremo stabilire se permettere o meno il traffico da l'una all'altra. Per ora limitiamoci a dire che per la nostra nuova Zona se vogliamo mettere a disposizione un protocollo bisogna spuntare la casella Locale per permettere che esso posso transitare dal nostro pc ad Internet.

Ma vediamo un esempio, supponiamo di voler permettere il protocollo irc solo al server che ospita la chat di #tivedotonico, selezioniamo `New Zone` come sopra inseriamo un nome ( irc TvT ) un commento ( ircity ) poi selezioniamo `New Address` ed inseriamo milano.ircity.org, sotto connection spuntate la casellina del locale, poi dal tab `Protocol` evidenziano la nostra nuova Zona abilitiamo il protocollo irc, adesso tale protocollo sarà possibile solo al nostro server irc. E' molto importante affinare al più presto questa tecnica, ed creare nuove Zone ( specialmente per tutti quei protocolli accessibili dall'esterno a più alto rischio ) in quanto esse permettono di stringere sempre di più il cerchio, e conseno l'accesso a determinate funzioni solo ha chi siamo sicuri, infatti una porta rimasta incustodita è il metodo più comune con cui un eventuale malintenzionato può accedere al nostro pc, va anche detto che un normale utente non è un bersaglio appetibile ( meno male! ) ma non si sa mai, non ci sono solo bravi Hacker sulla rete, ma anche alcuni ( specie in irc ) che per `masturbazione` personale non aspettano altro che farvi a pezzi il pc, ed un firewall ben configurato può almeno salvarci da quelli meno bravi.

Ma l'argomento è ampio e non riguarda solo la protezione da `cracker` ma più spesso, molti servizi internet, che ci spiano a nostra insaputa e noi che abbiamo abbandonato schifati windows vogliamo perdere questo malefico vizio!

Torniamo a noi ed apriamo il tab `Protocol` qui con lo stesso principio che che abbiamo visto nel tab precedente riguardo al traffico da una Zona ad un altra possiamo definire a quali protocolli permettere il transito e quali invece bloccare, troviamo i protocolli divisi in categorie e basta scegliere quelli che usiamo e lasciare disattivi tutti gli altri. Lasciando sottointeso che in seguito con la creazione di nuove Zone affineremo la sicurezza del nostro sistema per provare il nostro firewall possiamo impostare evidenziando la Zona Internet, sotto la categoria chat i client che usiamo ( ad esempio Icq, Irc ecc. ) sotto Data Serve ci potrebbe essere bisogno di protocolli per la gestione di Database come MySQL e PostgreSQL, sotto File Transfer è indispensabile http ( ovviamente ) ftp e Gnutella se lo usate. Sotto Game se non giocate online ai giochi riportati potete lasciare tutto escluso, sotto mail è indispensabile permettere pop3 smtp, in alcuni casi imap ma altrimenti lasciatelo escluso. Il gruppo media e dedicato a chi utilizza il plugin RealMedia, sotto rete abilitate Dns e Ping il resto può non servirvi, come tutto il gruppo della Sessione Interattiva che vi consiglio di lasciare disattivato. Adesso abbiamo stabilito grosso modo cosa far passare da Internet al nostro pc, adesso selezionando la Zona Locale che servizi saranno accessibili dall'esterno, qui bisogna stare molto attenti ed attivare solo quello che è indispensabile, sotto Chat come abbiamo fatto nella Zona Internet attiviamo i client che usate, sotto Mail, pop3 e smtp e sotto rete Ident/Auth, per il resto tutto bloccato specie tutta la categoria Sessione Interattiva, se non volete ritrovarvi con il pc in prognosi riservata......

Passando al terzo tab `Logging` si stabiliscono i parametri per il file di Log ( dove troverete scritti tutti gli interventi del vostro firewall ) potete tranquillamente lasciare tutto com'è. Nell'ultimo tab `Advanced` troviamo l'utile casella `Disable firewall` indispensabile quando combineremo castronerie nella configurazione del nostro firewall, e da segnalare la funzione `New Protocol` che ci sarà utila quando dovremo usare un protocollo non compreso nella lista del secondo tab `Protocol`.Scendendo nel dettaglio selezionando `New Protocol` potremo assegnare un nome selezionare il tipo ( Type ) in genere TCP e cosa più importante la porta, adesso tornando al secondo tab `Protocol` sotto `User Defined` troveremo il nostro protocolo da attivare o disattivare a piacimento.

Ora non rimane che cliccare su applica e provare a navigare, chattare, spedire/ricevere mail e tutto quello che vogliamo fare con il nostro pc in rete, e continuare costantemente ad affinare la configurazione del firewall, in fondo fa parte di ogni utente Linux cercare di apprendere sempre di più!

PARTED CANCELLARE CREARE E RIDIMENSIONARE PARTIZIONI

Installare sotto linux il programma da uno dei cd delle distro oppure scaricare il programma libero dal sito http://www.gnu.org/software/parted/parted.html. Il programma può essere utilizzato sia all'interno di linux che tramite 2 floppy in caso di manutenzione sul disco fisso, scaricando l'immagine partboot.img e partroot (o la versione più aggiornata) dal sito http://ftp.gnu.org/gnu/parted/bootdisk/ o dal sito http://ftp.carnet.hr/pub/misc/gnu/parted/bootdisk/

Scaricare partboot.img e copiarlo nel primo floppy

 dd if=/dev/fd0 of=partboot.img

Scaricare partroot-1.6.6.gz (3 mega) e copiarlo su 3 floppy

dd if=partroot-1.6.6.gz of=/dev/fd0 bs=1440k count=1 skip=0
dd if=partroot-1.6.6.gz of=/dev/fd0 bs=1440k count=1 skip=1
dd if=partroot-1.6.6.gz of=/dev/fd0 bs=1440k count=1 skip=2

Riavviare il pc ed inserire il floppy di boot e poi il floppy di root, al prompt scrivere:

parted /dev/hda (da hda a hdd dipende su quale disco fisso e partizione si voglia agire).

Con show si ottengono tutti i comandi con help nome-comando si ottengono le diverse opzioni ed informazioni sui comandi. Con print otteniamo la visualizzazione semi-grafica delle partizioni esistenti.

(parted) print
Disk geometry for /dev/hdb: 0.000-9787,148 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
Creiamo una partizione con file-system fat32 di 1 giga da un disco vuoto:

mkpartfs primary fat32 0 1000.000 (l'ho creata primaria, se dovevo
crearla logica si doveva prima crearla estesa e poi logica utilizzando
la stessa sintassi).
Dare un print per vedere la situazione attuale.

(parted) print
Disk geometry for /dev/hdb: 0.000-9787,148 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 0,031 996,218 primary fat32
Adesso la incremento di 500 mega.

resize 1 996.218 1500.000
Diamo un print e vediamo il cambiamento.

(parted) print
Disk geometry for /dev/hdb: 0.000-9787,148 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
1 996,218 1498,249 primary fat32
Creo una partizione linux con file-system ext2:

mkpartfs primary ext2 1498.250 2700.000
Diamo un print e vediamo il cambiamento.

(parted) print

Disk geometry for /dev/hdb: 0.000-9787,148 megabytes

Disk label type: msdos

Minor Start End Type Filesystem Flags

1 996,218 1498,249 primary fat32

2 1498,250 2698,417 primary ext2

Cancelliamo la prima partizione e diamo un print:

(parted) rm 1 (Attenzione a questo comando)
(parted) print
Disk geometry for /dev/hdb: 0.000-9787,148 megabytes

Disk label type: msdos

Minor Start End Type Filesystem Flags

2 1498,250 2698,417 primary ext2

Chiudendo il programma questi ci avvertirà in caso di creazione di nuove partizioni (se siamo dentro linux) di aggiornare il file /etc/fstab.

CREARE UN PROXY SERVER CON SQUID

Entrare con un editor di testo in /etc/squid/squid.conf. All'inizio del file in # TAG: http_port sotto la scritta `Default` scrivere l'indirizzo ip del pc che fungerà da proxy server, es:

http_port 192.168.1.1:8080 (Andrà impostato anche nei browser dei pc clients)

# TAG: visible_hostname sotto la scritta `Default`, in caso di errore al riavvio del demone squid, scrivere il nome dell'hostname del pc che fungerà da proxy server. Aprire un xterm e scrivervi (hostname), aggiungere il nome del pc che compare, nel mio caso:

Default

visible_hostname Panther

Il tag visible_hostname, ripeto, non va messo per forza, solo se compare errore al riavvio di

squid.

Cercare la seguente stringa `http_access deny all`, ce ne saranno almeno due, scegliete quella non commentata da #. La stringa nega l'accesso a tutti i pc client, per far navigarli navigare tutti, basta commentarla con un # davanti. Salvare il file e riavviare squid così:

cd /etc/rc.d/init.d && service squid restart (è possibile utilizzare anche stop e start)

oppure

cd /etc/rc.d/init.d && ./squid restart (è possibile utilizzare anche stop e start)

Sulla slackware ho scritto:

squid -z (Creerà una directory di swap)

squid -NCd1 &

Come abbiamo detto adesso tutti i pc clients che vorranno navigare dovranno impostare sul proprio browser il

proxy come 192.168.1.1:8080 (nel mio caso)

Squid però fa anche altro:

Esempi

Se vogliamo far navigare alcuni clients e tutti gli altri no basta scrivere una riga prima di `http_access deny all` :

acl mio src 192.168.1.2 192.168.1.15 192.168.1.20 (access list di
nome mio con ip che possono navigare con squid)

http\_access allow mio (permetto di fare navigare l'access list di
nome mio)

http\_access deny !mio (Nego la navigazione a tutti gli ip diversi
(!) da mio)

\#http\_access deny all (E' possibile commentarlo, c'è già la regola
sopra che fa tutto).
Salvare il file e dare un service squid restart per le nuove impostazioni

Se vogliamo far navigare i clients in determinati giorni ed in una fascia oraria da noi scelta:

acl allowed\_clients src 192.168.1.2 192.168.1.15 192.168.1.20

acl regular\_days time MTWSS 00:00-00:50 (Le lettere sono le iniziali
dei giorni)

http\_access allow allowed\_clients regular\_days (Dico di fare navigare
i clients nei giorni scelti)

http\_access deny allowed\_clients (Per gli altri giorni, giovedi
e venerdì nego la navigazione)
Salvare il file e da un service squid restart per le nuove impostazioni

Se vogliamo far navigare alcuni clients in determinate ore del giorno

acl hosts1 src 192.168.1.2
acl hosts2 src 192.168.1.15
acl hosts3 src 192.168.1.20
acl mattino time 08:00-12:00
acl pomeriggio time 12:01-19:00
acl sera time 19:01-07:59
http\_access allow hosts1 mattino
http\_access allow hosts1 pomeriggio
http\_access allow hosts2 sera
http\_access allow hosts3 pomeriggio
http\_access deny all (abilitarlo)
Salvare il file e da un service squid restart per le nuove impostazioni

Se vogliamo impedire l'accesso ad alcuni siti che contengano parole inerenti per es. al sesso.

acl allowed\_clients src 192.168.1.0/255.255.255.0
acl banned\_sites url\_regex `/etc/banned.list`
http\_access deny banned\_sites
http\_access allow allowed\_clients
Creare il file banned.list in /etc/ e scrivervi all'interno:
t{*}{*}te
c{*}{*}o
ch{*}{*}{*}e
tr{*}{*}{*}e
[censored NDR.. Panther.. vabè che è a scopo dimostrativo... :))))]

Salvare il file e da un service squid restart per le nuove impostazioni Se adesso sui clients scrivete in www.google.it la parola `tette` ed avviate la ricerca, il browser darà l'errore:

The requested URL could not be retrieved

Se vogliamo limitare il numero di connessioni al proxy, ossia per es. vogliamo che non più di 8 pc si connettano al proxy server per navigare, cerchiamo questa riga in squid.conf # TAG: client_db on|off e abilitiamolo così:

\#Default:
client\_db on
acl mynet src 192.168.1.0/255.255.255.0 (tutta la lan)
acl numconn maxconn 8
http\_access deny mynet numconn
Se volete abilitare tutta la lan basta scrivere 192.168.1.0/255.255.255.0, non occorre scrivere tutti e 255 indirizzi ip.

INSTALLARE WINE

L'installazione può essere fatto da singolo utente o da utente root. Quella che segue è l'installazione come utente root. Scaricare wine, scompattarlo ed installarlo, poi da root:

tar zxvf Wine-20031212.tar.gz
cp -r wine-20031212/ /home/utente
chmod -R 777 /home/utente/wine-20031212/
su utente
cd /home/utente
cd wine-20031212/
./tool/wineinstall
Durante l'installazione verrà chiesto di scrivere `yes`, poi la password di root e fatte altre domande. Ritornare utente root e spostare la directory .wine così:

cp -r /home/pc1/c /root
chown root:root /root/c
cp -r /home/pc1/.wine /root/
chown root:root /root/.wine
Entrare nel file /root/.wine/config e settarlo. Quanto seguirà è stato preso dal mio file config:

[Drive A]
`Path` = `/mnt/floppy`
`Type` = `floppy`
`Label` = `Floppy`
`Filesystem` = `win98`
`Serial` = `87654321`
`Device` = `/dev/fd0`
[Drive C]
`Path` = `/mnt/windows/`
`Type` = `hd`
`Label` = `MS-DOS`
`Filesystem` = `win98`
[Drive D]
`Path` = `/mnt/cdrom`
`Type` = `cdrom`
`Label` = `CD-Rom`
`Filesystem` = `win98`
[wine]
`Windows` = `c:\\windows`
`System` = `c:\\windows\system`
`Temp` = `e:\\`
`Path` = `c:\\windows; c:\\windowssystem; e\\:; e\\:test;f:`
`Profile` = `c:\\windowsProfilesAdministrator`
`GraphicsDriver` = `x11drv`
;`ShowDirSymlinks` = `1`
;`ShowDotFiles` = `1`
`ShellLinker` = `wineshelllink`
Al momento sono riuscito ad avviare senza errori questi programmi: PowerPoint, OpenOffice, Acrobat Reader 5.0, Nero, EtrustAntivirus, 7Zip, Vim per Windows e eMule Plus v1h. Questi sono alcuni programmi che ho installato comunque ce ne sono tantissimi altri da avviare.

NAVIGARE CON IL GPRS SU LINUX

by Tamburo [[email protected]]

Premessa: uso Slackware 9 e per poter far funzionare correttamente

l'applicativo sotto questa distro, installare le librerie Tk-800.024.tar.gz (che

trovate nel sito www.easyconnect.linuxuser.hu) e le libwww-perl-5.64.tar.gz

(le potete scaricare facendo una semplice ricerca sotto www.google.it)

Per le altre distribuzioni (Mandrake, Redhat, ecc.), l'RPM PerlTk e' suf-

ficiente per far funzionare correttamente il GPRS Easy Connect v.2.0.0.

Per installare le Tk-800.024.tar.gz, procedere così:

Scompattazione
gzip -dc Tk-800.024.tar.gz | tar -xof -
Costruzione
perl Makefile.PL
make
make test
Installazione
make install
Le libwww si scompattano con il tradizionale tar xzvf libwww-perl-5.64.tar.gz e poi si procede da `Costruzione` in poi.

Scaricare da http://www.easyconnect.linuxuser.hu l'ultima release di GPRS Easy Connect v.2.0.0 in /usr/local (l'ho letto in qualche readme che va messo in quella directory); scompattate il file (e' in formato .tar.gz). Otterrete il file GPRS_Easy_Connect_200_Install, bene.. a questo punto..

startx!! Eh si, ora si passa in modalità grafica! :)

Ci siete? Bene, ora aprite xterm, vi portate in /usr/local dove c'è il file GPRS_Easy_ ecc., digitate ./GPRS_Easy_Connect_200_Install

A questo punto, se avete fatto tutto a dovere, l'applicativo lancia il tool di installazione grafico, andate avanti, dove vi chiede se accettare la licenza dite si e poi avanti.. in un attimo e' pronto! Per lanciare l'applicativo digitate, sempre in xterm, gprsec e invio.. ehm..

Si apre la finestra per poter effettuare la connessione ma voi che siete dei smanettoni incredibili, cliccate nel tasto centrale, in basso, quello delle impostazioni. Vi appare ora, come per incanto, una finestruola divisa più o meno in due parti a mò di due colonne; nella colonna a sinistra ci sono 4 pulsanti e ve li elenco:

Parametri Obbligatori, Parametri Opzionali, Parametri Rari e Impostazione Limiti.

A noi interessano solo i primi due.

Parametri Obbligatori:

  1. nella parte destra per prima cosa scegliete il modello di cellulare gprs che avete in dotazione, ci sono tutti, fino agli ultimi modelli;
  2. una scritta inquietante `Svegli il tuo operatore` indica quale operatore di telefonia mobile bisogna scegliere (Omnitel,Tim,Wind);
  3. il terzo parametro, l'APN che viene assegnato automaticamente quando svegli ehm.. scegli l'operatore telefonico;
  4. user: se dovesse servire,il programma ci pensa da se' a mettere il valore, essendo predefinito per ogni operatore di telefonia salvo eccezioni;
  5. password: uguale a user
  6. la lingua: italiano of course!
  7. la COM dove avete collegato il cell (il programma supporta anche la comunicazione con l'infrarosso ma ve lo sconsiglio, procuratevi sempre il cavetto ove possibile);
  8. Il o i DNS: se dinamico, flaggate il quadratino, in caso contrario mettete quello indicato; nel dubbio controllare i parametri forniti dal vostro operatore di telefonia.
Cliccate ora, nella colonna a sinistra, sul bottone verde `OK/Salva Dati`.

Parametri Opzionali

mettete nella prima casella in alto il valore 115200.

Cliccate ora, nella colonna a sinistra, sul bottone verde `OK/Salva Dati`.

Siete ora tornati nella prima schermata, se tutto quello che avete configurato e' ok, premete su `Connetti` e buona navigazione! :)

ALT!!! Un paio di annotazioni. Vi descrivo brevemente quello che mi succede quando decido di connettermi:

clicco su Connetti, si apre una finestrina dove una simpatica barra formata da quadratini verdi avanza.. ad un certo punto, appare un msg di errore: dice che non e' possibile connettersi.. bene, e' un bug, nel mio Siemens S55 appare la scritta GPRS seguita da un triangolino di questo tipo: |> beh, insomma più o meno così.. Quel triangolino indica che sono online! Ho già navigato in internet, vado in chat, funziona tutto a dovere.

Utilizzo Aruba che insieme a Wind offre la flat tramite connessione GPRS, per questo motivo l'APN (Access Point Name) di Wind (internet.wind), non corrisponde affatto a quello di Aruba (internet.wind.biz). Come fare per modificare l'APN? Semplice, andare in /usr/share/gprsec/tools/ ed editare il file apn con vi. Nell'ultima riga sono presenti i parametri della connessione tramite Wind.

Ho modificato l'APN internet.wind in internet.wind.biz e tutto funziona. Si può anche copiare l'intera stringa, incollarla, cambiare Wind in Aruba e lasciare invariati i parametri eccetto l'APN.. a voi la scelta :)

INSTALLARE E CONFIGURARE PHPBB

Caratteristiche fondamentali:

In questo esempio utilizzeremo il database mysql.

Ricordarsi che il server mysql deve essere sempre attivo, attivarlo da linuxconf o da linea di comando (service mysql start), in windows per esempio si attiva (mysqld -standalone). Anche il server web apache deve essere sempre attivo (service httpd start). Creare l'utente e la password per il database mysql, entrare in mysqlin uno dei seguenti modi:

mysql
oppure

mysql -h 192.xxx.xxx.1 -uutente -ppassword
Creare un vostro utente e password.

grant all privileges on {*}.{*} to [email protected]'\%' identified by 'password';
Creare il database vuoto:

create database nuke;

exit
Per prima cosa ricordo che se si desidera installare il forum, è condizione necessaria aver richiesto l'attivazione del database MySQL, nel caso abbiate una soluzione hosting con Linux-Apache-Php. Phpbb supporta diversi tipi di database ma in questo piccola guida faccio riferimento al caso nostro mysql :-)

Istruzioni installazione phpBB:

  1. Dopo aver scaricato l'ultima release di phpBB da www.phpbb.com phpBB-2.0.6decomprimere in un archivio locale il file zip. mkdir /prova && cp phpbb-2.0.6.zip /prova && unzip /prova/phpbb-2.0.6.zip
  2. Collegarsi con l'FTP al proprio spazio web e creare una cartella denominata `forum`. es. mkdir /var/www/htdocs/forum
  3. Fare l'upload di tutte le cartelle ed i files del programma nella cartella forum. mv -r /prova/phpbb/* /var/www/htdocs/forum/
  4. Aprire il browser e con il server web attivo, scrivere questo indirizzo:
    http://www.nometuosito.estensione/forum/index.php
  5. A questo punto si visualizzerà la schermata di configurazione del programma phpBB, fare bene attenzione ai prossimi passi che sono i più importanti.
(*) Per quel che riguarda la lingua italiana, mi sono scaricato un file zippato (lang_italian.zip) sempre

dal sito www.phpbb.com.

INSTALLAZIONE ED UTILIZZO DI XTRACEROUTE

Xtraceroute e' un programma che mostra graficamente e geograficamente la ben nota istruzione traceroute. Per prima cosa vi fate un girettino su www.google.it e cercate la libreria grafica gtkgl, scaricatela in /root ad esempio. La scompattate con il tar xzvf e dentro la cartella appena creata digitate:

./configure (invio)

make (invio)

make install (invio)

Scaricate sempre dal buon www.google.it, la libreria grafica gtkglarea, vi consiglio la versione 1.2 e non 1.0, scaricatela in /root ad esempio. La scompattate con il tar xzvf e dentro la cartella appena creata digitate:

./configure (invio)

make (invio)

make install invio)

Dal sito http://www.dtek.chalmers.se/~d3august/xt/ prelevare il file xtraceroute0.9.1 e copiarlo su /root. Scompattate il file con il consueto tar xzvf nomefile.tar.gz. Vi portate nella cartella appena creata, quindi digitate:

./configure (invio)

make (invio)

make install (invio)

Ora lanciate startx, vi fate un bel collegamento sul desktop di /usr/local/bin/xtraceroute (e' il path di xtraceroute), cosi' potete lanciare l'applicativo piu' comodamente :-) Adesso vi connettete ad internet, lanciate xtraceroute e vi appare una finestra dove al centro capeggia il globo terrestre che potete ruotare con il puntatore del mouse quanto volete: è la potenza delle GTK :-)

In alto c'e' uno spazio dove poter scrivere un'URL qualsiasi (senza www., provate kernel.org) e noterete che viaggio fanno i nostri pacchetti :)

In basso vedrete tutti gli host di passaggio fino alla destinazione finale da voi scelta. Ho provato molti indirizzi ed alcuni evidentemente non permettono di farsi traceroutare (si può dire?); comunque non desistete, xtraceroute è un programma divertente! :)

LEGGERE I NEWSGROUP CON SLRN E SLRNPULL

Slrn e' un newsreader modalita' testo che affiancato a slrnpull puo' funzionare anche offline. Questo piccolo help presuppone che abbiate gia' installato i due pacchetti e che sia possibile il collegamento in rete, quindi sorvola tutte le info legate all'installazione e al collegamento internet. I passi da fare sono i seguenti:

1) Creare la directory dove si vuole lavorare

Di default slrn lavora in /usr/local/lib/slrn e slrnpull in

/var/spool/slrnpull. L'utilizzo di una subdir di /var/spool e' corretto, visto che li' ci stanno tutte le code, cmq si puo' cambiare in una dir qualsiasi. Io ho usato /home/gberto/slrnpull per avere i messaggi nella mia homedir;

2) Configurare slrnpull

Copiare il file slrnpull.conf (si trova nel pacchetto d'installazione) nella directory prescelta (HOME_DIR) ed editarlo. In questo file andranno eliminati tutti gli esempi che l'autore riporta, magari commentandoli con '#', e bisognera' inserire l'elenco dei NG che vogliamo seguire. La sintassi della riga e': nome_del_ng numero_articoli_da_scaricare giorni_di_validita' e per ogni NG che vogliamo sottoscrivere bisognera' inserire una riga (ovviamente non commentata) cosi' strutturata (la prima riga e' commentata e serve come traccia):

#Nome\_gruppo Msg\_da\_scaricare Validita'
it.test 50 30
default 100 25
it.scienza.medicina 0 0
it.hobby.vino {*} 15
default 25 5
free.it.fisarmonica 10
Il carattere '*' e lo spazio ' ' identificano il valore di default settato nella riga apposita (ad es in questo caso la validita' di free.it.fisarmonica sara' di 5gg) mentre lo '0' significa 'tutti i msg' o 'nessuna scadenza' a seconda della collocazione. Ogni volta che sottoscriviamo un nuovo NG occorre editare il file slrnpull.conf e aggiungere i dati necessari.

3) Creare il file authinfo

Solo se il proprio server richiede un'autorizzazione. Nella prima riga inserire lo username e nella seconda la password. Salvare nella HOME_DIR e chiudere.

4) Scaricare i messaggi

A questo punto si scaricano i mex dei NG sottoscritti col comando:

slrnpull -d HOME_DIR -h nome_del_newserver

ad es. io ho digitato

slrnpull -d /home/gberto/slrnpull -h news.iol.it

con la connessione al web gia' attiva. Chiaramente il tempo impiegato dipende dalla linea, dal traffico, da quanti NG avete sottoscritto e quanti mex avete settato per lo scaricamento. Se ci vuole un po' di tempo, pazienza...

NB:
in HOME_DIR slrnpull creera' un albero che ricostruisce i vostri NG. Se ad es, avete sottoscritto it.comp.os.linux.iniziare, troverete creato il percorso
HOME_DIR/news/it/comp/os/linux/iniziare e in quest'ultima directory saranno contenuti i file dei mex scaricati, ciascuno identificato da un numero. Ci troverete anche un file .minmax e uno .overview che pero' non vi interessano.
NNBB:
Poiche' l'albero e i files creati appartengono a chi li crea, se volete che siano accessibili a tutti dovete cambiare i permessi relativi. Un modo semplice e' usare il comando umask.

5) Configurazione di slrn (editando slrn.rc)

L'installazione di slrn fornisce un file esempio di configurazione chiamato slrn.rc (lo trovate nel pacchetto d'installazione). Se decidete di usare questo file, dovete ricopiarlo nella home directory dell'utente (per me /home/gberto), rinominarlo .slrnrc ed infine editarlo. Il file e' autoesplicativo e di facile comprensione, se si sa un po' d'inglese. La parte iniziale setta il newserver, lo username e la password per i vari newsserver che si vogliono usare. Poiche' serve solo se si lavora online (e non vogliamo questo) noi ci affidiamo invece al file che ha lo stesso nome, slrn.rc, ma si trova nella directory (o nel pacchetto) di slrnpull. E' un file minimale, che setta solo cio' che serve per la gestione offline delle news, lasciando tutto il resto di default. Le varie linee andranno riempite come segue:

# Definizione delle directory
set spool\_inn\_root `dir\_ospite` //es. /var/spool
set spool\_root `dir\_delle\_news` //es. /var/spool/news
set spool\_nov\_root `dir\_delle\_news` //es. /var/spool/news
set read active 1
set use slrnpull 1
set server object `spool`
# Definizione del nome utente (nel campo From: comparira'
# vostro\[email protected]\_hostname
set hostname `vostro\_hostname`
set username `vostro\_username`
set realname `vostro\_nome\_completo`
In pratica si settano le directories dove riposeranno i file dei vari NG, si dice a slrn di usare slrnpull utilizzando uno spool su disco e si definisce il nostro nome da usare nelle news.

6) Scaricamento dei NG disponibili sul server (si puo' saltare)

Puo' essere utile avere un elenco di tutti i NG disponibili, questo puo' essere fatto con il comando:

slrn -nntp -h `MYNEWSSERVER` -a -f ALLNG -create

dove ovviamente MYNEWSSERVER e' il vostro server news (ad es `news.iol.it`) e ALLNG e' il nome del file dove volete l'elenco dei NG. IL tempo per lo scaricamento puo' essere lungo. Ottenuto il file suddetto, un comando del tipo

cat ALLNG |grep ^it\\. |sort > ITNG

permette di filtrare quelli in italiano e di ordinarli per una veloce consultazione.

7) Avvio di slrn

Per poter utilizzare una directory diversa dal default (che e' /usr/local/lib/slrn) si puo' o modificare l'header in fase di compilazione (slrnfeat.h) o meglio settare le variabili ambiente SLRN_LIB_DIR e NNTPSERVER che slrn legge al momento di avviarsi. Io ho creato un batchettino (goslrn) che esporta tali variabili ed esegue slrn:

export HOME=/home/gberto
export NNTPSERVER=news.iol.it
export SLRN\_LIB\_DIR=/home/gberto/slrnpull
export SPOOL=/home/gberto/slrnpull

slrn
NB:
all'avvio probabilmente vedrete una schermata vuota perche' non avete ancora sottoscritto i gruppi. Utilizzando il comando <l> oppure <L> + <*> + <INVIO> dovrebbe comparire la fila dei NG disponibili (che sono quelli presenti nel file slrnpull.conf) scaricati dal slrnpull. Digitate 'S' quando il cursore e' sui Ng che volete effettivamente vedere (e non solo scaricare) per sottoscriverli (e 'U' per rimuovere la sottoscrizione); a questo punto potete navigare offline.

8) Aggiornamento dei NG e spedizione dei mex

Poiche' slrn agisce usando uno spool, bisogna periodicamente far partire slrnpull per spedire i mex in spool (nella directory HOME_DIR/out.going) e aggiornare i NG coi nuovi mex. Cio' puo' essere fatto con:

slrnpull -d NEWSDIR -h MYNEWSSERVER

dove NEWSDIR e' per noi HOME_DIR (cioe' /home/gberto/slrnpull per me) e MYNEWSSERVER e' ovviamente il newsserver (per me news.iol.it). Io l'ho copiato in un altro batch (./gonews).

9) Rimozione dei messaggi vecchi

Col comando

slrnpull -d NEWSDIR -expire

si eliminano dallo spool i messaggi non piu' validi, in accordo col file di configurazione del punto (5).

10) Impostazione del killfile

Sia slrn che slrnpull usano un killfile per sopprimere i messaggi indesiderati. Il file si chiama 'score' e deve trovarsi in 'dir_ospite' per slrn e in 'dir_delle_news' per slrnpull. La sintassi e' identica:

[Gruppo di NG da settare]

Score: ###

Campo_interessato: valore_da_valutare

e cosi' via. Le wildcards sono ammesse e cosi' le espressioni regolari. Nb: le quadre sono necessarie. Ad esempio:

[*] //Per tutti i NG
Score:: -9999 //Non voglio vedere
From: spammatore //Chi si chiama spammatore
From: [email protected] //un personaggio preciso
Subject: sex //Msg con 'sex' nel subj
Subject: c[a-c] //Msg con subj tutto maiuscolo
[it.scienza.medicina] //Su questo NG specifico
Score: 999 //Mi interessa l'argomento
Subject: depressione
Score: 999 //Evidenzia i miei post
From: gberto
Score: -999 //Non mi interessa la prostata
Subject: prostata
e cosi' via.
NB:
notare l'uso dei doppi duepunti '::' se vi sono piu' campi associati ad uno stesso score che indicano i dati da processare. Per usare un solo scorefile, si puo' creare il file in una directory e un link nell'altra.

11) CONCLUSIONI

A questo punto siamo pronti per lavorare offline con le news. Per risparmiare soldi, al momento di aggiornare i NG si fa partire il collegamento alla rete, si digita il comando del capo (7) che scarica i nuovi mex e spedisce eventuali mex in spool, poi si richiude il collegamento in rete. A questo punto, offline, con i comandi nel capo (7) si leggono le news offline e si risponde ai messaggi che c'interessano. Infine si torna online, si rifa' partire slrnpull coi comandi (per spedire i nostri mex e ci si scollega dalla rete.

12) Varie

Ricordare che slrnpull non permette di scaricare solo gli header e selezionare i bodies che ci interessano ma scarica tutti i mex nuovi. Ci vorra' quindi piu' tempo durante il collegamento, ma generalmente si tratta di pochi secondi in piu'.

EFFETTI VIDEO CON LA WEBCAM

Per chi ha la Mandrake 9.0 scaricarsi i seguenti pacchetti:

NVrec-20020312.tar.gz oppure nvrec-20030316.tar.gz

nasm-0.98-1.i386.rpm

effectv-0.3.8.tar.gz

Nvrec o nvrec si installa avviando (leggere comunque il file README):

tar zxvf NVrec-20020312.tar.gz

o

tar zxvf nvrec-20030316.tar.gz

./bootstrap

./configure

make

make install.

nasm-0.98-1.i386.rpm si installa:

rpm -i nasm-0.98-1.i386.rpm

effectv-0.3.8.tar.gz si installa:

tar zxvf effectv-0.3.8.tar.gz

./configure (controllate che non richieda altre librerie, altrimenti scaricatele)

make

make install

Se avete una webcam avviate questo comando da shell (controllate se avete la webcam (o la tv ??) su

video0 o video1:

effectv -device /dev/video1 -norm pal -hardware -doublebuffer -size 320x240 -palette yuv420p

Adesso spostatevi con le frecce verso l'alto o il basso e buona visione con tantissimi effetti video.

PRIMI PASSI CON IL DATABASE MYSQL

Connettersi ad un db mysql

mysql -h 192.168.1.1 -u root -pmiapassword \#(-p e miapassword devono
essere attaccati)
Aggiungere un utente.

mysql> grant all privileges on {*}.{*} to [email protected]'\%' identified by
'miapassword';

Query OK, 0 rows affected (0.01 sec)

\#miapassword è la password

\#[email protected]'\%' è l'utente

-mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)
Creare un database

create database miodatabase;
Usare un database

use miodatabase;
Mostra i campi del database

show columns from miodatabase;
Mostra i database presenti

show databases;
Mostra le tabelle di un database

show tables from miodatabase;
Descrizione tabella

describe pcag;
Cancellare un database (ATTENZIONE)

drop database miodatabase;

Cancellare una colonna da una tabella (ATTENZIONE) alter table pcag drop column nomecolonna;

Creare ed inserire i campi in una tabella

create table clienti(id int not null primary key auto\_increment,
Cognome

varchar(20), Nome text, giornonascita varchar(2), mesenascita varchar(2));
Inserire i dati nella tabella

insert into clienti(Cognome, Nome, giornonascita, mesenascita)

values('Rossi', 'Andrea', '02', '11');

insert into clienti(Cognome, Nome, giornonascita, mesenascita)

values('Bianchi', 'Lucio', '05', '12');
Visualizzare tutta la tabella clienti

select {*} from clienti;
Visualizzare solo una riga con ricerca

select {*} from clienti where Nome='Lucio';
Per cancellare una riga intera

delete from clienti where id=18;
Cancellare tutto il contenuto di una tabella.

truncate table clienti;
Cancellare una riga intera da una tabella;

delete from clienti where numero='2200';
Riparare una tabella corrotta.

repair table nometabella;
Per chiudere il server mysql

mysqladmin -u root -p shutdown;

Creare una copia del database con il demone mysql attivo:
Esempio teorico (dump.sql potete chiamarlo come volete):

mysqldump -opt "nome_database" > dump.sql
Esempio pratico:
mysqldump --opt dizionario > dump.sql

Per ripristinare il tutto basta eseguire questi comandi: Creare innanzi tutto il database dizionario:

create database dizionario;

Come si ripristina il database:

mysql dizionario < dump.sql

Avviare mysql da Slackware 9.1

Di seguito tre procedure, vedete voi quale vi parte al primo colpo.

1^ Procedura

da root:

su mysql (io non l'ho creato)

mysql_install_db

mysqld_safe &

mysql (e sono entrato in mysql)

2^ Procedura

mysqld_safe -user=root &

mysqladmin -u root password 'tuapassword'

mysql -root -ptuapassword

grant all privileges on *.* to root identified by 'tuapassword';

exit

mysql -h 192.168.1.1 -u root -ptuapassword

3^ Procedura

Da root eseguire mysql_install_db ( /usr/bin). Cambiare i permessi alle directory del tablespace di mysql (di solito in /var/lib/mysql):

chown -R mysql.mysql /var/lib/mysql

Far partire mysqld col comando mysqld_safe -D /var/lib/mysql &

Cambiare la password di root (mysqladmin -u root -p miapassword). Chiudere mysql (ps -aux e poi kill -9 sul processo)

Riavviare e vedrai che lo carica perfettamente anche all'avvio.

INSTALLARE E CONFIGURARE PHP-NUKE

Scompattare PHP-Nuke-6.8.tar.gz in una directory. Ricordarsi di attivare sempre il database mysql (service mysql start) e il server web apache (service httpd start). Editare il file config.php ed modificare subito all'inizio i dati come segue:

$dbhost = `192.168.1.1`;
$dbuname = `root`;
$dbpass = `amici`;
$dbname = `phpnuke`;
$prefix = `nuke`;
$user_prefix = `nuke`;
$dbtype = `MySQL`;
$sitekey = `SdFk*fa28367-dm56w69.3a2fDS+e9`;
Creare un utente e la password in un database mysql e crearvi il database

phpnuke:
mysql
grant all privileges on *.* to [email protected]'%' identified by 'amici';
exit
mysql -h localhost -u root -pamici
create database phpnuke;
exit
mysql phpnuke < /prova/php/php/sql/nuke.sql
Spostare le directory ed i files da phpnuke6.8/php/html in /var/www/htdocs/ (o dove avete inserito la vostra pagina in apache). Spostare anche la directory sql sotto /var/www/htdocs/ Aprire un browser e scrivere http://vostra_lan/admin.php, non vi resta che creare l'utente amministratore e configurare il resto.

GESTIRE IL CELLULARE NOKIA CON GNOKII SU LINUX

Questo guida spiega come usare il cellulare nokia con il cavo seriale in dotazione da collegare ad una porta com del computer. E' possibile sempre configurare la porta irda nel kernel ed usare gnokii sia con la porta irda che con l'infrarossi.

Scaricare dalll'area download del sito http://www.gnokii.org/ il file gnokii-0.5.10.tar.gz l'unico attualmente disponibile al momento della scrittura di questo documento. Scompattarlo ed installarlo come segue (non vi preoccupate dei messaggi che vi darà):

tar zxvf gnokii-0.5.10.tar.gz

cd gnokii-0.5.10

./configure

gmake

make install

Controllare di avere dei files libgnokii* in /usr/local/lib Fare un cat del file /etc/ld.so.conf e vedere se all'interno c'è la riga:

/usr/local/lib

Infine sulla shell scrivere:

/sbin/ldconfig

cp gnokii-0.5.10/Docs/sample/gnokiirc /propriahome/.gnokiirc

Editare il nuovo file copiato ed inserire o sostituire con i propri dati. I miei sono per es.:

port = /dev/ttyS0
model = 6210
connection = serial
TELEPHONE = 328xxxxxxx
Salvare il file, collegare il cavo alla porta com ed al cellulare ed avviare xgnokii (aspettare qualche secondo). Per sapere se il collegamento funziona, basta cliccare con il tasto destro sull'immagine di gnokii e scegliere Contats, poi su File e su Read from phone (oppure cliccare sulla prima immagine in alto a sinistra). Se vi compare la lista dei numeri di telefono siete a posto e potete utilizzare il programma completamente.

FAX CON HYLAFAX

Scaricare hylafax (al momento la versione corrente è hylafax-4.1.7.tar.gz), come utente root scompattarlo ed installarlo:

tar zxvf hylafax-4.1.7.tar.gz

./configure && make && make install

Tutti i files verranno copiati qui:

/var/spool/hylafax/

Accendere il modem. Una volta installato da root avviare da xterm:

faxsetup ed una volta completato avviare:

faxaddmodem

Verranno chieste un bel po di informazioni, potrete poi cambiarle andando a modificare i files che trovate in /var/spool/hylafax/etc, soprattutto i files config e config.ttySx

Il mio file config è così composto:

LogFacility: daemon
CountryCode: 039
AreaCode: 0583
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 1

Il mio file config.ttyS1 è composto almeno per la parte iniziale così:
CountryCode: 039
AreaCode: 0583
FAXNumber: 12345678 \#ho cambiato il mio numero di telefono.
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 1
SessionTracing: 11
RecvFileMode: 0600
LogFileMode: 0600
DeviceMode: 0600
RingsBeforeAnswer: 3
SpeakerVolume: on
GettyArgs: `-h %l dx_%s`
LocalIdentifier: `NothingSetup`
TagLineFont: etc/lutRS18.pcf
TagLineFormat: `From %%l|%c|Page %%P of %%T`
MaxRecvPages: 25
Perfetto adesso non rimane che scivere in fondo al file /etc/inittab la seguete stringa:

mo:35:respawn:/usr/local/sbin/faxgetty /dev/ttyS1 #io ho il modem su com2 e quindi ttyS1

Se volete abilitare tutti i client della vostra lan ad inviare i fax modificate il file /var/spool/hylafax/etc/hosts.hfaxd scrivendo quanto segue:

localhost

192.168.1 \#io ho il pc con ip 192.168.1.1 e quindi la lan di appartenenza
sarà quanto ho scritto
Adesso è possibile inviare fax scrivendo:

hylafax start && faxmodem ttyS1

Potete inserire questa stringa in fondo al file /etc/rc.d/rc.local così verrà avviato all'avvio del pc senza doverlo scrivere la riga ogni volta.

Per spedire un fax scrivere:

sendfax -n -d numerotelefono file

Se volete utilizzare un client grafico su linux scaricate gnu.hylafax (gira su java), o pyla1.0.7.tgz (gira con python) oppure per i pc con s.o. Windows scaricare Whfc o winflex. Per quanto riguarda pyla basta scompattarlo (tar zxvf pyla1.0.7.tgz) e per avviarlo scrivere: python /tuahome/pyla/pyla.py

DATABASE CON OPENOFFICE

Io uso la versione in inglese di OpenOffice e ci occuperemo di creare un database interno tipo Access sul pc.

Aprire Writer di OpenOffice poi su Tools e Data Sources cliccare su New Data Sources, inserire un nome del db (ad esempio Videocassette), tipo database dBase, adesso cliccare sul pulsante a fianco di Data Source URL e scegliere una directory vuota in cui verrà creato il database (ci pensa il db a crearne una vuota se inserite direttamente il nome della directory), cliccare sul pulsante Apply per applicare la modifica fatta.

Adesso cliccare su Tables e poi sul quadratino (New Table Designed), si aprirà una nuova finestra dove dovremo scrivere il nome delle colonne. Sotto Field Name scriveremo il

nome (non più di 8 lettere) delle colonne, e sotto Field Type sceglieremo per ogni colonna il tipo (potrà essere di solo testo, tipo integer ossia solo di numeri, tipo data, oppure text ma di solo 20 lettere, ecc...).

La pagina si presenta divisa in 2 parti, cliccando su Field Type, sotto si possono specificare le proprietà per ogni campo. Quindi questo, al momento, è il nostro database `testuale`, dopo costuiremo la grafica.

Field Name Field Type

Nome Film Text [VARCHAR]

1^ Attore Text [VARCHAR]

2^ Attore Text [VARCHAR]

Anno Prod. Text [VARCHAR]

Salvare il database cliccando su File - Salva oppure sul pulsante Salva. Verrà chiesto il nome della tabella, scrivere `dbfilm`. Chiudere la finestra cliccando sulla X in alto a destra e poi sul pulsante ok della finestra usata in precedenza.

Premere il tasto F4 oppure cliccare su View - Data Sources, cliccare su Videocassette, Tables, dbfilm.

Implementiamo di 3 righe il database, scrivere:

Nome Film 1°Attore 2°Attore

Anno Prod.

L'attimo Fuggente Robin Williams Ethan Hawke 1976

Rocky Silvester Stallone Talia Shire

1978

Nuovo Cinema Paradiso Philippe Noiret Totò Cascio 1988
Ogni volta che passate da una riga ad un'altra il db viene salvato in automatico. Non rimane che creare la parte grafica.

Cliccare con il tasto destro del mouse su dbfilm sotto Videocassette - Tables e scegliere Form AutoPilot. Adesso comparirà una nuova finestra, sotto Data Source ci sarà scritto Videocassette, sotto Tables or queries ci sarà scritto dbfilm, spostare i nomi delle colonne sulla sinistra cliccando sul pulsante con le freccie verso destra. Cliccare su Next, adesso scegliere la grafica in `Arrangement of DB Fields`, ce ne sono di 5 tipi, cliccando su uno di questi cambierà la schermata sottostante.

Scegliere il bordo delle caselle ed il colore dello sfondo.Cliccare su Create, comparirà una schermata in cui si chiede di salvare il file, scegliere per es. la directory precedente `Videocassette`.

Adesso abbiamo la schermata con il primo film. Per salvare il db, una volta modificata una cella, per andare in un'altra schermata del db basta inserire il numero in basso a sinistra, Usare quindi la barra in basso per effettuare tutte le operazioni del caso. Per riaprire il db basta aprire OpenOffice, andare su file- open e scegliere il file .sxw

Su Linux: Collegarsi al sito www.unixodbc.org e scaricare il file: unixODBC-2.2.8.tar.gz Scompattarlo ed installarlo:

tar zxvf unixODBC-2.2.8.tar.gz
cd unixODBC-2.2.8
./configure
make
make install
Collegarsi al sito http://dev.mysql.com/downloads/connector/odbc/ e scaricare il file: MyODBC-3.51.06-pc-linux-gnu-i686.tar.gz Scompattarlo ed installarlo come segue:
  tar zxvf MyODBC-3.51.06-pc-linux-gnu-i686.tar.gz
    cd MyODBC-3.51.06-pc-linux-gnu-i686
   Leggere il file INSTALL-BINARY, le indicazioni che sono queste:
 cp libmyodbc3* /usr/lib/
cd /usr/local/
ln -s /usr/lib/libmyodbc3.so libmyodbc3.so
Modificare il file odbc.ini andando a cambiare solo la riga Driver:
   Driver = /usr/lib/libmyodbc.so
    cp odbc.ini /usr/local/etc/
    export ODBCINI=/usr/local/etc/odbc.ini
     export ODBCSYSINI=/usr/local/etc
Scrivere e vedere se funziona: odbctest

Su Windows OpenOffice è in grado anche di connettersi a diversi database, visualizzare la o le tabelle in formato testo (caselle tipo excel) e costruirvi una grafica tipo Access come sopra

descritto. Il tutto è stato fatto su un pc sotto Win2000 che si connette ad un db mysql su linux.

Scaricare il file MyODBC-3.51.06.exe ed installarlo. Aprire Writer di OpenOffice poi su Tools e Data Sources. Cliccare su New Data Sources, sotto General inserire un nome del db, Database type scegliere MySQL, cliccare in alto MySQL, sotto type of connection scegliere Use existing MyODBC data source. Sotto la scritta General scegliere l'UserName da usare per connettersi al database mysql e cliccare su Password required.

Accanto a Data source URL cliccare sul bottone con i puntini sulla destra, si aprirà una nuova scheramata. Sotto Chose a data source scegliere myodbc3-test, cliccare sul pulsante Organize, si aprirà un'altra finestra e sotto la Voce DNS Utente selezionare ancora myodbc3-test, cliccare sul pulsante Configura. Scrivere quanto segue accanto alle voci:

Data Source Name: myodbc3-test
Description: MySQL ODBC 3.51 TEST DSN
Host/ServerName: Indirizzo ip dove è presente il server mysql attivo
Database name: Nome del database dove connettersi
User: Utente mysql da usare per connettersi (vedere come creare un
utente
nel paragrafo dedicato a mysql)
Password: Password mysql da usare per connettersi (come sopra)
Port: 3306 (di solito è quella di default)
SQL command on connect: Lasciare il campo vuoto
Cliccare adesso su Test Data Source e se compare Succesfully Connected siete alla fine.

Cliccare sul pulsante OK per chiudere le 3 finestre aperte, cliccare su Apply (applica) e poi in alto su Tables, verrà chiesta una password ed inserire la passworddell'utente mysql. Se non compaiono errori e se sotto Tables compaiono le tabelle siete a cavallo, potete modificare i dati con il pulsante edit table, oppure potete costruire una interfaccia grafica tipo Access uscendo da questa schermata e premendo il tasto F4 ....... leggete sopra.

MPLAYER E MENCODER PER RIPPARE DVD

by Leonardo Lorenzetti aka Leone2000 (leone2000 (at) inwind.it)

Cosa scaricare da internet

Di cosa si ha bisogno da scaricare dal sito di Mplayer:

http://www.mplayerhq.hu/:

sorgenti dell'applicazione:

http://www2.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre4.tar.bz2

fonts per la propria lingua, gli `Western`:

http://www1.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2

skin (almeno una di default) per l'interfaccia grafica:

http://www1.mplayerhq.hu/MPlayer/Skin/

i codecs audio/video:

http://www1.mplayerhq.hu/MPlayer/releases/codecs/extralite.tar.bz2

Tutti questi file sono una decina di megabyte; a questi bisogna aggiungere tutti quei componenti utili per un player audio/video. Di solito tutte le distribuzioni che ho provato (RedHat, Mandrake, SuSE, Slackware) installano, di default, tutto ciò che serve (cioè, almeno, gli strumenti di sviluppo (gcc), le gtk e il server grafico X), l'unica cosa da aggiungere scaricandola da internet è un encoding di mp3, nel caso specifico Lame scaricabile da http://lame.sourceforge.net/download/download.html e va installato (con la classica procedura `./configure && make && make install`) prima di Mplayer.

Compilazione e installazione del programma principale

Per semplicità eseguirò tutti i passi da riga di comando come fossi l'utente root;

la prima cosa da fare è estrarre i sorgenti dell'applicazione e spostarsi nella directory creata dall'estrazione:

[email protected]:~/tmp# bunzip2 Mplayer-1.0pre4.tar.bz2

[email protected]:~/tmp# tar xfv Mplayer-1.0pre4.tar

[email protected]:~/tmp# cd MPlayer-1.0pre4/

Il secondo passo `standard` di una compilazione sotto GNU/Linux è il configure che permette di scrivere un file di impostazione (il Makefile) con le personalizzazioni per il pc in uso, quindi:

[email protected]:~/tmp/MPlayer-1.0pre4# ./configure -enable-gui -language=it

Questo abiliterà l'interfaccia grafica con la lingua italiana. In ogni caso ./configure -help mostra tutte le opzioni di compilazione

(NOTA:
l'interfaccia d'uso sarà in italiano, le pagine man saranno comunque in inglese).
Se la fase di configurazione finisce senza errori possiamo procedere alla compilazione e installazione vera e propria digitando:

[email protected]:~/tmp/MPlayer-1.0pre4# make && make install

Il programma verrà installato in /usr/local/bin.

Ulteriori installazioni (codecs e interfaccia grafica)

A questo punto Mplayer sarebbe pronto, ma per funzionare correttamente necessita ancora di tre cose, due (i font e la skin) specifiche per l'interfaccia grafica, una (i codec) utile per qualsiasi modo d'uso dell'applicazione (sia grafica che testuale). Installiamo quindi i codec video/audio: creare, se non esiste già, la directory /usr/local/lib/codecs

[email protected]:~/tmp/MPlayer-1.0pre4# mkdir /usr/local/lib/codecs

scompattare il file contenente i codec (extralite.tar.bz2) precedentemente scaricato in questa directory:

[email protected]:/usr/local/lib/codecs/# bunzip2 extralite.tar.bz2

[email protected]:/usr/local/lib/codecs/# tar xvf extralite.tar

[email protected]:/usr/local/lib/codecs/# mv extralite/* .

[email protected]:/usr/local/lib/codecs/# rm -rf extralite/

Per utilizzare Mplayer solo dalla linea di comando saremmo a posto, per l'interfaccia grafica aggiungiamo almeno una skin.............. creare, se non esiste già, la directory /usr/local/share/mplayer/Skin

[email protected]:~/tmp/MPlayer-1.0pre4# mkdir /usr/local/share/mplayer/Skin

scompattare il file contenente la skin (es. Blue-1.0.tar.bz2) in questa directory

[email protected]:/usr/local/share/mplayer/Skin/# bunzip2 Blue-1.0.tar.bz2

[email protected]:/usr/local/share/mplayer/Skin/# tar xvf Blue-1.0.tar

linkare la directory venuta fuori dallo scompattamento in `default`:

[email protected]:~/tmp/MPlayer-1.0pre4# ln -s Blue/ default

............e i font (font-arial-iso-8859-1.tar.bz2):

creare, se non esiste già, la directory /usr/local/share/mplayer/font

[email protected]:~/tmp/MPlayer-1.0pre4# mkdir /usr/local/share/mplayer/font

scompattare il file contenente i font in una directory temporanea

[email protected]:/tmp# bunzip2 font-arial-iso-8859-1.tar.bz2

[email protected]:/tmp# tar xvf font-arial-iso-8859-1.tar

Questa estrazione creerà una directory contenente varie sottodirectory contenenti vari file; queste sottodirectory si riferiscono alla grandezza,

al tipo di font ecc, per esempio nel caso nostro abbiamo:

[email protected]:/tmp$ cd font-arial-iso-8859-1

[email protected]:/tmp/font-arial-iso-8859-1$ ls -l

total 6

-rw-r-r- 1 leonardo users 218 Jul 14 02:02 README-arial-iso-8859-1

drwxr-xr-x 2 leonardo users 224 Jul 14 01:42 font-arial-14-iso-8859-1/

drwxr-xr-x 2 leonardo users 224 Jul 14 01:42 font-arial-18-iso-8859-1/

drwxr-xr-x 2 leonardo users 224 Jul 14 01:42 font-arial-24-iso-8859-1/

drwxr-xr-x 2 leonardo users 224 Jul 14 01:42 font-arial-28-iso-8859-1/

Scegliere quindi la directory che si vuole (personalmente suggerisco font-arial-14-iso-8859-1 cioè il carattere arial, dimensione 14, codifica europea (iso-8859-1)) e copiare il suo contenuto in /usr/local/share/mplayer/font

[...]$ cp font-arial-14-iso-8859-1/* /usr/local/share/mplayer/font

(NOTA:
mi è stato segnalato da alcuni che questa procedura per installare i font non funziona correttamente perché, eseguendo gmplayer, si hanno vari errori nei path dei font; probabilmente questo accade perché la versione pacchettizzata della propria distribuzione lascia qualche file di configurazione in giro. Per risolvere il problema bisogna andare nella home directory dell'utente che usa il programma e cancellare la directory .mplayer oppure bisogna entrare in questa directory e modificare il file gui.conf cambiando la voce font_name da /usr/share/mplayer/font/font.desc a /usr/local/share/mplayer/font/font.desc` (grazie a Panther e a Burlamacco per la segnalazione e a quest'ultimo per la risoluzione)).
A questo punto l'installazione di Mplayer è terminata; scollegarsi da root, collegarsi come utente normale ed eseguire da shell:

[email protected]:~$ gmplayer

dovrebbe aprirsi l'interfaccia grafica di Mplayer, per accedere al menù premere con il tasto destro del mouse sulla finestra video dell'applicazione.

Vedere dvd con linea di comando

[email protected]:/tmp$ mplayer dvd://1 -dvd-device /dev/hdd

(NOTA
BENE: mplayer suppone che il lettore DVD sia /dev/dvd quindi o si crea un link nella directory /dev (per es. ln -s /dev/hdd /dev/dvd) oppure si usa l'opzione `-dvd-device` come in questo esempio.)
(NOTA
PER SLACKWARE 9.1: mi è capitato di dover aggiungere il mio utente al gruppo `disk` per poter accedere al lettore DVD poichè non ci sono diritti di lettura per `other`: brw-rw-- 1 root disk 22, 64 Jun 9 2002 /dev/hdd)
Come sicuramente saprai in ogni dvd può essere registrata più di una traccia audio; con mplayer è possibile scegliere la traccia da estrarre/riprodurre mediante il parametro -aid. Ma come posso sapere quante tracce ci sono e estrarre quella che mi interessa? Per prima cosa bisogna eseguire mplayer con l'opzione -v (verbose) che darà un output del programma molto più dettagliato:

:mplayer dvd://1 -dvd-device /dev/hdd -v

Scorrendo con Konsole (l'emulatore terminale di KDE) l'output del comando di cui sopra si possono notare queste righe:

[open] audio stream: 0 audio format: ac3 (mono) language: it aid: 128

[open] audio stream: 1 audio format: ac3 (mono) language: en aid: 129

[open] number of audio channels on disk: 2.[open] number of subtitles on disk: 0

che, appunto, identificano che lingue sono disponibili sul disco (language: it e language: en) e come identificarle (aid: 128 e aid: 129) (notare anche il fatto della presenza dei sottotitoli o no). Quindi per riprodurre il nostro disco con la lingua inglese basterà dare il comando:

:mplayer dvd://1 -dvd-device /dev/hdd -aid 129

(di solito la lingua principale è la 128).

Comandi da tastiera

Mplayer (anche con l'interfaccia grafica) può essere comandato completamente da tastiera e ciò può essere più ostico all'inizio (si devono imparare i comandi), ma col tempo velocizzano la gestione del programma in maniera indubbia. I comandi principali sono (man mplayer per altre e più complete informazioni):

le frecce direzionali: permettono la ricerca all'interno del media

(destra/sinistra di 10 secondi avanti e indietro, su/giù di 1 minuto avanti e indietro);

pagup e pagdown: permettono la ricerca avanti e indietro di 10 minuti;

barra spaziatrice: pausa;

ESC: stop e esce dal programma;

f: fullscreen

I seguenti comandi si applicano solo all'interfaccia grafica:

INVIO:play

s: stop

l: carica un file (load)

Rippare dvd

(Premessa
n^1: il ripping dei dvd, cioè riversare l'audio e il video del dvd su uno o più cd/file, può essere una forma di pirateria se è fatta a fini di lucro o di rivendita; non voglio entrare nel merito `etico` di questa cosa, fate il ripping solo dei dvd dei quali siete in regolare possesso e, comunque, la copia deve essere per uso personale. Io mi limito a dire cosa è possibile fare, non voglio, con questo, incoraggiare alcun tipo di pirateria.
Premessa
n^ 2: non ho rippato tanti dvd in vita mia, quindi queste informazioni potrebbero essere incomplete o non funzionanti per qualcuno, scusatemi ed eventualmente comunicatemi (leone2000 at inwind.it) tutte le modifiche che avete fatto per migliorare questo documento, grazie! ;-) )
Il rippaggio dei dvd con mencoder (l'altro programma della suite di mplayer) è una operazione relativamente semplice e immediata ma il programma mette a disposizione decine di opzioni che, opportunamente utilizzate, possono fare la differenza per il vostro ripping; pertanto prima di rippare un dvd si consiglia di leggere, con tanta pazienza, il manuale (man mencoder) e di cercare tutta la documentazione possibile su Internet. Può essere molto utile questa pagina tratta dal manuale html in linea: http://www.mplayerhq.hu/DOCS/HTML/it/encoding.html

Noi creeremo il file movie.avi che è un file che contiene tutto il nostro film (`Ronin`, regolarmente acquistato in Francia ;-) ) ed è compresso con il formato DivX 4.

FASE 1: Estrazione della traccia audio

Anche con mencoder possiamo estrarre la traccia audio che ci interessa: il programma crea un file chiamato obbligatoriamente frameno.avi che conterrà solo la traccia audio eventualmente scelta mediante il parametro -aid (altrimenti prende la prima disponibile).

mencoder dvd://1 -dvd-device /dev/hdd -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi -aid 128

(dove -oac specifica il driver audio da utilizzare (lame), -o è il file di output).

Alla fine di questa operazione controlliamo cosa ci dice mencoder col suo output riguardo al bitrate per la codifica video da utilizzare:

Recommended video bitrate for 650MB CD: 650

Recommended video bitrate for 700MB CD: 710

Recommended video bitrate for 800MB CD: 831

Recommended video bitrate for 2 x 650MB CD: 1431

Recommended video bitrate for 2 x 700MB CD: 1551

Recommended video bitrate for 2 x 800MB CD: 1791

Noi supponiamo di fare un solo cd da 700MB quindi utilizzeremo `710`.

FASE INTERMEDIA: togliere l'area di crop

Nella maggior parte dei film in 16/9 abbiamo quelle bande nere sopra e sotto l'immagine (chiamate area di crop), per risparmiare spazio su disco conviene togliere queste bande quindi troviamo l'area di crop:

mplayer dvd://1 -vf cropdetect -dvd-device /dev/hdd

nella console dalla quale abbiamo lanciato questo comando, mentre scorre il film, avremo dell'output continuo come:

crop area: X: 0..718 Y: 76..502 (-vop crop=718:426:0:76)9% 3.1% 31 0 0%

crop area: X: 0..718 Y: 76..502 (-vop crop=718:426:0:76)9% 3.1% 31 0 0%

crop area: X: 0..718 Y: 76..502 (-vop crop=718:426:0:76)9% 3.1% 31 0 0%

Da queste righe deduciamo quale sia l'area di crop e a questo punto ricontrolliamo (a occhio) che sia giusta prendendo il valore `crop=...` dall'output di cui sopra:

mplayer -vf crop=718:426:0:76 dvd://1 -dvd-device /dev/hdd

A questo punto bisogna prendere le dimensioni del video e ridimensionarlo per mantenere le proporzioni (avendo intenzione di togliere l'area di crop):

mplayer dvd://1 -dvd-device /dev/hdd

Nell'output di questo programma (visibile in console) si trova una riga come questa:

VIDEO: MPEG2 720x576 (aspect 3) 25.000 fps 9780.0 kbps (1222.5 kbyte/s)

720x576 è la grandezza della nostra immagine, a questa dobbiamo togliere il

l'area di crop data dal formato 16/9 cioè moltiplichiamo la risoluzione verticale per 16/9 cioè: 576 * 9 / 16 = 324 che darà la nostra nuova risoluzione: 720 X 324.

A questo punto possiamo procedere all'encoding video vero e proprio che si svolgerà in due passi:.

FASE 2 (vpass=1):

il comando (tutto su una riga!) per il primo passo sarà:

mencoder dvd://1 -dvd-device /dev/hdd -oac copy -ovc lavc -lavcopts vcodec=

mpeg4:vpass=1:vbitrate=710 -vop scale=720:324,crop=720:426:0:76 -o movie.avi

FASE 3 (vpass=2):

il comando (tutto su una riga!) per il secondo passo sarà:

mencoder dvd://1 -dvd-device /dev/hdd -oac copy -ovc lavc -lavcopts vcodec=

mpeg4:vpass=2:vbitrate=710 -vop scale=720:324,crop=720:426:0:76 -o movie.avi

Il file creato (movie.avi) conterrà il dvd e l'audio, sarà possibile rivederlo proprio con Mplayer oppure potrà essere masterizzato anche come videocd, a seconda che il programma di masterizzazione lo permetta.

ANTIVIRUS GNU

Utilizzeremo Clam Antivirus con licenza gpl, scaricare l'ultima versione (al momento la 0.70) da qui: http://download.sourceforge.net/clamav/ Da utente root scompattare il file clamav-0.70.tar.gz così: tar zxvf clamav-0.70.tar.gz cd clamav-0.70 Di seguito verrà creato l'utente clamav (senza però dargli una password) ed installeremo l'antivirus:

groupadd clamav
useradd -g clamav -s /bin/false -c "Clam Antivirus" clamav
./configure
make && make install
Creeremo il file di log clam-update.log:
touch /var/log/clam-update.log
chmod 600 /var/log/clam-update.log
chown clamav /var/log/clam-update.log
/usr/local/etc/clamav.conf (Questo è il file di configurazione).
freshclam --datadir=DIRECTORY (aggiorna il database nella
directory specificata)
freshclam -d -c 6 -l /var/log/clam-update.log (controlla se c'è un database nuovo 6 volte al giorno, è possibile immettere questo comando nel crontab se volete la cosa automatizzata ricordandosi di non inserire l'opzione -d poichè altrimenti partirebbe come demone.) clamscan -r / (controlla tutte le sottodirectory)

Per controllare una directory scrivere

:
clamscan --bell -i --remove --stdout -r /directory/
-bell emette un segnale audio in caso venga trovato un virus
-i visualizza solo i files infetti
-remove cancella i files infetti (Attenzione ad usare questo parametro)
-stdout visualizza i files controllati
-r controlla le sottodirectory

In questa directory si tovano i 2 files con i db virus:

/usr/local/share/clamav

Gli aggiornamenti si scaricano di qui:

http://database.clamav.net/database/

Potete aggiornare l'antivirus così come utente clamav:

freshclam Eventualmente ...... Modificare il file freshclam.conf ed inserire come seconda stringa: db.it.clamav.net Una volta scaricati i 2 files (daily.cvd, main.cvd) scaricarli in: /usr/local/share/clamav dare: chown clamav:clamav /usr/local/share/clamav/*

Interfaccia grafica per clamav antivirus (klamav) sotto kde

Andare sul sito: http://sourceforge.net/projects/klamav/ scaricarsi la versione 0.01 e scompattarla. Questa versione è completa di tutto (disinstallare la versione clamav installata) una volta installata la versione 0.65 già presente in klamav (appena scaricata), scaricare l'ultima versione dell'antivirus ed installare questo. Scompattare klamav-0.1-06042004.tar.bz2 così:
bunzip2 klamav-0.1-06042004.tar.bz2
tar xvf klamav-0.1-06042004.tar
cd klamav-0.1-06042004/
cd src/dazuko-1.2.1-pre2/
make dazuko
cp -f dazuko.o /opt/kde/bin/
cd ..
cd src/clamav-0.65/
useradd klamav
groupadd klamav
./configure
make
make install
cd ..
./configure
make
make install
Adesso scaricare l'ultima versione di clamav antivirus:
tar zxvf clamav-0.70.tar.gz
cd clamav-0.70
./configure
make
make install
Non rimane che avviare klamav da kde. Da Konqueror navigando tra le directory del s.o. e cliccandovi con il tasto dx del mouse compare la scritta "Scan with clamav", è quindi possibile controllare una directory o files prima di aprirla. E' possibile avviare l'antivirus e metterlo in background, vedrete l'icona di clamav antivirus in basso a destra sulla barra.

Per avere questo antivirus gnu su Windows :

http://www.clamwin.com/

ABILITARE JAVA SU FIREFOX O MOZILLA

Scaricare java per linux e scompattarlo per es. in /usr/local/ avrete così la directory:

/usr/local/j2re1.4.2\_01/

Installare Firefox o Mozilla per es. in /usr/local/ avrete così la directory:

/usr/local/firefox/

Non rimane che copiare il link di un file dentro la directory plugin di Firefox

Nel mio caso ho dato questo comando:

ln -s /usr/local/j2re1.4.2\_01/plugin/i386/ns610-gcc32/libjavaplugin\_oji.so
/usr/local/Firefox/plugins/

LA POSTA ELETTRONICA CON PINE

by Stefano Pardini aka burlamacco (info at compaiuto.it) www.compaiuto.it

Brevi nozioni sulla posta elettronica

Perché la posta elettronica possa funzionare correttamente sul vostro computer e necessario che tutti i componenti siano correttamente configurati. I componenti da configurare sono:

Se usate una connessione PPP ad Internet potreste aver bisogno del componente POP per ricevere i messaggi di posta elettronica. Questo HOWTO analizza l'utilizzo base di pine per la gestione della posta elettronica da console e per lo scaricamento della posta attraverso il protocollo POP opportunamente configurato all'interno di pine.

Cos'è Pine

Pine acronimo di `Pine is not Elm` è un gestore di posta elettronica presente nelle distribuzioni linux e avviabile da console(niente grafica!). Questo significa che con Pine si può lavorare utilizzando esclusivamente la tastiera con un risparmio di tempo considerevole specie se si deve gestire un quantitativo di e-mail piuttosto elevato.

Avviare Pine

Per avviare Pine scrivete nella shell `pine` e premete il tasto invio sulla tastiera. Quando avviate Pine la prima cosa che dovrete fare è configurare il programma. Per avviare la configurazione premete S (setup) e poi C (config) e muovetevi con i tasti freccia su e giù per passare da una riga all'altra. Per una configurazione minima del tipo di quelle usate con i normali programmi di posta tipo Kmail ed Evolution impostate i seguenti parametri:

* impostate il vostro nome e cognome (oppure quello che volete voi) nella riga `personal name`;

* inserite il user-domain quello dopo la @ del vostro provider, nel mio caso è: libero.it;

* inserite il server smtp del vostro provider in `smtp-server` (ad esempio mail.libero.it);

* inserite il percorso del file utilizzato per conservare le mail in arrivo (nei sistemi unix normalmente è /usr/spool/mail/$USER), nel mio caso è:inbox_path={popmail.libero.it/pop3/user=miousername}INBOX;

* inserite il nome del file utilizzato per conservare i messaggi inviati in `default-fcc` (ad esempio sent-mail);

* inserite il nome del file utilizzato per il salvataggio dei messaggi in `default-saved-msg-folder` (ad esempio saved-mail);

* inserite il nome del file che contiene le bozze in postponed-folder(ad esempio postponed);

* se volete spostare i messaggi letti in un file definito all'uscita da pine inserite il nome del file in `read-message-folder` (ad esempio read);

* nel menù principale spostatevi con il tasto freccia giù in customized-hdr e inserite l'indirizzo e-mail del mittente da usare di default nel mio caso customized-hdrs=Stefano <[email protected]>;

* infine cercate la riga # Reflects capabilities of the display you have, che di default è ASCII, e inserite character-set=ISO-8859-1.

Ora potete uscire dal setup premendo il tasto E e confermando le modifiche al file con Y.

Pine di default salva i messaggi nella directory $HOME/mail che verrà creata all'avvio di pine. Tenete presente che Pine offre un sacco di altre funzioni ed opzioni che si possono configurare e dispone di un help molto ben i fatto ed esauriente in merito. Potete anche agire direttamente sul file di configurazione con un qualsiasi editor tipo emacs o vi (provate ad aprire una shell nella vostra home e scrivere: emacs .pinerc o vi .pinerc). Potete anche dare un pò di colori a Pine accedendo all'apposita sezione col tasto K.

Account multipli

Con Pine naturalmente si possono configurare anche più account nel caso che disponiate di altre caselle di posta elettronica.

Per configurare Pine per la gestione di account multipli aprite il file .pinerc con un editor di testo come indicato sopra, cercate la riga:

# List of incoming msg folders besides INBOX, e.g. = {host2}inbox, {host3}inbox, quindi create i vostri account

come da esempio: incoming-folders={popmail.inwind.it/pop3/user=miousername}inbox.

Uscire da Pine

Per uscire da Pine effettuate le seguenti operazioni. Premete Q, Pine vi chiede la conferma dell'uscita (si può disabilitare) e confermate con Y.

Scaricare la posta

Per scaricare la posta avviate Pine, vi verrà chiesto l'inserimento della password del vostro account principale, procedete per il download. Per leggere la posta dovete spostarvi premendo L nella lista delle cartelle, utilizzate i tasti freccia, evidenziate la INBOX e premete invio per leggere le e-mail in arrivo. Se avete un'altro account configurato spostatevi poi nella inbox del secondo account premete invio ed inserite la password. Il procedimento è lo stesso di prima.

Messaggi di posta

Salvare un messaggio

Per salvare un messaggio quando siete nella INBOX desiderata, quella dove avete la posta in arrivo, selezionate il messaggio col tasto S e premete invio.

Comporre ed inviare un messaggio

Per comporre un messaggio premete C, inserite l'indirizzo del destinatario nel campo To: e se volete riempite il campo cc:, poi sempre se volete allegate un file. Per allegare un file premete Ctrl+T per avviare il gestore dei file di Pine, entrate nella directory dove avete il file selezionandola e premendo invio, scegliete il file da allegare e confermate la scelta con invio. Per muovervi naturalmente utilizzate i tasti freccia. Inserite il soggetto e scrivete il testo della e-mail. Quando avete finito per inviare la e-mail premete Ctrl+x e confermate con invio. Pine vi mostrerà in percentuale l'avanzamento della spedizione del messaggio.

Stampare un messaggio

Per stampare una e-mail, seguite questo procedimento. Premete L per recarvi nella lista delle cartelle, evidenziate la cartella desiderata e selezionate il messaggio. Premete il tasto y per inviare il messaggio alla stampa. La stampante va definita nel menù di configurazione di pine, premete M per entrare nel menù principale, seguito da S e da P per accedere al menu di configurazione della vostra stampante. Nel setup di pine spuntate l'opzione

enable-print-via-y-command che trovata nella sezione [Printer Preferences].

La Rubrica

La rubrica di Pine è uno strumento molto semlice da utilizzare, per aprire la rubrica usate il tasto M per accedere al solito menù principale e poi premete A. Pine mostrerà una lista di nomi brevi e indirizzi e-mail. I nomi brevi vengono associati agli indirizzi e-mail per evitare di dover scrivere ogni volta tutti gli indirizzi a volte lunghi e difficili da ricordare. Per creare un nome breve potete partire da un messaggio ricevuto, mentre lo state leggendo premete T selezionate l'indirizzo, premete invio e date un Nickname, poi inserite in Fullname il nome completo e confermate. Per completare l'operazione premete infine Ctrl+x e Y per salvare. Per annullare l'operazione premete Ctrl+c.

Potete effettuare la stessa operazione anche senza partire dal messaggio ricevuto, entrate nella rubrica premete @ e seguite gli stessi passi di prima, con l'unica differenza che dovrete inserire a mano l'indirizzo e-mail.

Se volete creare una mailing list a cui spedire un messaggio, nel campo Addresses inserite gli indirizzi separati da virgole. Quando siete dentro la rubrica e volete inviare una e-mail ad uno dei nick, selezionatelo e premete C per comporre il messaggio.

Filtrare la posta

Con pine potete filtrare la posta in arrivo ad esempio se siete iscritti ad una mailing list e volete salvare le e-mail provenienti da quella ML in una cartella definita. Dovete identificare qualcosa che distingua le e-mail che provengono dalla ML in questione.

Se siete iscritti alla lista ipotetica [email protected] e volete salvare i messaggi nella cartella `paperopoli`, premete M e poi S per accedere al setup di Pine, premete R per andare nella schermata delle regole e poi F per selezionare le regole di filtraggio. Premete A per aggiungere una regola, nella schermata `Add a Rule` premete invio e inserite come nome breve `filtro mailing list paperopoli`. Spostatevi nel campo `To pattern`, premete invio e digitate `[email protected]` seguito da un'altro invio. Spostatevi nella riga `Filter Action` e poi su `Move to Folder`, premete invio e digitate `paperopoli` (paperopoli è la cartella dove saranno salvati i messaggi).

Così avrete appena creato un filtro premete E ed Y per uscire.

Accorgimenti

Nella seguente sezione selezionate le opzioni indicate vi aiuteranno a lavorare meglio.

[Advanced User Preferences]

[X] auto-move-read-msgs

[X] expunge-without-confirm

[X] expunge-without-confirm-everywhere

[X] quit-without-confirm

cercate la seguente riga e impostate un valore (es.): mail-check-intervals = 24000

infine cercate la seguente riga e impostate un percorso valido (es.):

url-viewers = /root/browser/MozillaFirebird/MozillaFirebird.

Conclusioni

Ho deciso di scrivere questo HOWTO, perché ho trovato molto efficiente la gestione della posta elettronica da console e perché molta della documentazione che ho cercato a suo tempo in Internet era ed è in Lingua Inglese. Così ho pensato di dare il mio piccolo contributo a tutti quelli che vorranno provare questa soluzione e che tramite queste semplici indicazioni riusciranno a configurare e personalizzare Pine.

SWARET INSTALLARE UPGRADARE DISINSTALLARE PACCHETTI SULLA SLACKWARE

Swaret è un programma che permette di installare, upgradare e cancellare i pacchetti della slackware, risolvendo in automatico le dipendenze.

Scaricare il programma (vers. 1.6.2) da qui: http://www.swaret.org/files/stable/swaret-1.6.2-noarch-1.tgz

Installarlo così:

installpkg swaret-1.6.2-noarch-1.tgz

Andare nella cartella /etc/ e rinominare il file swaret.conf.new in swaret.conf cosi:

mv swaret.conf.new swaret.conf

Modificare eventualmente il file /etc/swaret.conf se volete apportare delle modifiche.

Per avere una lista dei comandi scrivere: swaret -help

Dare subito questo comando per avere una lista dei pacchetti aggiornata: swaret -update

Per avere una lista aggiornata dei pacchetti scrivere: swaret -list

Adesso potete decidere se installare un pacchetto, se aggiornarlo oppure se disinstallarlo.

Accanto al nome del pacchetto compariranno le scritte:

[Status: INSTALLED]

[Status: NOT INSTALLED] [Status: NOT INSTALLED]

Prendete come riferimento tutto il nome del pacchetto, copiatelo ed inseritelo dopo -install, es:

swaret -install gimp-print-4.2.5-i386-1

swaret -upgrade xmms-1.2.8-i486-2

GPG

Generiamo le chiavi pubbliche e private:

gpg -gen-key

Verrà fatta una domanda come questa:

Per favore scegli che tipo di chiave vuoi:
(1) DSA e ElGamal (default)
(2) DSA (firma solo)
(5) RSA (firma solo)
Scegliamo 1 (quella di default). Altra domanda:

La coppia DSA avrà 1024 bit.
Sto per generare una nuova coppia di chiavi ELG-E.
la dimensione minima è 768 bit
la dimensione predefinita è 1024 bit
la dimensione massima consigliata è 2048 bit
Di che dimensioni vuoi la chiave? (1024)
Scegliamo 1024 (la dimensione predefinita). Altra domanda:

Per favore specifica per quanto tempo la chiave sarà valida.
0 = la chiave non scadrà
<n> = la chiave scadrà dopo n giorni
<n>w = la chiave scadrà dopo n settimane
<n>m = la chiave scadrà dopo n mesi
<n>y = la chiave scadrà dopo n anni
Chiave valida per? (0)
Scegliamo 0 (non avrà scadenza). Altra domanda:

la chiave non ha scadenza

È giusto (s/n)?
Scegliamo s (si). Adesso verranno chiesti il Nome e Cognome, l'email ed un commento e la conferma, digitare la lettera O (okay). Altra domanda:

Ti serve una passphrase per proteggere la tua chiave segreta.

Inserisci la passphrase: (da scriversi due volte).
Alla fine otterremo:

Esportare e importare chiavi

Adesso esportiamo la chiave pubblica con il seguente comando:

gpg -armor -export

La lista delle chiavi si ottiene con questo comando:

gpg -list-keys

Per esportare una chiave pubblica usare questo comando (indicare un parametro dell'utente, es. l'email)

gpg -armor -export [email protected]

oppure se volete salvarlo in un file binario

gpg -output cristian.gpg -export [email protected]

Per importare una chiave pubblica:

gpg -import blake.gpg

gpg -list-keys

Convalidare una chiave importata:

gpg -edit-key [email protected]

fpr

sign

check

un file (ovviamente devi avere il file.gpg del destinatario):

Cifrare, firmare e decifrare files

Cifrare un file (ovviamente devi avere il file.gpg del destinatario):

gpg -e -r cepost prova.txt (-e sta per encrypt, -r per recipient, basta inserire una parte del nominativo)

Firmare un file

gpg -r macalu -s -o prova.txt -encrypt prova.txt.gpg

Criptare e firmare il file

gpg -recipient [email protected] -encrypt -sign DOC_DACRIPTARE_E_FIRMARE -output DOC_CIFRATO.GPG

Decifrare un file:

gpg -output documentodadecriptare -decrypt encrypted_doc.gpg

Se la chiave vi viene inviata tramite un file di testo, potete importarla con questo comando:

gpg -import fileconlachiavedaimportare.asc

Sicurezza della chiave: creare un certificato di revoca

Per creare un certificato in modo da revocare la chiave in un secondo tempo dal keyserver nel caso venga persa o corrotta, usare questi comandi:

gpg -gen-revoke KEYID > revoke.asc

per revocare la chiave:

gpg -import revoke.asc

gpg -send-key KEYID

Per firmare una chiave usare questo comando:

gpg -edit-key KEYID

Se compare sempre questo messaggio `gpg: Attenzione: si sta usando memoria insicura` bisogna inserire la stringa no-secmem-warning entro il file /home/utente/.gnupg/options.

Per evitare il fastidio degli warnings il metodo piu' veloce è sicuramente quello di disabilitarli. Se pero' si vuole dar loro ascolto (e farli sparire comunque), è possibile far lavorare gpg usando ``memoria sicura'' con un bel suid:

# chown root /path/to/gpg

# chmod u+s /path/to/gpg

SQLITE

Sqlite è un database leggero, e completamente libero (anche in ambito aziendale) neanche un mega che supporta un database fino a 2.41 terabyte. Di seguito l'installazione sotto la slackware 10
Collegarsi al sito www.sqlite.org/download/ e scaricarsi da Source code la versione attualmente disponibile: http://www.sqlite.org/sqlite-3.0.2.tar.gz

Scompattarla ed installarla così da utente root:

tar zxvf sqlite-3.0.2.tar.gz
cd sqlite
../sqlite/configure
make
cp -f sqlite3 /usr/bin/sqlite
Sqlite si avvia da shell scrivendo: sqlite

Operazioni sul database

Esempi

Di seguito un esempio di script in perl (scaricare l'apposito modulo da search.cpan.org):

#!/usr/bin/perl
use DBI;
use strict;
my $dbh=DBI->connect ("dbi:SQLite:dbname=/tmp/prova.db") or die "$!";
my $sth = $dbh->do("CREATE TABLE pippo (indice int, dato char(10))");
$sth = $dbh->prepare("INSERT INTO pippo VALUES (?,?)");
$sth->execute(1,'ciao');
$sth = $dbh->prepare(``select * from pippo'');
$sth->execute(;
while ( my @row=$sth -> fetchrow_array( ) {
print ``one: $row[0], two: $row[1]\n'';
}
$dbh -> disconnect(;
exit;

Di seguito un esempio di script in python (scaricare l'apposito modulo da http://www.vex.net/parnassus/):

#!/usr/bin/python
import sqlite
cx = sqlite.connect("/tmp/prova.db")
cu = cx.cursor(
cu.execute("select * from pippo")
print cu.fetchone( )
))))

Kernel

AGGIORNARE E PATCHARE IL KERNEL CON UNO NUOVO.

Valido per kernel 2.2 e kernel 2.4

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.

Se volete applicare una patch al kernel copiare la patch in /usr/src entrare poi in /usr/src/linux-kernel/ e scrivere:

bzip2 -dc ../nomefile.bz2 | patch -p1

oppure

gzip -dc ../nomefile.gz | patch -p0

COMPILARE IL KERNEL IN DEBIAN

Valido per kernel 2.2 e kernel 2.4

Prendere il kernel e spostarlo in /usr/src . Scompattarlo con tar zxvf kernel.tar.gz

Entrare e scrivervi:

make mrproper

make menuconfig (fare tutte le modifiche del caso e salvare)

make-kpkg kernel_image (scrivere pari pari la frase)

Uscire da /usr/src/linux con (cd ..) e vi troverete un file di nome kernel-image-versione.deb adesso non rimane che scrivere:

dpkg -i kernel-image-versione.deb

Seguire le istruzioni per creare il floppy di avvio modificato e per reinstallare il lilo (fa tutto da solo).

Chiaramente se avete più distro e volete essere pignoli in /etc/lilo.conf dovrete scrivere al posto di vmlinuz il file che si trova in /boot/vmlinuzmodificato (basta vedere l'ora con ls -al). Salvate il file lilo.conf e date un lilo.

RICOMPILARE IL KERNEL PER MASTERIZZARE CON DISCHI IDE.

Valido per kernel 2.2 e kernel 2.4

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.

COME RICOMPILARE IL KERNEL

Andremo a ricompilare il kernel 2.4.23 tenendo presente che il mio pc è costituito da:

processore Duron 900, schede di rete ne2000 e 3com 3c905, scanner usb, stampante parallela, webcam usb, scheda audio Sound Blaster 128 PCI, scheda tv pci, masterizzatore e lettore dvd ide che farò riconoscere come scsi.

Io ho sempre compilato il kernel così, molti obietteranno. Scompattiamo il kernel linux-2.4.23.tar.gz ed entriamo nella directory /usr/src/linux-2.4.23/ e diamo il comando;

make mrproper

make manuconfig

Andare su Exit, e salvare su Yes. Ricompilare il kernel con:

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

Riavviare il pc. Creare prima un floppy di ripristino per sicurezza.

KERNEL 26 COME RICOMPILARLO

Questo è stato fatto sulla Slackware 9.1

Installare module-init-tools-0.9.14-i486-2.tgz così:

installpkg module-init-tools-0.9.14-i486-2.tgz

Se volete navigare con model adsl e scheda ethernet è fondamentale(almeno nel mio caso) mettere y oppure * davanti alla propria scheda di rete ed m oppure * davanti ai vari PPP.

make menuconfig

Una volta configurato il vostro kernel salvate e date:

make all \&\& make modules\_install

generate-modprobe.conf

cp -f System.map /boot

cd arch/i386/boot

cp -f bzImage /boot
oppure se usate lilo date semplicemente make install (fa tutto da se). Riavviate il pc

Cdrom e masterizzatori

Al riavvio se date: cdrecord -scanbus vedrete una cosa diversa:

Ora con il kernel 2.6 il lettore cd-dvd rimane 0,0,0 mentre il masterizzatore è diventato: 1,0,0

e non più come prima con il kernel 2.4.2: 0,1,0

Se da xterm o da console date

:
ls -al /dev/cdrom vedrete una cosa simile: /dev/cdrom -> sr1 Il cdrom quindi diventa /dev/sr0 ed il masterizzatore /dev/sr1 Per montare un cd dati bisognerà dare: mount /mnt/cdrom oppure mount -t iso9660 /dev/sr0 /mnt/cdrom Il masterizzatore con un cd dati inserito si monterà: mount -t iso9660 /dev/sr1 /mnt/cdrom2 Ovviamente su linux i cd audio NON si montano.

NDR: a partire dalla versione 2.0 di cdrecord non è necessario abilitare l'emulazione SCSI per masterizzare. Utilizzando dischi ide senza emulazione SCSI il device sarebbe quindi semplicemente /dev/hdX

Schede di rete

Al contrario della vers. 2.2 e 2.4 nel kernel 2.6 la prima scheda di rete è la eth1 e non la eth 0, mentre la seconda scheda di rete è la eth0 e non la eth1. Chi ha configurato nel kernel le schede come modulo bisogna agire prima con modprobe eth0 e poi con insmod eth1.

Chi ha configurato, come nel mio caso, le schede con y o con * basta entrare nel file /etc/rc.d/rc.inet1.conf (nella slackware 9.1) e configurare anche a mano il file, basta scrivere una cosa come questa:

# Config information for eth1:
IPADDR[1]=`192.168.1.1`
NETMASK[1]=`255.255.255.0`
USE_DHCP[1]=``
DHCP\HOSTNAME[1]=``
\# Config information for eth0:
IPADDR[0]=``
NETMASK[0]=``
USE_DHCP[0]``
DHCP_HOSTNAME[0]=``
In questo caso ho deciso che la scheda di rete eth1 venga riconosciuta inserendo un indirizzo ip, mentre non ho assegnato nessun indirizzo alla eth0, all'avvio del s.o. verrà caricata solo la scheda di rete con indirizzo ip.

Scanner

Scanner usb, come avrete notato nel kernel 2.6 manca il `supporto` per lo scanner usb, manca la voce cosa presente invece nei kernel serie 2.4. Scaricare il programma libusb (al momento vers.0.1.8) da questo sito:

http://libusb.sourceforge.net/

ed installarlo:

tar zxvf libusb-0.1.8.tar.gz

cd libusb-0.1.8

./configure

make

make install

Scaricare i sorgenti di sane dal sito:

http://www.sane-project.org/

ftp://ftp.mostang.com/pub/sane/ e scaricare questi programmi (al momento quelle inserite sono

le ultime versioni):

ftp://ftp.mostang.com/pub/sane/sane-backends-1.0.13/sane-backends-1.0.13.tar.gz

ftp://ftp.mostang.com/pub/sane/sane-frontends-1.0.11/sane-frontends-1.0.11.tar.gz

ftp://ftp.mostang.com/pub/sane/xsane/xsane-0.92.tar.gz

Scompattare sane-backends-1.0.13.tar.gz e scrivere:

./configure -enable-libusb && make && make install

Scompattare sane-frontends-1.0.11.tar.gz e scrivere:

./configure && make && make install

Scompattare xsane-0.92.tar.gz e scrivere:

./configure && make && make install

Adesso configuriamo lo scanner:

sane-find-scanner

Nel mio caso da: found USB scanner (vendor=0x055f, product=0x0006) at libusb:001:004

Editare il file /etc/sane.d/dll.conf e commentare tutte le righe a parte la prima `net` e quella riferita alla marca del vostro scanner (nel mio caso mustek_usb).

Editare il file .conf riferito alla marca del vostro scanner (nel mio caso mustek_usb.conf), commentare tutte le righe ed aggiungere la seguente riga:

usb libusb:001:004 (risultato del camando sane-find-scanner).

Infine scrivere:

xsane oppure scanimage -L

Rete

MONTARE UNA MINI-LAN TRA 2 PC CON I SOLI COMANDI TESTUALI E NON.

Scrivere il seguente testo immettendo l'indirizzo LAN:

Sul primo pc scrivere:

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up

Sul secondo pc scrivere:

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up

(Ricordarsi che la netmask è uguale per tutti)

Se volete inserire più indirizzi di rete sulla stessa scheda di rete basta scrivere:

ifconfig eth0:1 192.168.1.3 netmask 255.255.255.0 up

Adesso basta fare un ping da uno dei due pc per vedere se si raggiunge l'altro indirizzo di rete:

ping 192.168.1.x

In modalità testuale o da dentro xterm 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.

COLLEGARSI AD INTERNET TRAMITE SCRIPT SENZA KPPP (due procedure).

A)Prima procedura

#non sono riuscito a farlo funzionare con tin.it

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 e `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/resolv.conf

/etc/ppp/options

/etc/ppp/pap-secrets

start (creare questo file in / o dove volete)

stop (creare questo file in / o dove volete)
Benissimo si inizia:

/etc/resolv.conf

Entrare con vi od altro editor in /etc/resolv.conf e scrivere:

search nome_provider (es. search libero.it)

nameserver DNS primario (es. nameserver 193.70.192.25)

nameserver DNS secondario (es. nameserver 193.70.152.25)

/etc/ppp/options

Entrare con vi od altro editor in /etc/ppp/options e scrivere:

/dev/ttyS1 (se com2 se invece è una com3 ttyS2 ecc...)

115200

debug

lock

crtscts

defaultroute

mtu 552

mru 552

/etc/ppp/pap-secrets

Entrare con vi od altro editor in /etc/ppp/pap-secrets e scrivere:

usernameconnessione * password *

start

Creare ed entrare con vi od altro editor start e scrivere:

\#!/bin/bash

/usr/sbin/pppd connect '/usr/sbin/chat -v {}`` ATDTnumero\_di\_telefono\_nodo
CONNECT {}`` ' user vostro\_username -d -detach \&
Le righe soprastanti partendo da/usr vanno unite in una sola riga. Chiudiamo il file e diamogli i permessi con (chmod 777 start)

stop

Creare ed entrare con vi od altro editor stop e scrivere:

#!/bin/sh

DEVICE=ppp0

kill cat /var/run/\$DEVICE.pid

echo `\$DEVICE TERMINATO`
Chiudiamo il file e diamogli i permessi con (chmod 777 start)

Per collegarsi scrivere:

./start

Per disconnettersi scrivere:

./stop

B)Seconda procedura

Creare un file es. start e scrivervi tutto in una riga all'interno (configuratelo secondo le vostre esigenze):

pppd /dev/modem 115200 connect 'chat -f scriptfile' crtscts defaultroute lock login user nomeutente deflate 15,15 modem &

Chiudete il file ed apritene un altro di nome scriptfile:

ABORT BUSY

ABORT `NO CARRIER`

ABORT `NO DIAL TONE`

{}``

ATZ

OK

ATD123456789

CONNECT

{}``

`name:`

`nomeutentepercollegarsi`

`word:`

`scriverelapassword`
Adesso che avete salvato il file date un chmod 777 a tutti e due i files e buona navigazionecon ./start

I due file devono essere nella stessa directory oppure dite al primo file dove trovare il secondo.

COLLEGARSI AD INTERNET CON WVDIAL

Installare wvdial (si trova su tutte le distro sia in formato deb, rpm e tar.gz). Scrivere come utente root:

wvdialconf /etc/wvdial.conf

Questo riconoscerà il modem ed altri parametri, creerà poi il file /etc/wvdial.conf. Entrare con vi in questo file e sostituire l'username, la password ed in n^ di telefono con quelli reali.

Configurare il file /etc/resolv.conf con i dati del vostro provider:

search nome_provider (es. search libero.it)

nameserver DNS primario (es. nameserver 193.70.192.25)

nameserver DNS secondario (es. nameserver 193.70.152.25)

Adesso basta scrivere: wvdial &

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.

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.

TELNET E FTP (per spostare files).x

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.

[NDR: la macchina a cui si accede deve avere i servizi telnet e ftp attivi e permettere l'accesso alle porte corrispondenti!]

CONDIVIDERE CONNESSIONE AD INTERNET (LINUX-LINUX-CLIENT).

Ho constatato che funziona con redhat,debian,mandrake e suse.

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:

Nel kernel del client linux 192.168.1.2 abilitare le seguenti opzioni:

B

Server linux

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/hostname del server e scrivere:

#

server.rete.locale

#

linux.rete.locale

Dare i seguenti comandi:

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.0

route add 192.168.1.0 dev eth0

ipfwadm-wrapper -F -p deny ( scrivere ipfwadm-wrapper se non va bene ipfwadm )

echo 1> /proc/sys/net/ipv4/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

Client linux

Entrare in /etc/hosts e scrivere nel client linux:

127.0.0.1 localhost

192.168.1.2 linux.rete.locale linux

Dare i seguenti comandi:

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.0

route add 192.168.1.0 dev eth0

route add default gw 192.168.1.1

Entrare in /etc/resolv.conf

search dominio.isp (es. search libero.it)

nameserver 193.70.192.25 (1^ dns)

nameserver 193.70.152.25 (2^ dns)

Client windows

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).

Adesso dovreste essere in grado di navigare dai client windows e linux.

CONDIVIDERE CONNESSIONE AD INTERNET (METODO PIU' SPICCIOLO)

Kernel 2.2x

echo 1 > /proc/sys/net/ipv4/ip_forward

ipfwadm -F -p deny

ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0

oppure

echo 1 > /proc/sys/net/ipv4/ip_forward

ipfwadm_wrapper -F -p deny

ipfwadm_wrapper -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0

Kernel 2.4x

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

echo 1 > /proc/sys/net/ipv4/ip_forward

Sul pc client

Sul pc client attiviamo il default gateway:

route add default gw 192.168.1.1

Infine nel file /etc/resolv.conf scriviamo:

search nome_dominio_del_provider

nameserver dns_primario_del_provider

nameserver dns_secondario_del_provider

Buona navigazione.

COLLEGARE 2 PC ATTRAVERSO CAVO PARALLELO SU LPT1 (PLIP).

Procurarsi un cavo per stampanti da collegarsi ai 2 pc con linux. Configurare il kernel con le opzioni di networking, tcpip e plip. Compilare il kernel e riavviare il pc (controllare all'avvio che

compaia una linea con la scritta plip). Se non riuscite a vederla scrivete: dmesg e controllate che compaia plip0 oppure plip1. Andare nel file /etc/hosts del primo e secondo pc e scrivere:

192.168.1.1 pc1

192.168.1.2 pc2

Sul pc1 scrivere:

ifconfig plip0 192.168.1.1 pointopoint 192.168.1.2 up

route add -host 192.168.1.2 dev plip0

Sul pc2 scrivere:

ifconfig plip0 192.168.1.2 pointopoint 192.168.1.1 up

route add -host 192.168.1.1 dev plip0

Adesso non rimane che pingare pc2 da pc1.

AVVIARE UNA SESSIONE X DA REMOTO (da linux a linux)

Mettiamo che vogliamo collegarci in remoto su una macchina linux

(192.168.1.2) da una macchina linux (192.168.1.1), basta scrivere:

X :1.0 -query 192.168.1.2

Sulla macchina linux su cui ci si collega è attivo la sessione grafica 1,

se fosse la 2 dovevo scrivere:

X :2.0 -query 192.168.1.2

AVVIARE PROGRAMMI DA TELNET SULLA PARTE GRAFICA.

Entrare in telnet in un pc con la grafica già avviata, magari è siete lo stesso utente con cui siete entrati nell'X. Una volta inseriti login e password per avviare ad esempio xterm scrivere:

xterm -display :0

oppure anche con questo metodo:

export DISPLAY=:0

xterm

AVVIARE APPLICAZIONI DA TELNET SULLA PARTE GRAFICA x &

Sul server avviare la grafica con:

X &

Entrare in telnet dal client sul server e scrivere:

export DISPLAY=:0

xterm &

AVVIARE APPLICAZIONI SUL CLIENT MA CHE GIRANO SUL SERVER

client=192.168.1.1 (es. pc su cui vi trovate)

server=192.168.1.2

telnet 192.168.1.2

export DISPLAY=192.168.1.1:0
Aprire dal client una finestra xterm e scrivere:

xhost +192.168.1.2
Adesso dalla finestra del telnet sempre aperta scrivere per esempio: netscape (aspettare 5-10 secondi e netscape si aprirà, ma il programma girerà sul server).

IPCHAINS E FIREWALL

Piccolo firewall con ipchains da usare quando si è collegati ad internet. Se esiste una rete locale adattare l'indirizzo sottostante:

ipchains -A input -s 192.168.0.1 -d 0/0 -j ACCEPT

ipchains -A input -s 0/0 -d 0/0 -i 1o -j ACCEPT

ipchains -A input -p tcp -s 0/0 -d 0/0 0:1023 -y -j REJECT

ipchains -A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT

ipchains -A input -p udp -s 0/0 -d 0/0 0:1023 -j REJECT

ipchains -A input -p udp -s 0/0 -d 0/0 2049 -j REJECT

ipchains -A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT

ipchains -A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT

ADSL CON MODEM ETHERNET SU LINUX

Alcune considerazioni prima:

o ho 3 telefoni in casa, la Telecom mi ha dato 2 filtri adsl, la cosa da fare è quella di staccare un telefono dalla presa su cui non potete mettere un filtro, oppure acquistare un filtro. Perchè vi dico questo ` Ho fatto più di 35 telefonate al 187 e nessuno delle 35 telefoniste/i mi ha mai detto nulla di questo, appena l'ho scoperto ho visto il segnale fisso sulla spia Adsl del modem. Se lampeggia, aspettate circa 1 minuto dall'accensione del modem, diverrà fissa, se lampeggia ancora controllate i filtri ed i relativi cavetti telefonici, oppure chiamate il 187 di Telecom per vedere se non ve l'hanno configurato come usb.

Dopo questo, vi dirò come compilare un kernel da 0, se usate un kernel già precompilato della distro utilizzata dovreste navigare già con l'adsl.

Ricompilare il kernel per adsl+ethernet

Per chi vuol smanettare il dafarsi è questo. Installate il pacchetto rp-pppoe presenti nella vostra distro oppure scaricatelo da internet. Scaricate un kernel (io ho fatto la prova sul 2.4.20), scompattatelo e date un:

make mrproper

make menuconfig

La cosa fondamentale è creare un kernel modulare `M` (purtroppo senza questi io non sono riuscito a far andare l'adsl, se qualcuno lo ha fatto non esiti da dirmelo). Per capirci usate la M dove possibile se no usate la Y.

Sotto Loadable Modulo mettere * o y in caso di (make xmenuconfig), sotto Networking options mettere una M a Packet socket, sotto Network device support mettere una M a PPP (point-to-point protocol) ed a tutti gli altri PPP mettere una M (altrimenti una Y dove possibile). Su PPP over Ethernet mettere una M. Nel resto del kernel dovreste selezionare quello che vi interessa far riconoscere da linux (ognuno ha un pc diverso con hardware diverso). Alla fine di tutto uscite, salvate e date:

make dep && make clean && make bzImage && make modules && make modules_install

cp -f System.map /boot

cd arch/i386/boot

rdev -R bzImage l /dev/hdxx (dipende dove avete la partizione linux)

cp -f bzImage /boot

Configurate /etc/lilo.conf perchè all'avvio sia considerato bzImage invece che del vmlinuz. Date un bel:

lilo

Riavviate il pc e buona navigazione.

IPTABLES

In ipatbles esistono 3 tipi di tabelle: filter, nat, mangle. In questo mini-manuale ci occuperemo delle prime 2.

La tabella filter è quella di defaut ed accetta (INPUT, OUTPUT, FORWARD), la nat necessaria per natting e masquerading accetta (PREROUTING, POSTROUTING, OUTPUT). I tipi di pacchetti da filtrare sono in /etc/services, basta fare un: cat /etc/services

-A
(aggiunge una regola o più regole)
-D
(cancella una o più regole)
-F
(cancella tutte le regole)
-L
(elenca tutte le regole o quella della catena indicata)
-N
(crea una nuova catena)
INPUT
(pacchetti in arrivo)
OUTPUT
(pacchetti in partenza)
FORWARD
(pacchetti in arrivo e uscita, non diretti al pc)
s
(source, pc da dove provengono pacchetti) + indirizzo
d
(destination, pc dove dovranno andare i pacchetti) + indirizzo
-p
(protocollo, tipo pacchetto)
icmp
(pacchetto ping)
tcp
(pacchetto es, telnet, ftp ecc)
udp
(altro tipo di pacchetto)
!
(not) indica tutto ciò che non fa riferimento al parametro che stiamo passando.
- -dport
(destination port) traffico verso una porta, nome o numero
- -sport
(-source port) traffico da una porta, nome o numero
-i
(interfaccia) eth0, eth1 ?schede di rete? , ppp0 ?interfaccia internet?
-j
(tipo di lavoro da svolgere)
DROP
(rifiutare il pacchetto)
ACCEPT
(accettare il pacchetto)
Per abilitare il masquerading basta scrivere:

echo `1` > /proc/sys/net/ipv4/ip_forward

Salvare la propria configurazione di iptables

Semplice, scrivete il vostro firewall, per esempio nel file /etc/rc.d/rc.firewall salvatelo, dategli i permessi corretti ed avviatelo:

cd /etc/rc.d && ./rc.firewall

Se dovete fare delle modifiche al volo e non volete perderle, basta salvarle così:

iptables-save > /etc/rc.d/rc.firewall

Se una volta riavviato il pc volete eseguire la configurazione iptables precedentemente salvata, basta scrivere:

iptables-restore < /etc/rc.d/firewall

Oppure se volete caricare ad ogni riavvio la configurazione iptables, basta scrivere alla fine del file /etc/rc.d/rc.local:

cd /etc/rc.d && ./rc.firewall

Questo è lo schema da seguire per impostare una regola. iptables (entrata,uscita,per) (da o per) (indirizzo) (tipo pacchetto) (accettare,rifiutare)

Filtrare una Lan interna (esempi)

Questa regola impedisce il ping proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p icmp -i eth0 -j DROP

Questa regola accetta il ping proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p icmp -i eth0 -j ACCEPT

Questa regola impedisce l'ftp proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p tcp --dport ftp -i eth0 -j DROP

oppure

iptables -A INPUT -s 192.168.1.2 -p tcp --dport 21 -i eth0 -j DROP

Questa regola accetta l'ftp proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p tcp --dport ftp -i eth0 -j ACCEPT

oppure

iptables -A INPUT -s 192.168.1.2 -p tcp --dport 21 -i eth0 -j ACCEPT

Questa regola impedisce il telnet proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p tcp --dport telnet -i eth0 -j DROP

oppure

iptables -A INPUT -s 192.168.1.2 -p tcp --dport 23 -i eth0 -j DROP

Questa regola accetta il telnet proveniente dall'ip 192.168.1.2

iptables -A INPUT -s 192.168.1.2 -p tcp --dport telnet -i eth0 -j ACCEPT

oppure

iptables -A INPUT -s 192.168.1.2 -p tcp --dport 23 -i eth0 -j ACCEPT

Questa regola accetta il telnet proveniente da internet (ppp0)

iptables -A INPUT -p tcp --dport telnet -i ppp0 -j ACCEPT

Questa regola rifiuta il telnet proveniente da internet (ppp0)

iptables -A INPUT -p tcp --dport telnet -i ppp0 -j DROP

Filtrare il traffico web (esempi)

Tutto questo vale per una lan interna, decidiamo cosa fare della richiesta proveniente da ogni indirizzo ip. Se passiamo ad analizzare internet, la richiesta avviene tramite un meccanismo che si chiama `threeway handshake` che consta in 3 fasi. Finora abbiamo solo analizzato la prima fase. Per i pacchetti con il flag syn dovremo utilizzare l'opzione !syn.

Questa regola blocca tutto il traffico che proviene da internet che tenta di aprire una connessione qualsiasi.

iptables -A INPUT -i ppp0 -p tcp --syn -j DROP

Questa regola rende disponibile da internet il server web (porta 80, vedere /etc/services) presente sulla nostra macchina linux ed impedisce che si acceda a tutti gli altri servizi (es. ftp, telnet).

iptables -A INPUT -i ppp0 -p tcp --syn --dport ! 80 -j DROP

Questa regola blocca tutti gli icmp di tipo echo-reply e quindi i ping.

iptables -A INPUT -p icmp --icmp-type 0 -j DROP

Questa regola accetta un pacchetto verso la porta 21 se proviene dall'host www.tivedotonico.it

iptables -A INPUT -s www.tivedotonico.it -p tcp --dport 21 -j ACCEPT

iptables -A INPUT -p tcp --dport 21 -j DROP

oppure si poteva anche scrivere

iptables -A INPUT -s ! www.tivedotonico.it -p tcp --dport 21 -j DROP

Cioè rifiuta tutto i pacchetti che arrivano sulla porta 21 a meno che non arrivi dall'host www.tivedotonico.it

Nat

Nel nat le catene principali sono:

PREROUTING
 
POSTROUTING
 
OUTPUT
(pacchetti in uscita dal nostro pc)
Le azioni più usate sono:

SNAT
consente di cambiare il mittente e la porta sorgente (POSTROUTING). Solo su indirizzi ip statici (indirizzo ip reti locali).
DNAT
consente di cambiare la destinazione dei pacchetti da usarsi con PREROUTING in quanto cambiare la destinazione di un pacchetto potrebbe influenzare le decisioni di routing. E' anche possibile specificare una diversa porta di destinazione.
MASQUERADE
è tipo SNAT ma fa si che i pacchetti abbiano come mittente l'indirizzo ip dell'interfaccia di rete dalla quale usciranno (POSTROUTING). Si utilizza MASQUERADE con indirizzo ip assegnato dinamicamente (connessioni internet)
REDIRECT
consente di cambiare la porta di destinazione di un pacchetto (PREROUTING).

Esempi con nat

Fa in modo che il pacchetto venga rediretto sul un ip locale ad una porta specificata.

iptables -j DNAT --to 192.168.100.4:porta -j REDIRECT --to-ports porta

Intercetta tutti i pacchetti provenienti da eth0 per un server www e li devia sul nostro proxy server.

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport www -j DNAT --to proxy:8080

Modifica il mittente dei pacchetti che escono dalla eth2 e proveniente dalla nostra lan 192.168.200.0/24 e con indirizzo ip esterno del nostro firewall.

iptables -t nat -A POSTROUTING -o eth2 -s 192.168.200.0/24 -j SNAT --to 123.45.68.1

Maschera i pacchetti in uscita dalla scheda ppp0

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

LINUX DEBIAN 223 PRIMI PASSI CON LA RETE

Comando utilissimo:

find / -name hosts.allow - print # cerca da root hosts.allow e ne stampa il percorso

Dopo installazione, per caricare manualmente un modulo non rilevato.

Es. la scheda ethernet 3c509b

modprobe 3c509

Assegnare un indirizzo alla schede:

ifconfig eth0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255

Rendere attivi ad ogni boot le configurazioni

Dentro il file /etc/modules inserire la riga con il nome del modulo [3c509]

/etc/modules: kernel modules to load at boot time.

# This file should contain the names of kernel modules that are

# to be loaded at boot time, one per line. Comments begin with

# a , and everything on the line after them are ignored. cs4281

3c59x # la nostra 3com

Dentro il file /etc/network/interfaces inserire la riga ifconfig.

Example:

/etc/network/interfaces - configuration file for ifup(8), ifdown(8)

# The loopback interface automatically added when upgrading

auto lo

iface lo inet loopback

# The first NIC

# automatically added when upgrading

auto eth0 # La prima scheda ethernet

iface eth0 inet static

address 192.168.0.100 # IP Address

netmask 255.255.255.0 # C Class

gateway 192.168.0.1 # Default gateway

Per una connessione remota via TELNET

Installazione del demone telnet in.telnetd

Va installato il server `telnetd` contenuto in telnetd-ssl; per installare con apt (debian2.2):

debian:/etc# apt-cache search in.telnetd

telnetd-ssl - The telnet server with SSL encryption support.

telnetd - The telnet server.

debian:/etc# apt-get install telnetd-ssl ecc...

Il file che avvia il demone telnet è in.telnetd, il suo nome va specificato con il percorso nentro il file /etc/inetd.conf. (se non so dove si trova: debian:/etc# find / -name in.telnetd -print /usr/sbin/in.telnetd) contenuto di inetd.conf

telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd

Bisogna poi dire quali HOSTS hanno diritto alla connessione:

Contenuto di hosts.allow

#- leafnode begin

leafnode: 127.0.0.1

ALL: LOCAL

linuxbox: 192.168.0.1

atlon: 192.168.0.16

#- leafnode end

...e quali esclusi i precedenti non ce l'hanno:

Contenuto di hosts.deny

ALL: PARANOID

#- leafnode begin

leafnode: ALL

#- leafnode end

Va riavviato INETD.

Per accedere al sistema remoto come ROOT bisogna modificare il file securetty:

# Securetty di DEBIAN Woody (o Potato)

# /etc/securetty: list of terminals on which root is allowed to login.

# See securetty(5) and login(1).

console

# Standard consoles

tty1

tty2

tty3

tty4

tty5

tty6

tty7

tty8

tty9

tty10

tty11

tty12

# Ethernet console

pts/0

pts/1

# Same as above, but these only occur with devfs devices

vc/1

vc/2

vc/3

vc/4

vc/5

vc/6

vc/7

vc/8

vc/9

vc/10

vc/11

vc/12

~

securetty: unmodified: line 1

CONDIVIDERE STAMPANTE SU LINUX COME PRINTSERVER SAMBA CUPS

Configuriamo Cups.

Installare il programma cups, l'ultima versione su slacware è la cups-1.1.20-i486-1jim.tgz,

installarlo così:

installpkg cups-1.1.20-i486-1jim.tgz

e basta poi attivarla all'avvio dal menù di pkgtool -> Setup ->services (premere la barra) e poi selezionare sempre con la barra rc.cups.

Editare il file /etc/cups/cupsd.conf ed alla fine del file dovremmo trovare una voce uguale a questa :

\#The default value is ?IfRequested?.

<Location />

Order Deny,Allow

Deny From All

Allow From 127.0.0.1
noi andiamo ad aggiungere

Allow From 192.168.0.{*} \#che è l'indirizzo della nostra rete.

Allow From localhost \#magari si dimentica chi è localhost
ora andiamo piu' in basso e troviamo:

\#Restrict access to local domain

Order Deny,Allow

Deny From All

Allow From 127.0.0.1
noi andiamo ad aggiungere

Allow From 192.168.0.{*} \#che è l'indirizzo della nostra rete.

Allow From localhost \#magari si dimentica chi è localhost
Bene ora da nostri client possiamo configurare la stampante che abbiamo collegato al Server, puntiamolo con il nostro browser http://indirizzoipdelserver:631 , se non trovate la vostra stampante andate su http://www.linuxprinting.org e cercate il driver piu' adatto a voi, fate una bella prova di stampa e la parte CUPS è terminata.

Configuriamo Samba

Ci siamo, siamo nella parte piu ostica del sistema SAMBA, certo è facile ma per arrivare alle ``4''righe qui sotto vi posso assicurare che ho dovuto sudare parecchio perche' le documentazioni online erano quasi sempre incomplete (spero non volutamente, hehehehe) comunque vi riporto qui sotto il mio estratto di samb.conf con le voci che interessano la parte di CUPS.

Eccoci veloce e facile, per voi che leggete ma non lo è stato per me 8-):

{[}global{]}

printcap = cups

load printers = yes

printing = cups

{[}printers{]}

comment = All Printers

path = /var/spool/samba

browseable = no

public = yes

guest ok = yes

writable = no

printable = yes

printer admin = root

{[}Stampante{]}

path=/var/spool/cups

printer admin = root, guest, nobody

public = yes

guest ok = yes

printable = yes
IMPORTANTE!!!
la voce [Stampante] deve essere lo stesso nome che avete dato alla Stampante utilizzando la configurazione di CUPS.
Ovviamente Samba deve avviarsi come demone quindi scrivere:

pkgtool ->Setup -> services (premere la barra spaziatrice) e poi sempre con la barra selezionare rc.samba.

Per avviare Samba scrivere:

smbd stop

smbd start

Settaggi ulteriori per il funzionamento del sistema

Non mollate è finita, comunuqe dopo l'avvio o il ravvio della macchina cups configurare la cartella ``/var/spool/cups'' con permessi solo per root pertanto i client non riusciranno a stampare, bisognera' quindi permettere la scrittura e lettura della cartella per tutti, io non sono andato a cercare il parametro di cups che fa questo (almeno per ora) ma ho creato un piccolo scripts che si lancia dopo aver avviato cups in questo modo:

\#!/bin/sh

cd /

chmod 777 /var/spool/cups

cd /etc/init.d

./samba restart

cd /
Questo script l'ho messo che venga lanciato dopo cups e samba pertanto in base alla vostra distribuzione: rc.local, rcS.d, etc. vedete di sistemarlo da qualche parte (di solito copiatelo in fondo al file). Per togliere qualche dubbio, con questa configurazione non è necessario avere l'account dell'utente sul server linux.

CONFIGURIAMO I CLIENT WINDOWS

Installa nuova stampante, ricercare nella rete, installate il driver appropiato e stampate, buon lavoro.

Un grazie a Valter Perregrini [email protected]

CONDIVISIONE NFS PER LO SCAMBIO DI FILE IN UNA RETE CON MACCHINE LINUX

Un grazie a Yawningman.

Assicurarsi che le schede di rete delle macchine funzionino

`dmesg | grep eth0` (eth0,1...a seconda di come abbiamo configurato la scheda)

Quindi riuscire pingare la macchina remota con la quale condivideremo i file nfs. Poniamo ad esempio 2 macchine:

192.168.1.1 nome host:primo

192.168.1.2 nome host:secondo

Impostare le condivisioni (server)

Poniamo ad esempio che la cartella che vorremmo condividire risieda su `primo`, e si chiami `condivisa` direttamente sotto /, assicuriamoci che la cartella abbia i permessi di lettura e scrittura verso tutti,

chmod o+rwx condivisa

una volta assicuratosi di ciò editare il file `/etc/exports` aggiungendo la seguente riga

/condivisa secondo(rw,insecure,sync,no\_subtree\_check,insecure\_locks,no\_root\_squash)
con questa riga all'inizio definisco il path locale della cartella che voglio condividere poi di seguito metto il nome dell'host remoto, invece nella riga tra parentesi,accetto connessioni in scrittura e lettura, accetto connessioni dalla porta 1024 e superiori,sincronizzo le operazioni in scrittura su richiesta, disabilito la verifica delle subdirectory,accesso ai file senza richiesta di lock infine considere root remoto come root locale... naturalmente il tutto è personalizzabile. Con questa riga si presuppone che la macchina remota sia 'affidabile' in termini di sicurezza.

Salvo il tutto e riavvio i servizi nfs e portmap se erano già attivi, in caso contrario li faccio partire:

`service nfs start`

`service portmap start`

Entrambi i servizi affinchè il servizio possa funzionare correttamente devono essere abilitati all'avvio della macchina quindi mi assicurerò che entrambi partono al riavvio delle macchina:

chkconfig -level 35 nfs on

chkconfig -level 35 portmap on

a questo punto mi accerterò che i comandi siano andati a buon fine con:

chkconfig -list nfs

chkconfig -list portmap

su livello 3 (autentificazione testo) e 5 (autentificazione grafica) dovrebbe apparire 'on'

{[}NDR: sulle distribuzioni NON \emph{red-hat-like} il comando chkconfig
non è presente: è possibile agire sui servizi da far partire al boot
editando i files presenti in /etc/rcX.d (dove X è un numero di runlevel)
, o con gli appositi tool (es: \emph{pkgtool} per Slackware){]}

Accedere alle condivisioni (client)

Adesso possiamo passare alla configurazione della seconda macchina....

(192.168.1.2 secondo)

assicurarsi che i servizi nfs,e portmap siano attivi, in caso contrario ripetere l'operazione come prima.

Creare una cartella di mount per la condivisione, poniamo ad esempio che la cartella sia `miacartella` direttamente sotto /

Effettuare il mount 'remoto':

mount 192.168.1.1:/condivisa /miacartella

naturalmente se ho editato il file /etc/hosts con:

192.168.1.1. primo

(e dopo aver fatto una semplice prova `ping primo` con risposta positiva, posso sostituire l'ip con il nome dell'host) a questo punto, avrò la cartella condivisa, molto utile per una sessione comune, o se volessi prendere a prestito, causa hard disk pienotto, una fetta di un altro pc assai più capiente.... il pranzo è pronto.

Manca solo un particolare: far si che al riavvio trovi tutto pronto senza dover fare il mount, bene per far ciò editerò fstab

vi /etc/fstab

e aggiungerò la seguente riga:

192.168.1.1:/condivisione /miacartella nfs exec,dev,suid,rw 0 0

Altro

Linux su un 386 con 2 mega di RAM?? Ecco come !!!

  1. Procurarsi 2 pc, un 386 ed un computer più potente (dal pentium 120 sù) con installato sopra linux
  2. Scaricarsi il kernel versione 2.2.20 e metterlo nel pc pentium
  3. Procurarsi una redhat 5.2
  4. Scaricarsi la mini-distro hal91 e metterla su un floppy
  5. Crearsi un floppy di ripristino win98 oppure un cd win98
  6. Partiamo :)

Compilazione di un kernel per il 386

Sul pentium scompattare il kernel 2.2.20.tar.gz in /usr/src:

tar zxvf kernel-2.2.20.tar.gz

cd linux

make mrproper

make menuconfig
Andare in `Processor type and features`, `Processor Family` e selezionare con y o con * 386 o 486, poi selezionare `Math emulation` e `MTTR ecc...`.

Considerate che state ricompilando il kernel sul pentium ma per il pc386-486, quindi controllate che periferiche ci sono e selezionate di conseguenza, uscire e salvare. Scrivere:

make dep \&\& make clean \&\& make bzImage \&\& make modules \&\&
make modules\_install

cd arch/i386/boot

rdev -R bzImage l /dev/hda5 (scegliete hda5 perchè nel pc 386-486
sarà installata una partizione dos (hda1), una linux appunto ed una
swap (hda6)).
Copiare questo file (bzImage) in un floppy formattato dos

Installazione di una distribuzione

Andare nel pc 386-486, utilizzare fdisk dal floppy di ripristino di win98 (o dal cd di installazione Win98), cancellare tutte le partizioni esistenti e crearne una dos da 10 mega senza formattarla ancora (lo faremo dopo). Spostare l'hard-disk dal pc 386-486 al pentium visto che avrà il lettore cd ed installare la redhat 5.0-5.2 anche con il minimo di installazione, 80 mega circa.Non installare il lilo, non ci serve, quindi finita l'installazione spegnere il pc.

Primo boot linux su 386 (usando loadlin)

Spostare l'hard-disk con installato la red-hat versione minima nel pc 386-486 ed inserire il floppy di win98, farlo leggere al boot e formattare la partizione dos (10 mega) scrivendo :

format c: /s (riavviare il pc)

Una volta in dos copiarvi il file bzImage (precedentemente salvato in un floppy), ed il file loadlin.exe (che si trova in tutte le distribuzioni nella directory dostools). A questo punto scrivere:

a:

copy bzimage c:

copy loadlin.exe c:

c:

loadlin bzimage
Se volete potete creare un file autoexec.bat (metterlo in c:) e scrivervi all'interno la stessa riga (loadlin bzimage), così appena acceso il pc, questi caricherà il dos ed in automatico andrà su linux. Se linux non viene caricato vi consiglio di utilizzare la mini-distro hal91 (spostare l'hard-disk dal pc 386-486 al pentium più potente),farlo caricare all'avvio, montare la partizione dos (mount -t msdos /dev/hda1 /cdrom) e quella linux (mount -t ext2 /dev/hda5 /floppy) e copiare il file bzimage dal dos a linux in (/floppy/boot), a questo punto rinominare il file da bzimage a bzImage:

cp /cdrom/bzimage /floppy/boot && mv /floppy/boot/bzimage /floppy/boot/bzImage

Riavviare il pc, se non si riesce ad andare in dos utilizzare il floppy di ripristino di windows ed in dos dare:

loadlin bzimage

COME CREARSI UNA PROPRIA MINIDISTRO SU 2 FLOPPY

Con il kernel 2.4 e con le ultime distro non sono riuscito a combinare nulla, non ho provato con debian con il kernel 2.2.0. Il tutto è stato fatto con una redhat 5.1 con kernel 2.0.34, è stato utilizzato busybox.0.60.2 e syslinux (prendetene uno che accetti l'opzione -s come ad es. la versione 1.43 o 1.46).

Compilare kernel come volete ma soprattutto con queste opzioni, potete montare cd, partizioni, ecc.., potete personalizzarla come volete :

Ricompilare il kernel così:

make dep && make clean && make bzImage && make modules && make modules_install

Non scrivere l'opzione module se non avete abilitato nulla in Loadable module support.

Verà creato il file /usr/src/linux/arch/i386/boot/bzImage

Scompattare busybox

tar zxvf busybox-0.60.2.tar.gz

cd busybox

vi Config.sys

Si disabilita con il doppio // davanti, si abilita senza il // davanti.

Abilitare

#define BB_ASH

#define BB_HOSTNAME

#define BB_FEATURE_SH_IS_ASH (gli diciamo che utilizzero ash e non la bash).

Disabilitare

//#define BB_FEATURE_SH_IS_MSH

Se volete potete abilitare altre opzioni, però queste e le altre già abilitate di default bastano per avere un sistema minimo stabile e funzionante su floppy. Uscire e salvare il file.

Dare un make e poi un make install

mkdir /distro
mkdir /distro/root
cd <directory di busybox>/\_install
mkdir /distro (la nostra directory base di lavoro)
mkdir /distro/root (la nostra / per il floppy di root)
cp -dpR {*} /distro/root
cd /distro/root
mkdir dev
mkdir etc
mkdir home
mkdir lib
mkdir mnt
mkdir proc
mkdir root
mkdir tmp
mkdir var

Ho creato ogni device in /distro/root/dev

cd /dev

Controllare quali device avete nella vostra distro, per es. può darsi che manchi hdc4 o hdd2, non tutti questi device quindi saranno presenti nella vostra distribuzione (in questo caso la redhat 5.1).

cp -dpR console /distro/root/dev

cp -dpR cua0 /distro/root/dev

ecc.....

console cua0 cua1 cua2 cua3 fd0 hda hda1 hda2 hda3 hda4 hda5 hda6 hda7 hda8 hda9 hdb hdb1

hdb2 hdb3 hdb4 hdb5 hdb6 hdb7 hdb8 hdb9 hdc hdc1 hdc2 hdc3 hdc4 hdc5 hdc6 hdc7 hdc8

hdc9 hdd hdd1 hdd2 hdd3 hdd4 hdd5 hdd6 hdd7 hdd8 hdd9 kmem null ppp ram0 ram1 ram2

ram3 ram4 ram5 ram6 ram7 ram8 ram9 tty tty0 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9

ttyS0 ttyS1 zero

La directory /etc contiene i seguenti files:

fstab
informazioni per il mount delle partizioni
group
elenco dei gruppi
hosts
associazioni nomi host con IP
inittab
file di configurazione di init
it-lmc.map
definizione della tastiera italiana
ld.so.cache
cache delle librerie
ld.so.conf
configurazione delle librerie
login.defs
file di configurazione di login
modules.conf
file di configurazione dei moduli
mtab
partizioni montate
pam.conf
configurazione di PAM
passwd
elenco degli utenti
profile
file di configurazione personalizzata
protocols
elenco dei protocolli di rete
rc.M
script di configurazione dei run-levels
rcH
script eseguito all'uscita del sistema
rcS
script di configurazione del sistema
services
elenco dei servizi di rete
syslog.conf
file di configurazione di syslogd

Nel file /distro/root/etc/inittab vi ho messo:

id:2:initdefault:

si::sysinit:/etc/rcS

rc:2345:wait:/etc/rc.M

rh:0:wait:/etc/rcH

1:2345:respawn:/sbin/mingetty -noclear tty1

2:23:respawn:/sbin/mingetty -noclear tty2

3:2:respawn:/sbin/mingetty -noclear tty3

ca::ctrlaltdel:/sbin/shutdown -n -t5 -a -r now

Nel file /distro/root/etc/rcS vi ho messo:

#!/bin/sh

/bin/mount -av

/bin/mount -o remount,rw /dev/ram0 /

/sbin/syslogd -m0

/sbin/klogd

/bin/hostname ngm2

Nel file /distro/root/syslog.conf vi ho messo:

*.* /var/log/messages

Il file /distro/root/etc/fstab contiene le seguenti righe:

proc /proc proc defaults 0 0

/dev/ram0 / ext2 defaults,noauto 0 0

/dev/fd0 /mnt/floppy auto default,user,noauto 0 0

Il file /distro/root/etc/rc.M:

#!/bin/sh

/bin/loadkeys /etc/it-lmc.map

Il file rcH contiene le seguenti istruzioni:

#!/bin/sh

umount -va

echo `Grazie !!¡

echo `Panther`

echo `http://www.tivedotonico.it`

Il file /distro/root/etc/passwd contiene:

root::0:0:root:/root:/bin/sh

Il file /distro/root/etc/etc/group contiene:

root::0:root

Il file /distro/root/etc/pam.conf, ha il seguente contenuto:

OTHER auth required /lib/security/pam_permit.so

OTHER account required /lib/security/pam_permit.so

OTHER password required /lib/security/pam_permit.so

OTHER session required /lib/security/pam_permit.so

Il file /distro/root/etc/login.defs contiene la definizione di variabili utilizzate dal

programma login:

FAIL_DELAY 3

LOGIN_RETRIES 3

Il file /distro/root/etc/hosts contiene:

127.0.0.1 localhost

La directory /distro/root/etc/lib contiene 2 files andare in /lib e copiare i 2 files:

cd /lib

cp ld-linux.so.2 /distro/root/lib

cp libc.so.6 /distro/root/lib

### La directory /distro/root/proc deve essere creata vuota.

### La directory /distro/root/tmp deve essere creata vuota.

### La directory /distro/root/root deve essere creata vuota.

### La directory /distro/root/home deve essere creata vuota.

### La directory /distro/root/var deve essere creata vuota.

### Le directory /distro/root/bin /distro/root/sbin /distro/root/usr/bin /distro/root/usr/sbin /distro/root/usr/personal contengono i programmi che possono essere eseguiti nella minidistribuzione creati da busybox (ls -al)

Creare il floppy di boot

Di seguito trovate la parte per creare il floppy di boot.

Formattare un floppy così:

badblocks /dev/fd0u1440 && fdformat /dev/fd0u1440 && mkfs -t msdos /dev/fd0 oppure dipende da che distro avete usato

badblocks /dev/fd0H1440 && fdformat /dev/fd0H1440 && mkfs -t msdos /dev/fd0

Renderlo avviabile con syslinux (dovreste già trovarlo installato oppure scompattatelo e scrivete):

./syslinux -s /dev/fd0

oppure

syslinux -s /dev/fd0

Montare il floppy:

mount -t msdos /dev/fd0 /mnt/floppy

Copiare il file bzImage sul floppy:

cp /usr/src/linux/arch/i386/boot/bzImage /mnt/floppy/bzimage

Configurare il file bzimage nel floppy:

cd /mnt/floppy

rdev -R /mnt/floppy/bzimage 1

rdev -r /mnt/floppy/bzimage 0

rdev -v /mnt/floppy/bzimage -1

rdev /mnt/floppy/bzimage /dev/ram0

Dentro /mnt/floppy creare il file syslinux.cfg con vi:

vi syslinux.cfg

e scrivervi all'interno

DEFAULT bzimage

APPEND vga=normal noinitrd load_ramdisk=1 prompt_ramdisk=1 ramdisk_size=16384

root=/dev/fd0 disksize=1.44 init=/bin/ash #mettere il tutto sulla stessa riga da APPEND ad ash

TIMEOUT 0

DISPLAY boot.txt

PROMPT 1

F1 f1.txt

F2 f2.txt

Salvare ed uscire (Esc:wq!)

Creare il file boot.txt, f1.txt e f2.txt con l'editor vi:

Scrivervi all'interno ciò che volete, stessa cosa con i file f1.txt e f2.txt. Smontare il floppy con:

cd / && umount /mnt/floppy

Il floppy di boot è pronto.

Creare il floppy di root:

mkdir /mnt/myram

dd if=/dev/zero of=/dev/ram0 bs=1k count=4096

mke2fs -vm 0 /dev/ram0 4096

mount /dev/ram0 /mnt/myram

cd /distro/root/

cp -dpR * /mnt/myram

umount /mnt/myram

cd /distro

dd if=/dev/ram0 bs=1k count=4096|gzip -9v >root.gz

cp root.gz /dev/fd0 (Rispondere yes alla domanda che viene posta)

Non rimane che riavviare il pc con il floppy di boot inserito, verrà poi richiesto di inserire il secondo floppy. Dalle prove da me fatte non sono riuscito a fare nulla con il kernel 2.4.xx, i floppy danno errori. Ripeto non ho ancora provato con una debian con kernel 2.2xx, credo però che la cosa possa andare a buon fine.

La cosa da dire è che in Config.sys andremo a dirgli di avviare la ash e non la bash, se manca quella impostazione la minidistro non partirà dando alcuni errori o bloccandosi.

vmlinuz della redhat5.1

root.gz già pronto

syslinux.cfg del floppy di boot.

boot.txt

INSTALLARE UNIX MINIX 203

Minix è uno s.o. unix che può essere installato su Pentium,486,386,286,8086 e lavorare in modalità dos.

L'installazione è stata eseguita con minix 2.0.3 per architettura 386, 486, Pentium all'indirizzo http://www.cs.vu.nl/pub/minix/2.0.3/, i files scaricati sono ROOT.MNX,

USR.MNX e NET.TAZ (più gli altri 3 files .TAZ).

Tutti i floppy utilizzati devono essere aperti, una finestrella rimane sempre aperta, l'altra deve essere chiusa. Prendere 2 floppy sul primo verranno copiati root.mnx e usr.mnx mentre sul secondo verrà copiato net.taz.

cat ROOT.MNX USR.MNX > /dev/fd0

cat NET.TAZ > /dev/fd0

Avviare il pc con il primo floppy inserito ed alla scritta di premere il tasto con = premere il tasto ì vicino al tasto Invio, poi scrivere con il floppy inserito dopo la scritta Finish the name ......../usr:

/dev/fd0p2

Al login digitare root e poi scrivere setup e per 2 volte premere Invio. Scegliere la tastiera italiana scrivendo italian e dando Invio, scrivere poi part. Cancellare od aggiungere le partizioni sull'hard-disk oppure scegliere il secondo hard-disk eventualmente disponibile. Lasciare /dev/c0d0 premendo la freccia verso il basso, andare su Type e con il tasto - scegliere 81 MINIX, spostarsi con la freccia verso destra sotto Kb e scrivere 35000 (35 mega) o quello che volete voi. Salvare premendo il tasto w e confermare il salvataggio premendo il tasto y, premere poi il tasto q per uscire. A video comparirà la scritta per confermare la partizione, scriveremo /dev/c0d0p0 (il p0 sta sotto Sort). Si chiede anche la dimensione della partizione di swap in kb, scrivere 2000 (2 mega) o quello che volete, premere poi il tasto Invio.Verrà fatta una scansione del disco per cercare settori danneggiati, per interromperla premere il tasto Esc. A questo punto inizierà l'installazione, alla fine minix chiederà di digitare halt e premere Invio poi ctrl-alt-canc. Al riavvio premere il tasto ì, al login scrivere root, poi setup /usr e premere Invio. Inserire il secondo floppy e scrivere alla richiesta della grandezza del floppy 1440 ed Invio per 3 volte. Verranno trasferiti i file per la parte network sul sistema operativo.

Vediamo come installare:

CMD.TAZ (sorgente comandi)

SYS.TAZ (sorgente sistema operativo)

USR.TAZ (file eseguibili)

Per installare CMD.TAZ prendere altri 3 floppy e scrivere per ogni floppy una riga dando poi invio.

dd if=CMD.TAZ of=/dev/fd0 bs=1440k count=1 skip=0

dd if=CMD.TAZ of=/dev/fd0 bs=1440k count=1 skip=1

dd if=CMD.TAZ of=/dev/fd0 bs=1440k count=1 skip=2

Inserire il primo floppy e su minix scrivere setup /usr Scrivere 1440 e premere Invio 3 volte. Il programma chiederà di inserire il secondo e poi il terzo floppy.

Per installare SYS.TAZ prendere altri 2 floppy e scrivere per ogni floppy una riga dando poi invio.

dd if=SYS.TAZ of=/dev/fd0 bs=1440k count=1 skip=0

dd if=SYS.TAZ of=/dev/fd0 bs=1440k count=1 skip=1

Inserire il primo floppy e su minix scrivere setup /usr Scrivere 1440 e premere Invio 3 volte. Il programma chiederà di inserire il secondo floppy.

Per installare USR.TAZ prendere altri 3 floppy e scrivere per ogni floppy una riga dando poi invio.

dd if=USR.TAZ of=/dev/fd0 bs=1440k count=1 skip=0

dd if=USR.TAZ of=/dev/fd0 bs=1440k count=1 skip=1

dd if=USR.TAZ of=/dev/fd0 bs=1440k count=1 skip=2

Inserire il primo floppy e su minix scrivere setup /usr Scrivere 1440 e premere Invio 3 volte. Il programma chiederà di inserire il secondo floppy.

Adesso avete un sistema unix completo di tutto, utilizzato per circa 21.35 mega, se non ci credete basta scrivere al prompt df.

La tastiera italiana si setta in questo modo, (io almeno ho fatto così per l'utente root), andando in /usr/src ed entrando con l'editor vi ho aggiunto al file .profile la scritta loadkeys /usr/lib/keymaps/italian.map, ecco come:

cd /usr/src

vi .profile

preme i, aggiungere la riga loadkeys /usr/lib/keymaps/italian.map premere i tasti shift ed il tasto con la chiocciola (2 volte) wq

Una volta usciti scrivere halt e riavviare il pc, al login la tastiera sarà italiana. Per ricompilare il kernel sotto minix basta adattare il file /usr/include/minix/config.h (aprirlo con vi, per cancellare il testo # premere Esc ed il tasto x, per inserirlo il tasto i) ed andare in /usr/src/tools e dare il comando make. Se tutto andrà bene copiare il file image così:

cp image /minix/rete.0.1

shutdown -h.

Se sapete come fare riconoscere una scheda di rete ne2000 e come dargli un indirizzo di rete fatemelo sapere.

License

GNU Free Documentation License

E' possibile reperire una versione (comunque non ufficiale) di questa
licenza in italiano su

http://www.softwarelibero.it/gnudoc/fdl.it.html.

Version 1.2, November 2002

Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.

59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Everyone is permitted to copy and distribute verbatim copies

of this license document, but changing it is not allowed.

0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other functional and useful document `free` in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

This License is a kind of `copyleft`, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The `Document`, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as `you`. You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law. A `Modified Version` of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A `Secondary Section` is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The `Invariant Sections` are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none. The `Cover Texts` are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words. A `Transparent` copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not `Transparent` is called `Opaque`. Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LATEX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only. The `Title Page` means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, `Title Page` means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. A section `Entitled XYZ` means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as `Acknowledgements`, `Dedications`, `Endorsements`, or `History`.) To `Preserve the Title` of such a section when you modify the Document means that it remains a section `Entitled XYZ` according to this definition. The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.

2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies.

3. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

A.
Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
B.
List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
C.
State on the Title page the name of the publisher of the Modified Version, as the publisher.
D.
Preserve all the copyright notices of the Document.
E.
Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
F.
Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
G.
Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
H.
Include an unaltered copy of this License.
I.
Preserve the section Entitled `History`, Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled `History` in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
J.
Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the `History` section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
K.
For any section Entitled `Acknowledgements` or `Dedications`, Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
L.
Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
M.
Delete any section Entitled `Endorsements`. Such a section may not be included in the Modified Version.
N.
Do not retitle any existing section to be Entitled `Endorsements` or to conflict in title with any Invariant Section.
O.
Preserve any Warranty Disclaimers. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section Entitled `Endorsements`, provided it contains nothing but endorsements of your Modified Version by various parties-for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.

5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections Entitled `History` in the various original documents, forming one section Entitled `History`; likewise combine any sections Entitled `Acknowledgements`, and any sections Entitled `Dedications`. You must delete all sections Entitled `Endorsements.`

6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an `aggregate` if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate

8. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail. If a section in the Document is Entitled `Acknowledgements`, `Dedications`, or `History`, the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.

9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License `or any later version` applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

About this document ...

GNU-Manualinux

This document was generated using the LaTeX2HTML translator Version 2002-2-1 (1.71)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 0 -nonavigation manualinux-rs.tex

The translation was initiated by on 2005-01-09


2005-01-09