Archive for gennaio 2008

…..ho visto alcune belle cosettine che fa Wordpres (tra cui il fatto di gestire in modo CORRETTO i commenti)… quindi sono molto intenzionato a migrare il tutto…

Bha, vediamo che fare…. per ora a tutta la gente che ho chiesto, mi ha risposto che il “nuovo” è piu carino…

Bha…

Il programma “e” è un programma scritto in java che tramite un algoritmo calcola il numero di Nepero ( e ). Questo numero è un numero molto importante in fisica, perchè si è osservato, molti fenomeni fisici e elettronici, seguono una legge basata su questo numero.
I famosi “ln” o “e” altro non sono che “Logaritmo in base e” ed ” e elevato alla x”.
L’algoritmo:
L’algoritmo di calcolo si basa sul cosiddetto “Sviluppo di Taylor” che permette di scrivere numeri irrazzionali, ad esempio “e”, ma anche “sen(x)”, “tang(x)”, usando prodotti e/o somme. Il brutto di questo sistema è che se ha continuamente un’appossimazione di e, essendo e un numero decimale illimitato non periodico.
Il Programma
Il programma non fa altro che applicare la formula per il calcolo di e, calcola i vari valori e li somma uno all’altro, ottenendo via via un’approssimazione di e sempre maggiore.
Il programma è fatto per calcolare e con 499 cifre decimali. Modificando il sorgente gli si puo modificare la precisione.
E’ disponibile un file *.pdf con le formule di calcolo di e, le sommatorie e lo sviluppo di Taylor

Pdf Teoria Programma “E” (Vivamente consigliata)

Sorgenti, Eseguibile e Teoria, formato tar.gz

Sorgenti, Eseguibile e Teoria, formato zip

Outuput programma “E”

Un mio pdf che spiega Cos’è Linux?

Questo è uno stupidissimo script bash che tramite poche domande configura un firewall generico.

#!/bin/bash
#
#
IPTABLES="/sbin/iptables"
INTERFACE="0"
SSH_PORT=""
WWW_PORT=""
FTP_PORT=""

echo -e "\n\n ***********************************"
echo " * Read README.TXT before use it ! *"
echo -e " *********************************** \n\n"
if [ $INTERFACE = "0"  ]
then
echo "Enter by with interface you are connect to the net"
echo " Exemple : eth0 ppp0...."
read answer
INTERFACE=answer
echo -e "\n\n Enter here if you want to open ssh port"
echo " Enter [Y]es \ [N]o "
read answer
if [ $answer = "Y" ] || [ $answer = "y" ]
then
SSH_PORT="ACCEPT"
else
SSH_PORT="DROP"
fi
echo -e "\n\n Enter here if you want to open www port"
echo " Enter [Y]es \ [N]o "
read answer
if [ $answer = "Y" ] || [ $answer = "y" ]
then
WWW_PORT="ACCEPT"
else
WWW_PORT="DROP"
fi

echo -e "\n\n Enter here if you want to open ftp server port"
echo " Enter [Y]es \ [N]o "
read answer
if [ $answer = "Y" ] || [ $answer = "y" ]
then
FTP_PORT="ACCEPT"
else
FTP_PORT="DROP"
fi
fi
###   Flush Rules
$IPTABLES -F INPUT
$IPTABLES -F OUTPUT

###   Drop All
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP

###   INPUT Rules
$IPTABLES -A INPUT -i $INTERFACE -p tcp --dport 22 -j $SSH_PORT
$IPTABLES -A INPUT -i $INTERFACE -p tcp --dport 80 -j $WWW_PORT
$IPTABLES -A INPUT -i $INTERFACE -p tcp --dport 21 -j $FTP_PORT
$IPTABLES -A INPUT -i $INTERFACE -s 0.0.0.0/0 -p icmp --icmp-type echo-reply -j ACCEPT
$IPTABLES -A INPUT -i $INTERFACE -s 0.0.0.0/0 -p tcp ! --syn -j ACCEPT
$IPTABLES -A INPUT -i $INTERFACE -s 0.0.0.0/0 -p udp -j ACCEPT

$IPTABLES -L

## End Bash Script

ATTENZIONE !!!!!

*********************************************
* !! Read this before use Open_Firewall !! *
*********************************************

This is a firewall to protect yours system on the net.
If you run Open_Firewall ( as root ) it ask you all configuration parameters.
If you what to run it, in yous Pc without asking every times the configurations, you can *****modify***** the line 2-3-4-5 in files Open_Firewall.

In line call
INTERFACE=”0″ you can write INTERFACE=”eth0″ if you are using eth0 interfaces or INTERFACE=”ppp0″ if you use a connection by ppp0.
In line SSH_PORT=”" , WWW_PORT=”", FTP_PORT=”", you put ACCEPT if you whant to open the port, esle DROP.

