| Sondaggio | ||
|
li trovi dentro al primo CD di
installazione, in
file:/cdrom/dists/woody/main/disks-<architettura>
Si,
ma non raccomandabile. infatti ci sono dipendenze importanti senza le
queli il pacchetto cessa di funzionare o rifiuta di installarsi.
per non accettare le dipendenze, deselezionale e premi shift-q.
inserita la riga
deb-src http://www.it.debian.org/debian unstable main contrib non-free
nel sources.list;
apt-get source pacchetto
dpkg-buildpackage -us -uc
Certamente, ci sono due
possibilità:
1) andare al seguente indirizzo:
http://www.debian.org/distrib/packages#search_contents, dove
è possibile
ricercare il file negli archivi ufficiali Debian;
2) installare apt-file
# apt-get install apt-file
e aggiornare l'archivio
con
# apt-file update
Una volta scaricata la lista dai mirror che supportano apt-file,
è sufficiente
cercare il file con il comando
# apt-file search nomefile
Si, è possibile!
Basta aprire una console e dare questo comando:
$ sudo /usr/local/bin/knx-hdinstall
e parirà l pocesso di installazione...
verrà installata l'immagine attuale, quindi sono quasi 2Gb
di software...
# dpkg --get-selections >
lista_pacchetti.txt
copiare il file sulla nuova macchina
# dpkg --set-selections < lista_pacchetti.txt
# apt-get dselect-upgrade
# dpkg --get-selections >
lista_pacchetti.txt
copiare il file sulla nuova macchina
# dpkg --set-selections < lista_pacchetti.txt
# apt-get dselect-upgrade
Per riportare tutti i pacchetti ad
un livello inferiore ("stable"), è necessario modificare
/etc/apt/preferences come segue:
Package: *
Pin: release a=stable
Pin-Priority: 1001
ed eseguire "apt-get upgrade", che forzerà i pacchetti al
livello inferiore, in virtù di Pin-priority > 1000.
io ho semplicemente sostituito a
stable unstable nel sources.list,
oppure testing, e poi :
#apt-get update
#apt-get dist-upgrade
E'
possibile creare un sistema misto ad esempio stable/testing o
testing/unstable semplicemente agiungendo nel file /etc/apt/apt.conf la
riga:
APT::Default-Release "testing";
(dove testing è la versione da tenere come "base". Mettete
la versione che usate correntemente.)
Aggiungete poi nel file /etc/apt/sources.list un nuovo archivio per i
pacchetti binari.
es:
deb ftp://debian.nettuno.it/debian/ unstable main
Poi per installare i pacchetti si darà un:
apt-get -t unstable install nomepacchetto
Utilizza netselect, netselect-apt
vedi:
http://www.debian.org/doc/manuals/apt-howto/ch-basico.it.html#s-netselect
Beh, la cosa migliore, se la
sicurezza non e' l'obbiettivo fondamentale,
e' usare una release di Debian precedente alla Woody, per esempio la
Potato
(2.2) o la Slink (2.1), dove gli eseguibili, le librerie sono
decisamente
piu' ridotti della Woody, un'altra cosa che sarebbe utile e' quella di
ricompilare il kernel in modo da renderlo piu' snello (ma naturalmente
su di
un Pentium nel "Debian way" in modo da ottenere alla fine un pacchetto
deb
da installare con dpkg o apt-get). Inoltre, entrando nel file
/etc/initab,
potresti commentare alcune consolle (ne sono sufficienti 2 o 3) questo
ti fa
risparmiare circa 1 mb di ram per ogni consolle non utilizzata, dovresti
poi togliere alcuni daemon che non vengono utilizzati e installare solo
i
programmi e i tool che usi piu' di frequente. Invece di postfix ti
consiglierei exim o smail (sempre dalle precedenti release di Debian).
Ormai da 6 anni uso una Debian 1.31r6 alias "Bo" su di un 486/66Mhz
con 16Mb
di ram e gira che e' una meraviglia anche con Xwindow e vari window
manager,
e con msql .... e' solo un problema di ottimizzazione e risparmio delle
risorse .... con i tempi che corrono .... :-)
Questo
e' il testo di una mail, inviata ad un amico per aiutarlo nella
creazione di una array raid software di livello 1 (root+boot) con
Debian.
E' stato utile a molte persone, spero lo sia anche per voi.
Critiche e commenti ad andrea <at> dinale
<dot> it
Andrea
Ver.: 05 Jan 2004
-----------------------------------------------------------------------
Come ti avevo promesso ti invio la lista delle operazioni per la
creazione del raid-software di livello 1 (mirroring) su una macchina
gia' installata.
Liberatoria: non trovo piu' lista che mi ero preparato, e sto andando a
memoria, spero di non saltare pezzi. Se hai dati nel disco backuppali,
non dovrebbero esserci casini, ma non voglio sentirmi in nessun modo
responsabile di danni ai dati, persone, animali, cose, case, cervelli,
automobili, ecosistema...
Prima di cominciare leggiti almeno al capitolo 4 del software raid
howto (il link e' in fondo alla mail), e leggiti tutta questa mail,
cosi ti accorgi se ho saltato qualcosa.
Introduzione:
Non e' necessario che le partizioni siano uguali, basta che siano circa
le stesse dimensioni. Pero' ti consiglio vivamente di usare partizioni
uguali uguali.
Linux non tiene conto della geometria dei dischi, pero' ti consiglio di
impostare gli stessi valori di C,H,S, in entrambi in tutti i
dispositivi che andranno in raid.
Altrimenti potresti arrivare alla fine, quando dai l'ultimo comando ed
aggiungi le partizioni all'array e ti trovi con un messaggio di errore,
che ora non ricordo. Pero' ricordo il nervoso che mi e' venuto quando
mi e' capitato :-(
Preparati due floppy di boot con installato un bootloader in modo da
ripartire senza casini in caso di errore, il bootloader e'
indispensabile per passare i parametri al kernel.
Procedimento:
Supponiamo che sda sia il disco dove e' installato i sistema operativo
e che sdb sia il disco da usare come mirror.
- Crea la tabella delle partizioni in sdb uguale a sda
Se sdb e' piu' grande di sda puoi creare una partizione in piu'
facciamo un esempio:
Supponiamo che i due dischi abbiano un valore uguale di Head e Sector,
ma un numero di cilindri diverso, perche` sono dischi di dimensione
diversa.
sda 700 Cyl
sdb 950 Cyl
e che tu voglia fare un mirroring delle 3 partizioni sda1, sda2 ed sda3
Tabella delle partizioni di sda:
Da Cyl A Cyl
sda1 1 100
sda sda2 101 550
sda3 551 700
in sdb puoi crearti una tabella delle partizioni fatta cosi:
Da Cyl A Cyl
sdb1 1 100
sdb sdb2 101 550
sdb3 551 700
sdb4 701 950
poi fare il raid tra sda1 e sdb1; sda2 e sdb2; sda3 e sdb3. E scegliere
se utilizzare sdb4 da sola o se lasciare lo spazio inutilizzato.
Se usi sdb4 da solo perdi un po' in prestazioni, ma non butti via
spazio.
Sempre tramite fdisk marca le partizioni di sdb come fd (raid
autodetect).
- Per prima cosa assicurati che il tuo kernel sia compilato con il
supporto raid built-in (basta solo il raid1) e *NON* come modulo, ti
semplifica molto la vita.
- installati i raidtools2 (solita solfa apt-get install raidtools2)
- crei il raidtab, ovvero il file di configurazione del raid ti quoto
un esempio
raiddev /dev/md0
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
chunk-size 64
persistent-superblock 1
device /dev/sdb1
raid-disk 0
device /dev/sda1
failed-disk 1
Per approfondire il significato di queste voci ti invito a consultare
il software raid howto, io ti dico solo il minimo che c'e' da sapere.
raiddev = partizione in raid
il chunk_size e' una cosa molto importante per le prestazioni, tuttavia
non esiste un metodo matematico per ricavare il valore ottimale, dalle
mie prove sperimentali 64 e' risultato un buon valore, ma dipende da
troppe variabili e quindi e' piu' facile fare qualche esperimento.
persistent-superblock deve essere attivato se hai intenzione di fare il
boot dall'array, non e' sbagliato attivarlo sempre.
Le voci device raid-disk e failed-disk sono molto importanti, devi
specificarle nel giusto ordine.
Dobbiamo fare un passo indietro e fare alcune considerazioni. Hai gia'
un sistema operativo installato in sda, quindi non puoi creare il raid
con sda, devi usare un trucco.
Durante la creazione del raid devi indicare sda come failed-disk, in
modo da creare l'array senza sda che e' gia' occupato.
Il disco sda non puo' essere il primo della lista (infatti se guardi
come raid-disk 0 c'e' sdb).
- Quando hai il tuo raidtab (che si trova in /etc) completo delle
indicazioni di tutte le partizioni, allora puoi creare il raid, usando
il comando mkraid. In questo caso mkraid /dev/md0, mkraid /dev/md1 ecc.
Per vedere se ha creato l'array ti bastera' fare un cat /proc/mdstat
(tientelo bene in mente questo file, e' il display dello stato di
salute del raid).
- a questo punto mkfs.filesystemchevuoi /dev/md0, poi fai la stessa
cosa per gli altri device raid. Poi mkswap /dev/md2 (se serve).
Tutto ok? Bene!
- Ora l'array e' creato e devi cominciare a "travasare" il contenuto di
sda in md0 ecc.
Supponiamo di avere md0 come root, md1 come home, e md2 come swap,
composte da md0 = sda1 + sdb1; md1 = sda2 + sdb2; md2 = sda3 + sdb3.
montiamo le partizioni raid e travasiamo il contenuto:
mount /dev/md0 /mnt
cd /mnt
mkdir bin boot etc home proc mnt ecc... ecc...
mount /dev/md1 /mnt/home
poi devi copiare i file da una partizione all'altra, per una sacco di
motivi che non sto qui a spiegare e' meglio farlo tramite find + cpio:
ti sposti nella partizione che vuoi copiare e copi, ad esempio;
cd /
find . -xdev -print0 | xargs -0 cpio /mnt/
cd /home
find . -xdev -print0 | xargs -0 cpio /mnt/home
!!! PER LA SINTASSI ESATTA CONTROLLA IL SOFTWARE RAID HOWTO, NON HO
CONTROLLATO CIO' CHE HO SCRITTO E SONO ANDATO A MEMORIA !!!
- Ora hai una copia speculare della tua installazione di sda in md,
bastano solo un po' di modifiche ad un paio di file ed e' quasi finito.
Allora il tuo fstab punta su /dev/sdaX, devi modificare il futuro fstab
per puntare ai dispositivi raid. Ma non devi modificare /etc/fstab ma
/mnt/etc/fstab (ti ricordo che attualmente la tua root e' ancora sda1,
ma quando sara' in in raid la tua root sara' /dev/md0).
E devi anche sistemare il tuo bootloader, (io conosco solo lilo, se
vuoi grub arrangiati :-))
quindi si modifica /mnt/etc/lilo.conf (sempre per il discorso fatto
prima) devi far puntare la root in md0 e il boot in md0, pero' md0 e
l'insieme di sda1 e sdb1 e quindi il masterbootrecord che attualmente
si trova in sda non verra sovrascritto, quindi devi usare l'opzione
raid-extra-boot = /dev/sda,/dev/sdb (o passare l'opzione -x
/dev/sda,/dev/sdb).
Cosi fai in modo che il settore di boot venga scritto in entrambi i
dischi.
Pero' non e' ancora il momento di eseguire lilo.
Devi prima cambiare la tua root da sda1 a md0, hai due modi:
1) fare una modifica "intermedia" al lilo.conf e settare come root
/dev/md0 e come boot lasciare /dev/sda, quindi se riavvi parti con il
disco sda, come dispositivo di boot, ma la root sara' caricata in
/dev/md0.
A quel punto puoi fare la modifica finale al file lilo.conf e segnare
anche il boot in /dev/md0.
(nota: puoi anche non cambiare nulla al lilo.conf, ma passare il
parametro root=/dev/md0 al kernel in fase di boot).
2) Fare semplicemente chroot /mnt/.
Qualsiasi delle due ( o tre) strade che hai scelto, se tutto e' andato
bene adesso ti trovi con la root directory in una partizione raid.
Ora completi le modifiche al bootsector eseguendo lilo, dovrebbe dirti
che ha scritto il settore di boot in tre posti md0, sda ed sdb.
- Ora per controllare che tutto sia ok, ti conviene provare a fare un
reboot. se tutto e' ok, il tuo raid e' funzionante, anche se non c'e'
ancora sda.
- PASSO MOLTO IMPORTANTE - devi marcare le partizioni di sda come fd,
altrimenti non fa il boot (lo hai gia' fatto anche con quelle di sdb
vero?, ancora all'inizio quando hai creato la partition table de sdb
vero?).
Mi raccomando di rendere bootabili entrambe le partizioni sda1 e sdb1.
Una volta mi sono dimenticato di rendere bootabile la seconda
partizione e ci ho perso un sacco di tempo.
- Adesso ti basta aggiungere sdaX all'array
raidhotadd /dev/md0 /dev/sda1
raidhotadd /dev/md1 /dev/sda2
raidhotadd /dev/md2 /dev/sda3
e controlli la sincronizzazione dell'array sempre con cat /proc/mdstat
- Ora per completare in bellezza, fai un po' di test
spegni la macchina, togli la spina di sda e provi a fare il boot.
se tutto funziona spegni riattacca sda.
ricostruisci l'array
raidhotadd /dev/md0 /dev/sda1
raidhotadd /dev/md1 /dev/sda2
raidhotadd /dev/md2 /dev/sda3
spegni la macchina, stacca sdb e ripeti la stessa cosa.
se sei arrivato fino a qui ed hai capito tutto quello che ho scritto
nel mio strano italiano e se sei riuscito a sopportare tutti i miei
errori ortografici e grammaticali COMPLIMENTI!!
- Errori frequenti:
Dimenticarsi il persistent-superblock.
Dimenticarsi di marcare come fd le partizioni.
Dimenticarsi il flag bootabile delle partizioni di boot.
Documentazione:
Il software raid howto:
http://www.pluto.linux.it/ildp/HOWTO/Software-RAID-HOWTO.html
Le mie slide del linuxcafe` (lo so che non ti servono, ma volevo fare
lo sborone!):
http://www.vicenza.linux.it/linuxcafe/2003/materiale/7/index.html
man raidtab
Questo e' quanto e, dato che e' venerdi sera, me ne vado a fare un po'
di festa!
Buon lavoro
Andrea Dinale
/dev/st0
prima, ovviamente, va un "modprobe st". (solo nel caso non sia
giànel kernel
la differenza tra /dev/st0 e
/dev/nst0 (più in generale /dev/st* e
/dev/nst*) sta nel rewind
i device che cominciano con "n" non fanno rewind in automatico dopo
l'uso, è il sw che si preoccupa
di posizionare il nastro, ad esempio se hai messo più
blocchi e vuoi
recuperare il "N-esimo" ti posizioni
con mt sul blocco voluto e poi leggi/scrivi di dati, se usi st0 (senza
la n) ogni operazione che fai riporta
il nastro all`inizio ;) il device con rewind si usa di solito con tar
perchè è più semplice.. tar czf
/dev/st0 *..
salva tutto e riavvolge il nastro, però poi per fare il
restore devi
scorrere tutto il nastro fino al file che ti serve.
I programmi di backup invece scrivono i dati a blocchi e mettono dei
marcatori, così è più veloce recuperare
le informazioni, però per fare questo bisogna poter
controllare il
posizionamento del nastro.
Se vuoi l'interfaccia grafica non so, io conosco solo kdat, altrimenti
esiste taper da console, oppure
amanda che è un sistema client/server per fare backup di
rete.
Altrimenti sul commerciale esiste BRU oppure ARKEYA (www.arkeia.com),
io ho provato la seconda
è comodo, ha una console di amministrazione in java e quindi
funziona
anche sotto windows e ti consente
di fare il backup di server linux e ws windows in rete e sullo stesso
nastro.
scarica un jdk o sdk da sito
sun.com dato che
non e' contenuto nei source list ufficiale
della debian per ovvi problemi di licenza.
devi crearti il pacchetto in questione con java-package
1) ti scarichi dal sito della sun jdk_1_5_0_linux_i586.bin
2) apt-get install java-package
3) make-jpkg jdk_1_5_0_linux_i586.bin
dopo puoi installare sun-j2sdk1.5debian
per settare il path del java segui le istruzioni sulle FAQ debian
http://www.debian.org/doc/manuals/debian-java-faq/ch11.html#s11.2