DONT LEAVE IT BLACK IF YOU MODIFY INTERFACE=”0″

For example you can write

INTERFACE=”ppp0″
SSH_PORT=”ACCEPT”
WWW_PORT=”DROP”
FTP_PORT=”DROP”

or

INTERFACE=”eth3″
SSH_PORT=”ACCEPT”
WWW_PORT=”DROP”
FTP_PORT=”DROP”

Have a nice day….

Open Firewall (tar.gz)

GRUB
Premessa : Capita spesso che, durante un update/aggiornamento/installazione, qualche O.S. del cavolo sovrascriva l’MBR [Master Boot Record] senza chiederlo…… Cosa succede in questo caso? Seplice, GRUB non parte più e, di conseguenza, l’unico Sistema Operativo che si puo avviare è quello che ha creato il disastro….

Come si puo rimediare?

Semplice, un live-cd, un bel chroot (e fino a qui non ci sono problemi….) e poi, 2 comandi di numero che ogni volta mi dimentico…..

Bene… Iniziamo….

Intanto….. Cos’è GRUB?

Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).

Ovvero….

Grub è un BOOT LOADER, ovvero il primo software che un pc fa partire quando si avvia. Questo software è responsabile del trasferimento in memoria del kernel. Il Kernel poi, a sua volta si occupa di attivare tutto il resto….

Ok, partiamo con un bel Live-cd, non c’e che l’imbarazzo della scelta….

  • Gentoo Live cd gentoo-2007.0-minimal/amd64/”>Amd64 e x86 ( ATTENZIONE !!!! il Livecd che si usa deve essere della stessa architettura che avete installato sulla macchina)
  • Ubuntu
  • Knoppix

Una volta fatto il boot cominciamo a montare le partizioni “ai posti giusti…” [ Per semplicità, la mia partizione / è hda3 ]

Creiamo un “mount point” temporaneo per i nostri lavori:

AMD64 ~ # mkdir /tmp/newroot

Montiamo la partizione incriminata nel nuovo mount point

AMD64 ~ # mount /dev/hda3 /tmp/newroot   

Montiamo il filesystem “proc” nella nuova root (questo serve per avere accesso al “sistema” e non solo alla partizione)

AMD64 ~ # mount -t proc none /tmp/newroot/proc 

Montiamo con l’opzione “bind” la dev (questa serve per poter accedere ai device e non solo alla parizione con i file)

AMD64 ~ # mount -o bind /dev/ /tmp/newroot/dev 

Effettuiamo il chroot nella partizione

AMD64 ~ # chroot /tmp/newroot/ /bin/bash

Bene, a questo punto siamo nel sistema sul nostro disco….

Ora lanciamo l’installazione di grub.

Metodo 1:

grep -v rootfs /proc/mounts > /etc/mtab
grub-install --no-floppy /dev/hda

Metodo 2:

grub
grub> root (hd0,3)
grub> setup (hd0)

Metodo 3 (floppy):

TODO

Masterizzare con Linux Da Shell

Ovvero…. Come masterizare un cd senza buttarne due…

- …ogni riferimento ad altri O.S. e’ puramente casuale :D … -

Allora, iniziamo… come premessa, suppongo ci sia gia’ un sistema Linux installato e configurato a dovere.
Questo “manuale” da’ la base per masterizzare da console i propri cd, per un software grafico consiglio k3b per chi una kde oppure gnomebaker per ghi usa gnome . Cosa ci serve ?
1) Un masterizzatore installato
2) L’emulazione ide-scsi installata e abilitata [EDIT: Con i nuovi kernel non è piu necessaria ]
3) Un po di pazienza all’inizio

Allora, come software useremo

  1. dd Per creare immagini di dischi e cd-rom
  2. mkisofs Per creare immagini da cartelle, file presenti sul disco
  3. cdrecord Per masterizzare fisicamente il cd
  4. sox Per convertire file *.wav per i cd audio

Per installare i programmi, a seconda della distibuzione usata, si puo fare:

apt-get install dd mkisofs cdrecord sox ( Debian/Ubuntu)
rpm -Uvh Nome_Pacchetto ( Red Hat et simili )
emerge -av app-cdr/cdrkit media-sound/sox ( Gentoo )

[ Bastano questi 2 in quanto cdrecord e mkisofs vengono entrambi forniti da cdrkit, e dd viene fornito da coreutils]

fatto cio’, abbiamo tutto cio che ci occorre…..
Ora, lavorando da root eseguiamo

cdrecord --scanbus

Dovremmo ottenere un output simile al seguente

AMD64 ~ # cdrecord --scanbus

scsibus1000:

        1000,0,0 100000) *

        1000,1,0 100001) *

        1000,2,0 100002) 'LITE-ON ' 'DVDRW SOHW-1633S' 'BRS6' Removable CD-ROM

        1000,3,0 100003) *

        1000,4,0 100004) *

        1000,5,0 100005) *

        1000,6,0 100006) *

        1000,7,0 100007) *

Questo output ci fa’ capire che il device e’ visto su 1,2,0 ( nel mio caso, ovvero /dev/hdc )

1,0,0 => Primary Master 1,1,0 => Secondary Master 1,2,0 => Primary Slave 1,3,0 => Secondary Slave

se otteniamo una schermata simile a questa possiamo continuare, altrimenti

occorrera’ controllare i permessi agli eseguibili e l’emulazione ide-scsi.

COPIA DI UN CD

Allora, per copiare un cd in modo identico procediamo nel seguente modo:

  1. Creiamo un immagine del cd da copiare
  2. Scriviamo quest’immagine

Semplice, vero ? :D

Allora, inseriamo il cdrom e senza montarlo creiamo l’immagine usando dd.
La sintassi e’ dd if=SORGENTE of=DESTINAZIONE
ad esempio : dd if=/dev/hdc of=Immgine.iso

A processo troveremo in ./ un file chiamato Immagine.iso di dimensione uguale a quella del cd.
Possiamo verificare che l’immagine sia corretta montandola in loop su una cartella…

Per fare cio’ bisogna avere il modulo loop compilato.

Verifica immagine :

Creiamo una cartella temporanea :

mkdir /tmp/test

Montiamo l’immagine in loop :

mount -o loop Immagine.iso /tmp/test/

Controlliamo l’immagine :

cd /tmp/test; ls 

Usciamo dalla cartella :

cd ../

Smontiamo l’immagine :

umount test/

Eliminiamo la cartella :

rmdir test

Per masterizzarla usiamo cdrecord. cdrecord ha moltissime opzioni… le basi sono queste, le altre le lascio a voi:

  • -eject Espelle il cd alla fine del processo
  • -speed=X Scrittura a velocita’ X
  • -v verbose
  • -audio Cd audio ( trattati in seguito )

quindi avremmo una cosa del tipo:
cdrecord dev=1,2,0 -v -eject speed=X Immagine.iso

 cdrecord dev=/dev/hdc -v -eject speed=X   Immagine.iso

Aspettiamo…. e il cd verra’ espulso in automatico….
Semplice, vero ?

Crazione Cd Audio
Allora, dopo averci procuraro i files ogg/wav/mp3 o qualunque altro formato, ci viene in aiuto sox….
Come tutti ben sappiamo i cd audio sono cd a 44100 e 2 canali….
usiamo sox…

 sox INPUT_FILE -r 44100 -c 2 OUTPUT_FILE.wav

questo comando crea un file di nome OUTPUT_FILE.wav a 44100Hz e stereo, pronto per essere masterizzato.

Se (ad esempio) abbiamo una cartella con dentro i nostri file *.ogg pronti per essere masterizzati, per convertirli tutti, basta fare una cosa del tipo:

for i in `ls *.ogg`; do sox $i -r 44100 -c 2 $i.wav; done;

Per masterizzare fisicamente il cd diamo il comando nella cartella dove abbiamo SOLO i files *.wav che volgiamo masterizzare

 cdrecord dev=0,0,0 speed=8 -v -eject -pad defpregap=0 defpregap=0 fs=33M driveropts=burnproof -audio *.wav
 cdrecord dev=/dev/hdc speed=48 -v -eject -pad driveropts=burnproof -audio *.wav

Bene, ho appena scoperto che Venerdì 25 Gennaio ho un intervento a Vicenza, bello saperlo così :) Locandine gia in stampa e…. NON SO IL TITOLO :D

Bhe, appena ho comunicazioni sul titolo aggiorno anche il Post….

Se siete interessati:

http://www.odeonline.it/

http://www.sgms.it/

Il posto si trova qui

Se serve un passaggio contattatemi…. tanto devo comunque andare in giu :D

Ecco, sono riuscito almeno a sapere il titolo…

La serata trattera’ di :

“Software libero: licenze libere e libere pratiche ”

Essendo in “coppia” con Francesco Tapparo, sicuramente della parte di licenze se ne occupera’ lui, io mi occupero’ della seconda parte, quindi di Installazione di un sistema GNU/Linux, spiegazione varia del sistema, di cosa come quando etc….

Pieghevole_Odeon_2008

Locandina Odeon 2008

Siete tutti caldamente invitati, se serve un passaggio basta chiedere

____________________________________________________________________

Ennesimo Update…. il talk trattera’ sulle funzionalita’ di Linux, spiegazione basilare di Linux con riferimenti specifici a Gento, breve guida all’installazione di Gentoo, configurazioni ed utilizzo di Portage.

Stefano

N.B. Essendo senza connettivita’ (ora sono dall’uni) e’ meglio se mandate un sms al posto di una mail…..