Copyright (C) 2001-2020 Cristiano Macaluso. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU Free Documentation License".

                        GNU MANUALINUX 7.7
This (Manual) is free and is realized also with collaboration of others passionated (THANKS !!!).


Manualinux Homepage:
https://www.manualinux.com http://www.manualinux.it    


DO YOU WANT TO MODIFY OR INSERT OTHER ARTICLES ? WRITE ME !
EMAIL: cm@manualinux.com (Cristiano Macaluso).
NEWS OF THE VERSION 7.7

45b)PDFUNITE HOW UNITE MORE PDF FILES


MENU'

a)COMMANDS
b)UTILITY
c)PROGRAMS
d)KERNEL
e)NETWORKING
f)OTHER
GNU Free Documentation License
DO YOU WANT ADD / MODIFY OTHER ARGUMENTS ??? WRITE ME !!!



COMMANDS
1a)COMMON COMMANDS TO MOVE FIRST STEPS ON LINUX
2a)DIFFERENT COMMANDS
3a)OCCUPATION DISK
4a)PROCESSES
5a)RAM
6a)MANIPULATE THE RIGHTS OF ACCESS
7a)MANIPULATE ACCESSES RIGHTS - ALTERNATIVE METHOD
8a)CHANGE THE PROPERTY OF A FILE
9a)CREATE AND ADD GROUPS AND USERS
10a)FORMAT A FLOPPY
11a)HOW CONTROL THE EFFICIENCY OF IDE DISKS
12a)
INSTALLED HARDWARE



UTILITY
1b)GRAPHIC ENVIRONMENT
2b)FILE SEARCH
3b)ARCHIVE AND COMPRESS FILES
4b)MOUNT A FLOPPY
5b)MOUNT A CDROM
6b)MOUNT A WINDOWS PARTITION
7b)MOUNT A LINUX PARTITION
8b)DUPLICATE A FLOPPY
9b)INSTALL PROGRAMS
10b)SCANDISK ON LINUX
11b)FILES MANAGER
12b)PASSWORD ON LILO
13b)OPEN MORE CONSOLE AT THE SAME TIME CONTEMPORANEOUSLY
14b)PRINT
15b)RESCUE FLOPPY
16b)DELETE BOOTMANAGER ON MBR
17b)DISABLE OR ABLE THE CLASSIC SOUND BIP
18b)DISABLE CTRL-ALT-CANC FROM CONSOLE OR REMOTE

19b)START THE GRAPHIC WITHOUT INSERT LOGIN AND PASSWORD
20b)ENABLE THE WHEEL OF MOUSE on Xorg or XFree
21b)COPY PARTITIONS FROM HARD-DISK A TO HARD-DISK B
22b)START KDE OR GNOME INSIDE XTERM USING XNEST
23b)SETTING SINGLE KEYS OF KEYBOARD
24b)CREATE OR RECREATE DEVICES IN /DEV
25b)TURNOFF THE PC AUTOMATICALLY
26b)ITALIAN KEYBOARD UNDER SLACKWARE
27b)GRUB ON HARD-DISK IDE AND SCSI
28b)GRUB ON FLOPPY OF BOOT OR USB STICK
29b)USE .OGG VORBIS
30b)FIRST STEPS WITH SLACKWARE
31b)UPDATED FEDORA IN EASY WAY
32b)UTILITY FIREFOX AND THUNDERBIRD
33b)USING TV WITH A ATI RADEON 7200

34b)CONFIGURE GNOME
35b)ICONS ON DESKTOP WITH WINDOWMAKER
36b)AUTOMATE ONE OR MORE PROCEDURES WITH CRONTAB
37b)MOUNT PARTITION NTFS IN READ/WRITE
38b)INSTALL SLAX ON HARD-DISK AND ON USB STICK
39b)DAMN SMALL LINUX ON USB STICK
40b)PARTITIONING'S CONCEPT OF HARD-DISK WITH REFEREMENT TO GNU LINUX
41b)IMPROVE FONTS OF GNOME ON UBUNTU
42b)ADD OR CONFIGURE A PRINTER

43b)CONFIGURE SOUNDCARD
44b)CONVERT FILE FROM MP4 TO MP3
45b)PDFUNITE HOW UNITE MORE PDF FILES


PROGRAMS
1c)VI AND EMACS HOW MODIFY TEXT FILES
2c)FAX WITH EFAX
3c)CREATE AND BURN CD AND DVD
4c)FAX WITH HYLAFAX

5c)MANAGE PACKETS ON DISTRIBUTIONS
6c)MANAGE LINUX WITH WEBMIN
7c)BURN MP3-->WAV-->MP3-->FILE AUDIO
8c)HOW USE THE BOARDS NVIDIA FOR 3D
9c)HOW INSTALL MULINUX
10c)CLUSTER LINUX WITH OPENMOSIX
11c)MINI WEBSERVER: BOA (ONLY 118K)
12c)INSTALL AND CONFIGURE ACROBAT INSIDE FIREFOX
13c)FIRST STEPS WITH DATABASE POSTGRESQL
14c)WATCH
TV ON LINUX
15c)GUARDDOG HOW INSTALL IT, CONFIGURE IT AND USE IT
16c)CREATE A PROXY SERVER WITH SQUID
17c)PARTED DELETE CREATE AND REORGANIZE PARTITIONS
18c)INSTALL WINE
19c)DRUPAL
20c)INSTALL AND CONFIGURE PHPBB
21c)INSTALL AND USE XTRACEROUTE
22c)READ NEWSGROUP WITH SLRN AND SLRNPULL
23c)VIDEO EFFECTS WITH WEBCAM
24c)FIRST STEPS WITH DATABASE MYSQL
25c)INSTALL AND CONFIGURE PHP-NUKE
26c)MANAGE THE CELLPHONE NOKIA WITH GNOKII ON LINUX

27c)MTOOLS

28c)DATABASE WITH OPENOFFICE
29c)MPLAYER AND MENCODER RIP DVD

30c)FROM DIVX TO DVD

31c)ENABLE JAVA ON FIREFOX OR MOZILLA
32c)EMAILS WITH PINE
33c)SWARET INSTALL UPGRADE UNINSTALL PACKETS ON SLACKWARE
34c)GPG
35c)SQLITE
36c)P2P with aMule
37c)GTKAM AND DIGITAL CAMERA
38c)CONNECT LINUX WITH BLUETOOTH AND CELLPHONE
39c)EMAIL WITH MUTT FETCHMAIL AND POSTFIX
40c)NETGEAR MA111 USB STICK WIRELESS ADAPTER ON SLACKWARE
41c)VIDEO SURVEILLANCE WITH MOTION AND LINUX
42c)ANTIVIRUS GNU
43c)INSTALL INTERNET EXPLORER ON UBUNTU
44c)WORDPRESS FOR DUMMIES
45c)KOMPOZER
46c)LINUX MALWARE DETECT


KERNEL
1d)APPLY A PATCH ON KERNEL
2d)COMPILE THE KERNEL IN DEBIAN
3d)RECOMPILE THE KERNEL TO BURN WITH IDE DISKS
4d)HOW RECOMPILE THE KERNEL
5d)HOW RECOMPILE KERNEL 2.6



NET
1e)MOUNT A MINI-LAN BETWEEN 2 COMPUTERS ONLY WITH TEXT COMMANDS AND NOT
2e)CONNECTING ON INTERNET BY SCRIPT WITHOUT KPPP (two procedures)
3e)CONNECT TO INTERNET WITH WVDIAL
4e)CONNECT TO INTERNET WITH KPPP
5e)INTERNET
6e)TELNET AND FTP
7e)SHARE INTERNET CONNECTION (LINUX-LINUX-CLIENT)
8e)SHARE CONNECTION TO INTERNET (EASY WAY)
9e)CONNECT 2 COMPUTERS BY PARALLEL WIRE ON LPT1 (PLIP)
10e)START A X SESSION FROM REMOTE (from linux to linux)
11e)LAUNCH PROGRAMS FROM TELNET TO GRAPHIC SIDE
12e)LAUNCH APPLICATIONS FROM TELNET TO A GRAPHIC X &
13e)LAUNCH APPLICATIONS ON CLIENT BUT THAT WORKS ON SERVER
14e)IPCHAINS AND FIREWALL
15e)ADSL WITH MODEM ETHERNET ON LINUX
16e)MAPPING OF ACCESS POINTS
17e)LINUX DEBIAN FIRST STEPS WITH THE NET
18e)SHARE PRINTER ON LINUX SUCH AS PRINTSERVER SAMBA CUPS
19e)NFS SHARING TO EXCHANGE FILES IN A LAN WITH LINUX COMPUTERS
20e)DISCOVER THE INTRUDERS
21e)SAFETY FROM ROOTKITS BACKDOORS AND LOCAL EXPLOITS
22e)WIRELESS CARD ON A LAPTOP WITH ARCHLINUX
23e)MAIL SERVER WITH POSTFIX AND TPOP3D ON ARCHLINUX
24e)WEBSITE WIKI WITH PMWIKI
25e)IPTABLES
26e)SURF ON INTERNET WITH GPRS ON LINUX

27e)CONFIGURE SSH
28e)ASSIGN DOUBLE IP ADDRESS TO NETWORK CARD


OTHER
1f)HOW INSTALL LINUX ON COMPUTER WITH PROCESSOR 386 WITH 2 MEGA OF RAM??
2f)HOW CREATE OWN MINIDISTRO ON 2 FLOPPY-DISK
3f)INSTALL UNIX MINIX 2.0.3
4f)PROGRAMS GPL LINUX <--> WINDOWS

5f)INSTALL ARCHLINUX (new installation system by Arch Install Script)
6f)SWITCH FROM INITSCRIPTS TO SYSTEMD ON ARCHLINUX


+++++++++++++++++++++++COMMANDS+++++++++++++++++++++++++++
1a)COMMON COMMANDS TO MOVE FIRST STEPS ON LINUX
This is valid for all commands:
1 - The given commands can be rewritten on the command-line and easily pushing the directions keys.
2 - Through the "history" command it's possible to see the given commands, if after  it's inserted the number, it shows the last n. commands given.
(es. history 14 ;shows last 14 commands)
3 - Often giving the commands, text files are created. To exiting from them, you need to press "q" or, in case you want to stop the process because the execution of the command creates nonsensical characters or doesn't accepted other input from keyboard, you need to press "Ctrl+c".
4 - Often, commands given, provide a series of dates that pass the visualization of screen, showing only a side of them. In order to obviate this phenomenon, you can use an option "| more" or "| less" adding at the end of the command (ls -la | more) or after the name of file:
(cat filename | more)

5 -moreover, after having used some procedures, you need to know that pushing the key "Enter", continue the visualization for row and pushing key "Space" continue for page.


THROUGH DIRECTORY
cd = cd (alone) return into homedir
(~ o $HOME)
cd .. = move to the previous directory (which depends)
cd / = return to the root directory from any point we are
ls = shows the contained of a directory 
horizontally
ls | more = shows the contained x page and vertically
(
through enter continues ahead with a single line x time)
(through space continues x page)
ls -l = the options -l shows many details.
ls -la = the option -a shows the directory preceded from a dot ( this is the command advised)
cp -av = copy full directories
es. starting (/usr) destination (/mnt/where_you_want)
cp -r = to copy directory
mkdir = to create a directory
rmdir = to remove a directory
rm -r  = to delete the dir/sub_dir and what there is inside
rm -r -f = to delete the dir/sub_dir and what there is inside without ask confirm
pwd = to know in which directory you are
tree namedir = shows the directories  depended  from which indicated
reset = if xterm doesn't respond to the given commands, the reset command  ublock it.


THROUGH FILE 
cp =  to copy file
rm =  to delete file
mv = to move/rename file
mv name newname =  it renames the file (es. mv cri.txt cro.txt)
mv filename /dirname =  move file into indicated directory
(es. mv cri.txt /usr)
cat filename = shows inside of a file
touch filename = to create an empty file immediately
wc = to show the statistics on a text file
split = to divide a file in more sides
diff = to find the difference of text inside 2 files (ex. diff 1.txt 2.txt)


UPDATE HOUR AND DATE
hwclock --set --date='12/27/2014 18:55:01'

date -s '12/27/2014
18:55:01'


OBTAIN A LIST OF USERS AND GROUPS
for i in `cat /etc/passwd | cut -d: -f1` ; do id $i ; done

Block a linux user type:
passwd -l user_name
Unlock a linux user type: passwd -u user_name


FOR THE SYSTEM
lsmod = shows modules charged on kernel
shutdown -r now = to reboot the system
reboot = like over
shutdown -h now = to close the system
halt = like over
halt -p = shut and turnoff the system
exit = to close the console
startx = start the execution of graphic server
ctrl+alt+backspace = restart in graphic mode,  
to bringing back to starting login
ctrl+alt+F1 = opens a console not emulated
ctrl+alt+F7 = easily passes on the screen 0 if there is a server  X activated. Doesn't close the console from which arrives.


HELP AND INFORMATIONS

- commands
command name --help = shows the 
syntax of the command (a generic help)
man command name = shows an explanation in details
(enter ; advancing for line - space : for page - q ; exiting and returning to the command row)
info command name = idem

- installed file
makewhatis = create a database with the informations that concern the installed files (without showing anything), later with a command " apropos filetype " is given back a list of what that concern the type of file (es. apropos edit).

- rpm packets
rpm -qa |more = shows the list of packets rpm installed

- X server
*To know which Xserver you are using, go to /etc/X11 and give the command ls -al, look at where the liks point to --> last file shows the used X server *

-kernel
uname -a  = to know the kernel version

- system and kernel
du -h = quantity of space used into directory and sub_directory in kb and mb in kb e mb.
top = shows the processes in use from cpu (to stop Ctrl+c)
ps aux = shows programs and demons running with their pid
pidof program name/demon (for ex. pidof kdm)
df = shows partitions mounted
free (-t; x the totals -m; x megabytes)
If linux doesn't see all the ram that you have (for ex. 128M), then ad this row into file /etc/lilo.conf between (default and keytable)
append = "mem=128M"   Save the file and digit lilo, reboot the system and just returned in linux digit "free".

uname = shows the informations about system
uname -m = type of pc
uname -n = name of pc inside the net
uname -r  = release of operating system (kernel version)
uname -v = version of operating system
uname -a = general summary of the options over written


FLOPPY AND CDROOM
mount -t filesystemtype /dev/fd0 directory = mounts formatted floppy on type x into a directory (vfat for windows;  msdos for msdos-dos; hfs for mac)
eject /dev/device = eject the cdrom or the burner (ex.  ejecets  (ex. eject /dev/hdc or eject /dev/scd1)


OTHER COMMANDS TO SHOW FILES AND CLARIFICATIONS
Beyond the command "cat" there are other commands, often more useful, to show inside a file.
more filename = for files of big dimensions
or
less filename

Ex.
Digit:
more /dev/hda = will be showed the map of partitions
less /dev/hda = will be showed to add the option -f
less -f /dev/hda = this is the case where anything can be understood (press "q")
cat /dev/hda = this is the case where you need to stop the process (Ctrl+c)


THE JOLLY
CHARACTER "*"

* = means all
if introduced near  a word, 
it makes reference at word and which have added characters
ex. pippo* = 
pippo pippo1 pippociao pippopluto pippo..............
You need to have attention when you use it to delete a file or directory, because a wrong command like:
"rm pippo * "; delete file pippo and also all files inside that directory. Better to control with:
ls -a pippo* before to delete something; in this way, it will be possible to control what will be deleted.


THE COMMAND CAT
(
clarifications)

Can be used to create text file :
cat > filename
digit the text
ctrl+d = to close the file
cat filename = to look inside the file

Can be used to assemble again files divided or unit different files:
ex.
cat file1.txt file2.txt file3.txt > ris.txt


IL COMMAND CP
(clarifications)
Can be used also to transfer an existing file in a file that is created in that moment
cp existingfile filecreatednow


The same thing become for the directory
cp -r existingdir dircreatednow


THE LINKS
ln name linkname = to create physicist links
ln -s name linkname = to create symbolic links



 2a)DIFFERENT COMMANDS
pushd (Says in what directory you were first)
popd (Return into directory where you were first)
cd - (like up)



 3a)OCCUPATION DISK
du -h (to show the quantity in kbyte and mbyte)



4a)PROCESSES
& (to put at the end of the command) to execute a command in background and it will give this result:
[3] 32566   Where 3 is the number of the process while 32566 is the ID of the process.

&& (to insert it between 2 commands, the second command will start only when 
the first one will be finished, for example dir && top).

bg  (starts the command in background, the syntax is: bg number_id_command).
fg  (starts the process with high priority, the syntax is:  fg 
number_id_command).

nohup (executes a command also if it has gone out from the session or it has been lost the connection, the syntax is: nohup dir &), at the end it will create a file called nohup.out with inside the result of the command.

ps -ax = to see the processes in memory.
kill = to kill a process (with kill -l you see the signals to kill.
kill -9 (n???process) = to force the died of the process.
killall = kill all processes)



5a)RAM
To see the ram, write: 
free
To get informations about used ram, write 
top
Control the side high at left on the screen. 


6a)MANIPULATE THE RIGHTS OF ACCESS
If I'm the owner of a file or directory, then, I can decide its features, I mean, the rights access. The command to do it is chmod (change modes). Its syntax is:
chmod who action what filename
where:
parameter who can be u (user) g (groups) o (others) a (all)
parameter action can be + (add) - (remove)
parameter what can be r (read) w (write) x (execute)
the field namefile ??? file or directory object of changing.
(*) all show at the same time 3 kinds of user.
We can see now some practice examples. We guess to want add access, read and written to all directories.
drwx------ verdi users 512 pippo
The easy way is: 
chmod a+rwx pippo
that is at words "add (+) to all (a) read (r) write (w) and access (x) at file pippo " (instead is a directory because there is d).
The result is:
drwxrwxrwx verdi users 512 pippo
Other example. We guess that we want file 
-r-------- verdi users 4096 paperino
readable from all and writable only from owner : 
chmod a+r paperino
chmod u+w paperino
And the result is:
-rw-r--r-- verdi users 4096 paperino
Other example. We guess to have file
 -rw-rw-rw- rossi superuser 1234 pluto
If we execute:
chmod o-rw pluto
instead to obtain:  
-rw-rw---- rossi superuser 1234 pluto
we have the message: 
Permission denied
This because I (verdi) am searching to modify the attributes of a file that is not mine (it is of rossi).


7a)MANIPULATE ACCESSES RIGHTS - ALTERNATIVE METHOD
A method more fast to assign the attributes to a file is based on this thought. We suppose to attribute numerics values to possible permissions:
Read = 4 (r)
Write = 2 (w)
Execution = 1 (x)

(Remember that for a directory, x means access). In this way, executing easy sums:
0 = No permission -
1 = Execution x
2 = Write w
3 = Execution + Write wx
4 = Read r
5 = Execution + Read rx
6 = Write + Read rw
7 = Execution + Write + Read rwx

If we put near 3 codes to access 
user / groups / others
we obtain the numbers of 3 numbers, everyone of them indicate the permissions of every type of users in synthetic way.
For example:

rwxrwxrwx 777
rw-rw-rw- 666
r--r--r-- 444
rwx------ 700
rw-r--r-- 644

and go ahead.... Therefore it's possible to include only in one way all accesses of every single type of user.
Exist then the alternative syntax of chmod
chmod codice filename

Example. The second example on first syntax of chmod wanted to transform:
-r-------- verdi users 4096 paperino

in file:
-rw-r--r-- verdi users 4096 paperino

and needed of 2 consecutive chmod, the first to assign a+r and the second to assign u+w. With alternative syntax of chmod is possible to do this in only one way, using:

chmod a+r,u+w paperino -#-#-#-(attention at comma)-#-#-#-

or in a easy way:
chmod 644 paperino


8a)CHANGE THE PROPERTY OF A FILE
If I am owner of a file and I would "gift" it to someone, that is someone will become new owner, exist the command chown (change owner).
His syntax is:
chown newowner.newgroup file
We see some examples. Guess that rossi, after have deposited in my directory the file:
 -rw-rw-rw- rossi superuser 1234 pluto
want that this file become of my propriety. It will have to execute: 
chown verdi.users pluto
The result will be:
-rw-rw-rw- verdi users 1234 pluto



9a)CREATE AND ADD GROUPS AND USERS
Make all like root user.
For ex. create a group called supporto:
groupadd supporto

For ex. create an user and insert him in a supporto group
useradd user -c (comment) -d (home directory) -g (group)
useradd cristian -c ordinato -d /reparto -g supporto

Now we need to insert a password: 
passwd cristian

It is possible also to use:
adduser (complete of all, also of password).
Will be suggested the default parameters, are possibles of modifies.

Modify the group to which user belongs:
usermod -gname_group cristian

Insert the user in other groups:
usermode -Ggroup1 group2 group3 cristian

To delete user and group write: 
groupdel supporto
userdel cristian 
(using userdel -r  will be deleted all files and the directory of the user)



10a)FORMAT A FLOPPY
How to format:
fdformat /dev/fd0H1440  this format drive A: to 1440 kb
fdformat /dev/fd1h1200   this format drive B: to 1.2 Mb
fdformat /dev/fd0H720    this format drive A: to 720 kb

To search damaged blocks:
badblocks /dev/fd0H1440

How format a floppy from msdos or windows:
fdformat /dev/fd0H1440 && mkfs -t msdos /dev/fd0
fdformat /dev/fd0H1440 && mkfs -t vfat /dev/fd0


11a)HOW CONTROL THE EFFICIENCY OF IDE DISKS
Thanks to Riccardo Pelizzi
(r.pelizzi@virgilio.it)
Control the efficiency of own ide disks.
note: these options can damage your ide disks.
If you the device ide (that can be a hard-disk, a cd-rom or a dvd) and your mother board are almost new, your disk supports the transfer mode to 32-bit, the mode ultra-DMA and irq unmasking.
The kernel is very conservative under this point of view (because activing these options on boards or on devices that don't support them, you risk to break them, and if your distro has not configured well your disk, then we will do it with the command hdparm.
-Understand at what device correspond each disk. Using the command:
hdparm -i /dev/hdX
where X is for device that you'll have to control. Usually are a, b, c, d.
One of first voices of output will be the model of your device, so you will can understandw what IDE device
are you interrogating.
-We control that the support of our chipset is active. It won't possible to interact with disks without having the support of own chipset integrated on kernel or charged as module.
For example having a chipset Via and having compiled the driver like module, first of other operation, you need to write "modprobe via82cxxx".
-Control that the state of our disks. The command:
hdparm /dev/hdX
will give an output similar at this:
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
This is output of a disk that should be already configured well. Unic important operation, but that cannot be seen from this men??? is the udma mode. With the former command you can see that the dma mode is activated, but  not what mode is actived.
About this, we will think at the end.
-Configure our device.
Start giving the command:
hdparm -t /dev/hdX
and sign your transfer rate. If IO_Support is equal at 0, active it with the command: 
hdparm -c1 /dev/hdX.


Some combinations of mother boards /devices require the parameter c3.This option should alone double the transfer rate of your devices. Unmskirq is needed to mantein the operating system "responsive" (ready!!).
while you are reading from device, useful overall for cd/dvd. You can active it with:
hdparm -u1 /dev/hdX
And now we pass to more interesting side: the dma modality. Give the command:
hdparm -t /dev/hdX
after every operation.
Every operation should hide your transfer rate. If it's not like this, you should return to the former option, because the current is not supported. Start with:
hdparm -d1 /dev/hdX
This option doesn't give necessary to a high level of performances, if it has not been actived a dma modality valid: let go to set it.
This is the table of parameters to give to hdparm (stolen from nice peoples of intel):
(ATA/33) -X66
(ATA/66) -X68
(ATA/100) -X69
For example to active the modality ATA/66, give the command:

hdparm -X68 /dev/hdX
There is a last option to set, a little more dangeorous of the others: multicount. Give the command:
hdparm -i /dev/hdX
and read the voice max_multicount. It will be the value to set like:
hdparm -mY /dev/hdX
Obviously this option is not to set for cd/dvd that has only 1 little-head, the laser. At this point you should have a transfer rate at least of 40MB for second with a disk ATA/66. Confront it with you had before of every operation. Enjoy and stay quiet by the result  :-)
NOTE: These options are not permanent, so you will have to put all your commands in a script and execute it at start putting the name of the file at the end of:
 /etc/rc.d/rc.local


12a)INSTALLED HARDWARE
Write followed commands like user root:
lspci
dmesg
cat /proc/cpuinfo

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


+++++++++++++++++++++++UTILITY+++++++++++++++++++++++++++++++++
1b)GRAPHIC ENVIRONMENT
To start the Xgraphic write (twm) and if you want to start it automatically write on file .xinitrc (into your home directory) the written twm and in file .profile o .bash_profile (startx).
Instead to write twm it's possible write also mwm, 4dwm, afterstep, fvwm95, fvwm, gnome-session ecc.. (/etc/X11).


2b)FILE SEARCH
- find (directory-file) es. find / -name cri.txt    (/ search in all file system -name followed from name of file)
- find /root -size 990k ( find a file of dimension 990k into directory /root)
- locate file (es. locate cri.txt) a fast way to find a file (before give the command update and later the command locate).
- which cri.txt in different precondition directories  ( which cri.txt /usr /tmp/root)
*    grep search a word inside a document  (es. grep "casa" *.txt )


3b)ARCHIVE AND COMPRESS FILES

EXTENSION        COMPRESS                                     DECOMPRESS

Z                        compress cri.txt                                 uncompress cri.Z
zip                      zip cri.txt cri.zip                                 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


4b)MOUNT A FLOPPY
To mount a floppy the command is:
mount -t ext2 /dev/fd0 /mnt/floppy ( name directory that you must to create with command mkdir )
If instead of ext2 (linux) write msdos , you can use floppy that are ok also in dos/windows systems.
umount -t ext2 /dev/fd0   To unmount.


5b)MOUNT A CDROM
to mount a cdrom the command is:
mount -t iso9660 /dev/hdc /mnt/cdrom (name dir that you have to create with mkdir)
To control that cdrom is hdc o hdd o scd0 o scd1 (if SCSI) and remember to create a directory named cdrom.


6b)MOUNT A WINDOWS PARTITION
To mount a windows partition the command is:
mount -t vfat /dev/hda1 /mnt/win ( name directory that you have to create with mkdir)
Control that windows partition is on hda1 (in my case) and remember to create a directory named win (at your discretion).
To mount a Windows NT partition the command is:
mount -t ntfs /dev/nt_partition /mnt/winnt

7b)MOUNT A LINUX PARTITION
To mount a linux partition the command is:
mount -t ext2 /dev/hda5 /mnt/linux1 (name directory that you have to create with mkdir)
-t is the type of filesystem, for example (ext2, ext3, reiserfs, etc....)

mount -w -n -o remount /      mount file system in write mode
mount -r -n -o remount /       mount file system in read-only mode
 

8b)DUPLICATE A FLOPPY
cat /dev/fd0H1440 > myfloppy
After which, it's needed to insert the destination floppy and execute:
cat myfloppy > /dev/fd0H1440


9b)INSTALL PROGRAMS (First of all read file Install or Readme file)

If file has extension .tar.gz or .tgz uncompact first with:
(tar zxvf program.tar.gz) or (tar xvf program.tgz)
cd program (enter in new directory just created)
./configure
make
make install


10b)SCANDISK ON LINUX
df (to control on what partition is installed linux)
badblocks /dev/hda1 (if linux is installed on /dev/hda1)
fsck -a / (to repair automatically the file system without asking questions)
ATTENTION is adviced to not using (-a) on file-system non-ext2
fsck /dev/<device> must to be unmounted or mounted in read-only
reiserfsck –check /dev/sda1  (It checks without repairing file-system).
reiserfsck –rebuild-sb /dev/sda1 (It rebuilds the blocks of damaged partition).
reiserfsck –scan-whole-partition –rebuild-tree /dev/sda1 (It checks all partition and rebuilds the file-system tree of whole file-system)


11b)FILES MANAGER
An easy file-manager to use is (mc)
You have only to write this command (mc) to access to commands that are on the high side of keyboard pressing F9 key.  Indeed you can find it to enter in telnet ed ftp.


12b)PASSWORD ON LILO (ATTENTION DANGEROUS COMMAND!!!)
Enter on file /etc/lilo.conf and insert this row:
password = "password that you want"


13b)OPEN MORE CONSOLE AT THE SAME TIME CONTEMPORANEOUSLY
Pressing contemporaneously keys (Ctrl+Alt) and F1 key it's opening a pure unix window where to insert user and the password, at this point it's possible using this  screen while you are already using another program. At
this point press keys Ctrl+Alt+F2 e so on.
To return at the X server <ctrl>+<alt>+<F7>
To use 2 X server on the same machine (havy) you have to:
ctrl+alt+F2 to pass at the second console, do the login and digit:
startx -- :1
The first X-server was and continue staying on ctrl+alt+F7 the second is on
ctrl+alt+F8. The busy display from first is "0" while that busy from second is "1". To consider it in case
you have to forward of connection X.


14b)PRINT
lpstat -tp (info on configured printers)
lpr (to print a file ex. lpr /root/cri)
lpr -p /root/cri (if the text has lines much long and go out from edges of the page)
lpq (to control the state of the printing and id during the stamps)
lprm number_id_tail_of_printing ( to drop the command of printing) ex.(lprm 28)
lprm -  delete outright all printing tails to delete all printing required
lprm -P printername  (delete the jobs of a specified printer)
/usr/bin/disable printername (disable the printer)
/usr/bin/enable printername (enable the printer)
enscript (convert the text in a files PostScript)
enscript -r (to print across)
enscript -r -2 (to print 2 pages on a single leaf)
enscript -n 3 (to print for ex. 3 copies)
enscript -a <start page> <end page> to print an alone break of pages.


15b)RESCUE FLOPPY
Giving for discounted having ricompiled the kernel and having created file /boot/bzImage go in this directory and write:
(cp bzImage /dev/fd0)
On RedHat write:
mkbootdisk --device /dev/fd0 2.2.4.5 (it's the number version of
/boot/vmlinuz)


16b)DELETE BOOTMANAGER ON MBR
From linux give the command:
lilo -U
Make a msdos help floppy and write:
fdisk /mbr
If you have Windows2000, write:
fixmbr

ATTENTION TO USE THIS COMMAND BECAUSE CAN DELETE THE TABLES OF FAT AND NTFS PARTITION OF WINDOWS.
dd if=/dev/zero of=/dev/yourdisk bs=512 count=1
To restore a lost partition or damaged (maybe because from an analysis with fdisk gives "unlocated tables", use the programs 
TestDisk & PhotoRec availables under linux or windows or other operating systems.


17b)
DISABLE OR ABLE THE CLASSIC SOUND BIP
To disable enter into file /etc/inputrc or into file ./inputrc and write:
set bell-style none

To able enter into file /etc/inputrc or into file ./inputrc and write:
set bell-style visible

To listen the sound write:
echo -e "\007"

To high the sound from line command:
aumix -L path/.aumixrc


18b)
DISABLE CTRL-ALT-CANC FROM CONSOLE OR REMOTE
Enter into file /etc/inittab and disable with a # ahead the row:
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now


19b)START THE GRAPHIC WITHOUT INSERT LOGIN AND PASSWORD
Exist 2 methods, you have to try and adapt at your distro.
1)
This thing has been tryied on redhat 7.1
-Modify the file /etc/sysconfig/desktop
Insert the name of desktop that will start, es. fvwm2
Modify the file /etc/X11/xinit/Xclients replacing the name of predefined desktop (GNOME) with fvwm2.
Modify the file
/etc/X11/xinit/xinitrc.d/xinput replacing the name of desktop predefined (GNOME) with fvwm2.
Create the file .xinitrc inside the directory of the user or root and write inside:
fvwm2
Modify the file /etc/rc.d/rc.local inserting on the first row (or replacing the first row) with:
#!/bin/bash
After this row write the path of file .xinitrc and after the written startx, resuming:
#!/bin/bash
cd /root & startx
or
cd /root & startx fvwm2
At this point reboot pc and see the result.

2)
Inserting a user with the home and the group of belongings. Modify the file /etc/profile inserting these dates:
HOME="/username"
export HOME
Save the file.
Enter in /etc/inittab disabling from row Run gettys until the end putting a # in front of all the rows.
Over the row Run getty insert another row:
1:12345:wait:/bin/bash -login
Save the file and reboot. At start enter such as user withou insert username and password.
If inside /home/user we insert a file .xinitrc where we write graphic desktop to start for example fvwm2. It's possible to copy the file  
/etc/X11/fvwm2/system.fvwm2rc  inside /home/user and rename it in .fvwm2rc
Inside file .bash_profile at the end write startx, so will start the graphic automatically. Rebooting the pc we will enter such as user and automatically will start the X chosen.



20b)
ENABLE THE WHEEL OF MOUSE on Xorg or XFree
Enter inside file /etc/X11/xorg.conf or /etc/X11/XF86Config
Configure the voice mouse such as follows:

Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/psaux" ##or "/dev/mouse"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
EndSection



21b)COPY PARTITIONS FROM HARD-DISK A TO HARD-DISK B
Create a rescue-floppy of linux from your distro that you have installed, it
will be used to install lilo if pc will not start.
Insert into pc new hard-disk (b) and start the pc from the first hard-disk
(a). Delete all dates from on b:
fdisk /dev/hdb (If you have an error Impossible open /dev/hdb it means that
hard-disk is not recognized). Try with hdc, hdd, etc  .
We continue assuming that (b), the second hard-disk, has been recognized.
Delete other present partitions in (b).
Fdisk /dev/hdb
Command (m to call the guide):
Press d and after the number of partition (from 1 to 4)
Example
d Enter
1 Enter
d Enter
2 Enter
d Enter
3 Enter
d Enter
4 Enter
w (to save and exit from fdisk)
q (to exit without save)
Say that now disk b is empty, we can check with cfdisk /dev/hdb. Now, show
the partitions in /dev/hda (first disk) and the dimensions in megabyte
(write them aside in a paper).
Create the empty partitions  in disk b with:
Create the partition linux ext2
cfdisk /dev/hdb
New
Primary (Move with keys arrows)
Dimensions: Insert the dimensions in mb, an advise, if possible grow them of
5 mb, that is
Start
Startable
Type (you can choice the type of file-system)

Create the partition swap
New
Logic
Dimensions: Insert the dimensions in mb, I advise if possible to grow of 5
mega.
End
Type (you can choice the type of file-system, that is swap)
Write (Write and save the empty partitions)
Until now we have deleted the partitions on disk b and we have created them
empty to the same dimension (almost).
Now as last thing we copy the partitions from hard-disk a to hard-disk b.
dd if=/dev/hda1 of=/dev/hdb1 (partition linux)
Wait until you won't have new line of command (depend from how much is big
the partition), after that write:
dd if=/dev/hda5 of=/dev/hdb5 (partition swap)
At the end, stop the system with the command halt, turn off the pc and move
the hard-disk a and insert the hard-disk b so that becomes first disk (move
the little-tongue on hard-disk).
If you see lilo and pressing Enter the pc stop on kernel-panic, insert the
rescue floppy and at lilo write_
linux root=/dev/hda1 (we say where is file-system of linux).
Once the system is started, configure /etc/lilo.conf so the s.o. start lilo
correctly. If lilo doesn't work, restart the pc. If it doesn't work yet,
restart the pc always with rescue-floppy and modify the first line of
/etc/lilo.conf in:
boot=/dev/hda1
or in
boot=/dev/hda
save and write lilo, restart the pc.
If at start with hard-disk b you see fsck (like scandisk) that correct
automatically the errors don't worry, if instead it asks you the root
password, it means that installation is not gone well.
I advise to repeat the installation. If you arrive at login and write top
(Enter) it's possible that partition swap is not active, surely at start
there have been errors instead of usuals ok. To active you need only to give
once:
mkswap -c /dev/hda5
swapon /dev/hda5
If you write again "top" the partition swap will be active forever, also
at
next reboot.


22b)START KDE OR GNOME INSIDE XTERM USING XNEST
Install the program Xnest, start the graphic interface chosen and from here
open xterm. Inside it write:
Xnest :1 (you can choice also 2 or 3 etc .)
It will appear a black window.
Open a second xterm and start:
xterm -display : 1 ( the same of Xnest)
If you control inside the black window there is a xterm opened and empty.
Doesn't remain that open a graphic interface wished writing inside at
example:
startkde
startgnome
Now it will open only in the black window the graphic interface chosed.
If you have a problem with authorization of xterm to not be executed it's
because misses the cookie of xauth.
If the error is this:

Xnest: client 1 rejected from local host
Xlib: connection to ":1.0" refused by server
Xlib: Client is not authorized to connect to Server
xterm Xt error: Can't open display: :1

Write this in a file, execute it and start it (obviously it adapts it):
#!/bin/sh
  MCOOKIE=$(mcookie)
  xauth add $(hostname)/unix$1 . $MCOOKIE
  xauth add localhost/unix$1 . $MCOOKIE
  Xnest "$@"
  xauth remove $(hostname)/unix$1 localhost/unix$1
  exit 0


23b)SETTING SINGLE KEYS OF KEYBOARD
Modify the keyboard on console, but before copy the file:
cd /lib/kbd/keymaps/i386/qwerty/
or
cd /usr/lib/kbd/keymaps/i386/qwerty/
cp it.kmap.gz it.kmaoriginale.gz
gunzip it.kmap.gz
vi it.kmap.gz
Example modifying the key (Caps_lock) I'll write the letter e.
Modify the row from:
keycode 58 = Caps_Lock
to
keycode 58 = e
Exit and save the file pressing Esc:wq!
Zip again the file with:
gzip -9 it.kmap
Restart the pc, when you will press the key Caps_lock instead to jump on
space will appear the letter e.


24b)CREATE OR RECREATE DEVICES IN /DEV
Login as root user
How recreate /dev/fd0:
1 possibility:
cd /dev
/MAKEDEV fd0

2 possibility:
mknod -m 660 /dev/fd0 b 2 0
followed from:
chgrp floppy /dev/fd0

I believe that it's ok also for other devices.


25b)TURNOFF THE PC AUTOMATICALLY
1??? method)
If you have Slackware (like in my case) and you don't want to recompile the
kernel, go in /etc/rc.d/rc.modules and pull out the wicket to
/sbin/modprobe/apm
Obviously you have to reboot the pc to charge the module at boot first to
give the command:
halt

2??? method)
Who would have recompiled the kernel 2.2.x you need only to able the module
APM and the pc will turnoff automatically. Instead who had recompiled the
kernel 2.4.x go in General Setup able with y the Advanced Power Management
BIOS support that Use real mode APM BIOS call to power off. Recompile the
kernel (like it's written on first points) and open with vi the file
/etc/lilo.conf.
For your recompiled distro will have to appear a screen like this, you need
only to add last row like that:
image=/boot/bzImage
label="Mandriva"
root=/dev/hda5
read-only
append="apm=power-off"
Save the file, write lilo and reboot the pc. When you will write halt the pc
will turnoff automatically, ' stopping' first the hard-disks and after
turning-off itself.


26b)ITALIAN KEYBOARD UNDER SLACKWARE
If you have started Kde, remember to install also with installpkg:
kde-i18n-it-3.X.X-noarch-1.tgz  (depend from the version of Kde that you
have installed)
koffice-i18n-it-X.X.X-noarch-1.tgz (depend from the version of Kde that you
have installed)
Go to Control Center of Kde, Regional and Easy Access, Layout of keyboard,
click on able Layout of keyboard and choice:
Keyboard Model --> Choice keyboard 105-key
First Layout Italian
Politic of changing --> Global
Click on Apply.
Go to Language and state/region, under National Setting chosing:
State Italy
Language Italian
Under Money like value delete EUR and write the symbol of euro with
AltGr e
Click on Apply, after on File and at the end on Exit.
Remember to set in xf86config (xorg86config) the keyboard at 105 keys and
Italian nationality (40). Now we can see the graphic shell, from now make a
copy of all files that we will modify. Modify the file /etc/X11/XF86Config
and changing into the section Core keyboard's InputDevice section the row
from:
Option "XkbLayout" "de"
to
Option "XkbLayout" "it"
Enter into file /etc/profile and add:
LC_ALL=it_IT@euro
LANG=it_IT@euro
Copy the file  /usr/share/kbd/keymaps/i386/qwerty/it.map.gz  in a directory
and scompact it like that (make a backyp of files that we will go to
modify):
gunzip it.map.gz
Editing after with vi go at point 18 and modify it such as it's written
(attention at tabulations):

keycode  18 = e         E       currency
        alt     keycode  18 = Meta_currency

For safe I'll write also the spaces:
between keycode and 18 there are 2
between 18 and = there is 1
between = and e there is 1
between e and E there are 9
between E and currency there are 7
between il lato and alt there are 8
between l'alt and keycode there are 5
between keycode and 18 there are 2
between 18 and = there is 1
between = and Meta_currency there is 1
Save and exit from the file, zip it and replace it with that already
exist:
gzip it.map.gz
cp -f it.map.gz /usr/share/kbd/keymaps/i386/qwerty/it.map.gz
Creat the empty file /etc/rc.d/rc.font write inside it:
setfont -v /usr/share/kbd/consolefonts/lat9w-14.psfu.gz
Give the permissions 770 and execute it at start of computer.
Reboot the pc and your shell will have the symble of euro.


27b)
GRUB ON HARD-DISK IDE AND SCSI
This point is shared in 3 sections:
- Install grub manually and working/acknowledgment of partitions
- Use grub (2 with disks eide and 1 with disks scsi)
- Improve to apply to grub (use password and start other operating systems)

- Install grub manually and working/acknowledgment of partitions
Installation of grub in few easy steps. Firstly create a floppy/usb stick/cd/dvd of rescue of linux, so in case of emergency you can always start the operating system.
uninstall lilo with:
lilo -U

Like user root install manually grub like that (into actual distributions is already installed):
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/

Control that the following files are in /boot/grub (otherwise move them in this directory):

e2fs_stage1_5
fat_stage1_5
ffs_stage1_5
minix_stage1_5
reiserfs_stage1_5
vstafs_stage1_5
stage1
stage2

Grub suggests the partitions differently from Linux: a couple of numbers between parenthesis, with numbers that start from zero. To do an example:

/dev/hda --> (hd0) (primary hard-disk)
/dev/hdb --> (hd1) (second hard-disk)
/dev/hda1 --> (hd0,0) (primary partition, in my case there is WindowsMe)
/dev/hda5 --> (hd0,4) (second partition, in my case there is Mandriva)
/dev/hdb2 --> (hd1,1) (primary partition, in my case there is Debian)

and ahead, the concept should be clear.

My pc is partitioned like that:
hda1 WindowsMe that under grub becomes (hd0,0)
hda5 Mandrake that under grub becomes (hd0,4)
hdb2 Debian that under grub becomes (hd1,1)

- Use grub (2 with disks eide and 1 with disks scsi)
Ahead 3 methods to use grub (the first and second with disks eide, the third with disks scsi).

1??? Method install/use grub with disk eide
Go in /boot/grub/ and rename the file menu.lst in menuold.lst
Create a new one menu.lst and write how followed (always second my configuration):

default 0
color white/blue #(white are the writtens, blue is background)
timeout 5
title Mandriva
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

Save file and inside shell (ex. in xterm) write:
grub-install /dev/hda (grub is installed in boot-manager)
If on first row will appear how much follows, installation is finished:
Installation finished. No error reported.
Reboot pc and you will see your new boot-manager.

2??? Method install/use grub with a disk eide
Now we create file /etc/grub.config inserting following dates modifying them, here is present my configuration:

default 0 #(says what voice will has to start)
color black/red (color written black with underground red). To change at own pleasure.
timeout 5 #(time of wait)
title Mandriva #(first operating system that starts)
kernel (hd0,4)/boot/bzImage root=/dev/hda5
title Debian #(second operating system that starts)
kernel (hd1,1)/boot/vmlinuz-2.2.20 root=/dev/hdb2
title WindowsMe #(third operating system that starts)
chainloader (hd0,0)+1 #(has to start the first sector of disk)

Save file and go in /boot/grub and digit grub and will appear:
grub>
"The operation beneath has been done from Mandriva (hd0,4), if the thing has been done from Debian I would have had write (hd1,1).
(hd9) has be fix because grub is installed on mbr, if has been put on primary partition it had to be written (hd0,0)".

Now write:

install (hd0,4)/boot/grub/stage1 (hd0) (hd0,4)/boot/grub/stage2 p (hd0,4)
/etc/grub.config #(Write from install to grub.config all in a row)

If all has gone well at the end will appear only the written grub, to save and exit write quit.
Reboot the pc and will appear new boot-loader, to choice the operating system use the arrows on keyboard. The operating system that will start of default is Mandriva (the first in the list), instead about windows and the
row beneath (chainloader etc....) I can only say that like that start regularly.

3??? Method install/use grub with disks scsi
Thanks to Giamma for the contribution.
Here I have installed Grub on my hdd, the version that I've used is: 0.9.3
To install Grub on disk hd0 after having installed grub, I've created a directory /boot/grub and there I've copied all files that I found inside /usr/local/share/grub/i386 and I've added also the file menu.lst before created like beneath hence from directory /boot/grub I've digit:

grub

root (hd0,0) #should recognize the file system of disk hd0
setup (hd0) #seach file stage1 and stage2 and its install itself
quit

To start windows with grub that is found on hdd SCSI (and if present also disks EIDE on the same pc):
modify menu.lst like below (this title must be the last):

title windows

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

# explanation about above:
# rootnoverify (hd1,0) 1
#for now the disk SCSI is not hd0 but that after the last disk EIDE
#(in my case is the secodn, hence hd1)
#(1 final says to grub to use the bios scsi fot that disk instead the bios of the mother-board)
# map (hd0) (hd1)
# map (hd1) (hd0)

#(these two rows map change the disk scsi doing become it the first disk (hence c:)
All this because grub assigns always to EIDE the first disk (c:)
If you want to foresee also a reboot from windows it will be better put another title like below (the disks have already been changed first with the start):

title reboot winsoz

rootnoverify (hd0,0)
makeactive (1)
chainloader +1
boot
#(however I haven't tried this)

-Improves to apply to grub (use password and start other operating systems)

If you want a password to boot, in file menu.lst under timeout write:
password prova (choice the password that you want)
Under every written tile insert the written:
lock
Depend which operating system you want become not accessible. Write later on xterm:
grub-install /dev/hda
Reboot the pc. At boot if you choice a s.o. you will have an error:
Error 32: Must be authenticated
You must press the letter pc on keyboard and write the password inserted in /etc/boot/menu.lst. Choice now which operating system to start moving with the arrows and after pressing Enter.

If you have other operating systems (like Minix, Netbsd, Openbsd, Freedos), you need to add the following rows on file menu.lst (taking present in which partition are installed), these are only an example, hence you will have to modify the side after the written "root":

title Minix
root (hd0,2)
chainloader +1

title Netbsd
root (hd0,3)
chainloader +1

title Freedos
root (hd0,4)
makeactive
chainloader +1

title Openbsd
root (hd0,5)
chainloader +1

Following the first method, in case you make the modifies it is not necessary write always grub-install /dev/hda because grub acquires automatically the modifies done on the contrary of lilo.



28b)GRUB ON FLOPPY OF BOOT OR USB STICK
ATTENTION
why grub on usb-stick, at contrary of floppy, will want a different map into file menu.lst, such as written below.
First of all install grub under linux like root user:
On Archlinux write:
pacman -S grub
pacman -S grub-gfx   (with splashimage enabled)
Or download the source and recompile.
tar zxvf grub-x.xx.tar.gz
cd grub-x.xx/
/configure && make && make install
cd /usr/local/share/grub/i386-pc/
mkdir /boot/grub
cp -f * /boot/grub/
You can create immagine.xpm.gz modifying an existing image, it permits to have that image at start of grub on boot:
convert -geometry 640x480 -colors 14 image.jpg image.xpm && gzip image.xpm && cp -f image.xpm.gz /boot/grub
Do you want a crypted password on grub, without the possibility to edit the menu on boot, if not inserting the password ???
Open a shell and write:
grub md5crypt
Insert the password and will be given back the crypted password. Now in menu.lst insert:
password -md5 :$........... (the crypted password).


-FLOPPY  (we can start both Linux end Windows).
Take a floppy, format it with file-system msdos (so it will be possible modify the file menu.lst both dos/windows end linux) and mount it:
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
Open another shell and write:
grub
root (fd0)
setup (fd0)
quit
Now copy, modify and create ex-novo a file menu.lst where inside there are instructions to start a s.o. on reboot. If you have done something wrong don't worry, grub on boot permit from command-line to modify file
menu.lst and to start the s.o. chosed, once time started you will have to modify the file menu.lst by hand.

This is my file menu.lst:

default 0
color red/black
timeout 10
splashimage=(hd0,1)/boot/grub/image.xpm.gz   #(if you want an image when grub starts)
#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

title Minix
root (hd0,2)
chainloader +1

title Netbsd
root (hd0,3)
chainloader +1

title Freedos
root (hd0,4)
makeactive
chainloader +1

title Openbsd
root (hd1,5)
chainloader +1

Modify my file second your need, or create a new file.
Save file in /mnt/floppy/boot/grub/menu.lst and unmount the floppy:
umount /mnt/floppy
Reboot the pc with floppy inserted.

-USB STICK (ATTENTION at new map of file menu.lst).
Insert the usb stick and write:
cfdisk /dev/sda  (choice Bootable, Tye --> 0B W95 FAT32) , write the modifies and exit pull out the stick and insert it again (from now /dev/sda will be hd1 that our usb stick).
mkfs.vfat /dev/sda1
pull out the usb stick and insert it again
mkdir /mnt/usb
cd /mnt/
mount -t vfat /dev/sda1 usb/
mkdir -p /mnt/usb/boot/grub
cp -f /boot/grub/* /mnt/usb/boot/grub

Open a shell and write:
grub
root (hd1,0)   (press Start will appear a row ---> Filesystem type is reiserfs, partition type 0x83 setup (hd1)  will have to appear differents written, last is done (otherwise repeat all from the start)
quit

File device.map into directory grub will be made from these rows, sda is the usb-stick:
(fd0)   /dev/fd0
(hd0)   /dev/hda
(hd1)   /dev/sda

Edit file menu.lst will be made like that:

timeout   5
default   0
color light-blue/red light-cyan/green
splashimage=(hd1,1)/boot/grub/image.xpm.gz   #(if you want an image when grub starts)
password the_password_that_you_want

title Arch Recompiled
lock              #enable the password
root (hd1,1)   #also if linux is on hard-disk hd0, because we found on usb stick, insert hd1
kernel /boot/bzImage root=/dev/hda2
initrd /boot/initrd26.img

title WinXP
lock
map (hd0) (hd1)          # only for Windows I remap hard-disk,
inverting it
map (hd1) (hd0)          # like above
root (hd1,0)                 #Windows will be on hd1 and not on hd0,
that is
hard-disk
rootnoverify (hd1,0)    #I don't able any controll
makeactive
chainloader +1

title ArchLinux
root (hd1,1)
kernel /boot/vmlinuz26 root=/dev/hda2 ro hdb=ide-scsi
initrd /boot/initrd26-full.img

title Minix
root (hd1,2)
chainloader +1

title Netbsd
root (hd1,3)
chainloader +1

title Freedos
root (hd1,4)
makeactive
chainloader +1

title Openbsd
root (hd1,5)
chainloader +1

If you have written something of wrong or you don't have inserted a s.o. to start, you can choice to do it from command line. When will appear the screen semi-graphic of grub you have the possibility to modify the row that start the s.o. or insert a new line. Es. If you choice the s.o. Slackware, press the key e (it's edit), after again e, modify the row for ex. pulling out "apm=power-off", press the key Esc and after the letter b of boot. Now the s.o. will reboot Slackware but without the row power-off. Pressing the letter c you will enter on the command line, with letter o you will edit a new row, etc ....
The benefits of grub are a lot, one of them is to modify by hand the row that start the s.o., the other is that that has no problems to manage different giga, has no problems of 10240 cylinder (thing that has lilo), if you have more s.o. on differentes disks I've seen that lilo gave me big problems, with grub I've resolved all.


29b)USE .OGG VORBIS
-Convert a file .ogg  in a file .wav (for informations man oggdec)
oggdec file.ogg

-Convert a file .wav in .ogg (for informations man oggdec)
oggenc file.wav

-Convert a file .mp3 in .ogg
mpg321 file.mp3 -w raw
oggenc -n file.mp3 raw -o newfile.ogg

-To have informations on a file .ogg
ogginfo -v file.ogg

-Listening a file .ogg use xmms or from command line:
ogg123 file.ogg
or
ogg123 -d alsa09 file.ogg


30b)FIRST STEPS WITH SLACKWARE
-How configure the graphic ?? Enter into shell like root user and start
xf86config (or xorg86config), in this example I'll set my graphic
card Nvidia GeForce2 with resolution of 800x600:
Enter
(Protocol Number) 4 Enter
Do you want to enable Emulate3Buttons? n Enter
Mouse device: /dev/psaux Enter
Enter a number to choose the keyboard. 4 Enter
Enter a number to choose the country. 40  Enter
Enter
n Enter
Enter
Enter
Enter your choice (1-11): 6 Enter
Enter your choice: 3 Enter
Enter an identifier for your monitor definition: Enter
Do you want to look at the card database? y Enter
349 NVIDIA GeForce GeForce (Write 349 Enter)
Press enter to continue, or ctrl-c to abort. Enter
Enter your choice: 8 Enter
Enter an identifier for your video card definition: Enter
Enter your choice: 3 Enter
Which modes? 3 Enter
Do you want a virtual screen that is larger than the physical screen? n
Enter
Enter your choice: 4 Enter
Enter a number to choose the default depth. 5 Enter
Shall I write it to /etc/X11/XF86Config? y Enter

-
Enable NumLock on Kde and under the bash.
Under Kde click on:
Settings
Control Center
Peripherics
Keyboard
Numlock (Click on Access)

Under bash (ctrl-alt F6) insert this row at the end of file
/etc/rc.d/rc.keymap:
INITTY=/dev/tty[1-6]
for tty in $INITTY; do
setleds -D +num < $tty
done

-Doesn't start the graphic ??
Go to /etc/inittab and modify the following string like that:
id:4:initdefault:

-Ho configure the printer (4 Methods):
1???)Uninstall lpr and use cups with WebAdmin with parallel printer
Go into directory /usr/bin and write "ls -l lp*" and you can see that you will see many lp*;
Do these liks (if they already exist or are not valid, delete them and recreate again):
To delete them write:
cd /usr/bin
rm lp lpstat lpr lprm lpq
To rewrite them:
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
At this point control that /etc/rc.d/rc.cups is executable 
(-rwxr-xr-x), if it is not, give "chmod 755 rc.cups", and after "/etc/rc.d/rc.cups start"
Go on /etc/rc.d/rc.local and comment with a # ahead the following row (if it's present):
#/usr/sbin/lpd
Go in /etc/rc.d/rc.M and comment these rows (able only cups and no more 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
If /etc/rc.d/rc.cups is executable, control to have apache activated, open a browser and write:
http://localhost:631/
Click on Administration and Add Printer, on name insert the name of the printer (ex. hp610c), go with a new page of the browser on http://www.linuxprinting.org/ or http://www.freestandards.org/en/OpenPrinting  and after on Printers, select the brand and the model of your printer, click later on download PPD and
download the file in /usr/share/cups/model/
Click on continue, choice on Device for ex. (Parallel Port #1), again on continue, on Make select the brand HP, on Model select the model of the printer and at the end on continue.

2???)Uninstall lpr and use cups Kde-Peripherics-Printers with usb printer
Go into directory /usr/bin and write "ls -l lp*" and you can see that you will see many lp*;
Do these liks (if they already exist or are not valid, delete them and recreate again):
To delete them write:
cd /usr/bin
rm lp lpstat lpr lprm lpq
To rewrite them:
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
At this point control that /etc/rc.d/rc.cups is executable (-rwxr-xr-x), if it is not, give "chmod 755 rc.cups", and after "/etc/rc.d/rc.cups  start"
Go on /etc/rc.d/rc.local and comment with a # ahead the following row
(if it's present):
#/usr/sbin/lpd
Go in /etc/rc.d/rc.M and comment these rows (able only cups and no more 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
If /etc/rc.d/cups is executable, on KDE go on Peripherics, printers, above
click with right-key of the mouse on AddPrinter, local Printer (parallel, serial, USB), Next, select USB Printer #1 (3550) if usb like in my case, click on other, and select file *.PPD of your printer downloaded and
saved before from http://www.linuxprinting.org/ or http://www.freestandards.org/en/OpenPrinting , after on Next, Impostations, Next, Next, Next, Next, insert the name of the printer and after on end.

3???)Use lpr and apsfilter
Once is installed the program apsfilter go in /usr/share/apsfilter and write ./SETUP and configure the printer.

4???)Print with OpenOffice with cups, Kde-Peripherics-Printers- OpenOffice Managements Printers
If you don't try to print with OpenOffice, follow what is written:
Uninstall the packet lp (execute like user root, pkgtool, go on remove and pull out in packet lpd-.......)
Go into directory /usr/bin and write "ls -l lp*" and you can see that you will see many lp*;
Do these liks (if they already exist or are not valid, delete them and recreate again):
To delete them write:
cd /usr/bin
rm lp lpstat lpr lprm lpq
To rewrite them:
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
At this point control that /etc/rc.d/rc.cups is executable (-rwxr-xr-x), if it is not, give "chmod 755 rc.cups", and after "/etc/rc.d/rc.cups start"

Go here:
http://www.linuxprinting.org/ or http://www.freestandards.org/en/OpenPrinting , download the PPD file
(depend from the model of you printer) and save it in /usr/share/cups/model/
If /etc/rc.d/rc.cups is executable, on KDE go on Peripherics, printers, above click with right key of mouse on Add Printer, local printer (parallel, serial, USB), Next, select USB Printer #1 (3550) if usb like in my case,
click on other and select file *.PPD of your printer downloaded and saved from http://www.linuxprinting.org/ or
http://www.freestandards.org/en/OpenPrinting, after go on Next, Settings, Next, Next, Next, Next, insert the name of the printer and after click on end.

From Kde go on OpenOffice Management Printers, remove the printer (if present a generic),  click on NewPrinter, Add Printer, Import, Browser and go on directory /usr/share/cups/model/, select file PPD saved before, click on OK, reselect you printer on the list, Next, write lpr and at the end Finish. Select the printer and click on Properties and here set the parameters of the printer.
On select command choice lpr and not cups (this is valid only for OpenOffice).
Good print.

-Doesn't start the printer driver??:
Go in /etc/rc.d/rc.local and insert the following string:
/usr/sbin/lpd
and eventually if you use cups like driver of printer:
cd /etc/rc.d/
chmod 755 rc.cups
/rc.cups restart

-Every time you login or start xterm you can see different writtens ??
chmod a-x /etc/profile.d/bsd*

-Configure adsl
Start the program adsl-setup and configure with few parameters required. To start the connection write:
adsl-start
To stop it write:
adsl-stop

-How install a file .rpm on slackware:
rpm -i --nodeps --force file.rpm

-How convert file .rpm in .tgz and .tar.gz
rpm2tgz file.rpm
rpm2targz file.rpm

-Install, upgrade, uninstall file .tgz on slackware
Beyond sware it's possible use the program (already automatically installed):
pkgtool
Or use the commands like below:
installpkg file.tgz (To install a packet)
removepkg file.tgz (To uninstall a packet)
upgradepkg file.tgz (To update a packet)
makepkg (create a packet compatible for slackware)
explodepkg (unzip the packet into following directory)

-Able all console (ctrl-alt-Fx)
Edit file /etc/inittab and insert the number 4 like that:
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
When you have done the modify reboot the computer.

-Able the server telnet:
Uncomment the row relative at telnet in /etc/inetd.conf:
# Telnet server:
#telnet stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd
and after give the command:
killall -HUP inetd

-Able the reboot and halt at users:
Install sudo-1.6.7p5-i486-1ok.tgz
Insert these rows into file /etc/sudoers (eventually rename it):
utente ALL=(root) NOPASSWD: /sbin/poweroff
utente ALL=(root) NOPASSWD: /sbin/reboot
Substitute "utente" with the name of the user that you want that can give halt or reboot and write on xterm:
sudo /sbin/poweroff
sudo /sbin/reboot

-Configure server Proftpd
Enter into directory /etc/ and modify file inetd.conf
Find 2 following rows and able the second:
# File Transfer Protocol (FTP) server:
ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  proftpd
Save and exit from this file and enter into file /etc/proftpd.conf:
Able or insert the following rows:
ServerName                    "ProFTPD Default Installation"
ServerType                      standalone
ServerType                      inetd
DefaultServer                   on
RootLogin                        on (only if you want accept login like
user
root).
Save file and reboot slackware.

-Install server vsftpd
Delete server proftpd con:
removepkg proftpd
Install vsftp con:
installpkg vsftp*.tgz
Go in /etc and configure file vsftpd.conf
Add:
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
Choice after the wished options.
Create the directory empty:
mkdir /usr/share/empty
touch  /etc/vsftpd.chroot_list
At the end write:
vsftpd &
If you want the server ftp start at reboot, insert the string in:
/etc/rc.d/rc.local


31b)UPDATED FEDORA IN EASY WAY
Thanks to Gianni Giusti (giannigiusti@tiscali.it).
I searched on Internet better web-sites that contained packets of fedora
(also more weirds). Between them I selected repository fastest. Afterward
I've installed the program Synaptic that is a graphic interface to apt-get.
The result: now I've a program of installation programs (Synaptic) that
download also the machine for coffee  :-) Other that windows ... try it to
believe.
If you want to configure apt-get and synaptic with the list of repository
that I'm using, you have to go ahead in this way (long but easily).
1)download and install the packet apt:
http://ftp.freshrpms.net/pub/freshrpms/fedora/linux/1/apt/apt-0.5.15cnc3-0.1
fr.i386.rpm
2)Go under /etc/apt/
3)Edit file sources.list and past the text below, deleting what already
exist:

# 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)
rpm 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) Go on terminal and stand on directory /tmp/

5) Exec the following commands:
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) Execute the command (always under /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) Now execute the command (always from terminal):
apt-get update  -- in this way will be downloaded the list of packets
available and the dependences

8) Now write the command:
apt-get install synaptic In this way we are installing program Synaptic

9) Now go on first menu (red hat), go on menu "system tools"
and start the application "Synaptic..."

10) The keys that you see in front of you are:
"Update list" -> Update the list available on-line of packets
downloaded
"Upgrade system" -> update old packets
"Execute" -> Install and uninstall the packets you have selected  On
the
left is present a panel where you can insert the packet to install. The
program shows you the packet, and says if it is already installed, the
version, the version present on-line, etc...
Now you have only to select and decide (by keys on left), if install it or
uninstall it, etc ...


32b)UTILITY FIREFOX AND THUNDERBIRD
-Java on Firefox
Download java for linux and unzip for ex. in:

/usr/local/
so you will have the directory:
/usr/local/j2re1.4.2_05/
Install Firefox or Mozilla for ex. in:
/usr/local/
so you will have the directory:
/usr/local/Firefox/
Now copy the link in a file inside the directory plugin of Firefox.
In my case I've done this command:
ln -s /usr/local/j2re1.4.2_05/plugin/i386/ns610-gcc32/libjavaplugin_oji.so
/usr/local/Firefox/plugins/

-Install plugin macromedia flash and fonts on Firefox.
The installation has been done on Slackware 9.1
Download the plugin of macromedia flash from here:
http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=Sh
ockwaveFlash
The version is:
install_flash_player_6_linux.tar.gz
Unzip it with (tar zxvf install_flash_player_6_linux.tar.gz)
We install fonts urw.
Download file urw-fonts-1.0.7pre22.tar.bz2 (or next version) from web-site:
ftp://ftp.izmiran.rssi.ru/pub/fonts/urw/
Unzip this file like that:
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 (over-write files that already exists)
fc-cache
We install fonts TrueType from Windows.
cd /usr/X11/lib/fonts/TTF/
mkdir msttf
Mount the partition of windows and we copy fonts on linux.
cp -f /mnt/windows/fonts/ari*.ttf msttf/
fc-cache msttf
We install also the fonts Times New Roman.
cp -f /mnt/windows/fonts/times*.ttf msttf/
fc-cache msttf
Now we enter into directory install_flash_player_6_linux just created and
write:
/flashplayer-installer
Press 3 times Enter, digit the directory of browser, for ex.
/usr/local/Firefox/
Lastly press key y and after key n
The installation is over, close the browser if opened and re-open it.

-Open Firefox from Thunderbird
Go into directory Thunderbird of own home page (where is file called
bookmarks.html), for ex:
/home/.thunderbird/Default User/ue0y72hv.slt/
or
/home/.thunderbird/default.wbu/
Enter into directory *efault* (it will be surely different from mine) and
see if exist the file user.js, if doesn't exist create it and insert the
following string at start:
user_pref("network.protocol-handler.app.http",
"/usr/local/Firefox/firefox");
Modify it, second where is executable file Firefox. Close Thunderbird, if
opened, re-open it, if now you click on link, Firefox will be opened.

-Open link in differentes tab from Thunderbird in Firefox? (Thanks to
Leone2000)
It's a problem, but after hours of "googleggiamenti" I've prepared this:
Put in ~/.thunderbird/<profile-directory>/user.js (if doesn't exist, create
it):
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");

Afterward create in /usr/local/bin the script firefox-start that contain:
#!/bin/bash
### the syntax -remote doesn't work if Thunderbird is already opened!
###/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

-Send email from Firefox, opening mail-manager.
Create file user.js into directory:
/yourhome/.mozilla/firefox/default..../
Insert inside the written:
user_pref("network.protocol-handler.app.mailto",
"/usr/local/Thunderbird/thunderbird");
Salve file, close the browser and the mail-administrator (in this case
Thunderbird), re-open only Firefox and click on an email link.

-Able Updates and upgrades for Firefox.
Edit --> Preferences --> WebFeatures --> Click on written:
Allow web sites to install the software and click on Allowed Sites. Insert
these 2 links:
update.mozilla.org
http://www.mozilla.org
Click on Allow.
Click on OK, after again on OK, File --> Quit.
Re-open Firefox, if high on right of the browser there is a white arrow
inside a red circle, click on it and install the official patch of Firefox.



33b)USING TV WITH A ATI RADEON 7200
Thanks to: Leonardo Lorenzetti aka Leone2000 (leone2000 (at) inwind.it)
Preamble:
I've thought to write this post to help, who like me, have a ATI Radeon 7200 and want use the exit TV on Linux.
I've searched a lot on Internet and I've seen that is not possible with ATI before series 9000 for many legal problems at macrovision & c. Well, I tried and I've done it and now I explain how

Start:

-Required
I'm using it on Slackware 9.1 with kernel and Xfree86 of default, therefore respectively 2.4.22 for the kernel and 4.3.0 for Xfree86

-What we need.
Firstly download drivers ati radeon of project gatos, I've downloaded ati-4.3.0-14.i386.tar.gz  but sincerely I believe that it's not so necessary because drivers already present in Xfree86 4.3.0, for me, should be correct,
however you find them here:
http://sourceforge.net/project/showfiles.php?group_id=12629
After we need a program called atitvout you can download here:
http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/atitvout-0.4.tar.gz

-Start
Be sure that when X starts, it is configured with driver radeon. Da console start atitivout auto pal
it's important  that you do it with wire connected on tv and that tv is opened. Done this you'll see an error:

"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!"

Don't consider it !!
Now, you go on file of configuration /etc/X11/XF86Config and into section Device, change the Driver from radeon to vesa and furthermore add the following rows:

Option "TVOut" "1"
Option "TVStandard" "PAL-B"

The final result must be like this:
Section "Device"
Identifier "Ati Radeon 7200"
Driver "vesa"
#Driver "radeon"
Option "TVOut" "1"
Option "TVStandard" "PAL-B"
VideoRam 65536
EndSection

-Ok, we've done
At this point you have to reboot X with Ctrl+Alt+BS will do the magic  . you will see the output on monitor and on tv  ..  while I'm writing, I'm watching a funny Gigi Proietti in "Febbre Da Cavallo" ahahahhah!!!!


34b)CONFIGURE GNOME
-Configure gdm to have Reboot and Halt:
From root open xterm and write:
gdmsetup
go on Security
select show menu Action:
if you want other options click also on 2 options below. Under General you can do also the login automatically for a user, etc...
The configuration file of gdm is in /etc/X11/gdm /gdm.conf the interested rows for shutdown and reboot are:
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

-Reduce the icons and open them only with one click of the mouse under gnome:
Desktop Preferences, Management File, Preferences seen link icon.

-List of opened windows on instruments crossbar:
Right key on bar, Add panel, utility, windows lists.


35b)ICONS ON DESKTOP WITH WINDOWMAKER
Thanks to Gianfranco Bertozzi member of ACROS
Lug Versilia Lucca Massa-Carrara. email: gbertozzi@tiscali.it
A problem of many users of windowmaker is that they can't put icons on desktop (
peripherals and programs) like happens in KDE or in gnome. This little how-to resolve this missing.
Download ad install filemanager rox
You can find it on: http://rox.sourceforge.net
When you have installed it, in X, start it from xterm (or another program) with the command:
rox -p=Default
Will appear on desktop the icon Home. drag it on Dock (the column where are the applications, for who doesn't know) and set the options so it will appear at start of wmaker. Right click on icon dock, after 'settings', click
on 'start when windowmaker is started'. In this way, when wmaker will start, rox will appear under shape of icon on desktop and with relative big square on dock.
Rox hasn't own icon for dock, so you will have to create one that you like.
I've put  /usr/X11R6/include/X11/pixmaps/fileman.xpm
At this point open the window Home clicking on relative icon, and put the mouse within the window. Surfing between file, you can drag some file (of 
peripherals, of application, of date) on desktop and what will remain there. Rox supports the drag & drop between more windows, the possibility to drag a file on icon of relative
application and positioning icons on desktop (whose beauty can be regulate on first menu, that is compare click in with right button of mouse on window of filemanager, 'desktop', 'dimension of the grid').
You can also create a waste basket (trash): you can create a little batch with:

#move file in a directory without delete them
mv $1 /path_per_mytrash/
or more destructive:
#delete file without possibility to recover
rm $1

and putting it on desktop. A icon for the trash is:
/usr/X11R6/include/X11pixmaps/trash_empty.xpm
To automatize the opening of default of some file, you have to click with right bottom of mouse on icon, ope menu at voice 'Impost action' and insert the command of shell (or the call to xterm with 'xterm -e commandname') followed from "$1" that is the parameter of the same file. If you click on
'Only for type.....' the application will be called only for files with the same extension. If instead we want apply it to all file of that type (for example 'text of all types'), you will have to click on the option.
Note: if you work with Dos or Win partitions, or files have bit executable activated, won't be possible assign an application in this way. In that case we have two possibilities: (a) from first menu (like before) choice 'Options - Types' and click on bottom 'Ignore bit executable for known extensions'. This works on many cases. (b) If Rox didn't know the extension (for example: OpenOffice use extensions "sx.." instead "sd.." like before,
and in my Rox it doesn't know them), then you have to click on 'Show rules
transferring from name to type', edit the file:
/usr/local/share/Choices/MIME-info/gnome-vfs.mime
and insert new extensions. If application already exists (search it before insert it newly!) it's sufficient add new extensions, share from one space.
This string add 'sxw' to 'sdw' of StarOffice already present:
application/x-staroffice-words
        ext: sdw sxw
Close all, reboot rox and you are ok !
Hint: read help, the is good enough. Right click on a window, option
'Window - shows help' or press F1 from inside Rox. The Manual.html' is what you need.


36b)AUTOMATE ONE OR MORE PROCEDURES WITH CRONTAB
crontab -e     Edit file crontab or creates new one if already doesn't exist
crontab -l      Shows file crontab
crontab -r     Remove file crontab
crontab -v     Show last time crontab has been edited

minutes  hours     day of month   month      day of week (command to execute)

   30     18          *            *         *           ls -al

Between numbers leave only 1 space.
Crontab edited for that user, will exec a command only for that user, to
exception of command root.
To edit the file is like you were inside editor vi (see point 1c)

Example:
If at 21:15 of day January 19 you want that linux exec a command:
15 21 19 12 * dir

It will be executed on 17:00 on first five days of every month
00 17 1-5 * * dir

It will be executed at 21:35 of second day of the month of April (4), July (7) and October (11)
35 21 2 4,7,11 * dir

For major detailes write:
man crontab


37b)MOUNT PARTITION NTFS IN READ/WRITE
Thanks to Gianni (nick Name KIO).

New procedure regards distributions Fedora 5, Slackware 11, Suse 10.2, Debian testing/sid, Mandriva 2007 and Gentoo (sabayon).

Old procedure regards distributions such as Fedora, Slackware and Debian etch.

- NEW PROCEDURE:

* On Fedora 5
Go on website http://fuse.sourceforge.net, download the pkg
fuse-2.5.3.tar.gz and I unzip it:
tar xvzf fuse-2.5.3.tar.gz
I install it:
cd fuse-2.5.3
/configure && make && make install
after go on website
http://mlf.linux.rulez.org/mlf/ezaz/ntfs-3g-download.html
download the pkg and I unzip it:
tar xvzf ntfs-3g-20070920-BETA.tgz
Install it:
cd /home/kio/ntfs-3g-20070920-BETA
/configure && make && make install
mount the partition ntfs in read/write
#mount -t ntfs-3g /dev/hda1 /mnt/win
and bingooooooooooooooo!
unmount it:
umount /mnt/win
And if I didn't want install the sources but the rpm so it would be more easy to remove them ?? What I have
 to do ?
I download rpm of ckechinstall searching it from
http://rpmfind.net/linux/RPM/  but I could use yum
rpm -ivh checkinstall-1.6.0-3.fc3.rf.i386.rpm
after
I reenter inside 2 directories where I've downloaded both tar.gz and I give:
cd /home/kio/ntfs-3g-20070920-BETA
/configure && make && checkinstall
IMPORTANT:to mounting automatically at startup you need insert in /etc/fstab
the following statement:
/dev/hda1 /mnt/win ntfs-3g rw,user 0 0
and the partition is mounted in read/write for all

Disadvantages complained: nobody- avoid use in environment of production or
in partitions containing sensible dates !
* PS1=On the guide by Moreno in which the problem is reversed, from Windows
we write inside Ext3 linux partitions, the guide is here:
http://www.mandrakeitalia.org/modules/wfsection/article.php?articleid=191
* PS2= A analogous guide for the distro slackware is available here
http://www.slacky.it/wikislack/index.php title=Scrivere_su_filesystem_NTFS
* PS3= Sure what the repos of livna activated now is truly so easy add to
Fedora-6 the support to NTFS using:
yum -y install ntfs-3g
and it does all itself, after you can go on such as indicated above !

* On Slackware 11 and derived how we proceed ???
I follow my guide http://xoomer.alice.it/lucky341/NTFS.html
the pkg fuse installed is 2.5.3 , I've only to upgrade it - I go on website
http://fuse.sourceforge.net
and I download new version fuse-2.6.0.tar.gz:
tar xvzf fuse-2.6.0.tar.gz
cd fuse-2.6.0
/configure && make && checkinstall
after:
upgradepkg fuse-2.6.0-i386-1.tgz
after from website http://www.ntfs-3g.org/index.html I download the last
version of drive ntfs-3g that I install it with method above seen:
installpkg ntfs-3g-0.20061115-BETA-i386-1.tgz
after:
mount -t ntfs-3g /dev/sda1 /mnt/win
but I've a rough error:
fuse:no such device
while the module exists and is charged - what I have to do ???
on google I don't find anything, then I return back removing the pkg
ntfs-3g-0.20061115-BETA-i386-1.tgz
I search the previous driver on internet, I found it on
http://gentoo.netnitco.net/distfiles that is not more available on
http://xoomer.alice.it/lucky341/ntfs-3g-20070920-BETA.tgz
ntfs-3g-20070920-BETA.tgz
usual job:
tar xvzf ntfs-3g-20070920-BETA.tgz
cd ntfs-3g-20070920-BETA
/configure && make && checkinstall
installpkg ntfs-3g-20070920-BETA-i386-1.tgz
mount -t ntfs-3g /dev/sda1 /mnt/win
and bingooooooooooooooooooo!!!!!!!!!!!!!!!

IMPORTANT:mounting automatically at startup you need to insert in /etc/fstab
the following statement
#/dev/sda1 /mnt/win ntfs-3g rw,user 0 0
and the partition is mounted in read/write for all
To unmount the partition:
#umount /mnt/win

* On Suse 10.2?
I follow my guide:
http://xoomer.alice.it/lucky341/NTFS.html
I install checkinstall:
smart install checkinstall

I go on website http://fuse.sourceforge.net and I download the pkg
fuse-2.6.1.tar.gz I download it:
tar xvzf fuse-2.6.1.tar.gz
and I install it:
cd fuse-2.6.1
/configure && make && checkinstall

rpm -i fuse-2.6.1-1.i386.rpm
rpm -ivh /usr/src/packages/RPMS/i386/fuse-2.6.1-1.i386.rpm
linux-suse:/home/kio/fuse-2.6.1 # modprobe fuse

after I go on website
http://mlf.linux.rulez.org/mlf/ezaz/ntfs-3g-download.html and I download the
pkg and I unzip it:
tar xvzf ntfs-3g-20070102-BETA.tgz
I install it:
cd /home/kio/ntfs-3g-20070102-BETA
/configure && make && checkinstall

You will have this message:
Done. The new package has been saved to
/usr/src/packages/RPMS/i386/ntfs-3g-0.20070102-BETA-1.i386.rpm
You can install it in your system anytime using:
rpm -i ntfs-3g-0.20070102-BETA-1.i386.rpm
rpm -ivh /usr/src/packages/RPMS/i386/ntfs-3g-0.20070102-BETA-1.i386.rpm

I try to mount::
mkdir /mnt/win
mount -t ntfs-3g /dev/hda1 /mnt/win
/sbin/mount.ntfs-3g: error while loading shared libraries: libntfs-3g.so.0:
cannot open shared object file: No such file or directory
I restart computer, remount it but I have a rough error:
fusermount: 'fuseblk' support missing; try the kernel module from fuse-2.6.0
or later
Failed to create FUSE mount point.
Retry to create FUSE mount point ...
fusermount: 'fuseblk' support missing; try the kernel module from fuse-2.6.0
or later
Failed to create FUSE mount point.
umount /dev/hda1

while the module exists and is charged, what I've to do ??
see also:
http://forum.ntfs-3g.org/viewtopic.php?t=14

then I return back and I remove the pkg ntfs-3g-20070102-BETA-i386-1.rpm
I search a previous driver that works on internet I found it on su
http://gentoo.netnitco.net/distfiles/ that is ntfs-3g-20070920-BETA.tgz
that is not more available on
http://xoomer.alice.it/lucky341/ntfs-3g-20070920-BETA.tgz

same job, I restart::
mkdir /mnt/win
mount -t ntfs-3g /dev/hda1 /mnt/win and bingoooooooooooooooo!!!!!!!!!!!!

IMPORTANT:mounting automatically at startup you need to insert in /etc/fstab
the following statemant
#/dev/sda1 /mnt/win ntfs-3g rw,user 0 0
and the partition is mounted in read/write for all
To unmount the partition:
#umount /mnt/win

* On Debian testing/sid????????????????
on debian it's easy fuse is already installed by fuse util
then:
apt-get install  ntfs-3g
mount -t ntfs-3g /dev/hda1 /mnt/win

IMPORTANT:mounting automatically at startup you need to insert in /etc/fstab
the following statemant
#/dev/sda1 /mnt/win ntfs-3g rw,user 0 0
and the partition is mounted in read/write for all
To unmount the partition:
#umount /mnt/win

* On Mandriva -2007 ?
rpm -qa fuse
smart install fuse
smart install ntfs-3g

mkdir /mnt/win
mount -t ntfs-3g /dev/hda1 /mnt/win
umount /dev/hda1
mount -t ntfs-3g /dev/hda1 /mnt/win
modprobe fuse
mount -t ntfs-3g /dev/hda1 /mnt/win

I restart but the module is not charged then I add in /etc/modprobe.preload
***********
# /etc/modprobe.preload: kernel modules to load at boot time.
fuse
# 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.
# this file is for module-init-tools (kernel 2.5 and above) ONLY
# for old kernel use /etc/modules
*************
after I have seen /etc/fstab to mounting automatically at boot of partition
for all
/dev/hda1 /mnt/win  ntfs-3g   umask=0,rw,users  0 0
and bingooooooooooo!!!!!

* On Gentoo(sabayon) ??
I go on website http://fuse.sourceforge.net and I download the pkg
fuse-2.6.1.tar.gz and I unzip it:
tar xvzf fuse-2.6.1.tar.gz
and I install it:
cd fuse-2.6.1
/configure && make && make install
after I go on website
http://mlf.linux.rulez.org/mlf/ezaz/ntfs-3g-download.html
I download the pkg and I unzip it:
tar xvzf ntfs-3g-20070102-BETA.tgz I install it:
cd /home/kio/ntfs-3g-20070102-BETA
/configure && make && cmake install
even though later I saw that the driver ntfs3g, is presents in portage (and
trying to install it I had an error)
reboot
mkdir /mnt/win
mount -t ntfs-3g /dev/sda1 /mnt/win

IMPORTANT:mounting automatically at startup you need to insert in /etc/fstab
the following statemant
#/dev/sda1 /mnt/win ntfs-3g rw,user 0 0
and the partition is mounted in read/write for all
To unmount the partition:
#umount /mnt/win

- OLD PROCEDURE:
Thanks to Scrimieri about packet-programs called ntfsprogs that give a series of instruments to access on filesystem such as NTFS, I've mounted fast and easily on Fedora the partition Windows Ntfs in read/write, using FUSE, a new project to use filesystem in userspace, how ??

* On Fedora:
I've been on web-site:
http://www.linux-ntfs.org/content/view/19/37/
and I've downloades and installed the pkg:
ntfsprogs-1.12.1-1.i586.rpm
ntfsprogs-devel-1.12.1-1.i586.rpm
ntfsprogs-fuse-1.12.1-1.i586.rpm
ntfsprogs-gnomevfs-1.12.1-1.i586.rpm
Later with yum, because a problem of dependences, I've installed:
fuse-2.4.2-2.fc4.i386.rpm
fuse-libs-2.4.2-2.fc4.i386.rpm
at that point
ntfsmount /dev/hda1 /mnt/win
and bingooooo! I've created/deleted file inside filesystem ntfs of windows !!!!!!!!!!!

* On Slackware?
with an old trick I used rpm over-indicated, but the pkg more important is
not exportable on slacky, that is:
fuse-2.4.2-2.fc4.i386.rpm   Doesn't work !
MAKEDEV FUSE :fails!  Therefore what to do ?? I've been on web-site
http://fuse.sourceforge.net/  and downloaded the tar.gz
tar xvzf fuse-2.4.2.tar.gz
cd fuse-2.4.2
/configure && make && make install
I had already  put files pkg inside directory /home/kio/ntfs
therefore
cd /home/kio/ntfs
rpm -ivh *.rpm --nodeps
and bingooooooooo!
LATER
ntfsmount /dev/hda1 /mnt/win
and go!!!! :
full mounted read/write!
I believe that this is the final solution: easily, smart and sure !

TRY TO BELIEVE !
-if we don't want use rpm we can convert them in tgz with tool rpm2tgz!
And on debian etch? Go ahead such as in Slackware!


38b)INSTALL SLAX ON HARD-DISK AND ON USB STICK
Thanks to Antonio Mori moore2@inwind.it to having written the first side
(INSTALL SLAX ON HARD-DISK)

-INSTALL SLAX ON HARD-DISK
Procedure to install the distribution live based on slackware Slax.
http://www.slax.org
I preface that this distro is difference from slackware because it mounts new kernel 2.6.16 and new kde 3.5.3, moreover you can install inside it many programs used in office, network, security that you will find in side
modules in the official web-site. Install these modules ie easily, one time downloaded them you have only to
click above them and these will be installed alone.
This is the procedure to install slax on hd.
1) insert cd of slax on computer and reboot
2) Once time distro is started in live modality (start also kde with startx) open a shell
3) From shell digit cfdisk ( partitioning tool)
4) Create a partition of 200 mb ( like minimum ) or of 1 gb and beyond like maximum ( better solution ).
5) I preface that the swap is optional but if you create it, it's better.
6) Once created two partitions, one for root and the other for swap, partitioning them with the following commands from shell:
mkfs.ext2/dev/hdx    for root    ( hdx is the name of partition )
mkfswap /dev/hdx2  for swap   ( hdx is the name of partition )
7)download the script to install it on hd from here
http://www.slax.org/forum/viewtopic.php?t=13296
Copy the script into root and start with ./namescript  (I've called it slaxinstall)
9)Once time started, it will ask you the name of your partition where you will want to install it ex. mnt/hda1 etc.
10)At this point the distro will be installed on your hd at the end of the process digit liloconf and in modality expert install lilo where you want on mbr or on a floppy.
Enjoy a lot, I sure you that it is a light and stable with all essential.

- INSTALL SLAX ON USB STICK
You have to work like user root
Insert the usb stick and choising the correct device write:
cfdisk /dev/sda  (choice Bootable, Tye --> 0B W95 FAT32) , write the modifies and exit
pull out the stick and insert it again (from now and after /dev/sda will be hd1 that is our usb stick)
mkfs.vfat /dev/sda1
pull out the usb stick and insert it again
mkdir /mnt/usb
mount -t vfat /dev/sda1 /mnt/usb/

Download iso version 6.0.7 (last version available in this moment) of slax from web-site:
http://www.slax.org
mkdir /slax
mount -o loop slax-6.0.7.iso /slax/  (if you have error, you need to anable the loop on kernel or write modprobe loop and repeat the command)
cp -fra /slax/* /mnt/usb/

This last version already has a script to install the bootloader in Linux and in Windows:
cd /mnt/usb/boot/
./bootinst.sh (or exec bootinst.bat on Windows)
cd / && umount /mnt/usb/  (unomunt the device usb so you can use it immediately)

If you want use your preferred bootlader such as lilo or grub (if you choice grub you can start also other operating systems beyond Slax), that is it will have at least a double function.


- If you want having LILO like boot loader:
cp vmlinuz /mnt/usb/
cp initrd.gz /mnt/usb/
cd ..
mv isolinux.cfg syslinux.cfg
Edit new file syslinux.cft and delete "boot/"  near at initrd.gz and vmlinuz, don't delete the other boot/ present
Save and exit from file syslinux.cfg
cd /
umount /mnt/usb
syslinux -s /dev/sda1
Reboot the usb stick and set the bios, so you will can boot from this.

- If you want having GRUB inside the usb-stick (so you will start other operating systems)
mkdir -p /mnt/usb/boot/grub
cp -f /boot/grub/* /mnt/usb/boot/grub
grub
root (hd1,0)
setup (hd1)  will show different writtens
quit

File device.map inside directory grub will have these rows, sda is the usb stick:
(fd0)   /dev/fd0
(hd0)   /dev/hda
(hd1)   /dev/sda

File menu.lst inside usb stick will have be composed from:
timeout   5
default   0
color light-blue/red light-cyan/green

title Archlinux
root (hd1,1)
kernel /boot/bzImage root=/dev/hda2
initrd /boot/initrd26.img

title WinXP
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,0)
rootnoverify (hd1,0)
makeactive
chainloader +1

title SlaxUsb
root (hd0,0)
kernel /boot/vmlinuz max_loop=255 init=linuxrc load_ramdisk=1
prompt_ramdisk=0 ramdisk_size=4444 root=/dev/ram0 rw
initrd=/boot/initrd.gz

Save the file and unmount the usb stick:
cd /mnt
umount usb
Reboot the usb stick and set the bios, so you will can boot from this.


39b)
DAMN SMALL LINUX ON USB STICK
Thanks to Antonio Mori moore2@inwind.it :
The procedure of damn small linux, a distro based on debian of 50 mb with many fundamental programs that you find inside big distros.
This is the procedure of installation in few steps, anyone can do it.
1) Copy  iso of damn small linux after having downloaded from official web-site on a cdrom
2) Insert you usb stick in your pc, you need only a pen of 128 mb
3) Insert cd with the isd of damn small linux into computer and start it on boot from cdrom
4) On desktop of damn small linux click in a empty point with right bottom of mouse
5) Apps>>Tools>>Install to USB pen drive>>For USB-HDD Pendrive

at this point, it will be required the name device stick, digit sda at the second question type of card etc... Leave empty and pass beyond with Enter
At required of keyboard digit it and voil??? the procedure is done after some minutes, you'll have the damn small linux on usb stick.
Easy no ???
Try tro believe, it's more difficult to explain that do it.
To start it from usb stick, you need only to boot from your computer is set on pen-hdd


40b)PARTITIONING'S CONCEPT OF HARD-DISK WITH REFEREMENT TO GNU LINUX
Thanks to author Stefano Pardini http://www.viareggiolinux.org
Linux User Group: ACROS http://www.lug-acros.org

Preface:
This guide is firstly dedicated to users that arrive from Windows's world and has been written to user can understand the concept of partitioning of hard-disk. This guide has been written to pure informative purpose, the operations written are only examples and they must be considered like them, so they don't have to be applied in reality ! The partitioning is an operation much delicate, in case of necessity ask to an expert. In any case the author will can be consider responsable for the practice application and/or professional of examples below written.

What are partitions and because partitioning an hard-disk:
The space available on hard-disk can be shared in partitions which one function how if it was one hard-disk. The partitions can be considered like the portions of a hard-disk independent between them and each provided of own file system. The partitioning can be exec for different purposes (for ex you could create a partition destined only to dates), in our case we'll analyze the creation of space on hard-disk so we will can install Gnu/Linux. Proceed with order and wee how it's possible share in partitions and how many we can create. One hard-disk contains a table of partitions with 4 voices. Each voice of table can be a primary partition or an extended partition, whose, nevertheless, can exist of them only one. An hard-disk can contain until 4 primary partitions or 3 primary partitions and 1 extended. The difference between primary partitions and extended is that the firsts can contain an operating system while the seconds, no. The limit of 4 partitions on hard-disk was passed time ago with the creation of extended partitions that can be destined to other shares of available space in drive (volumes) logics. These shares later must be identified. DOS for example, use identification with letters of alphabet. The limit of this method is that letters are only 26 (whose first 2, "a" and "b"
are reserved to floppy). On scsi disks an extended partition can be fill until to 15 logic partitions, into hard-disk (e)ide can exist until 63. A particular of Linux is that can be installed on a primary partition and/or on logic
partition. Linux identify in a different way the other logics volumes created inside a extended partition.

What is MBR, dimensions, sectors, tracks, cylinders and cylinders's unity First to proceed it's opportune a minimum hint on master boot record and on physical structure of a hard-disk. The informations about partitioning of a hard-disk are on first sector, that is the first sector of first track of first surface of hard-disk. This sector is called master boot sector (MBR) and it's the sector that BIOS of mother board reads and starts when the computer is opened. The master boot record contains a little program that read that table of partitions, controls which partition is active (that is which is marked as startable) and reads the first sector of that partition, that is the boot sector (sector of start). The boot sector contains a little program that read the first side of operating system contained in that partition (always that is startable) and starts it. The dimensions of partitions are marked in unity of cylinders. Every partition has a cylinder at begin and a final cylinder, that determine the dimension. When you create a partition, you need to know only the cylinder at start. To do an example and to clear the structure of a hard-disk, I show you the output of fdisk done on hdd on my notebook (fdisk is a program to partition the hard-disk much diffused and known):
Disk /dev/hda: 40.0 GB, 40007761920 bytes
255 heads, 63 sectors/track, 4864 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device       Boot Start   End      Blocks        Id        System
/dev/hda1     *       1     1516   12177238+    7     HPFS/NTFS
/dev/hda2           1517  4864    26892810      f      W95 Ext'd (LBA)
/dev/hda5           1517  1909    3156741        7     HPFS/NTFS
/dev/hda6           1910  1978    554211          82   Linux swap / Solaris
/dev/hda7           1979  3000    8209183+     83   Linux
/dev/hda8           3001  3891    7156926        83   Linux
/dev/hda9           3892  4864    7815591        83   Linux

You can see my hard-disk is a hdd of 40.0 GB, has 255 heads, 63 sectors/tracks, 4864 cylinders. The dimension calculated in unity of cylinders is of 16065 * 512 = 8225280 bytes. The first partition of disk starts at first cylinder and finish at cylinder 1516 and it's primary partition on that is installed a file system NTFS, the second partition is an extended partition that start al cylinder 1517 and finish at cylinder 4864. Inside the extended partition there are logics volumes, clearly identifiable. As you can see the logic volumes have different file system, second their destination. It's clearly visible that first logic volume starts at cylinder 1517 and finish at cylinder 1909 and also here it's has been installed a file system NTFS. The following volumes are assigned to
Linux.

Ho create the space for Linux and the choice of file system We will analyze the case of creation of space on hard-disk in a computer with only one hard-disk and a single primary partition where is the operating system Windows. When you want install Linux on a hard-disk where already exists an operating system (the common case is Windows), will be necessary reduce the actual partition to create a new one in the future. This operation is much mild, it's advice having a backup of own dates before to proceed, so you will can restore in case something wrong will happen (for ex. partitions broken). There are many programs to reduce, create and remove partitions, if you are not expert, I advice to use a program user friendly that has an help-guide well realized and incomprehension. The choice is not easy and the advice is that to read up well with the help of Internet first to decide what is the better solution. If you prefer, you can use a commercial program. Some Linux distributions have own partitioning-tool with graphic, and is a good idea using that is given from the system, in case this does something of special that other programs don't do. They have other using-guides, but can be result difficult for users that begin now. Often these software, try to create without problem the needed partitions at installation, in case they don't find space "not assigned". Having free space means to reduce that exists, leaving the space "not assigned". Now we do an example the clear better this concept.
We suppose having a hdd of 80 GB whose are busy 10 (attention I've written "busy" and I've not written "not assigned"). The other 70GB will can be quietly used to continue to work with actual operating system as much as to install a new operating system, this because Linux can survive without problems with Windows. Continuing work with Windows will be necessary leave it some space for installation of other programs and for own dates. We suppose hence to reduce (with a partitioning program) our partition from 80GB to 40GB leaving 40GB of space "not assigned". With this operation will have two things:

1)We will have 40GB of space not assigned to create new partitions for Linux
2)We will leave to Windows 40GB of space whose 10GB are already busy and 30GB are free to used them to work without problems.

At this point you could already proceed with installation of our distribution Linux (for example, Mandriva, Suse, Ubuntu). If we want start the tool of partitioning of one of these partitions automatically, we can
consider our work over, because this tools try to create automatically the partitions when they find space "not assigned" on disk, such as we told before. In case we want to partition manually, we will proceed to determinate the choices of partitioning second our needs and preferences. Who want to delve the argument of manually choice it's important read the following chapter on choice of file system and on representation of
partitions in Linux. After that, we will see how create into space "not assigned" of 40GB an extended partition that will contain in its turn three logic partitions for installation of Linux, whose one partition of swap, one
root and one home for all users and their dates.

Devices and file system seen from GNU/Linux:
Representation of partitions in GNU/Linux
About hard-disk (e)ide, the readers cdrom-dvd and burners, they are represented like that:
Primary Master: /dev/hda
Primary Slave: /dev/hdb
Secondary Master: /dev/hdc
Secondary Slave: /dev/hdd
Floppy Disk is represented such as: /dev/fd0
Disks SCSI: /dev/sdx ('x'=letter from a to p, for example /dev/sda)
Also disks Sata are identified with: /dev/sdx.
If you have a hard-disk type (e)ide will be /dev/hda and the first primary partition will represented such as /dev/hda1, for the other partitions will have values from 1 to 4, while if the partition is logic will be used values
from 5. If you have a hard-disk ype Sata will be /dev/sda and the first primary partition will be represented such as /dev/sda1, for the other partitions will be used values from 1 to 4, while if the partition is logic
will be used values from 5.

Types of file system
Now a brief description of file systems more famous and used:
FAT and NTFS
The file system fat and ntfs belong to systems Microsoft and are used for installation of their operating systems.

EXT2
Ext2 was born at start of Linux and comes from Extended File System. This file system has been implemented on April 1992 and integrated in Linux 0.96c. Later the Extended File System has been modified more times and such as Ext3 has been for years more named file system of Linux. With arrive of journaling File system and the quickly which they exec a rescue, Ext2 lost its importance. Despite today some prefer work with this file system for its incredible stability;

Ext3
Ext3 has been developed from Stephen Tweedie and it is based instead on Ext2. Both file system are almost equals between them. Their first difference is that Ext3 supports the journaling. Ext3 offers an easy upgrade
and extremely reliable from Ext2. The other advantages are reliables and performances. Based on solid base of Ext2, Ext3 has become during the time a file system acclaimed. The reliable and the stability are conjugated
with the advantages of a journaling file system;

ReiserFS
ReiserFS was born from Hans Reiser and from equipe of developers Namesys, it is a valid alternative to Ext2.
Its major point of strong are better manage of memory of hard-disk, better accessibility to hard-disk and fast rescue after a crash of the system. In Reiserfs dates come organized in a tree-structure. The tree-structure
contributes to use better the memory of hard-disk, in fact little files can be memorized on the same bloc, instead to be memorized somewhere else and to have to manage the punter on the effective localization. Because Reiserfs supports the journaling in case of crash of the system, the use of journal reduces times of verifying also in case of big file system in few seconds;

JFS
JFS, the Journaling File System, has been developed from IBM for AIX. In the summer of 2000 went out the first beta version of JF for Linux. The version 1.0 has been released on 2001. JFS has been used in server
environment with an high quickly of transferring of dates (throughput). Been a file system at 64 bit, JFS supports big files and partitions (LFS that is Large File Support), feature that qualify it for server environment;

XFS
XFS was born at start of years '90 like journaling file system at 64 bit to high performances, it is comparable at modern journaling file systems. XFS is used for file of a certain dimension and has good performances on
hardware high-end.

Appendix
Journaling
The journaling is a technology used from many modern file system to preserve the integrity of dates from falls of electric-tension. Journaling is a technology that becomes from database-world. I advice you to delve for your knowledge the concept of journaling, you will fine on Internet different sources on this matter. Try with a search-engine on Internet.

Manual partitioning of hard-disk
Told this we return on our hard-disk and we see how we can create manually the partitions needed to install a system Linux on our hard-disk. We told that reducing our primary partition from 80 GB to 40 GB, we will have 40 GB of space "not assigned" to create in it the partitions. That is, if you remember well, at start I've written that Linux can be installed also in a logic partition, the first thing to do will be to create an extended partition, that inside it will contain later the logic partitions. Once time created the extended partition we will create inside it three logic partitions, a partition of swap (the swap is used from kernel to broaden the available memory and not to memorize some files), a root partition and at the end a home for all users and dates. We say that in 40 GB, a good choice could be to act in this way:
1) reserver to swap, the double of dimensions of you ram;
2) create a root partition of 10 GB;
3) dedicate the rest of space to home for users and for dates;

The choice of number and type of partitions, as well as of their dimensions, depend from many factors and often from own personal tastes. If you have chosen a software for Windows to reorganize-create you partitions for Linux, you reduce the primary partition of your hard-disk, later create the extended partition and the logic partitions, at the end reboot so the modifies will be effectives and after proceed with the installation of your
new operating system GNU/Linux. During installation you will have to indicate to Linux to use the partitions that you had created previously. If instead you want manually partitioning with a partitioning-tool of you
distribution that you have chosen to try, read well the relative documentation. The manually partitioning would assume a certain knowledge of different types of file system and their methods of creation, as well as of
mounting of file system, to start without know what you are doing is warmly not advised, if you have not the bases to exec quietly these operations, it's better leave to do all in automatic, limiting itself to
free some space "not assigned". In alternative you can contact a Linux User Group to ask help, surely you
will find someone available to give you a hand and useful advices.

Appendix
Advices save-dates for all new users and not .....
If you want try Linux in all quietly remember that you can always do it, rebooting your computer with a LiveCD, if you want install Linux on your computer, entrust yourselves to an expert and don't proceed without before
having done a backup of your dates !
Enjoy with GNU/Linux...


41b)IMPROVE FONTS OF GNOME ON UBUNTU
Who has a monitor LCD, I've found a tutorial on how improve the read of fonts of Gnome on Ubuntu, I summarize it here (open a shell and write sudo -i followed from you password):
1) Insert into file sources.list the following repository:
deb http://www.elisanet.fi/mlind/ubuntu edgy fonts
deb-src http://www.elisanet.fi/mlind/ubuntu edgy fonts
2) certify them with:
gpg --keyserver pgp.mit.edu --recv-key D0AFFF5E937215FF
gpg -a --export D0AFFF5E937215FF | sudo apt-key add -
3) write "apt-get update"
4) download the packets libcairo2 e libxft2
5) give a good:
sudo "dpkg-reconfigure fontconfig-config"
and answer like that to the questions:
1) Native;
2) Always;
3) No
if you haven't fontconfig-config download it with:
apt-get install fontconfig-config
6) At the end on our Home create the following file like that:

gedit ~/.fonts.conf

Attention that contain these following strings:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font" >
<edit mode="assign" name="rgba" >
<const>rgb</const>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="hinting" >
<bool>true</bool>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="hintstyle" >
<const>hintfull</const>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="antialias" >
<bool>true</bool>
</edit>
</match>
</fontconfig>

Reboot GNOME and you will see better improvements.


42b)ADD OR CONFIGURE A PRINTER
Distro usually have already installed cups, in case do it (depend from you distro, in Archlinux you have to install the packet: pacman -S cups and later insert the written cups in /etc/rc.conf between demos to start at boot
of operating system. You can also start it by hand, or insert the command into file rc.local (it's like an autoexec for Linux), otherwise control what you have to do because the distro are different like so the configuration.
Once time install and started, you have to configure the printer or directly from cups or using the tool printers from Kde. Connect to internet and on browser write http://www.linuxprinting.org/  or http://www.freestandards.org/en/OpenPrinting  after click on Printer Listings, select the brand and the model of your printer, click later on download PPD and download the file in /usr/share/cups/model/
Login as user root:
You have 2 methods to configure the printer, using the browser with cups, or using the tool of Kde.

1) From Cups
http://localhost:631/
Click on Administration and Add Printer, on name insert the name of printer, (es. hp610c), choice on Device (the port where is attached the wire-printer), yet on continue, on (Or Provide a PPD File:) select file
ppdf in /usr/share/cups/model/HP-DeskJet_610C-hpijs.ppd and at the end
click on (Add Printer). Click on Printers and configure manually the printer (print format, color o white and black, etc ....)

2) From Kde
Click on Settings, Printers, and after on window "Configure", control that is selected the daemon of print CUPS and at the end click on Add Printers, click on Next, select for example "Local Printer", select the port whose
is attached the printer, after on Next, click above on Other and select the file .ppd that you have downloaded previously, after on Next. At this point you can decide if configure already the printer or later, click on Next and give the name to the printer and click on End.


43b)CONFIGURE SOUNDCARD
By now all actual distributions have drivers alas already installed, in case follows the instructions.
To install drivers alsa 
(alsa-lib alsa-oss alsa-utils alsaplayer alsa-plugins) under Archlinux we should write the command:
pacman -S alsa-lib alsa-oss alsa-utils alsaplayer alsa-plugins
If you use another distribution, you have to use the correct command of installation, for example under Debian we should use apt-get, under OpenSuse we should  use yast, etc......
Now hit the command:
alsamixer
and setting the levels of audio output (press the key Esc to exit).
Save the settings writing the command:
alsactl store
If values have not been saved after reboot, restart alsamixer and setting the values, save newly with the command "alsactl store" and insert this last command in file rc.local. Reboot linux, now should be all ok.




44b)CONVERT FILE FROM MP4 TO MP3
ffmpeg -i file.mp4 -f mp3 -ab 128 -vn newfile.mp3

Shell script to convert all files inside a directory from mp4 to mp3
#!/bin/bash
for x in ls -1 *.mp4
do
ffmpeg -i $x -f mp3 -ab 128 -vn $x.mp3
done


45b)PDFUNITE HOW UNITE MORE PDF FILES
pdfunite files1.pdf files2.pdf final.pdf

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


+++++++++++++++++++++++PROGRAMS+++++++++++++++++++++++++++
1c)VI AND EMACS HOW MODIFY TEXT FILES
VI
vi filename = to create or open (if already exist) a file
Press in sequence the keys to make these operations:
key (i) to start to write and hence enter in text-modality.
key esc : w key Enter to save the file
key esc : w (file name) to save the file with name chosen
key esc : q key Enter to exit from vi
key esc : q! to exit without save
-Search a word o row in a file:
Press Esc:/word_to_search
To search the same word press the letter n on keyboard.
-Copy an entire row:
Press Esc, go on the row and write 2 times y, place yourself where you want to past the text selected and press key p
-Copy 2 or more rows
Press Esc, place yourself on the row and write y1, place yourself where you want past the text selected and press key p
If the rows are 3 write y2, if the rows are 4 press y3 etc .....
-Copy the first word of a row near the cursor
Press Esc, place yourself on the row and write yw, place yourself where you want past the text selected and press key p
-Copy the first 3 words in a row near the cursor
Press Esc, place yourselft on the row and write y2w, place yourself where you want pass the text selected and press key p
-Move to a specific row, for example the 5???
Press Esc:5 Enter
          or
Press Esc5 Enter
-Delete the current row
Press Esc dd
-Cut the current row and past it
Press Esc dd placeyourself where you want past the text selected and press
key p
-Delete next 4 rows
Press Esc d3
-Cut next 3 rows and past them
Press Esc d3 place yourself where you want past the text selected and press
key p
-Delete the current word
Press Esc dw
-Cut the current word and past it
Press Esc dw place yourself where you want past the text selected and press
key p
-Deleted next 3 words
Press d3w
-Cut next 3 words and past them
Press Esc d3 place yourself where you want past the text selected and press
key p
-Substitute a word with another word (windows with linux)
Press Esc:%s/windows/linux
   or
Press Esc:%s/windows/linux/gc
% searc in all document
s is the command of substitution
g says to search every occurrence of the expression to replace
c asks confirm before of substitution
-How insert the braces {} ?
Use the keys AltGr-7 and AltGr-0 (zero)


EMACS
-To save the file modified press CTRL+x+CTRL+s
-To save the file modified with another name press CTRL+x+CTRL+w <file name>
-To exit from file press CTRL+x+CTRL+c
-How move the cursor
Press keys with the arrows on keyboard or
ctrl f moves the cursor ahead
ctrl b moves the cursor back
ctrl n moves the cursor to next line
ctrl p moves the cursor to previous line
-Other commands

ctrl k delete the line where is the cursor
ctrl y permit to return back to the previous operations
ctrl g stop what are you doing
ctrl j moves toward below the text beneath after the cursor
ctrl s permit to search of the text (write below the word to search)
Esc info
Esc x (press later 2 times the bar on keyboard)
-How insert the braces {} ?
Use keys AltGr-7 e AltGr-0 (zero)



2c)FAX WITH EFAX
To send and receive fax you can use efax, you can find it in all distro, or download it from Internet, in this moment the version is: efax-0.9.tar.gz
Unzip the file and write:
make
make install
You need only to modify the script /etc/fax.conf or /usr/bin/fax going to modify these rows.

DEV=modem or ttyS1 or cua0 (I have the modem on com1)
FROM=123456789 (write the number of telephone)
NAME=Panther (name sender)
PAGE=a4
PRTYPE=ps
PRCMD=lpr (or lp0, the command with which usually you print)
DIALPREFIX=T (T to tones, P to impulses)
TELCVT='sed -e s/+39// -e s/+/00/' (insert this row)
INIT="-iZ -i&FX3E&D2S7=120 -i&C0"

Save the file and reboot the computer.
Now it's possible send and receive fax

Send a fax:
fax send n.telephone filetosend (to send an attachment)
Ex: fax send 061234567 /root/prova.txt

Receive a fax:
efax -d /dev/ttyS1 -w -is0=1 2>&1 >>fax.log (to receive fax)
[ /dev/ttyS1 is com1 and 1 is the number of rings before of the receive
(will be created file 001 002 into the same directory)]

To show a fax:
Use OpenOffice to show the files *.001 *.002
fax view (to show the fax sent)

Graphic program to manage efax.
On Slackware 9.1 install the following packets, you need only to go on http://www.linuxpackages.net/ and on search insert for ex.(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
Launch the program executing:
efax-gtk


3c)CREATE AND BURN CD AND DVD
                                   CD
With kernel 2.4 doing cdrecord -scanbus, my cdrom (scd0) is 0,0,0 and my burner ((scd1)) is 0,1,0
With kernel 2.6 doing cdrecord -scanbus, my cdrom (sr0) is 0,0,0 and my burner (sr1) is 1,0,0
Ahead some examples are with kernel 2.4. If you are a generic user and you want to have adapted permissions, write:
chmod u+s /usr/bin/cdrecord
If you want burner a certain speedly you need only to insert near cdrecord the following line:
-speed=4  if you want to burn at 4x
If doesn't work:
-speed=4
use
--speed=4
Doesn't inserting this string, you will burn at max fastly possible.

-Get traces audio from cd to put them in a directory. Insert cd and move inside /mnt/cdrom and give:
cdda2wav -D0,0,0 -t 1 -B -x
(eventually change the number 1 with number of trace from which we desire get the file .wav)
      or
cdparanoia -B

-Burn audio traces.
You can burn almost 780-790 mega of files .wav with a cd from 700 mega.
kernel 2.4
cdrecord -v -dev=0,1,0 -overburn -eject -audio audio*.wav
kernel 2.6
cdrecord -v -dev=1,0,0 -overburn -eject -audio audio*.wav
                                     or
cdrecord -v -dev=/dev/sr1 -overburn -eject -audio audio*.wav

-Create an image ISO
mkisofs -v -D -J -R -T -o image.iso /directory with files you want to burn.
It's possible to control the file image.iso if has been created correctly, writing:
mkdir /mnt/prova
mount -t iso9660 -o ro,loop=/dev/loop0 image.iso /mnt/prova
umount /mnt/prova

-Burn image ISO
kernel 2.4
cdrecord -v dev=0,1,0 -overburn -eject -data image.iso
kernel 2.6
cdrecord -v dev=1,0,0 -overburn -eject -data image.iso
                                     or
cdrecord -v dev=/dev/sr1 -overburn -eject -data image.iso

-Cd bootable we will create iso of OpenBsd and we'll burn it.
The important thing is select file of start the usually would be into floppy, in our case is floppy39.fs, therefore with this method we can download full distributions linux downloading also the image of floppy with which the cd will auto-boot.
(we assume that files have been downloaded from http://ftp.sunet.se/pub/OpenBSD/3.9/i386/ and that they are into directory /scarico/openbsd/, move already inside in this directory directory)
mkhybrid -b floppy39.fs -c boot.catalog -l -J -L -r -o openbsd39.iso *
kernel 2.4
cdrecord -v dev=0,1,0 -eject -data openbsd39.iso
kernel 2.6
cdrecord -v dev=1,0,0 -eject -data openbsd39.iso
                                     or
cdrecord -v dev=/dev/sr1 -eject -data openbsd39.iso

-Burn different times (remember to put always a subdirectory)
Create the first session of a cd multi-session
mkisofs -R -r -J -D -l -T -v -o /1/2/isoimage.raw /directorywherearefiles && cdrecord -v dev=0,1,0 -multi /1/2/isoimage.raw
Create second session.
cdrecord -msinfo dev=1,0 (you will get numbers like 0,11702  that is the first trace from sector 0 to sector 11702)
mkisofs -o isoimage_2.raw -R -C 0,11702 -M /dev/scd1 /directwherearefiles && cdrecord -v -speed=4 dev=1,0 -eject -multi isoimage_2.raw
For next sessions you need only to change numbers that require the option -C using option msinfo of cdrecord

-Clean a cd rewritable
kernel 2.4
cdrecord -eject dev=1,0 blank=fast ( I've the burner 0,1,0 )
kernel 2.6
cdrecord -eject dev=1,0,0 blank=fast ( I've the burner 1,0,0 )
                                     or
cdrecord -eject dev=/dev/sr1 blank=fast ( I've the burner 1,0,0 )

The option fast is more fast while option all is more slow but complete.

-Burn  image ISO (for example a distribution in size ISO)
kernel 2.4
cdrecord -v dev=1,0 -overburn -eject mandriva.iso
kernel 2.6
cdrecord -v dev=1,0,0 -overburn -eject mandriva.iso
                                     or
cdrecord -v dev=/dev/sr1 -overburn -eject mandriva.iso

-Copy on the fly from cd to cd (only dates)
kernel 2.4
cdrecord -v dev=1,0 -overburn -eject -isosize /dev/scd0
kernel 2.6
cdrecord -v dev=1,0,0 -overburn -eject -isosize /dev/sr1
                                     or
cdrecord -v dev=/dev/sr1 -overburn -eject -isosize /dev/sr1

-Copy on the fly from cd to cd (only audio) write all on the same line
kernel 2.4
cdrdao copy --driver generic-mmc --on-the-fly --device 0,1,0 --eject --overburn --source-device 0,0,0 --source-driver generic-mmc --fast-toc --paranoia-mode 0
kernel 2.6
cdrdao copy --driver generic-mmc --on-the-fly --device 1,0,0 --eject --overburn -source-device 0,0,0 --source-driver
generic-mmc --fast-toc --paranoia-mode 0
                                     or
cdrdao copy --driver generic-mmc --on-the-fly --device /dev/sr1 --eject --overburn -source-device /dev/sr0 --source-driver
generic-mmc --fast-toc --paranoia-mode 0


-Copy a distribution Linux
mkisofs -a -l -J -R -T -v -b path/ImageStart -c
path/FileCatalogue
path=<directory where you have copied the files>/<directory file start>

                                   DVD
You need to install dvd+rw-tools

Create an image ISO:
mkisofs -r -o /image.iso /directory/

Write image ISO on dvd:
growisofs -Z /dev/dvd=/image.iso

Add dates on the same dvd:
growisofs -M /dev/dvd /tmp/myfile.1

Delete dvd:
dvd+rw-format -force /dev/dvd           (fast)
dvd+rw-format -force=full /dev/dvd   (full)

Diplay the information about dvd:
dvd+rw-mediainfo /dev/dvd



-Copy a dvd (text way). NOT DEFINITIVE.
Download and install streamdvd and streamanalyze from here:
http://www.badabum.de/streamdvd.html
Install also the program dvdauthor and growisofs. Once time installed them go in /usr/local/bin/ and copy 2 files in /usr/bin/
Insert the dvd into reader dvd and write:
streamanalyze -i /dev/scd0 -t 1 -s -s 0xe0,0x80 mkdir /film
Put the audio and the subtitles in english and italian.
dvdauthor -a en,it -s en,it -o /film -f 'streamdvd -i /dev/scd0 -f 1.192 -t 1-s0xe0,0x80|'
dvdauthor -T -o /film
Insert dvd to burn and write:
growisofs -dvd-compat -Z /dev/scd1 -J -dvd-video -V TitleFilm /film

-Ripping dvd
(Prefix n01: ripping of dvd,  that is to reverse audio and video of dvd on one or more cd/file, can be a form of pirate if done to get money of sell them; we don't want enter in merit "etic" of this thing, do ripping only
of dvd you are owner and however, the copy must be done on for personal purpose. My limit is only to say what is possible to do, I don't want, with this, encourage some type of pirate.
Prefix n02: I've not rip many dvd in my
life, hence these informations could be not completeor not working for someone, apologize me and eventually tell me (leone2000 at inwind.it) all the modify that you have done to improve this document, thanks ! ;-))
The ripping of dvd with mencoder (the other program of the suite of mplayer) is an operation relatively easy and immediate but the program has at disposition many options that, opportunely used, can do the difference for your ripping; therefore first ripping a dvd I advice to read, quietly, the manual (man mencoder) and to search all possible documentation on Internet.
Can be useful this page gotten from html in line:
http://www.mplayerhq.hu/DOCS/HTML/it/encoding.html
We'll create file movie.avi that is a file that contain all our film (???Ronin???, regularly bought in France ;-) ) and it's compressed with format DivX 4.

FASE 1: Extraction of trace audio
Also with mencoder we can get the traces audio that we are interested in:
the program create a file called obligatorily frameno.avi that will contain only the trace audio eventually chosen by parameter -aid (otherwise it taks first available)
mencoder dvd://1 -dvd-device /dev/hdd -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi -aid 128

mencoder dvd://1 -dvd-device /dev/sr0 -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi -aid 128
(with kernel 2.6 recompiled).
(where -oac specify the driver audio to use (lame), -o  is the file of output).
At the end of this operation we control what says mencoder with its output about at bitrate to code
video to use:
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
We assume to do only 1 cd of 700MB therefore we will use ???710???.

MIDDLE FASE: pull out area of crop
In the major side of film in 16/9 we have black bands above and below the image (called area of crop), to save space on disk it's convenient to pull out those bands therefore we find area of crop:
mplayer dvd://1 -vf cropdetect -dvd-device /dev/hdd
                                           or
mplayer dvd://1 -vf cropdetect -dvd-device /dev/sr0  (with kernel 2.6 recompiled).
on console from which we have launched this command, while slides the film, we will have of output continue such as:
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%
From these rows we deduce which is area of crop and at this point control again (almost) what is correct taking the value ???crop=...??? from output whose above:
mplayer --vf crop=718:426:0:76 dvd://1 -dvd-device /dev/hdd
                                           or
mplayer --vf crop=718:426:0:76 dvd://1 -dvd-device /dev/sr0  (with kernel 2.6 recompiled).
At this point we need to take the dimensions of video and reorganize to maintain the proportions (having intention to pull out the area of crop):
mplayer dvd://1 -dvd-device /dev/hdd
                                           or
mplayer dvd://1 -dvd-device /dev/sr0  (with kernel 2.6 recompiled).
In the output of this program (visible in console) you can find a row such as this:
VIDEO: MPEG2 720x576 (aspect 3) 25.000 fps 9780.0 kbps (1222.5 kbyte/s)
720x576 is the size of our image, from this we have to pull out the area of crop given from format 16/9 therefore we multiply the resolution vertical for 16/9 therefore: 576 * 9 / 16 = 324 that will give our new resolution:
720 X 324.
At this point we can proceed to encode video that is will be fast:

FASE 2 (vpass=1): the command (all on a row !) for the first step will be:
mencoder dvd://1 -alang it,en -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
                                                    or
mencoder dvd://1 -alang it,en -dvd-device /dev/sr0 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=710 -vop scale=720:324,crop=720:426:0:76 -o movie.avi   (with kernel 2.6 ricompiled).
#With alang you will decide the language of file avi, you can add also -slang it,en (subtitles in Italian or English).

FASE 3 (vpass=2): the command (all on one row!) for the second step will be:
mencoder dvd://1 -alang it,en -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
                                                      or
mencoder dvd://1 -alang it,en -dvd-device /dev/sr0 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=710 -vop scale=720:324,crop=720:426:0:76 -o movie.avi  (with kernel 2.6 ricompiled).
#With alang you will decide the language of file avi, you can add also -slang it,en (subtitles in Italian or English). The file created (movie.avi) will contain the dvd and audio, will be possible see it again with Mplayer or it will can be burned also such as videocd, at second that the program of burning permit it.


4c)FAX WITH HYLAFAX
Download hylafax (in this moment the current version is hylafax-4.1.7.tar.gz), such as root user unzip it and install it:
tar zxvf hylafax-4.1.7.tar.gz
/configure && make && make install
All files will be copied here:
/var/spool/hylafax/
Turn-on the modem.
Once installed like root user start from xterm:
faxsetup and once completed, launched:
faxaddmodem
Will be required some informations, you will can change them later going to modify files that you find in /var/spool/hylafax/etc, overall files config and config.ttySx

My file config is composed like that:
LogFacility: daemon
CountryCode: 039
AreaCode: 0583
LongDistancePrefix: 0
InternationalPrefix: 00
DialStringRules: etc/dialrules
ServerTracing: 1

My file config.ttyS1 is composed at least at start like that:
CountryCode: 039
AreaCode: 0583
FAXNumber: 12345678  # I've changed my number of telephone.
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

Perfect, now you have only to write at the end of file /etc/inittab the following string:
mo:35:respawn:/usr/local/sbin/faxgetty /dev/ttyS1 # I've my modem on com2 and hence ttyS1

If you want able all clients of your lan and send fax modify the file:
/var/spool/hylafax/etc/hosts.hfaxd
writing how is following:
localhost
192.168.1 #I have the computer with ip 192.168.1.1 and hence the lan of belonging will be how I've written.

Now is possible send fax writing:
hylafax start && faxmodem ttyS1
You can insert this string at the end of file /etc/rc.d/rc.local   so, it will be sent at restart of computer without doing write the row every time.
To send a fax write:
sendfax -n -d telephonenumber file
If you want use a graphic client on linux, download gnu.hylafax (works on java), or pyla1.0.7.tgz
(works on python) or for computers with Windows Operating System download Whfc or winflex.
About pyla, you need to unzip it (tar zxvf pyla1.0.7.tgz) and to launch it, write:
python /yourhome/pyla/pyla.py



5c)MANAGE PACKETS ON DISTRIBUTIONS
-ARCHLINUX
File of sources: /etc/pacman.conf
Update sources: pacman -Sy
Update the system: pacman -Su
Update sources and system: pacman -Syu
Clean up all packets in cache: pacman -Scc
pacman -A packet.tar.gz (install a new packet)
pacman -U packet.tar.gz (update a packet)
pacman -R packet (remove a packet)
pacman -Q (list packets installed)
pacman -Q packet (controll if it's installed a packet)
pacman -Qi packet (informations about a specified packet)
makepkg PKGBUILD && pacman -A  file.pkg.tar.gz

-DEBIAN WITH .DEB
(thanks to Leonardo Lorenzetti of Lug Acros).
File of sources: /etc/apt/sources.list
Update sources: apt-get update
Update packets: apt-get upgrade
                  or
apt-get dist-upgrade (more "powerful")
Install a packet: apt-get install <name>
Remove a packet: apt-get remove <name>
Search a packet: apt-cache search <what you want> (after apt-get update)
See what is a packet: apt-cache show <name>
Install dpkg -i nameofpacket.deb
Remove the packet dpkg -r nameofpacket.deb
Purge dpkg -P nameofpacket.deb
(Purge means remove file about the packet.deb).

-SLACKWARE CON .TGZ
installpkg file.tgz          (install packet.tgz)
removepkg file.tgz       (uninstall packet.tgz)
upgradepkg file.tgz       (upgrade packet.tgz)
makepkg file                (create a packet Slackware compatible)
rpm2tgz file.rpm          (create packet.tgz from a file.rpm)
rpm2targz  file.rpm     (create packet .tar.gz from a file .rpm)
explodepkg file            (extract the contained of packet inside current
directory)
pkgtool is the program used by default on Slackware to manage the packets.
To resolve the dependences is possible to install and use programs such as swaret and slackpkg.

-REDHAT, FEDORA .RPM
Install rpm -ivh nameofpacket.i386.rpm
Uninstall rpm -e nameofpacket
Update rpm -Fvh nameofpacket.i386.rpm

-OPENSUSE
To install/uninstall/update the software use yast or yast2

-MANDRIVA
To install/uninstall/update the software use graphic program rpmdrake, to uninstall it use rpmdrake-remove
From shell instead it's possible use urpmi to install software, urpme to uninstall software.

-VALID FOR ALL DISTRIBUTIONS LINUX
If you have a packet .tar.gz and you want install it, the classic method is to unzip it and install it (I remember to read always the file README or INSTALL inside the directory just created after unzipping of file).
tar zxvf file.tar.gz       (unzipping)
cd file                       (enter inside directory)
/configure
make
make install              (to install the packet)
make clean               (clean the directory from files temporary)
make uninstall          (to uninstall the packet)


6c)MANAGE LINUX WITH WEBMIN
This has been done under Archlinux.
Install webmin, apache and openssl like that:
pacman -S webmin
pacman -S apache
pacman -S openssl

You have to launch 2 server:
cd /etc/rc.d
/httpd start
/webmin start

Open a browser and enter on webmin with root user writing:
https://localhost:10000/

You will find in front of different possibilities which the manage of system, of services, of net, of hardware, of groups with their users, of a cluster, etc......
All the options will present some "sub-screens" with many options, this because it's possible manage in detail all the system.
Following the description of first voices:
* Under the voice "Server" will be possible manage a server email, mysql, apache, fetchmail, postgresql, samba, ssh, proxy, ftp,etc..
* Under the voice "Hardware" will be possible manage a cd, manage the printer, grub, partitioning hard-disk, manage the raid.
* Under the voice "System" will be possible change the passwords, make a backup of filesystem, manage the cron, manage files of log and of users.



7c)BURN MP3-->WAV-->MP3-->FILE AUDIO
-Convert from mp3 to wav:
mpg123 file.mp3 -w newfile.wav

-Convert from wav to mp3
(install the program lame http://lame.sourceforge.net/)
lame -h -b 128 newfile.wav file.mp3

-Create an audio cd starting from mp3:
Create a script:
#!/bin/sh
for I in *.mp3
do
mpg123 --cdr - "$I" > "$I.cdr";
done
Give it all permissions and exec it.

-Create an audio cd starting from wav:
Create a script:
#!/bin/sh
for I in *.mp3
do
mpg123 --cdr - "$I" | cdrecord -audio -pad -nofi -
done
cdrecord -fix
Give it all permissions and exec it.


8c)HOW USE THE BOARDS NVIDIA FOR 3D
Who has new slackware file to modify is: /etc/X11/XF86Config
-Who has an old distro.
Download from website http://www.nvidia.it o http://www.nvidia.com 2 files that at this moment are NVIDIA_kernel-1.0-2802.tar.gz and NVIDIA_GLX-1.0-2802.tar.gz and write:
tar zxvf NVIDIA_kernel-1.0-2802.tar.gz
tar zxvf NVIDIA_GLX-1.0-2802.tar.gz
Once time unzipped it, enter in both directories and write:
make && make install
Enter in file /etc/rc.d/rc.local and at the end of file write:
/sbin/modprobe NVdriver
continue below  ........

-Who has a distro with kernel 2.4
Who is using distro like Mandriva download from website http://www.nvidia.com file for linux (available in this moment):
NVIDIA-Linux-x86-1.0-5328-pkg1.run
and install it from text modality (Ctrl-Alt-F1 or F6):
ps ax
delete the pid with the graphic (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
If you have an error delete file /tmp/.X0-lock and try again.
Who has recompiled the kernel have not selected the option Frame-buffer support inside Console drivers.
continue below .........

-Who has a distro with kernel 2.6
Who is using kernel 2.6 download from website
http://www.sh.nu/download/nvidia/
file (available in this moment):
NVIDIA-Linux-x86-1.0-5328-pkg0.run
and install it from text modality (Ctrl-Alt-F1 or F6):
ps ax
delete the pid with the graphic (X:0, kdm, /usr/X11R6/bin/X ecc..)
sh NVIDIA-Linux-x86-1.0-5328-pkg0.run
If you have error delete file /tmp/.X0-lock and try again.
Who has recompiled the kernel, probably I'm not sure if Frame-buffer support inside Console drivers has to be selected.
continue below .........

One time installed the driver/s contain with these options.
Enter in file /etc/X11/XF86config-4 (if there is not enter in file XF86config) and substitute the row:
driver "nv"
with
driver "nvidia"
Insert the rows:
Load "glx"
Load "dri"
and disable
Load "dbe"
Save and reboot, write startx, if you will see the Nvidia's logo you are ok.
If you see problems at reboot, go on ctrl-alt-F6, log-in and modify the file /etc/X11/XF86Config-4, insert again nv instead of nvidia.
Reboot the pc. Little problem, one time installed new driver NVIDIA, I've seen a problem at reboot of xawtv (program to watch tv), the screen is black and I had the following error:
Warning: Cannot convert string "-*-ledfixed-medium-r-*--39-*-*-*-c-*-*-*" to type FontStruct
I resolved writing the correct device:
xawtv -c /dev/video0
or also using another program, tvtime. Meanwhile, enjoy with game tuxrace.


9c)HOW INSTALL MULINUX
Put all packets inside a directory (es. mu), unzip the file dostools.zip, copy inside the directory just (c:\mu\dostools) file mulinux-13r0 (or the version that you want),  launch file unpack and the file mulinux-13r0 will be unzipped inside. If instead you want create the floppy of installation launch file makefi and press enter. Return inside directory c:\mu and unzip file mulinux-13r0.zip (if you receive a question answer yes), inside of
directory copy on it all files unzipped downloaded from website mulinux included the same file mulinux-13r0.zip and the file dostools.zip. Now or you reboot the pc with the floppy inserted just created, or go in pure modality msdos (press key F8 when starts windows and choice the last option (prompt of commands in provisional modality) or also use rescue floppy of win98. If you use floppy you will meet the menu, if instead you use dos
enter in c:\mu\dostools (cd mu\dostools) and launch file boot, in this way you'll go at the same menu of floppy that I just talked about. At menu that appears there will be 4 options:
1)Install mulinux only on more floppy (depends from how many file zipped have been put in c:\mu\mulinu13r0
2)Install mulinux only on hard-disk inside msdos (it will create a directory c:\linux automatically)
3)You'll return in text modality
4)Pc will reboot
Choose n0 2.
Will appear the partition/s of you hard-disk, you will have to install mulinux where is installed windows, es. /dev/hda1 (you will have to write or press Enter to confirm)
Now the program asks where are files downloaded from website and you need to write:
/mu/mulinu~/ and press Enter. Do the wave with alt126 (on Italian keyboard).
Now the program will create the directory c:\linux and at the end will ask to reboot the computer, press 0 and press again Enter.
Return in pure msdos, go in c:\linux (cd linux) and launch file linux. At the question of swap choice  no and at the other choice yes, after that start the true installation.


10c)CLUSTER LINUX WITH OPENMOSIX
Who is using Mandrake 9.0 (now Mandriva) is available the patch openMosix-2.4.19-7.gz for kernel 2.4.19.
Use the source of the kernel already present on cd of installation or download and copy the kernel linux-2.4.19.tar.gz, go in /usr/src and unzip the kernel downloaded:
tar zxvf linux-2.4.19.tar.gz
or
tar xvf linux-2.4.19.tar
Transfer file openMosix-2.4.19-7.gz in /usr/src and enter into directory (linux or linux-2.4.19) just created and write:
zcat ../openMosix-2.4.19-7.gz | patch -p1
make mrproper
make menuconfig
Compile kernel and select inside OpenMosix (the first above), select the options that you are interested in. For the other settings of kernel select the peripherals of your pc, choice what you are interested in (audio board,
burner, ethernet board, scanner ecc....).
Save and at this point write:
make dep && make clean && make bzImage && make modules && make modules_install
cp System.map /boot (rewrite file already present)
cd arch/i386/boot
df
rdev -R bzImage l /dev/hda5 (control with df the partition linux)
cp bzImage /boot
Control again that lilo or grub boot file /boot/bzImage, example:
image=/boot/bzImage
label=Linux
root=/dev/hda5
read-only

1)Enter in file /etc/inittab and insert the string:
/bin/mosrun -h
inside of file insert the string only in these rows and like in this example:

# System initialization.(Omit the first row that for me is  si::sysinit:/etc/rc.d/rc.sysinit)
l0:0:wait:/etc/rc.d/rc 0
that will become:
l0:0:wait:/bin/mosrun -h /etc/rc.d/rc 0
make the same thing also for the other rows until number 6 (the last)

# Things to run in every runlevel.
ud::once:/sbin/update
that will become
ud::once:/bin/mosrun -h /sbin/update

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
that will become
ca::ctrlaltdel:/bin/mosrun -h /sbin/shutdown -t3 -r now

Save and exit from file.

2)Create file /etc/mosix.map and write inside:
1 [IP first computer] [number computers]
1 192.168.1.1 2 (I've two computers in my bedroom)
This file have to be the same for all computers in cluster and the address suggest the first computer-server that is the cluster and to which all are leaned. I explain better, from "first computer" that you use through the
program mosmon (inside the tools of openmosix is possible to see also the other computers in cluster).

3)Copy the file here below written where you want (ex. inside directory that you will create "mkdir /omosix"), rename it in openmosix and launch it at boot, you have only put a link at the end of file /etc/rc.d/rc.local, ex:
cd /omosix && ./openmosix start
Give a chmod 777 to file /omosix/openmosix

####---------------------------Copy from here ----------------------------#####
#! /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

####---------------------------Copy until here----------------------------#####

To stop /omosix/openmosix write:
cd /omosix && ./openmosix stop
or restart it:
cd /omosix && ./openmosix restart

4)Download file openmosix-tools-0.2.2.tar.gz or file
openMosixUserland-0.2.0.tar.gz (adviced), unzip them with (tar zxvf) in a directory and install them (follow the file INSTALL inside). You will have to configure the file named configure and suggest where is the patch of
openmosix, delete the written and substitute it with this:
# Here is an OpenMosix kernel
OPENMOSIX = /usr/src/linux-2.4.19
Exit and save file and install it with:
make all
If you have error then try with this row, omitting mos:
OPENMOSIX = /usr/src/linux-2.4.19
One time installed them, reboot the computer and launch them from graphic (write only mos in xterm and will appear all programs that start for mox).
Now you have to manage the cluster just created.


11c)MINI WEBSERVER BOA (ONLY 118K)
Go on website http://www.boa.org/ , download boa-0.94.12.tar.gz and unzip
it, go in boa-0.94.12/src and write like user root:
/configure && make
Copy file boad in /usr/sbin and write:
boa -c /usr/local/boa &
If you have errors, create the directory boa, copy inside it file boa.conf and rewrite the command like that:
mkdir /usr/local/boa && cp boa-0.94.12/boa.conf /usr/local/boa && boa -c /usr/local/boa &
In again you have an error, then create file access_log in /var/log :
mkdir /var/log/boa && touch /var/log/boa/access_log
Eventually configure file /usr/local/boa/boa.conf
One time done the modifies to file boa.conf kill and restart boa (see below)
Insert a file ex. index.html in /var/www/, the file of example will contain the following rows:
<html>
prova
</html>
If on a browser write the address of net of your computer, or localhost or also 127.0.0.1 ,so, your mini webserver is activated. If you want stop boa, give a:
ps aux (Will appear a screen with the number of pid of boa)

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/

kill the process number:
kill 4672
To restart boad write only:
boa -c /usr/local/boa & (Read the settings of boa.conf)


12c)INSTALL AND CONFIGURE ACROBAT INSIDE FIREFOX
Download from website of Adobe the last version of Acrobat Reader
AdobeReader_enu-7.0.9-1.i386.tar.gz and like user root unzip it:
tar zxvf AdobeReader_enu-7.0.9-1.i386.tar.gz
Install it like that:
cd AdobeReader
./INSTALL (press Enter)
The text will ask the directory of installation (leave that proposed pressing again the key Enter or write a new directory). If the directory doesn't exist press the key y to create it automatically from program of installation. Now copy the file executable in /usr/bin and the plugin of acrobat inside directory plugins of the browser (in my case /usr/local/Firefox/).
cd /usr/local/Adobe/Acrobat7.0/bin/ && cp -f acroread /usr/bin/
cd /usr/local/Adobe/Acrobat7.0/Browser/intellinux/
cp -f nppdf.so /usr/local/Firefox/plugins/




13c)FIRST STEPS WITH DATABASE POSTGRESQL
Download the last version of postgres, in my case postgresql-7.4.tar.gz and download it like user root:
tar zxvf postgresql-7.4.tar.gz
cd postgresql-7.4
/configure
gmake
gmake install
adduser postgres (like home directory choice /home/postgres, if possible don't insert the password and do it later)
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 & (Launch postgresql, press Enter, to kill it write ps aux)
or
pg_ctl -D /home/postgres/postgres start & (Start postgresql, press Enter, to kill it write ps aux)
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test
createuser pippo (The user postgres can create other sub-users for ex. pippo)
createdb prova (Create database prova)
psql prova (I enter inside database prova)
create table tabella2(numerazione int, cognome text, nome varchar(20), anni int); (Create the table tabella2)

-----------Example on how autoincrement a number------------
create sequence numerazione;
create table tabella2 (numerazione int4 not null default
nextval('numerazione'), cognome text,
nome varchar(20), anni int);
create unique indexnumerazione_id_key on tabella2 (numerazione);
Now we write an example:
insert into tabella2 (cognome, nome, anni) values ('Rossi', 'Alessio', 18);
insert into tabella2 (cognome, nome, anni) values ('Bianchi', 'Riccardo',
48);
select * from tabella2;
-----------End example----------------------------------

\d (Select all tables)
\d nometabella (list of tables)
insert into tabella2 (numerazione, cognome, nome, anni) values ('1', 'rossi', 'mario', 18);
(Insert dates inside tabella2, remember the sign ').
select * from tabella2; (select dates from tabella2)
select * from tabella2 where cognome='rossi'; (select all the rossi)
truncate tabelladiprova; (delete the contains of a table)
drop table tabella2; (Delete tabella2 and therefore all dates in this contained)
update tabella2 set nome='andrea' where nome='mario'; (Modify and updates the name from mario to andrea in column called nome of tabella2)
delete from tabella2 where nome='andrea'; (Delete all row of table tabella2 that contain the value specified (andrea) in column specified (nome))
\h (shows the commands)
\? (shows the list of commands)
\q (exit from database)

Under Windows 9x-ME-2000 with cygwin
Postgresql is a database opensource (not like mysql that is at payment in case is used to gain with it), you can use it on linux (installed by default) or under windows.
I'll explain how install postgresql under windows:
Donwload file setup of cygwin from http://www.cygwin.com/setup.exe
Launch it and choice Install from Internet
c:\cygwin (where install it)
Install For: All Users (settings)
Default Text File Type: DOS (settings)
Choice Next
C:\WINDOWS\Desktop (Where save files)
Direct Connection
Choice a server available (ex. http://mirrors.kernel.org)
Click on + of Database, go to the end and click the last voice skip in the same row of postgresql. Giving one-two click you see the versions, choice the last (in my case 7.3.4-2), click on voice n/a, it will become a little
square with a cross under the voice "Bin" that is binary. Click after on cygipc and do become it binary. Click Next and wait to download all, are almost 14 mega. You'll have at disposition a free compiler c for windows
and the database postgresql.
At the end downloading, will come installed all, you won't have to do anything, only click on ok at the end.If you control, now you have the directory c:\cygwin full of 51 mega of files (16 mega are zipped and
unzipped).
If you want install cygwin + postgres on another pc, you will have only to launch setup.exe, choice "Install from local directory",
choice the directory of destination (ex. c:\cygwin) and after Local Package Directory that is the directory of almost 16 mega that you have downloaded before (control and eventually select postgres e cygipc).
We pass to configure (you have only to launch commands). Start file c:\cygwin\cygwin.bat and wait the at the end appears the symble "$"
Always inside the same windows cygwin opened write:
ipc-daemon2 & (write always this command before starting the server Postgresql or to initialize the database).
Now write:
initdb -D /usr/local/pgsql/data -W -E LATIN1 (will create a cluster into directory /usr/local/pgsql/data, will become required a password of administrator)
Start postgres with this command:
ipc-daemon2 & initdb -D /usr/share/postgresql/data
pg_ctl start -D /usr/share/postgresql/data/
Will appear:
postmaster successfully started
Open another prompt cygwin.bat and write:
pg_ctl stop -D /usr/share/postgresql/data/
Open file:
c:\cygwin\usr\share\postgresql\data\postgresql.conf
and modify the row:
#tcpip_socket = false
in
tcpip_socket = true
Restart postgresql like that:
pg_ctl start -D /usr/share/postgresql/data/

On Windows to connect from remote modify the file:
c:\cygwin\usr\share\postgresql\data\pg_hba.conf
At the end of file insert a row like that:
host prova User_Name 192.168.100.101 255.255.255.0 trust
When you will use the program pgadmin the parameters will be these:
Server 192.168.100.101
Porta 5432 (fix
SSL Disabled
Database new  prova
Name User Name_User
Trusted left it empty
Password (Insert the password of system of Windows)

-To manage Postgresql in Local or from Remote go on website http://www.pgadmin.org/pgadmin3/index.php
and download the version for Windows 9xMe or that for 2000Xp and start it putting on it the name of user of pc, for ex. Panther and without password.

Errors:
-Su Windows 9x-Me:
If you have error delete the file:
/usr/local/pgsql/data/postmaster.pid
and restart /usr/bin/postmaster -D /usr/local/pgsql/data &
On Windows 2000
If appears a pop-up "Impossible find the library to dynamic link cygpcre-0.dll in specified path"
Copy file c:\cygwin\bin\cygpcre.dll in other directory and rename it in cygpcre-0.dll and after copy again the file renamed in c:\cygwin\bin.


14c)WATCH TV ON LINUX
-Xawtv
My video card used is WIN TV GO of Hauppauge with chip 878A. However I believe that with this chip this procedure works on all distro, recompiling the kernel. Mandriva knows it like a card with chip (Brook...), whereby after the installation will appear an icon on desktop. Now we see how to recognize it recompiling the kernel 2.4.19. See the options above how ricompile the rest of kernel to adapt it to own computer. What is interesting are these options, whose you add y or asterisk depend how you
recompile it (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. Give now:
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.
Obviously configure lile to read bzImage at start instead of vmlinuz. reboot computer and that is done. The programs to use to see the tv are xawtv or zapping (you can have them almost on all distro).
Zapping is complete of teletex while xawtv no, how to remedy:
-How install xawtv vers. 3.93 and alevt 1.6.1
Download xawtv "http://linux.bytesex.org/xawtv/"; from here:
http://dl.bytesex.org/releases/xawtv/
Install zvbi 0.2.8 from http://sourceforge.net/projects/zapping/
bunzip zvbi-0.2.8.tar.bz2
tar xvf zvbi-0.2.8.tar
cd zvbi-0.2.8
/configure && make && make install
Later install xawtv with option:
tar zxvf xawtv-3.93.tar.gz
cd xawtv-3.93
make clean && ./configure --enable-zvbi && make && make install
At this point reboot computer. To search the tv start from prompt of shell "scantv":
scantv -C /dev/v4l/vbi0 -o /root/.xawtv
Little problem, one time installed new driver NVIDIA, I've seen a problem at start of xawtv (program to see the tv), practically it doesn't see itself, the screen is black and I've the following error:
Warning: Cannot convert string "-*-ledfixed-medium-r-*--39-*-*-*-c-*-*-*"
to
type FontStruct
I've resolved writing the correct device:
xawtv -c /dev/video0
or also using another program, tvtime

If you see the screen black, click with key left of mouse on xawtv and control the settings, regulate them and insert them in file .xawtv:
This is the start of file with my configuration:
[global]
freqtab = italy
[defaults]
input = Television
norm = PAL
capture = grabdisplay

-Alevt, the Teletext
Download from website http://www.goron.de/~froese/alevt/
the last version available, (at moment 1.6.1). Download the file and install it:
tar zxvf alevt-1.6.1.tar.gz
cd alevt-1.6.1
make && make install
Start xawtv and move on channel wished, open a prompt from shell and write:
alevt -vbi /dev/v4l/vbi0
From keyboard write numbers 100 and press Enter, choice the number of page of teletext that you want to show.

-Tvtime
Install tvtime from http://tvtime.sourceforge.net/ or search the packet for slackware on http://www.linuxpackages.net/ and install the file .tgz
Search the channels with:
tvtime-scanner
tvtime


15c)GUARDDOG HOW INSTALL IT, CONFIGURE IT AND USE IT
Preamble: This document represent only a little guide about installation and configuration with Linux Mandriva, Guarddog is a graphic firewall, that helps so much the configuration of Iptables, for whose I advise to read the informations contained inside this document. All the procedure of installation and configuration is under graphic interface and it's destined to who know few the "Penguin".

Installation: This phase is very easy, you can download Guarddog from website:
http://www.simonzone.com/software/guarddog/ and to be installed itself requires the presence of Iptables, thereby if you have not yet installed, charge install software, take the cd of Mandriva and in few time your system will have all necessary to gather Gaurddog.
Now from konqueror you have to click on file rpm of Guarddog and automatically kpackage will arrange all. Now we can create a new icon on desktop to have our firewall always available, hence right-click --> Create
new --> link to application .. in tab "General" we can choice an icon that you like more, between those available and in form we'll write the name that we want to give to link, from tab "Exec" in form "command:"
we put the path that will exec /usr/bin/guarddog', if we haven't the particular requirements we can leave empty the other tabs. Now it's ready, and and we have not neither written a row in shell, and Linux is difficult ??

Configuration:We are ready to build our little wall to our system, lauch guarddog and get work.
I have to specify that here we talk about configuration adapted to a generic user, but trying later we will need to adapt it to our specific requirements, these are the bases to understand the mechanisms. Once opened
the program we can see four tabs, start from first "Zone", here we already find a division of default of guarddog, between local Ip "Local" and external Ip "Internet". To start we can leave all like that, but we have
to signal a important function about this section to materialize just the have confidence, selecting "New Zone" we can create a specific access to some protocols to known ip. We see it on details, once selected "New Zone" we will can assign a name to zone, a comment and with "New Address" insert the numeric ip or under form of Dns. Under Connection we can decide if permit traffic from a Zone to another, to understand the concept you can see the settings of default, if you evidence the Internet Zone, you'll see ticked off the box Local, this means that is permitted the trafic from Internet to Local, evidencing instead the Local Zone we will find the contrary, creating new zones, we will can establish if permit or less the trafic from one to other. For now we limit ourselves to say that for our new Zone if we want use a protocol we need to tick off the box Local to permit that itself can pass from our computer to Internet.
But we can see an example, suppose that we want permit the protocol irc only to server that hosts the chat of  #tivedotonico, select "New Zone" such as above, insert a name (irc Tvt) like a comment (ircity) after select "New Address" and insert milano.ircity.org, under connection tick off the box of local, after from tab "Protocol" evidence our new Zone ables  the protocol irc, now this protocol will be possible only to our server irc.

It's very important to improve this technique and create new Zones (especially for all those protocols accessible from external with more risk) so the permit to tight always more the ring and they permit the access to functions only who we know, in fact a port opened is a method more common with which a "thief" can access to our computer, I've to say that a common user is not a target attractive (better like that !). Not only exist good hackers, but also people that by irc can give you problems, and a firewall well configured can save us. But the argument is wide and it doesn't regards only the "crackers", many Internet services that spy us when we don't know ! Return to us and open the tab "Protocol" here with the same principle that we have seen in previous tab regarding the traffic from a Zone to another we can define to which protocols permit the transit and instead which stop, we find the protocols divided in categories and we need to choice which we use and leave them disabled the other. With the creation of new Zones we will improve the security of our system to try our firewall we can set underlining the Internet Zone, under the category chat the customers that we use (for ex. Icq, Irc, ecc), under Data Service we could have need the protocols to manage the Database such as Mysql and Postgresql, under File Transfer is necessary http (obviously) ftp and Gnutella if you use it.

Under Game if you don't play games on-line on games reported you can't select anything, under mail is necessary permit pop3 smtp, in some cases imap but otherwise leave it excluded. The group media is dedicated to who use the plugin RalMedia, under net able Dns and Ping, the rest can be not useful,
such as all the group of Interactive Session that I advice you to leave deactivated. Now we have almost established what can pass from Internet to our computer, now selecting the Local Zone which services will be accessible from external, here we need to have attention and active only that is necessary, under Chat as we have done in Internet zone we active the clients we use, under Mail, pop3 and smtp and under net Ident/Auth, for the rest all blocked especially all the category Interactive Session, if you don't want to have the computer with many problems.
Passing to third tab "Logging" we establish the parameters for the file of Log (where you will find written all the interventions of our firewall, you can quietly leave all like that. In the last tab "Advanced" we find the
useful box "Disable firewall"  necessary when we will do wrong things in configuration of our firewall and select the function "New Protocol" that we will use that when we will have to use a protocol not included in the list of second tab "Protocol". Coming down in detail selecting "New Protocol" we will can assign a name select the type (Type) in general TCP and thing more important the port, now returning to second tab "Protocol" under "User Defined" we will find our protocol to active or deactivate. Now doesn't remain that click on apply and try to surf on Internet, chat, send/receive email and all that we want do with our computer in net and continue constantly and to hone the configuration of firewall, at the end every Linux user want search to learn always more!


16c)CREATE A PROXY SERVER WITH SQUID
Enter with an editor in /etc/squid/squid.conf
At start of file in:
# TAG: http_port under the written  "Default" write the ip address of computer that will be the proxy server, ex:
http_port 192.168.1.1:8080 (Will have to be set also into browsers of computers of clients)
# TAG: visible_hostname under the written "Default", in case of error on restart of demon
squid, write the name of hostname of computer that will be proxy server.
Open xterm and write on it (hostname), add the name of computer that appears, in my case:
Default
visible_hostname Panther

The tag visible_hostname, I repeat, it doesn't matter to put forcedly, only if appears error on restart of squid.
Search the following string "http_access deny all", there will be two of them, choice which that is not commented from #. The string denies the access to all computer clients, to permit them to surf, you need to comment it with a # ahead. Save the file and restart squid like that:
cd /etc/rc.d/init.d && service squid restart (it's possible use also stop and start)
or
cd /etc/rc.d/init.d && ./squid restart (it's possible use also stop and start)
On Slackware I've written:
squid -z (It will create a directory of swap)
squid -NCd1 &
echo 1 > /proc/sys/net/ipv4/ip_forward & (we able the forward).
Like we have told now all computer clients that will want to surf, they will have to set on own browser the proxy such as 192.168.1.1:8080 (in my case) Squid however do other things:
If we want to surf with some clients and all others not, you need to write a row before of  "http_access deny all" :
acl mio src 192.168.1.2 192.168.1.15 192.168.1.20 (access list of name mio with ip that we can surf with squid)
http_access allow mio (I permit that access list with name mio can surf)
http_access deny !mio (I deny the surf to all ip different (!) from mine)
#http_access deny all (It's possible to comment it, already exists the rule above that does all).
Save the file and for new settings give a:
service squid restart

If we want that clients surf in determines days and and a range of hours that we choose:
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 (The letters are the start of days)
http_access allow allowed_clients regular_days (I say that clients surf in particular days)
http_access deny allowed_clients (For the other days, Thursday and Friday I deny the surfing)
Save the file and for new settings give a:
service squid restart

If we want that some clients surf in different hours of day:
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 (able it)
Save the file and for new settings give a:
service squid restart

If we want deny the access to some websites that contain words about for ex.
sex.
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
Create fine banned.list in /etc/ and write inside it:
bubs
ass
whores
sex
blowjob
Save the file and for new settings give a:
service squid restart
If now on browsers of clients we write in http://www.google.it the word:
"blowjob"
and we start the search, the browser will give an error:
The requested URL could not be retrieved

If we want to limit the number of connections to proxy, that is for ex. We want that only 8 computers can connect to proxy server to surf:
Search this row in squid.conf # TAG: client_db on|off  and able it like that:
#Default:
client_db on

acl mynet src 192.168.1.0/255.255.255.0 (all the lan)
acl numconn maxconn 8
http_access deny mynet numconn

If you want to able all the lan you need only to write 192.168.1.0/255.255.255.0, it doesn't matter to write all and 255 ip addresses.


17c)PARTED DELETE CREATE AND REORGANIZE PARTITIONS
Install under linux the program from one of cd of distro or download the free program from website:
http://www.gnu.org/software/parted/parted.html. The program can be used either inside linux that by 4 floppy in case of maintenance of hard-disk, downloading the image partboot.img and partroot-1.6.6.gz (or the version
more updated) from website:
http://ftp.gnu.org/gnu/parted/bootdisk/

Download partboot.img and copy it on the first floppy
dd if=/dev/fd0 of=partboot.img

Download partroot-1.6.6.gz (3 mega) and copy it on 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
Restart the computer and insert the floppy of boot and later floppy of root, at prompt write:
parted /dev/hda (from hda to hdd depends on which hard-disk and partition we want act).
With show we see all commands, with help name-command we obtain the different options and informations on commands, with print we obtain the visualization semi-graphic of existing partitions.
(parted) print
Disk geometry for /dev/hdb: 0.000-9787,148 megabytes
Disk label type: msdos
Minor Start End Type Filesystem Flags
We create a partition with file-system fat32 of 1 giga from a empty disk:
mkpartfs primary fat32 0 1000.000 (I've created it primary, if I had to create it like logic, first I had to create it extended and later logic using the same syntax). Write a print to see the actual situation:
(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
Now we increase it of 500 mega.
resize 1 996.218 1500.000
We give a print and see the change:
(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
I create a linux partition with file-system ext2:
mkpartfs primary ext2 1498.250 2700.000
Write "print" to see the change:
(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
Delete the first partition and give a print:
(parted) rm 1 (Attention at this command)
(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
Closing the program we will have a warning in case the creation of new partitions (if we are inside linux) to update file /etc/fstab.


18c)INSTALL WINE
The installation can be done from a single user or from root user. That is following is the installation like root user:
Download wine, unzip and install it:
From user root:
tar zxvf Wine-20031212.tar.gz
cp -r wine-20031212/ /home/user
chmod -R 777 /home/user/wine-20031212/
su user
cd /home/user
cd wine-20031212/
/tools/wineinstall
During the installation will have required to write "yes", after the password of root and done other questions.
Return like root user
Move the directory .wine like that:
cp -r /home/pc1/c /root
chown root:root /root/c
cp -r /home/pc1/.wine /root/
chown root:root /root/.wine

Enter in file /root/.wine/config and set it. How is following has been taken
from my config file:
[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:\\windows\\system;e:\\;e:\\test;f:\\"
"Profile" = "c:\\windows\\Profiles\\Administrator"
"GraphicsDriver" = "x11drv"
;"ShowDirSymlinks" = "1"
;"ShowDotFiles" = "1"
"ShellLinker" = "wineshelllink"
At moment I've started without errors these programs:
PowerPoint, OpenOffice, Acrobat Reader 5.0, Nero, EtrustAntivirus, 7Zip, Vim
per Windows e eMule Plus v1h.
These are some programs that I've installed however there are others to start.


19c)DRUPAL
All of this has been tried under Archlinux
Install php, mysql, apache and download drupal from website, that under Arch you should do like that:
pacman -S php
pacman -S mysql
pacman -S apache
Download drupal-4.7.2 from website http://www.drupal.org

Unzip drupal-4.7.2.tar.gz  where you want and move files inside the drupal-4.7.0 inside the directory /home/http/html/

tar zxvf drupal-4.7.2.tar.gz
cd drupal-4.7.2
cp -f -r * /home/http/html/

MYSQL:
Avviare mysql cosi:
cd /etc/rc.d/ && ./mysqld start
mysql
grant all privileges on *.* to root identified by 'yourpassword';
quit
mysqladmin -u dba_user -p create drupal   (dba_user will be root or another user)
mysql -u root -p
The following row has to be written on a only row::
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE
TEMPORARY TABLES, LOCK TABLES ON drupal.* TO 'root'@'localhost' IDENTIFIED
BY 'yourpassword';
FLUSH PRIVILEGES;
quit
mysql -u root -pyourpassword drupal < database/database.4.1.mysql
(write the path until to file database.4.1.mysql)

PHP:
cd /etc
Edit file php.ini
Not select 2 following rows:
extension=mysql.so
extension=mysqli.so

APACHE:
cd /etc/httpd/conf/
Edit httpd.conf
Able the following row:
LoadModule php5_module             modules/libphp5.so

Says to Apache which is the directory of reference "DocumentRoot ":
DocumentRoot  "/home/httpd/html"

Substitute the voice "None" with "All"
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

DRUPAL:
cd /home/http/html/sites/default/
vi settings.php
Modify the string:
$db_url = 'mysql://username:password@localhost/databasename';
like that:
$db_url = 'mysql://utente:tuapassword@localhost/drupal';

Start apache like that:
cd /etc/rc.d/
./httpd start
(If you have httpd: apr_sockaddr_info_get() modify the file hosts inserting
the hostname).
vi /etc/hosts
127.0.0.1               myhost.localdomain  myhost

Open a browser and write:
http://localhost/
If you will see the main page of drupal, it's done. However control the errors of different services.
In case delete file .htaccess


20c)INSTALL AND CONFIGURE PHPBB
Fundamental features.
Forum and unlimited Post   Interface with multiple languages
Public and private Forum  Powerful search engine
System of private messages  Modifiable Graphic Interface
In this example we will use the database mysql. Remember that server mysql must be always active, active from linuxconf or from command line (service mysql start), in windows for example you can start like that
(mysqld --standalone)
Also server web apache have to be always active (service httpd start).

Create the user and the password for database mysql, enter in mysql in one of both ways:
mysql
or
mysql -h 192.xxx.xxx.1 -uuser -ppassword
Create your user and password
grant all privileges on *.* to root@'%' identified by 'password';
Create an empty database:
create database nuke;
exit

For the first thing I remember that if you wish to install the forum, it's needed activation of database MySQL, in case you have a solution with Linux-Apache-Php. Phpbb supports different kinds of databases but in this
little guide I'll talk about mysql :-)
Instructions installation phpBB:
1) After having downloaded the last version of phpBB from http://www.phpbb.com
phpBB-2.0.6 and unzip it.
mkdir /prova && cp phpbb-2.0.6.zip /prova && unzip /prova/phpbb-2.0.6.zip
2) Connect with ftp to own web-space and create a directory called "forum" ex. mkdir /var/www/htdocs/forum
3) Do the upload of all directories and files of program inside directory forum.
mv -r /prova/phpbb/* /var/www/htdocs/forum/
4)Open browser and with server web active, write this address:
http://www.nameyourwebsite.extension/forum/index.php
5)At this point you will see a screen of configuration of program phpBB, please be careful because next steps will be more important.

Default board language: (select Italian language) (*)
(*) About Italian language I've downloaded a zip file (lang_italian.zip)
always from website http://www.phpbb.com.
Database Type: (select MySQL 3.x, in our case is il 3.23)
Choose your installation method: (leave install method)
Database Server Hostname / DSN: (digit localhost or the ip address of computer)
Your Database Name: (nuke)
Database Username: (root)
Database Password: (password of you database)
Prefix for tables in database: (leave phpbb_)
Admin Email Address: (put the e-mail yourname@yourwebsite.extension)
Domain Name: (if not inserted of default digit the name of you domain, in my case tivedotonico.it)
Server Port: (leave 80)
Script path: (leave /forum/)
Administrator Username: (insert the name you wish like administrator, don't forget this date that will be necessary to access to control panel)
Administrator Password: (insert a password, don't forget this date because it will be necessary to access to control panel)
Administrator Password [ Confirm ]: (confirm the password inserted before)
Click Start Install
Rename the directories "contrib" and "install" in "old_contrib" and "old_install" or delete them totally with their contained.
At this point to have online the forum phpBB from browser digit:
http://www.nameyourdomain.extension/forum/index.php


21c)INSTALL AND USE XTRACEROUTE
Xtraceroute is a program that shows graphically and geographically the well known instruction traceroute.
First of all search go on http://www.google.it and search the graphic library gtkgl, download it in /root for example. Unzip it with tar xzvf and inside the directory just created, digit:

./configure (Enter)
make (Enter)
make install (Enter)
Download always from http://www.google.it, the graphic library gtkglarea, I advice you the version 1.2 and not 1.0, download it in /root for example.
Unzip it with tar xzvf and inside the directory just created, digit:

./configure (Enter)
make (Enter)
make install (Enter)
From website http://www.dtek.chalmers.se/~d3august/xt/  download the file xtraceroute0.9.1 and copy it on /root
Unzip the file with tar zxvf filename.tar.gz
Go into directory just created, hence digit:
./configure (Enter)
make (Enter)
make install (Enter)
Now launch startx, make a link on desktop of /usr/local/bin/xtraceroute (It'is the path of xtraceroute), so you can launch the application more easily :-)  Now you connect to Internet, launch xtraceroute and will appear
a window where at center there is earth that you can turn with the punter of mouse how you want: it's the powerful of GTK :-)
Above there is a space where you can write some URL (without http://www., try kernel.org) and you will see that travel will do our packets :)
Below you will see all host of passage until to the final destination you have choice. I've tried many addresses and some of them don't permit they are under trace, however don't hesitate, xtraceroute is a funny program! :)


22c)READ NEWSGROUP WITH SLRN AND SLRNPULL
slrn is a newsreader in text-modality that near to slrnpull can work also offline. This little help assumes that you already have installed two packets and that is possible the link in net, hence flies off all info linked to installation and to Internet link. The steps to do are:

1)Create the directory where you want to work
Of default slrn works in /usr/local/lib/slrn and slrnpull in /var/spool/slrnpull.  The use of a subdir of /var/spool is correct, because there, there are all the tails, however you can change in some directory.
I've used /home/gberto/slrnpull to have the messages in my homedirectory;

2) Configure slrnpull
Copy file slrnpull.conf (you find it in packet of installation) into directory chosen (HOME_DIR) and edit it. In this file you will have to delete all examples that the author reports, maybe comment them with  '#',
and you will need insert the list of newsgroup we want follow. The syntax of the row is:

name_of_newsgroup number_articles_to_download days_of_validity

and for every newsgroup we want subscribe it will have to insert a row
(obviously not commented) so structured (the first row is commented and it will be as trace):

#Name_group Messages_to_download Validity

it.test 50 30
default 100 25
it.scienza.medicina 0 0
it.hobby.vino * 15
default 25 5
free.it.fisarmonica 10

The character  '*' and the space ' '  identify the value of default set into appropriate row (for example in this case the validity of free.it.fisarmonica will be of 5 days) while '0' means 'all messages' or 'without expiration' to second of the positioning. Every time we subscribe a new newsgroup you need to edit the file slrnpull.conf and add the necessary dates.

3) Create file authinfo
Only if own server requires an authorization. In first row insert the username and into second the password.
Save into HOME_DIR and close.

4) Download the messages
At this point you have download the messages of newsgroup subscribes with command:
slrnpull -d HOME_DIR -h name_of_newsserver
for ex. I've written:
slrnpull -d /home/gberto/slrnpull -h news.iol.it
with the connection to web already active. Clearly the time used depends from line, from traffic, from how many newsgroup you have subscribed and how many messages you have set for downloading. Have time....

NB: in HOME_DIR slrnpull will create a tree that rebuild your newsgroup.
If for example, you have subscribed it.comp.os.linux.iniziare, you will find created the path HOME_DIR/news/it/comp/os/linux/iniziare and in this last directory will be contained the files of messages downloaded, each identified from a number. You will find there also a file .minmax and a .overview that however you don't care.
NNBB: Because the tree created belong to who create them, if you want that they are accessible to all, you must change the relative permissions. An easy way is to use the command umask.

5) Configuration of slrn (editing slrn.rc)
The installation of srlrn provide a file of example of configuration called slrn.rc (you find it in the packet of installation).If you decide to use this file, you must to copy into home directory of user (for me
/home/gberto), rename it .slrnrc and at the end edit it. File is easy to understand. The initial side set the newsserver, the username and the password for different newsserver that you want use. Because you
need only if you work online (and we don't want this), we will work on file with the same name, slrn.rc, but it is into directory (or inside packet) of slrnpull. It's a little file, that set only what we need for management of
news, leaving all the rest of default. The different lines will have to be fill in like that:

# Definition of directories
set spool_inn_root "dir_host" //ex. /var/spool
set spool_root "dir_of_news" //ex. /var/spool/news
set spool_nov_root "dir_of_news" //ex. /var/spool/news
set read active 1
set use slrnpull 1

set server object "spool"
# Definition of name user (in field From: will appear
# your_username@your.hostname
set hostname "your_hostname"
set username "your_username"
set realname "your_full_name"
You set the directories where will be files of different newsgroup, you say
to slrn to use slrnpull using a spool on disk and you define our name to use
into news.

6) Downloading of  newsgroup available on server (you can jump this)
Can be useful having a list of all newsgroup available, this can be done with command:

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

where obviously MYNEWSSERVER is you server news (for ex. "news.iol.it")
and
ALLNG is the name of file where you want the list of newsgroup. The time of downloading can be long. Obtained the file, a command of type

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

permit to filter those in Italian and to order them for a fast consultation.

7) Launch slrn
To see a different directory from default (that is /usr/local/lib/slrn) you can or modify the header while you are compiling (slrnfeat.h) or better to set the environment variables SLRN_LIB_DIR and NNTPSERVER that slrn reads at moment to start itself. I've created a file batch (goslrn) that exports these variables and exec slrn:

export HOME=/home/gberto
export NNTPSERVER=news.iol.it
export SLRN_LIB_DIR=/home/gberto/slrnpull
export SPOOL=/home/gberto/slrnpull
slrn

NB: At start probably you'll see an empty screen because you have not subscribed the groups yet. Using the command <l> or <L> + <*> + <INVIO> should appear the list of available newsgroup (that are
those present into file slrnpull.conf) downloaded from slrnpull.
Digit 'S' when the cursor is on newsgroup that you want effectively see (and not only download) to subscribe them (and 'U' to remove the subscription);
at this point you can surf offline.

8) Updating of newsgroup and send messages

Because slrn uses a spool, often you need to start slrnpull to send messages in spool (into directory HOME_DIR/out.going) and update the newsgroups with new messages.
This can be done like that:

slrnpull -d NEWSDIR -h MYNEWSSERVER

where NEWSDIR is for us HOME_DIR (that is /home/gberto/slrnpull for me) and MYNEWSSERVER is obviously the newsserver (for me news.iol.it).
I've copied it in another batch (./gonews).

9) Remove old messages
With command

slrnpull -d NEWSDIR --expire

you delete from spool the messages not more valid, according file of configuration on point (5).

10) Setting of killfile
slrn and slrnpull use a killfile to kill the messages not wished. File is called 'score' and you find it in:
'host_dir' for slrn and in 'news_directories' for slrnpull. The syntax is identical:

[Group of newsgroup to set]

Score: ###
Interested_field: value to estimate

and so on. The wildcards are admitted and so the regular expressions. Nb:
the squares are necessaries.

For example:

[*] //For all newsgroup

Score:: -9999 //I don't want see
From: spammatore //Who is called spammer
From: nome@hostname.it //a precise person
Subject: sex //Msg with 'sex' in subj
Subject: \c[a-c] //Msg with subj all upper case

[it.scienza.medicina] //On this specified newsgroup

Score: 999 //I'm interested on this argument
Subject: depression

Score: 999 //Evidence my post
From: gberto

Score: -999 //I don't care the prostate
Subject: prostate

 and so on.

NB: see the use of double two-points '::' if there are more fields associated to a same score that indicate dates to process.
To use only one score file, you can create the file in a directory and a link in another.

11) CONCLUSIONS
At this point we are ready to work offline with the news. To save money, at moment to update newsgroup you can connect on Internet, digit the command of point 7 (that download new messages and send other messages in spool, later close connection on Internet. At this point, offline, with commands at point (7) you read the news offline and you answer to messages that we care about.
At the end, you can connect on Internet again, start again slrnpull with commands (to send our messages and we disconnect from Internet).

12) Others
Remember that slrnpull doesn't permit to download only the header and select the bodies that we care, nut download all news messages. You will need more time during the connection, but in general you need only few seconds in more.


23c)VIDEO EFFECTS WITH WEBCAM
Who is using Mandriva can download the following packets:
NVrec-20020312.tar.gz or nvrec-20030316.tar.gz
nasm-0.98-1.i386.rpm
effectv-0.3.8.tar.gz
Nvrec or nvrec it install itself (read however the file README)
tar zxvf NVrec-20020312.tar.gz
or
tar zxvf nvrec-20030316.tar.gz
/bootstrap
/configure
make
make install.

nasm-0.98-1.i386.rpm installa itself like that:
rpm -i nasm-0.98-1.i386.rpm

effectv-0.3.8.tar.gz install itself like that:
tar zxvf effectv-0.3.8.tar.gz
/configure (you control that are not required other libraries, otherwise download them)
make
make install

If you have a webcam start this command from shell (control if you have the webcam (or the tv ??) on video0 or video1:
effectv -device /dev/video1 -norm pal -hardware -doublebuffer -size 320x240 -palette yuv420p
Now move with arrows above or below and good vision with many video effects.



24c)FIRST STEPS WITH DATABASE MYSQL
-Connect to a db mysql
mysql -h 192.168.1.1 -u root -pyourpassword #(-p and yourpassword must be attached)
-If you have the error 1045 (28000) like below written:
MySQL AB :: MySQL Forums :: PHP :: Re: Error 1045 (28000) specific
Follow how is written below:
mysqladmin -u root password 'yourpassword'
mysql -u root -pyourpassword
-Add a user.
mysql> grant all privileges on *.* to root identified by 'yourpassword';
Query OK, 0 rows affected (0.01 sec)
#yourpassword is the password
#root is user
-mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
-Create a database
create database mydatabase;
-Use a database
use mydatabase;
-Shows fields of database
show columns from mydatabase;
-Shows database presents
show databases;
-Shows the tables of a database
show tables from mydatabase;
-Describe table
describe pcag;
-Numbers rows of a table
select count(*) from name_table;
-Controls integrity table/s
check table name_table;
check tables first_table, second_table;
-Repair broken table/s.
check tables first_table, second_table;
REPAIR TABLES first_table, second_table USE_FRM;
check tables first_table, second_table;
-Delete a database (ATTENTION)
drop database mydatabase;
-Delete a column from a table (ATTENTION)
alter table pcag drop column namecolumn;
-Insert a column into database
alter table name_table add column id int not null primary key auto_increment;
-Create and insert the fields in a table
create table clients(id int not null primary key auto_increment, Lastname varchar(20), Name text, bornday varchar(2), bornmonth varchar(2));
-Insert dates into table
insert into clients(Lastname, Name, bornday, bornmonth) values('Rossi', 'Andrea', '02', '11');
insert into clients(Lastname, Name, bornday, bornmonth) values('Bianchi', 'Lucio', '05', '12');
-Update a field in a column
update clients set Lastname='Verdi' where Lastname='Bianchi';
                                      or
update clients set bornday='06' where bornday='05';
-Shows all table clients
select * from clients;
-Shows only a row with the search
select * from clients where Name='Lucio';
-To delete an entire row
delete from clients where id=18;
-Delete all contained of a table
truncate table clients;
-Delete an entire row from a table
delete from clients where number='2200';
-Repair a table corrupted.
repair table nametable;
-To close server mysql
mysqladmin -u root -p shutdown;
-Create a couple of database with daemon mysql activated:
Teoric example (dump.sql you can call it how you want):
mysqldump -opt "nome_database" > dump.sql
Practical example:
mysqldump --opt dizionario > dump.sql
To restore all, you need to exec these commands:
Create firstly all database called dictionary:
create database dictionary;
How restore the database:
mysql dizionario < dump.sql

Start mysql how server.
Follow three procedures, choose what is better for you.

1???) Procedure
Like root user:
groupadd mysql
useradd -g mysql mysql
mysqld_safe --user=root &
mysql -uroot -pyourpassword
grant all privileges on *.* to root identified by 'yourpassword';
exit
mysql -h 192.168.1.1 -u root -pyourpassword

2???) Procedure
groupadd mysql
useradd -g mysql mysql
da root:
su mysql (I've not created it)
mysql_install_db
mysqld_safe &
mysql (and I'm entered in mysql)

3???) Procedure
groupadd mysql
useradd -g mysql mysql
-Like root user exec mysql_install_db ( /usr/bin)
-Change permissions to directories of tablespace of mysql (usually in /var/lib/mysql):
chown -R mysql.mysql /var/lib/mysql
-Launch mysqld with command mysqld_safe -D /var/lib/mysql &
-Change the root's password (mysqladmin -u root -p mypassword)
-Close mysql (ps -aux and after kill -9 on process)
-Restart and you'll see that it will be started perfectly at start of system.


25c)INSTALL AND CONFIGURE PHP-NUKE
Unzip PHP-Nuke-6.8.tar.gz in a directory. Remember to active always the database mysql (service mysql start) and the server web apache (service httpd start). Edit the file config.php and modify already the settings like
that:

$dbhost = "192.168.1.1";
$dbuname = "root";
$dbpass = "friends";
$dbname = "phpnuke";
$prefix = "nuke";
$user_prefix = "nuke";
$dbtype = "MySQL";
$sitekey = "SdFk*fa28367-dm56w69.3a2fDS+e9";

Create a user and the password in a database mysql and create the database phpnuke:
mysql
grant all privileges on *.* to root@'%' identified by 'friends';
exit
mysql -h localhost -u root -pfriends
create database phpnuke;
exit
mysql phpnuke < /prova/php/php/sql/nuke.sql

Move the directories and files from phpnuke6.8/php/html in /var/www/htdocs/
(or where you have inserted your first page in apache). Move also the directory sql under /var/www/htdocs/
Open a browser and write http://vostra_lan/admin.php, doesn't remain that create the user administrator and configure the rest.


26c)MANAGE THE CELLPHONE NOKIA WITH GNOKII ON LINUX
This guide explains how use the cellphone nokia with a serial wire to connect it to a port com of computer. It's always possible configure the port irda in kernel and use gnokii both with port irda and infrared.
Download from download-area of website http://www.gnokii.org/ the file gnokii-0.5.10.tar.gz the last available at moment I'm writing this document. Unzip it and install it like that (don't worry about messages that you will
see):
tar zxvf gnokii-0.5.10.tar.gz
cd gnokii-0.5.10
/configure
gmake
make install
Control having some files libgnokii* in /usr/local/lib
Make a cat of file /etc/ld.so.conf and see if inside there is the row:
/usr/local/lib
At the end on shell write:
/sbin/ldconfig
cp gnokii-0.5.10/Docs/sample/gnokiirc /ownhome/.gnokiirc
Edit new file copied and insert or substitute with own dates, mine are:
port = /dev/ttyS0
model = 6210
connection = serial
TELEPHONE = 328xxxxxxx
Save file, connect the wire to port com and to the cellphone and start xgnokii (hold-on some second).
To know if the connection works, you need to click with right key of mouse on image of gnokii and choice Contacts, after on File and on "Read from phone" (or click on first image above on left). If you see the list the
numbers of telephone, you are ok and you can use the program completely.


27c)MTOOLS
mdir a: ( list files present inside floppy)
mcopy a:prova.bat (copy file prova.bat from floppy to current directory)
mformat ( format with dos parameters)
mdel a:prova.bat (delete file prova.bat from floppy)
mdeltree (delete a directory and all its contained)



28c)DATABASE WITH OPENOFFICE
Here we will create an intern database like Access on computer.
Open Writer of OpenOffice, after on Tools and Data Sources. Click on New Data Sources, insert a name of db (for example Videocassetta), type of database dBase, now click on key near Data Source URL and choice an empty directory where will be created the database (db thinks to create an empty directory if you insert directly the name of directory), click on key Apply to apply the modify done. Now click on Tables and after on little square (New Table Designed), it will open a new window where we will have to write the name of columns. Under Field Name we will write the name (not more than 8 letters) some columns, and under Field Type will will choose of every column the type (it will can be only text, type integer that is only numbers, data type, or text but only of 20 letters, etc....).
The page presents itself divided in 2 sides, clicking on Field Type, below you can specify the proprieties of every field. Hence this, at moment, it's our database "textual", later we will build the graphic.
Field Name Field Type
Name Film Text [VARCHAR]
10 Actor Text [VARCHAR]
20 Actor Text [VARCHAR]
Year Prod. Text [VARCHAR]
Save the database clicking on File - Save or on button Save. It will be required the name of table, write "dbfilm".
Close the window clicking on X above on right and later on button Ok of window used before. Press key F4 or clicking on View - Data Sources, click on Videocassette, Tables, dbfilm.
We Implement of 3 rows the database, write:
Name Film 10Actor 20Actor
Year Prod.
L'attimo Fuggente Robin Williams Ethan Hawke 1976
Rocky Silvester Stallone Talia Shire
1978
Nuovo Cinema Paradiso Philippe Noiret Totr Cascio 1988

Every time that you go from one row to another, the db saved itself automatically. Doesn't remain that create the graphic side. Click with right key of mouse on dbfilm under Videocassette - Tables and choice Form AutoPilot.
Now will appear a new window, under Data Source there will be written Videocassette, under Tables or queries there will be written dbfilm, move the names of columns on left clicking on button with the arrows toward right. Click on Next, now choice the graphic in "Arrangement of DB Fields", there are 5 types, clicking on one of these, it will change the screen below. Choice the edge of boxes and the color of background. Click on Create, it will appear a screen where it's asked to save the file, choice for ex. the previous directory "Videocassette". Now we have the screen with the first film. To save the db, once time modified a
cell, to go in another screen of db, you need to insert the number below on left. Hence, use the bar below to operate. To reopen the db, you need to open OpenOffice, go on file-open and choice the file .sxw

Under Linux:
Connect on website http://www.unixodbc.org and download the file:
unixODBC-2.2.8.tar.gz
Unzip it and install it:
tar zxvf unixODBC-2.2.8.tar.gz
cd unixODBC-2.2.8
/configure
make
make install
Connect to website http://dev.mysql.com/downloads/connector/odbc/ and download the file:
MyODBC-3.51.06-pc-linux-gnu-i686.tar.gz
Unzip it and install it like that:
tar zxvf MyODBC-3.51.06-pc-linux-gnu-i686.tar.gz
cd MyODBC-3.51.06-pc-linux-gnu-i686
Read file INSTALL-BINARY, the informations are these:
cp libmyodbc3* /usr/lib/
cd /usr/local/
ln -s /usr/lib/libmyodbc3 libmyodbc3.so
#Modify file odbc.ini going to change only the row Driver:
#Driver = /usr/lib/libmyodbc.so
#cp odbc.ini /usr/local/etc/
export ODBCINI=/usr/local/etc/odbc.ini
export ODBCSYSINI=/usr/local/etc
Install qt3-unixODBC-3.3.3-24.i586.rpm:
rpm2tgz qt3-unixODBC-3.3.3-24.i586.rpm (on Slackware write this command and after:)
installpkg qt3-unixODBC-3.3.3-24.i586.tgz
Install unixODBC-gui-qt-2.2.10-1.i386.rpm
rpm2tgz unixODBC-gui-qt-2.2.10-1.i386.rpm
install unixODBC-gui-qt-2.2.10-1.i386.tgz

Launch ODBCconfig:
Drivers -->add-> Set how it follows:
Name: mysql
Driver: /usr/local/libmyodbc3.so
Setup: /usr/local/lib/libodbcmyS.so.1.0.0
UsageCount: 1
Con on V above on left.
Click on OK.
Active the server mysql and reactive ODBCconfig:
Go in UserDNS -> add --> Set how it follows:
Name: name database mysql that you care to see on OpenOffice.
Driver: mysql
Server: ip address of server mysql
Database: name database mysql that you want to query.
Click on V above on left.
Click on OK.
If you want add more databases to query, restart ODBCconfig and on UserDNS,
Add, Ok and insert the parameters like above, obviously adding another database perhaps with another ip address for another server mysql.
Open OpenOffice, select Tools --> DataSources.
DatabaseType: mysql
Mysql: UseExisting MyODBC data source.
DataSource url: click on button near it and choice the databse that you want. Under insert the user whose connect and the required password. Click on button below, Apply, after above on Tables, insert the password. If you have error on file odbcinst, don't worry, go on, click on table at the end and click on button edit table (if you want modify it). Click on OK, after on key F4 of keyboard (you will see the db how is structured), instead
if you want build a graphic interface (like and better then Access), click above on left on name of database, on tables, right key on table's name and after on  Form AutoPilot.

-On Windows:
OpenOffice can connect itself to othe databases, show the table/s in text format (boxes like excel) and build inside it a graphic like Access, how written above. All of this has been done on a computer with Windows2000 that connect itself to a db mysql on linux. Download file MyODBC-3.51.06.exe  and install it. Open Writer of OpenOffice after on Tools and DataSources. Click on New Data Sources, under General insert a name of db, Database type, choice MySQL, click above in MySQL, under "type of connection" choice
"Use existing MyODBC data source".Under the written General, choice UserName to use to connect to database mysql and click on Password required. Near at Data source URL, click on button with little point on right, it will open a new screen.
Under "Chose a data source" choice myodbc3-test, click on button Organize, it will open a new window and under the voice "DNS User" select again myodbc3-test, click on button Configure. Write how follows near the voices:
Data Source Name: myodbc3-test
Description: MySQL ODBC 3.51 TEST DSN
Host/ServerName: Ip address where is present the server mysql active
Database name: Name of database where you connect in
User: Utente mysql to use to connect in (see how create an user in paragraph dedicated to mysql)
Password: Password mysql to use to connect in (as above)
Port: 3306 (usually it that of default)
SQL command on connect: Leave empty the field
Click now on "Test Data Source" and if appears "Successful Connected", you have almost finished.
Click on button "OK" to close the three opened windows, click on "Apply" and after above on "Tables", it will be required a password, so insert the password of user mysql.
If doesn't appear errors and if under "Tables" appear the tables, you are OK, you can modify the dates with button "edit table", or you can build a graphic interface like Access, exiting from this screen and pressing the key "F4" ....... read above.


29c)MPLAYER AND MENCODER RIP DVD
Thank to Leonardo Lorenzetti aka Leone2000 (leone2000 (at) inwind.it)
What download from Internet.
What we need to download from website Mplayer:
http://www.mplayerhq.hu/:
sources of application:
http://www2.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre5.tar.bz2
fonts for own language, the ???Western???:
http://www1.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz
skin (at least one by default) for the graphic interface:
http://www1.mplayerhq.hu/MPlayer/Skin/Blue-1.4.tar.bz2
codecs audio/video:
http://www1.mplayerhq.hu/homepage/design7/codecs.html
http://www1.mplayerhq.hu/MPlayer/releases/codecs/all-20040916.tar.bz2
All these files are almost 16 megabyte;
to these we need to add all those useful components for a player audio/video. Usually all these distributions that I've tried (RedHat, Mandriva, SuSE, Slackware) install, by default, all what it's needed (that is, at least, the instruments of development (gcc), the (gtk) and the graphic server X), last thing to add, downloading it from Internet, is an econding of mp3, in this specific case Lame from http://lame.sourceforge.net/download/download.html and it goes installed itself (with the classic procedure): ./configure && make && make install???) before of Mplayer.

Compile and install of principal program:
Easily I'll exec all steps from command line, like I was root user:
the first thing to do is to extract the sources of application and moving into directory created for extracting:
leo@dark:~/tmp# bunzip2 Mplayer-1.0pre5.tar.bz2
leo@dark:~/tmp# tar xfv Mplayer-1.0pre5.tar
leo@dark:~/tmp# cd MPlayer-1.0pre5/
The second step ???standard??? of a compilation under GNU/Linux is the "configure" that permit to write a file of settings (the Makefile) with a personalization for the computer, hence:
leo@dark:~/tmp/MPlayer-1.0pre5# ./configure --enable-gui --language=it
This will able the graphic interface with Italian language. In any case
./configure --help shows all the options of compilation (NOTE: the interface will be in Italian, however the man pages will be in English). If the configuration ends without errors, we can proceed with the true
compilation and installation typing:
leo@dark:~/tmp/MPlayer-1.0pre5# make && make install
The program will be installed in /usr/local/bin.

Other installations (codecs and graphic interface)
At this point Mplayer would be ready, but to works correctly it needs of three things yet, two (fonts and the skin) specified for graphic interface, one (the codecs) useful for any use of application (graphic and
textual).
Hence we install the codecs audio/video:
create, if it doesn't exist, the directory:
mkdir /usr/local/lib/codecs
leo@dark:~/tmp/MPlayer-1.0pre5# mkdir /usr/local/lib/codecs
unzip file containing the codecs (extralite.tar.bz2) previously downloaded in this directory:
leo@dark:/usr/local/lib/codecs/# bunzip2 extralite.tar.bz2
leo@dark:/usr/local/lib/codecs/# tar xvf extralite.tar
leo@dark:/usr/local/lib/codecs/# mv extralite/* .
leo@dark:/usr/local/lib/codecs/# rm -rf extralite/

To use Mplayer only from command line we are ready, to use graphic interface we'll add at least one skin............... create, if it doesn't exist, the directory:
mkdir /usr/local/share/mplayer/Skin
leo@dark:~/tmp/MPlayer-1.0pre5# mkdir /usr/local/share/mplayer/Skin
unzip file containing the skin (ex. Blue-1.0.tar.bz2) in this directory:
leo@dark:/usr/local/share/mplayer/Skin/# bunzip2 Blue-1.0.tar.bz2
leo@dark:/usr/local/share/mplayer/Skin/# tar xvf Blue-1.0.tar
make a link of directory we had unzippping in "default":
leo@dark:~/tmp/MPlayer-1.0pre5# ln -s Blue/ default ...........and the font (font-arial-iso-8859-1.tar.bz2):
create, if it doesn't exist, the directory:
/usr/local/share/mplayer/font
leo@dark:~/tmp/MPlayer-1.0pre4# mkdir /usr/local/share/mplayer/font
unzip file containing the fonts in a temporary directory:
leo@dark:/tmp# bunzip2 font-arial-iso-8859-1.tar.bz2
leo@dark:/tmp# tar xvf font-arial-iso-8859-1.tar
This extraction will create a directory containing different under_directories containing different files; these under_directories are referring to the size, kind of font, etc., for example in our case we  have:
leo@dark:/tmp$ cd font-arial-iso-8859-1
leo@dark:/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/
Hence, choice the directory that we want (personally I suggest font-arial-14-iso-8859-1, that is the character arial, dimension 14, european codific (iso-8859-1) and copy its contained in  /usr/local/share/mplayer/font:
[...]$ cp font-arial-14-iso-8859-1/* /usr/local/share/mplayer/font  (NOTE:
Someone told me that this procedure to install the fonts doesn't work correctly because, executing gmplayer, appear different errors in path of fonts; probably this happens because the version of packages of own
distribution leave some file of configuration inside the system. To resolve this problem you need to go in home directory of user that is using the program and delete the directory .mplayer or you need to enter in this directory and modify the file gui.conf changing the voice font_name:
from:
/usr/share/mplayer/font/font.desc
to:
/usr/local/share/mplayer/font/font.desc"
(thanks to Panther and to Burlamacco for the signal and to the last for  the resolution).
At this point the installation of Mplayer is finished; disconnect like root user, connect like a normal user and exec from shell:
leo@dark:~$ gmplayer
should open the graphic interface of Mplayer, to access to menu press with right button of mouse on window video of application.

See dvd with command line:
leo@dark:/tmp$ mplayer dvd://1 -dvd-device /dev/hdd
(NOTE: mplayer supposes that the DVD player is /dev/dvd hence or you create a link into directory /dev
(for ex. ln -s /dev/hdd /dev/dvd) or you use the option "-dvd-device"
like in this case)
(NOTE FOR SLACKWARE 9.1: I had to add my user to group "disk" to have access
to DVD player because there are not more rights of read  for "other":
brw-rw---- 1 root disk 22, 64 Jun 9 2002 /dev/hdd)
Surely how you know in every dvd can be recorded more that an audio trace:
con mplayer it's possible choice the trace to extract/reproduce by the parameter -aid.
But how I can know how many traces there are and extract that, that I need ??? For first thing you need to execute mplayer with the option -v (verborse) that will give an output of program with many details:
mplayer dvd://1 -dvd-device /dev/hdd -v
                       or
mplayer dvd://1 -dvd-device /dev/sr0 -v (with kernel 2.6 recompiled).
Flowing with Konsole (the terminal emulator of KDE) the output of command, whose above, can be see these rows:
[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
that identify the languages that are available on disk (language: it and language:en) and how identify them (aid: 128 and aid: 129) (note also the fact of presence of subtitles or not). Hence to reproduce our disk with
English language, you'll have to write the command:
mplayer dvd://1 -dvd-device /dev/hdd -aid 129
                           or
mplayer dvd://1 -dvd-device /dev/sr0 -aid 129 (with kernel 2.6 recompiled).
(usually the first language is 128).

Commands from keyboard:
Mplayer (also with graphic interface) can be used completely from keyboard
and that can be difficult at start (you have to learn commands), but with time the manage of program will be more fast:
The principal commands are (man mplayer for other and more complete informations):
The arrows on keyboard: permit the search inside of media (right/left of 10
seconds ahead and back, up/down of 1 minute ahead and back);
page-up and page-down: permit the search ahead and back of 10 minutes;
bar on keyboard: pause;
ESC: stop and exit from program;
f: full-screen
The following commands can be applied only for graphic interface:
ENTER:play
s: stop
l: charge a file (load)


30c)FROM DIVX TO DVD
-From DIVX to DVD (Graphic procedure):
Programs required:
*KDE DVD Authoring Wizard
* kdewebdev
* ImageMagick
* MJPEGTools
* Sox
* DVDAuthor
* MPlayer
* Transcode

Not required but advisabled):
* Xine (for testing the DVD)
* K3B
After having installed these programs download:
DVDAuthorWizard_1.04.tar.bz2
bunzip DVDAuthorWizard_1.04.tar.bz2
tar xvf DVDAuthorWizard_1.04.tar
cd DVDAuthorWizard\ 1.04/

From Kde go on home and after click on directory DVDAuthorWizard\ 1.04/
click on file Installer.mkdr
Install it (leave its settings as predefined) and launch it from menu on left inside Multimedia (DVD Authoring Application). Choice the title, the temporary directory and the file .mpeg2 (that is the dvd previously ripped).

- From DIVX to DVD (Manual procedure)
Insert the dvd-video in dvd reader:
- Open the DiVX with the program avidemux2, and from menu on left:
- Video: DVD (lavc)
- Configure (F3): Encoding Type: Two Pass and leave the rest without touch anything.
- V Filter (F1): DVD res
- Active V Process (F5)

- Audio: FFm AC3 (should go well also FFm MP2 and Wav PCM)
- Configure (F4): Bitrate: 384 Kbits Stereo
- A Filter: if needs: Resample to hz 48.000 Normalize
- Active A Process (F6)

- Outp. fmt: Mpeg A+V (PS)

I save the video: pippo.mpg

- dvdauthor -f pippo.mpg -o dvd/
- dvdauthor -T dvd/
- mkisofs -dvd-video -o pippo.iso dvd/
- growisofs -dvd-compat -Z /dev/dvd=pippo.iso



31c)ENABLE JAVA ON FIREFOX OR MOZILLA
Download java for linux and download it for ex. in /usr/local/ you will
have
a directory:
/usr/local/jre1.5.0_01/
Install Firefox or Mozilla for ex. in /usr/local/ you will have the
directory:
/usr/local/Firefox/
Now it doesn't remain that copy the link of a file inside the directory plugin of Firefox.
In my case I've given this command:
ln -s /usr/local/jre1.5.0_01/plugin/i386/ns7/libjavaplugin_oji.so /usr/local/Firefox/plugins/


32c)EMAILS WITH PINE
Thanks to Stefano Pardini aka burlamacco (info at compaiuto.it)
www.compaiuto.it and www.viareggiolinux.org
Short info on email:
Because the email can works correctly on your computer it's necessary that all components are correctly configured. The component to configure  are:
# il mail transfer agent (MTA) receives the mail from a remote host and transfers it to another host. Between more used there are qmail, sendmail, postfix.
# Simple mail Transfer Protocol (SMTP), is the language talked from MTA.
# Post Office Protocol (POP) is an alternative language to SMTP, this is talked from MTA.
# il mail user agent (MUA) is the program that you use to read and send  the mail. Pine is an example of MUA.

If you use a PPP connection to Internet you could have need of POP
component, to receive messages of email.
This HOWTO analyzes the use of pine to manage the email from console and to downloading of mail through the POP protocol just configured inside pine.

What's Pine
Pine acronym of "Pine is not Elm" is a manager of email presents in linux distributions and starts itself from console (no graphic). This means that with Pine you can work using only the keyboard saving time especially
if you have to manage a lot of emails.

Start Pine
To start Pine write in shell "pine" and press the key Enter on keyboard.
When you start Pine the first thing that you will have to do is  configure the program. To start the configuration press S (setup) and later C (config) and move yourself with the buttons arrows up and down to pass from a  row to another. For a minimal configuration type you could use with normal programs to manage the email like Kmail and Evolution, set the following parameters:

* set your name and last-name (or what you want) in row "personal name";
* insert the user-domain that after the @ of your provider, in my case is:
libero.it;
* insert the server smtp of your provider in "smtp-server" (for example mail.libero.it);
* insert the path of file used to save the mail oncoming (in unix systems normally is /usr/spool/mail/$USER), in my case is:
inbox_path={popmail.libero.it/pop3/user=myusername}INBOX;
* insert the name of file used to store the messages sent in  "default-fcc" (for example sent-mail);
* insert the name of file used to save messages in
"default-saved-msg-folder" (for example saved-mail);
* insert the name of file that contains the drafts in  postponed-folder(for example postponed);
* if you want move messages read in a file defined at exit from pine, you have to insert the name of file in "read-message-folder" (for example read);
* in main menu move you with the key arrow down in customized-hdr and insert the email address of sender to use by default in my case customized-hdrs=Stefano <myusername@libero.it>;
* at the end search the row # Reflects capabilities of the display you
have, that of default is ASCII, and insert character-set=ISO-8859-1.

Now you can go out from setup pressing the key E and confirming the modified at file with Y.

Pine by default save the messages into directory $HOME/mail that will be created start pine. You have to think that Pine offers many other functions and options that you can configure and arrange of an help well done and exhaustive. You can also act directly on file of configuration with some editor like emacs or vim (try to open a shell in your home and write:
emacs .pinerc or vim .pinerc).
You can also give colors to Pine going into section with key K.

Multiple accounts
With Pine naturally is possible configure also more accounts in case you have other email. To configure Pine to manage of multiple account open file .pinerc with a text-editor like written above, search the row:
# List of incoming msg folders besides INBOX, e.g. = {host2}inbox, {host3}inbox
hence create your account like above:
incoming-folders={popmail.inwind.it/pop3/user=miousername}inbox.

Exit from Pine
To exit from Pine exec the following operations. Press Q, Pine will ask you to confirm the exit (you can disable it) and confirm pressi key Y.

Download the email
To download the email start Pine, it will be asked the inserting of password of you main account, proceed for the download. To read the email you have to move yourself pressing L in list of directories, use the arrows keys,underline the INBOX and press Enter to read the emails are arriving. If you have another account configured, later move yourself  into inbox of second account, press Enter and insert the password.
The procedure is the same of before.

Save a message
To save a message when you are into INBOX wished, that where you have the email in arrive, select the message with key S and press ENTER.

Compose and send a message
To compose a message press C, insert the address of addressee in field To:
and if you want to fill the field cc:, after if you want you can to attach a file. To attach a file press Ctrl+T to start the administrator of file of Pine, enter into directory where you have the file selecting it and
pressing Enter, choose file to attach and confirm the choice with Enter. To move use the keys arrow. Insert the subject and write the text of email. When you have finished to send the email press Ctrl+x and confirm with Enter.
Pine will show you in percentage the advancing of shipment of message.

Print a message
To print an email, follow this procedure. Press L to move into list of directories, underline the directory wished and select the message. Press the key y to send the message to printer. The printer has to be configured in Pine, press M to enter in main menu, followed from S and from P to access to menu of configuration of your printer. In setup of pine tick-off the option "enable-print-via-y-command" that you found in section [Printer
Preferences].

The address-book
The address-book of Pine is an instrument much easy to use, to open the address-boot use the key M to access at the same main menu and press A. Pine will show a list of shor names and addresses email. The short names are associated to addresses e-mail to avoid to write every time all the addresses long and difficult to remember. To create a short name you can start from a message received, while you are reading it, press T select the address, press Enter and write the Nickname, after insert in Fullname the full name and confirm. To complete the operation press Ctrl+x and Y to save.
To cancel the operation press Ctrl+c. You can do the same operation also without start from message received, enter into address-book and press @ and follow the same steps of before, with the unic difference that yo will have to insert by hand the address email. If you want to create a mailing-list to which send a message, in field Addresses insert the addresses separated  from commas. When you are inside the address-book and you want to send an  email to one of nick-names, select it and press C to compose the message.

Filter the mail
With Pine you can filter the email in arrive for example if you are enrolled to a mail-list and you want save the email arriving from that mail-list in a directory predefined. You must identify something that distinguish the
email that arrive from mail-list. If you are enrolled to a hypothetical list paperopoli-list@paperopoli.com and you want save the messages into directory "paperopoli", press M and after S to access to setup of Pine, press R and go to the screen "Add a Rule" press Enter and insert like short name "filter mailing list paperopoli". Move to field "To pattern", press Enter and digit "paperopoli-list@paperopoli.com" followed from another Enter. Move yourself to the row "Filter Action" and after on "Move to Folder", press Enter and digit "paperopoli" (paperopoli is the directory where will be saved the messages). So you will have just created a filter press E and Y to exit.

Expedients.
In following section select the options suggested, these will help you to work better.
[Advanced User Preferences]

[X] auto-move-read-msgs
[X] expunge-without-confirm
[X] expunge-without-confirm-everywhere
[X] quit-without-confirm

search the following row and arrange a value (ex.):
mail-check-intervals = 24000
Finally search the following row and arrange a valid path (ex.):
url-viewers = /root/browser/MozillaFirebird/MozillaFirebird.

Conclusions:
I've decided to write this HOWTO, because I've found much efficient the manage of email from console and because much documentation that I've searched time ago on Internet was and is in english language. So, I've
thought to give my little contribution to all that will want try this solution and that by these easy indications will suggest to configure and personalize Pine.


33c)SWARET INSTALL UPGRADE UNINSTALL PACKETS ON SLACKWARE
Swaret is a program that permit to install, upgrade and delete the
packets of Slackware, resolving automatically the dependences. Download the program from here:
http://www.swaret.org/
Install it like that:
installpkg swaret-X.X.X.tgz  (depends from version)
Go on directory /etc/ and rename the file swaret.conf.net in swaret.conf like that:
mv swaret.conf.new swaret.conf
Modify eventually the file /etc/swaret.conf if you want improve on modifies.
To have a list of commands write:
swaret --help
Give this command to have a list of packets updated:
swaret --update
To have a list updated of packet write:
swaret --list
Now you can decide if install a packet, if updated it or if uninstall it.
Near the name of packet will appear the writtens:
[Status: INSTALLED]
[Status: NOT INSTALLED]
Take like reference all the packet's name, copy it and insert it after --install, ad es:
swaret --install gimp-print-4.2.5-i386-1
swaret --upgrade xmms-1.2.8-i486-2


34c)GPG
We generate the public and private keys:
gpg --gen-key
The program will ask a question like that:
Please choose what kind of key do you want:
(1) DSA e ElGamal (default)
(2) DSA (only sign)
(5) RSA (only sign)
What do you choose?
We choose 1 (that by default)
Other question:
The couple DSA will have 1024 bit.
I'm going to generate a new couple of keys ELG-E.
The minimum dimension is 768 bit
The predefined dimension is 1024 bit
The max dimension advertised is 2048 bit
What kind of dimension do you want? (1024)
We choose 1024 (the predefined dimension).
Other question:
Please specify for how much time the key will be valid.
0 = the key will not expire
<n> = the key will expire after n days
<n>w = the key will expire after n weeks
<n>m = the key will expire after n months
<n>y = the key will expire after n years
Valid key for? (0)
We choose 0 (it will has not expire).
Other question:
ey has not expiration
It's correct (y/n)?
We choose y (yes)
Now the program will ask the Name and LastName, the email and a comment
and
the confirm, digit the letter O
Other question:
You need a passphrase to protect you secret key.
Insert the passphrase: (write it twice).
At the end we will have:
public and secret keys created and signed.
definitively reliable marked keys.

Now we export the public key with the following command:
gpg --armor --export
We obtain the list of keys with this command:
gpg --list-keys

To export a public key:
Use this command (indicate a parameter of user, ex. the email)
gpg --armor --export cristianm@aliceposta.it
or if you want save it in a binary file
gpg --output cristian.gpg --export cristianm@aliceposta.it

To import a public key:
gpg --import blake.gpg
gpg --list-keys
Convalid an imported key:
gpg --edit-key blake@cyb.org
fpr
sign
check

To cipher a file (obviously you must have the file.gpg of addressee):
Crypt a file (it will be created the file prova.txt.gpg):
gpg --list-keys (you have a list of keys and of the owners)
gpg -e -r cepost prova.txt (-e means encrypt, -r you need to insert a  part of name)

Sign a file:
gpg -r macalu -s -o prova.txt --encrypt prova.txt.gpg
Crypt and sign the file:
gpg --output doc.gpg --encrypt --sign --recipient lmpinto@dei.uc.pt
documenttocrypt_and_sign

Decipher a file:
gpg --decrypt prova.txt.gpg (it will be required the passphrase of user)
or

If the key has sent to you by a text-file, you can import it with this
command:
gpg --import filewiththekeytoimport.asc
To create a certificate to revoke the key in a second time from keyserver
in case it is lost or corrupted, use these command:
gpg --gen-revoke KEYID > revoke.asc
to revoke the key:
gpg --import revoke.asc
gpg --send-key KEYID
To sign a key, use this command:
gpg --edit-key KEYID
If appears always this message "gpg: Attention: you are using uncertain
memory! " ?" operate following this:
Inside file /home/user/.gnupg/options you need to insert the string:
no-secmem-warning.
To avoid the annoyance of warnings, the method more fast is surely that
to disable them. If but you too listen them (and do them disappear however),
it's possible that gpg works using "uncertain memory) using suid:
# chown root /path/to/gpg
# chmod u+s /path/to/gpg


35c)SQLITE
Sqlite is a light database, and completely free (also in business
company), neither 1 mega that supports a database until a 2.41 terabyte. It will
follow the installation under Slackware 10. Connect to website
www.sqlite.org/download/ and download from Source code the version
actually available:
http://www.sqlite.org/sqlite-3.0.2.tar.gz
Unzip it and install it like user root:
tar zxvf sqlite-3.0.2.tar.gz
cd sqlite
./sqlite/configure
make
cp -f sqlite3 /usr/bin/sqlite
You can start Sqlite from shell, writing:
sqlite
-Create a database:
sqlite mieicd
One time you have been out from database, it will be created a file  with the name of database into directory where you are. If you want use the same database, or you have to move into directory where file is present or you must to say to sqlite where is the database, now 2 examples:
cd /tmp
sqlite mieicd
   or
sqlite /tmp/mieicd
-Create a table that auto-increment itself, inserting and visualization:
create table cd (a integer primary key, b integer);
insert into cd values(null, 123);
insert into cd values(null, 546);
insert into cd values(null, 879);
select * from cd;
-Change the dates of table cd of column b from 123 to 101112
update cd set b='101112' where b='123';
-Other example, create a table:
create table nominativi (nome text, cognome text);
-Insert of dates on table
insert into nominativi values('pippo', 'cosimi');
insert into nominativi values('pluto', 'cairo');
-Have a list of databases:
.databases
-Have a list of tables on database::
.tables
-Have a schema of table/s created:
.schema
-Delete a table:
drop table nominativi;
-Show the contained of a table:
select * from nominativi;
-If you want show in different ways the contained, write on of the following commands:
.mode list
select * from nominativi;
.separator ", "
select * from nominativi;
.mode line
select * from nominativi;
.mode column
select * from nominativi;
.width 12 6
select * from nominativi;

-Insert a new column on database (complete example).
ATTENTION, BEFORE MAKE A COPY OF FILE-DATABASE
sqlite prova
#Create a table
sqlite> create table t1(a text, b text);
#Start the transaction
sqlite> BEGIN TRANSACTION;
#Create a temporary table equal to the other table
sqlite> CREATE TEMPORARY TABLE t1_backup(a,b);
#Does a copy and past from first table to temporary table
sqlite> INSERT INTO t1_backup SELECT a,b FROM t1;
#Derete the first table
sqlite> DROP TABLE t1;
#Create the new table with the new column
sqlite> CREATE TABLE t1(a text,b text,c text);
#Does a copy from temporary table to new table
sqlite> INSERT INTO t1 (a,b) select * FROM t1_backup;
#Delete the temporary table
sqlite> DROP TABLE t1_backup;
#Ends the transaction
sqlite> COMMIT;
#Control columns names
sqlite> .schema

-Rename a column (complete example)
ATTENTION, BEFORE MAKE A COPY OF FILE-DATABASE
sqlite prova
#Create a table
sqlite> create table t1(a text, b text);
#Start the transaction
sqlite> BEGIN TRANSACTION;
#Create a temporary table equal to the other table
sqlite> CREATE TEMPORARY TABLE t1_backup(a,b);
#Does a copy and post from first table to the temporary table
sqlite> INSERT INTO t1_backup SELECT a,b FROM t1;
#Delete the first table
sqlite> DROP TABLE t1;
#Create new table with new name of column
sqlite> CREATE TABLE t1(a text,botte text);
#Does a copy from temporary table to new table
sqlite> INSERT INTO t1 (a,botte) select * FROM t1_backup;
#Delete the temporary table
sqlite> DROP TABLE t1_backup;
#End the transaction.
sqlite> COMMIT;
#Control columns names
sqlite> .schema

-Convert a database in a file ascii:
echo '.dump' | sqlite nominativi | gzip -c >ex1.dump.gz
-Rebuild the database from file ascii
zcat ex1.dump.gz | sqlite ex2
-Export a database SQLite in a database Postgresql:
createdb ex2
echo '.dump' | sqlite ex1 | psql ex2
-Exit from sqlite:
.exit oppure .quit

-Graphic interface for sqlite:
Connecting to this address you find a graphic interface (Linux and Windows) to manage the database sqlite:
http://sqlitebrowser.sourceforge.net/
Sotto windows basta scompattare il file zippato ed avviarlo, stessa cosa sotto linux:
tar zxvf sqlitebrowser-1.1-i386.tar.gz
./sqlitebrowser

-Connect sqlite with OpenOffice through graphic interface.
Under Windows install drivers sqliteodbc-win32.zip from:
http://www.ch-werner.de/sqliteodbc/
unzipping and clicking on inst.exe
Create a database with sqlite (like written above), open OpenOffice, go in Tools, DataSources, click on NewDataSources. On Database type choice ODBC and click on button aside, in new windows choice SQLite Datasource, click on Organize, after on DSN of system, SQLite Datasource, Configure, at the end click on Browse and choice the directory where is present the database sqlite .db. Click on Ok, Apply, Ok, reselecting SQLite Datasource, Ok, Apply  and above on Tables.
If you can see the database sqlite, you can go on a empty page Write, press the key F4, select the name database, Tables and the name of table, click on it with the right button of mouse and choice FormAutopilot.

-Will follow an example of script in perl (download and install the specific modules from search.cpan.org):
tar zxvf Net-Daemon-0.38.tar.gz
cd Net-Daemon-0.38/
perl Makefile.PL
make
make install

tar zxvf PlRPC-0.2018.tar.gz
cd PlRPC-0.2018/
perl Makefile.PL
make
make install

tar zxvf DBI-1.43.tar.gz
cd DBI-1.43/
perl Makefile.PL
make
make install

tar zxvf DBD-SQLite-1.03.tar.gz
cd DBD-SQLite-1.03/
perl Makefile.PL
make
make install

#Insert at least 2 my like on example, otherwise doesn't work.
#!/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;

-Will follow an example of script in python (download the specific module from 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()


36c)P2P with aMule
Will follow 2 Methods to install aMule (vers. .tar.gz and .tgz for Slackware).
- We need to install the library wxWidgets, Cryptopp and aMule
(actually version available 2.0.rc5).
Connect to website:
http://www.wxwindows.org/ and download the library for Linux
(Unix/GTK+), in our case I'll download the version tar.gz 2.4.2 (wxGTK-2.4.2.tar.gz).
Connect later to website www.amule.org and download the version  aMule-2.0.0rc5.tar.gz and click after on link cryptopp aside and download the version 5.2.1.tar.bz2
Download also wxall-2.5.3.
From user unzip the file wxGTK-2.4.2.tar.gz:
tar zxvf wxGTK-2.4.2.tar.gz
cd wxGTK-2.4.2
./configure --with-gtk
make
su (insert the password of root)
make install
ldconfig
exit
Da utente root scompattare ed installare wxall-2.5.3.
Scompattare il file crypto-5.2.1.tar.bz2 cosl:
bunzip crypto-5.2.1.tar.bz2
tar xvf crypto-5.2.1.tar
cd crypto-5.2.1/
make
cp libcryptopp.a /usr/lib/
mkdir /usr/include/cryptopp
cp *.h /usr/include/cryptopp/
ldconfig
Unzip the file aMule-2.0.0rc5.tar.gz like that:
tar zxvf aMule-2.0.0rc5.tar.gz
cd aMule-2.0.0rc5
./configure
make (If you see an error "cryptopp" don't worry)
make install
At this point doesn't remain that launch from command line by xterm:
amule and click on little button under the big button  "Connect", it will download the server available in that moment.

-If you have the Slackware go on website http://www.linuxpackages.net/
and insert on Searchpkg the writtens wxgtk, crypto and amule to show the version Slackware you got.
One time downloaded 3 files, write:
installpkg wxGTK-2.4.2-i486-1.tgz
installpkg aMule-2.0.0rc5-i486-1pcx.tgz
installpkg cryptopp-5.1-i486-1pcx.tgz
installpkg wxall-2.5.3-i486-1tsu.tgz
Open xterm and write:
amule


37c)GTKAM AND DIGITAL CAMERA
I'll describe how connect a digital camera (Hp M307) to gnu-linux and how download from this, through usb wire, pictures and films.

The installation under Slackware:
Go on www.linuxpackages.net and download the packages format .tgz
Install them like that:
installpkg gphoto2.2.0.tar.gz
installpkg gtkam-0.1.13.tgz
installpkg libgphoto2-2.1.4-i386-2mht.tgz

Or connect to website http://www.gphoto.org/ and download the packages:
gphoto2-2.1.4.tar.gz
gtkam-0.1.12.tar.gz
libgphoto2-2.1.4.tar.gz
Unzip files with:
tar zxvf gphoto2-2.1.4.tar.gz
tar zxvf gtkam-0.1.12.tar.gz
tar zxvf libgphoto2-2.1.4.tar.gz
Enter in these 3 directories just created and write:
./configure && make && make install

Launch the program gtkam, click on Camera and "add Camera". I've chosen "USB PTP Class Camera" with port "Universal Serial Bus".
Or click on "Enhaced" and on Apply. At this point, if you already have done a picture or a film, you will see appear it on right of the screen. To show it or save it, click over on it with right button of mouse.


38c)CONNECT LINUX WITH BLUETOOTH AND CELLPHONE
I'll explain how to connect a cellphone Nokia 6600 (also other cellphones are good), a Slackware 10 with kernel 2.6.8.1 and a usb stick bluetooth usb.
Recompile the kernel 2.6.8.1, go in Device-Drivers, Networking-Support, Bluetooth-Support and select inside it or like module or like asterisk  (or y).
Recompile the kernel like that:
make menuconfig
make all && make modules_install
generate-modprobe.conf
cp -f System.map /boot
cd arch/i386/boot
cp -f bzImage /boot

Reboot computer, go here in  (http://bluez.sourceforge.net) and download these files:
bluez-firmware-1.0.tar.gz
bluez-hciemu-1.0.tar.gz
bluez-hcidump-1.12.tar.gz
bluez-libs-2.10.tar.gz
bluez-utils-2.10.tar.gz
bluez-pin-0.24.tar.gz

Unzip them and install them like that:
tar zxvf bluez-firmware-1.0.tar.gz
tar zxvf bluez-hciemu-1.0.tar.gz
tar zxvf bluez-hcidump-1.12.tar.gz
tar zxvf bluez-libs-2.10.tar.gz
tar zxvf bluez-utils-2.10.tar.gz
tar zxvf bluez-pin-0.24.tar.gz
Enter inside new directories created and install the software.
./configure
make
make install

Download and install the file ussp-push (permit the transfer of files):
ussp-push.tgz (search it on google or for your directory)

Insert the usb stick bluetooth
Now from command line write:
/etc/rc.d/rc.hotplug stop (on Slackware)
/etc/rc.d/rc.hotplug start (on Slackware)
hcid
sdpd
hciconfig hci0 up
If you have an error like:
Can't get device info: No such device
Reinsert the usb stick, and give the command, otherwise reboot computer with usb stick inserted.

hcitool scan  (that it will have to give you a equal thing to this):
Scanning ...
        00:0E:6D:45:A8:96       Panther
#You will need this code to modify file rfcomm.conf

rfcomm connect 00:0E:6D:45:A8:96

Now the cellphone will ask you the pin (insert 12345) and accept the new connection bluetooth.

We create a file miopin.sh and modify the file hcid.conf, so to have an automatic procedure.

Create file mypin.sh in /etc/bluetooth/
cd /etc/bluetooth/
vi mypin.sh
#!/bin/sh
echo "PIN:12345"  #(usually this is the pin)
chmod 770 mypin.sh

Modify the file /etc/bluetooth/hcid.conf
Like that:
# PIN helper
        #pin_helper /usr/bin/bluepin;
         pin_helper /etc/bluetooth/mypin.sh;

# Local device class
        #class 0x100;
         class 0x100100;

Modify the file /etc/bluetooth/rfcomm.conf like that:
#
# RFCOMM configuration file.
#
# $Id: rfcomm.conf,v 1.1 2002/10/07 05:58:18 maxk Exp $
#

rfcomm0 {
        # Automatically bind the device at startup
        bind no;

        # Bluetooth address of the device
        #device 11:22:33:44:55:66;
         device 00:0E:6D:45:A8:96

        # RFCOMM channel for the connection
        channel 10;

        # Description of the connection
        #comment "Example Bluetooth device";
         comment "Nokia 6600"
}

Now we can install 2 graphic programs to interact with cellphone:
KMobileTools e KdeBluetooth
We download kmobiletools from here:
http://download.berlios.de/kmobiletools/kmobiletools-0.4.0.tar.gz
http://download.berlios.de/kmobiletools/kmobiletools-i18n-0.4.0.tar.gz
Like usual, unzip them and install them with:
tar zxvf kmobiletools-0.4.0.tar.gz
tar zxvf kmobiletools-i18n-0.4.0.tar.gz
./configure && make && make install
Launch kmobiletools and in "mobile phone device" insert:
/dev/rfcomm0

Or install kdebluetooth like that:
bunzip2
http://www.stud.uni-karlsruhe.de/~uddw/kdebluetooth/kdebluetooth-0.0.cvs2004
1016.tar.bz2
tar xvf kdebluetooth/kdebluetooth-0.0.cvs20041016.tar
./configure && make && make install
Launch later:
kbluetoothd


39c)EMAIL WITH MUTT FETCHMAIL AND POSTFIX
Thanks to Stefano Pardini that manage website www.compaiuto.it and www.viareggiolinux.org
Again a mini-tutorial on electronic email from console. This time we will
talk about client Mutt and about Fetchmail.
It will be happened to you using Linux to peer between different mail-clients that you find on distribution, between these on of most famous is Mutt.
Mutt is a program much powerful and light, of which difficultly you will succeed to not use just you will use to use it. In this mini-howto we will analyze the recovery of email through "fetchmail", after we will proceed to create of a mail with client Mutt and to its shipment through a MTA. At the end we will talk also about
SSMTP, a little program the can substitute MTA more famouses, such as postfix and exim. The first step will be that to create the maildir with "mkdir MuttMail" and later install fetchmail and configure it. Fetchmail, Mutt
and Postfix are usually presents on disks of installation of all distro Linux. To use Fetchmail will be necessary create file .fetchmailrc with an text-edito which for ex. vim. An example of .fetchmailrc could be this:
poll popmail.libero.it with proto POP3 timeout 60
user myusername password yourpassword
Obviously use and password will have to correspond to those of your account.
The file such as configure it's easily interpretable and that is used the protocol pop3 to download the mail from server. To this file you will have to give these permissions:
"chmod 0710 .fetchmailrc", it will be readable only to its owner.
The second step will be to proceed with installation and configuration of Mutt. You can personalize Mutt and you can configure it in many ways, I've inserted at the end of tutorial and example of .muttrc that you can
download and naturally edit it. Inside the file you will see a lot of functions, some of them of difficult understanding. Read the comments to understand what involves the described function.
Try and eventually modify as you want the file .muttrc. On Internet Mutt has many documentation and also its manual is rich and well done. To have more news write "man shell", after search the manual and read it carefully. In my file .muttrc I've "commented" the functions in which I'm more interested in personalizing it. We proceed now with a test of downloading of email opening a shell and writing the command:
"fetchmail -v" or more easily "fetchmail" (naturally without commas).
The email downloaded goes in /var/spool/mail/nameuser
At this point we write mutt in shell and launch the program with which we will can see the messages that we have created.
You open a message will be sufficient select it going up and down with the keys arrows, and pressing Enter on keyboard.
To compose a message press "m" and insert first the address of addressee followed from Enter, after the subject of mail always followed from Enter, at the end one time that editor will open itself (in my case is vim),
you write the text of email. Inside of editor you will have to have the same behavior such as you do
when you write a document. One time finished to write the message, you go
out from vim and save it. You will  find newly inside the screen of client and pressing "y" you will can send you mail. To send your mail you will have to access to a server SMTP that it is in a position to making from
relayer, otherwise you won't send any mail.
Remember also that some provider send messages inside of their domain only if you are connected to Internet with their account, this because so you are part of their domain. The program that I use is Postfix, one of most famous Mail Transfert Agent, its configuration cannot be defined an easy operation, but  who want
use this MTA, can use many tools that you can find on your distro. For Suse you can use Yast, with Fedora for example exist a little tool that permit to choice MTA, after that you will can also edit the file by hand:
main.cf in /etc/postfix/ and insert the relayhost in this way:
relayhost=mail.yourprovider.it or relayhost=smtp.yourprovider.it.
Save and restart postfix, you will be ready to send email with command "sendmail -q".
On Debian Sarge I've downloaded postfix with apt, during the download will appear a screen for the configuration of MTA, set also here the relayhost and you will try to send messages without problems. An alternative to a MTA like postfix could be SSMTP a little program that can replace it dearly, for example in a little emplacement "home".
I've set ssmtp on Slackware 9.1-10 and I've found it very functional and easy to configure. During the installation is required to define the mailhub that in my case is mail.libero.it.
In this way the mail will be delivered from server of Libero, because my address is myuser@libero.it
Who is using Slackware, exists the packet tgz of ssmtp (during installation you will have to insert the mailhub and the port [25] to send mails), for the others distro you can exec installation following the instructions of
readme. If you chooce to use ssmtp, you will have to say to Mutt to not send the mail with postfix, hence we edit newly file .muttrc and we insert the following row:

set sendmail="insert the path of exec of ssmtp leaving also the ".
When you leave from Mutt (letter "q"), it will be required if you want to archive the read messages that will become moved from spool of enter to mbox. If you want you can create a mailbox to archive the mail of
senders, using "s" and following the easy instructions on video. With "c" you will can open a mailbox and pass from another, even to read the mail, if we write mbox after "c" we will can see again the messages archived before.One time that we will have done the try, if all goes well, you can download the mail opening Mutt and pressing the letter "G" with the (upper case), without worrying to be worried to write in shell how you have done formerly. With Mutt naturally we can create also of alias for addresses-email, to do this you have to press the letter "a", and follow the instructions on video.
For all the other options, that are many, you can read the guide on which you will can access easily pressing "?".
And remember to read also the manual of Mutt.....

Sign the messages with Mutt
If you want to sign the messages you will have to create the file with the sign, I have created the file  ".signature.mutt" in this way:
--
E-mail From: Stefano Pardini
Operating System GNU/Linux
E-Mail Client: Mutt 1.5.6
Linux - The choice of GNU generation!
It's important to format the sign, that is way are inserted the hyphens and
the space before the text.
The hyphens and the space are like delimitator, when Mutt meets a delimitators, knows that after there is the sign and distinguish it with a different color from text of message. File of the sign have to be in  home of user.

Some briefs notions:
MUA means Mail User Agent, that is the program used to write and read the mail. MTA is the acronym of Mail Transfer Agent.
The MTA are usually of servers, that is they are busy to "feel" if there is mail, decide where send it and send it. fetchmail is almost a MTA POP3: Post Office Protocol 3 (POP3) is actually the protocol more used
for the download of email. The protocol POP3 described in    RFC 1939, gives functions base to download and delete the mail from a mail server. To follow the process of download is established a connection type TCP between the client and the server POP3 listening the port 110.
A typical session POP3 is characterized from following phases:
1) The client POP3 connect itself to server POP3 and it listen the port 110 expecting the connections;
2) One time you are connected the server send a message to client usually indicating the name and/or the version of software server.
3) Now it's possible to go to the phase of authentication where the client must send to server POP3 the commands USER nameuser and PASS password.
One time the client has been authenticated it's possible exec the operations such as read, delete a message, etc.....

Notes:
a) The files .muttrc, .fetchmailrc, are file hidden, to see them in shell
"ls -a", I've written an example of .muttrc in format .txt
b) I advice you warmly to read some guide on use of email before to proceed to do experiments.
On Internet you can fine much documentations easily doing a search with google;
c) This mini-howto is written so everyone can use the client mutt for a normal use on emplacement home and protocol pop3.
I hope having success on it:
The example of .muttrc!:

#start of file
#
# Sample ~/.muttrc for GNU/Linux
#

#
# Setting
#
set pager_context=4
set pager_index_lines=10
set pager_stop

#
# Binding
#
bind  pager <backspace> previous-page
bind  pager -           previous-line
bind  pager \eOm        previous-line
bind  pager +           next-line
bind  pager \eOk        next-line
bind  pager \eOM        next-line
bind  pager \e[1~       top
bind  pager \e[4~       bottom

bind  index <backspace> previous-entry
bind  index -           previous-entry
bind  index \eOm        previous-entry
bind  index +           next-entry
bind  index \eOk        next-entry
bind  index \eOM        display-message
bind  index \e[H        first-entry
bind  index \e[F        last-entry
bind  index \e[1~       first-entry
bind  index \e[4~       last-entry

bind  alias   <space>   select-entry
bind  alias   x         exit
bind  attach  x         exit
bind  browser x         exit

set delete=yes                          #delete without ask it
set include=yes                         #quote the messages at answer
set markers=no                          #don't add a "+" when go on
next
line
set sig_dashes=no
set editor = "vim -f \"+set tw=72\" "   #set the limit of 72 character
on
message

set folder="$HOME/MuttMail"             #this is the maildir of Mutt
set postponed="$HOME/MuttMail/bozze"    #this is the directory  bozze
set record="$HOME/MuttMail/sent"        #The email sent are saved here

bind pager h display-toggle-weed        #you show the header with
button h

# Exec fetchmail pressing the button G
macro index G "!fetchmail"
macro pager G "!fetchmail"

## PERSONAL OPTIONS
set from="miousername@libero.it"
set realname="Stefano Pardini"
set envelope_from=yes

# active the use of personal headers  'my_hdr'
set hdrs
my_hdr From: Stefano Pardini <miousername@libero.it>
my_hdr Return-Path: Stefano Pardini <miousername@libero.it>
my_hdr Reply-To: miousername@libero.it

# This is the list of header to pull out when the email is showed
ignore *
unignore  Date To From: Subject X-Mailer Organization User-Agent
hdr_order Date From To Subject X-Mailer User-Agent Organization

## Option of composition
# file containing the sign
set signature = $HOME/.signature.mutt

## Sending option
# permit the use of all characters at 8 bit
set allow_8bit

##We color Mutt giving it a nicely aspect
##These are for 4 levels of quoted text.
##Are overwritten the settings of system contained in /etc/mutt/Muttrc

#color quoted green  default
color quoted1 magenta blue
#color quoted2 yellow default
#color quoted3 red default
#color signature cyan cyan

color   hdrdefault      brightcyan      blue
color   header          brightwhite     blue "^from:"
color   header          brightwhite     blue   "^subject:"

color   quoted          brightgreen     blue
color   signature       brightwhite     blue

color   indicator       blue            green

color   error           red             black
mono    error           bold
color   status          black cyan
mono    status          bold
color   tree            yellow          blue

color   tilde           brightmagenta   blue
color   body    brightwhite             blue   
"[-a-z_0-9.]+@[-a-z_0-9.]+"
mono    body    bold                    "[-a-z_0-9.]+@[-a-z_0-9.]+"

color   body            brightyellow    black   "^Good signature"
mono    body            bold                    "^Good signature"
color   body            brightwhite     red     "^Bad signature from.*"
mono    body            bold                    "^Bad signature from.*"
color   normal          white           blue
color   message         green   black
color   attachment      brightgreen     blue

#end of file

At this point I wish you good work.


40c)NETGEAR MA111 USB STICK WIRELESS PEN ON SLACKWARE
Thanks to:
startx.

Download netgear from  here:
ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-0.2.5.tar.gz
The kernel used is 2.4.29.

$ tar -zxvf linux-wlan-ng-0.2.5.tar.gz
$ cd linux-wlan-ng-0.2.5/
$ make config

-------------- Linux WLAN Configuration Script -------------

The default responses are correct for most users.

Build Prism2.x PCMCIA Card Services (_cs) driver? (y/n) [y]: n
Build Prism2 PLX9052 based PCI (_plx) adapter driver? (y/n) [y]: n
Build Prism2.5 native PCI (_pci) driver? (y/n) [y]: n
Build Prism2.5 USB (_usb) driver? (y/n) [y]: y

Linux source directory [/lib/modules/2.4.29/build]: /usr/src/linux

The kernel source tree is version 2.4.29.
The current kernel build date is Thu Jan 20 16:30:37 2005.

Alternate target install root directory on host []:
Module install directory [/lib/modules/2.4.29]:

It looks like you have a BSD-ish init file setup.

Prefix for build host compiler? (rarely needed) []:

Build for debugging (see doc/config.debug) (y/n) [y]: y

Configuration successful.

$ make all
# make install

Edit the file in /etc/wlan/wlan.conf

WLAN_DEVICES="wlan0"
ChannelList="01:02:03:04:05:06:07:08:09:10:11:12:13:14:0a:0b:00:00:00"
#(remember that netgear receives from 1/14)
ChannelMinTime=200
ChannelMaxTime=250
WLAN_SCAN=n (y if you want able the automatic search of channel)
SSID_wlan0="linux-wlan" #(you can assign some name you need to remember
that
will have to exist its
 wlancfg-linux-wlan in /etc/wlan/
esempio SSID_wlan0="myaccessp" /etc/wlan/wlancfg-myaccessp)
ENABLE_wlan0=y
#SSID_wlan1=""
#ENABLE_wlan1=n
#SSID_wlan2=""
#ENABLE_wlan2=n

and the  files wlancfg-linux-wlan ( if it's not specified the name of
SSID
the default is wlancfg-DEFAULT)
This exampel rapresents the configuration of access to a an
access-point the
use the channel 11 with cryptation of the key wep to 128bits and system
shared for sharing of keys.

lnxreq_hostWEPEncrypt=true # true|false
lnxreq_hostWEPDecrypt=true # true|false
dot11PrivacyInvoked=true # true|false
dot11WEPDefaultKeyID=2 # 0|1|2|3
dot11ExcludeUnencrypted=true # true|false, in AP this
means WEP is required.
PRIV_GENERATOR=/sbin/nwepgen # nwepgen, Neesus compatible
PRIV_KEY128=false # keylength to generate
PRIV_GENSTR=""
dot11WEPDefaultKey0= # format: xx:xx:xx:xx:xx or
dot11WEPDefaultKey1= # xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
dot11WEPDefaultKey2=xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
dot11WEPDefaultKey3= # 01:02:03:04:05:06:07:08:09:0a:0b:0c:0d
IS_ADHOC=n # y|n, y - adhoc, n - infrastructure
AuthType="sharedkey" # opensystem | sharedkey (requires WEP)
BCNINT=100 # Beacon interval (in Kus)
CHANNEL=11 # DS channel for BSS (1-14, depends
BASICRATES="2 4" # Rates for mgmt&ctl frames (in 500Kb/s)
OPRATES="2 4 11 22" # Supported rates in BSS (in 500Kb/s)

Now you seet the ip address for the usb-stick wireless

# ifconfig wlan0 192.168.0.x
if you have a  net card
# ifconfig eth0 down
# route add default gw 192.168.0.1 dev wlan0
#ping www.tivedotonico.it
PING www.tivedotonico.it (207.44.202.52) 56(84) bytes of data.
64 bytes from ns.tech-hosting.com (207.44.202.52): icmp_seq=1 ttl=48
time=333 ms
64 bytes from ns.tech-hosting.com (207.44.202.52): icmp_seq=2 ttl=48
time=329 ms
64 bytes from ns.tech-hosting.com (207.44.202.52): icmp_seq=3 ttl=48
time=329 ms

--- www.tivedotonico.it ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2024ms
rtt min/avg/max/mdev = 329.188/330.773/333.736/2.148 ms

If you want to test your wireless access point exists (between many) a tool called  airsnort.

http://kent.dl.sourceforge.net/sourceforge/airsnort/airsnort-0.2.7e.tar.gz
( http://prdownloads.sourceforge.net/airsnort/airsnort-0.2.7e.tar.gz)

$ tar -zxvf airsnort-0.2.7e.tar.gz
$ cd airsnort-0.2.7e
$ ./configure
$ make
# make install
$ airsnort &
( http://airsnort.shmoo.com/ for explanations more datailed. )
Enjoy yourself.


41c)VIDEO SURVEILLANCE WITH MOTION AND LINUX
Thanks to:
How use Free Software to realize a system of videosourveillance  of Antonio Mori moore2@inwind.it
Used Hardware:
devices of video acquisition Pinnacle pctv (for other kinds of supported devices on linux see documentation on web-site http://bytesex.org)
Videocamera with infrared with video-out (it's ok every telecamera also a digital camera with video-out, for web-cam usb see documentation on http://bytesex.org)

Connect the telecamera to computer with wire video-out or if it's a web-cam usb connect the wire usb.

Software Used.
Operating System Linux (I'm using the distribution Mandriva), program to get moviments Motion (GPL) (http://motion.sourceforge.net). Verify the presence module (driver) for tv device on your distro from shell (command line) with:

 #modprobe bttv

if you haven't errors the module is correctly installed otherwise, downloading from http://linux.bytesex.org and install it (follow the instructions inside the file install.txt). Download from web-site http://motion.sourceforge.net the program Motion the file .tar.gz Unzip the file with ark or from command line on shell:

# gunzip filedownloaded.tar.gz
# xvf filedownloaded.tar
Enter in directory created from program and always from shell install it with:
/configure && make && make install

ATTENTION:
the library libjpeg is necessary for installation of program.
To launch the program Motion from command line:
motion -n (the program works in way not-daemon on terminal)
motion -s  (for il set-up)
for the help of digital program:
motion -h
The file of configuration motion.conf

-Configuration Base
Go inside directory /usr/local/etc rename the file:
mv motion-dist.conf in motion.conf
Open file motion.conf withe a text editor and modify the value from input=8 to input=2 if you have a telecamera with a device video-acquisition, with web-cam usb leave unchanged the value. This parameter
(input=) determines the channel of incoming video that will be used from motion.
Modify the parameter target_dir and put on required value the path of directory where you want save the images, the file .avi and the snapshot generated from Motion.

-How works Motion:
In this section we will use the browser Firefox (GPL) freely downloadable from website http://www.mozilla.org

We'll launch the browser Firefox and we'll go on:
http://localhost:8080
we'll watch a page containing the controls of program (pause, resume, play) and a file of configuration motion.conf with options (that now we don't touch). Open on browser Firefox another page and go on:
http://localhost:8081 here we can see the images got from our camera, we click on refresh on browser Firefox and we'll see the streaming of images (try to move in front of the camera)

Now the program is working :-))

-Advanced configuration of file motion.conf
Use external commands
Motion has the possibility to launch external programs that can be script of shell or script realized with python, perl or other programming languages.

See how to do:
I realize a little script of shell named “cancella”:
write with a text editor like (vim, kate, emacs) this script:

#! /bin/bash
# this goes into directory where are saved the images
cd /path/where/come/saved/the/images/got/from/motion
# remove all images saved.
rm *.jpg

Save this script in /usr/bin and rename it with "cancella" after transform
the script executable from command line with:
chmod 775 cancella.
Go in file /usr/local/etc/motion.conf and modify the parameter (exec external command when will be saved the images)
on_event_start giving it how value the path where we have saved the file "cancella" hence /usr/bin/cancella
Modify the value of gap from gap=60 to gap=30
Save the file motion.conf in /usr/local/etc
Kill Motion from shell with #killall motion restart Motion typing:
motion -c /usr/local/etc/motion.conf
for some second you move in front of the camera so it can be detect a movement, stop moving in front of it at least for 30", later move again in front of camera.

-What we have done?
Describe of options gap and on_event_start of file motion.conf
gap The value in this option represents the seconds that passes from the end of an event (movement obtained from camera) to next.
on_event_start the value of this parameter shows the path where is the script (made from us) executable (shell, python, perl, etc...) that will be activated at start of every surveying of movement, considering that should pass at least 30 seconds (parameter gap) from the end of a surveying to start of next on_start_event.

Naturally in file motion.conf are present, how you have seen in many other operation, I invite you hence, if you need of personalized configurations, to the good guide on web-site http://motion.sourceforge.net.

Enjoy yourself !!


42c)ANTIVIRUS GNU
We will use Clam Antivirus with license gpl, download the last version here:
http://download.sourceforge.net/clamav/
Like user root unzip file clamav-X.tar.gz like that:
tar zxvf clamav-X.tar.gz
cd clamav-X
It will be created the user clamav (however, without give a password) and we will install the antivirus:
groupadd clamav
useradd -g clamav -s /bin/false -c "Clam Antivirus" clamav
./configure
make && make install
We will create file of log clam-update.log:
touch /var/log/clam-update.log
chmod 600 /var/log/clam-update.log
chown clamav /var/log/clam-update.log
/etc/clamd/clamav.conf (This is the file of configuration).
Enter and comment the written:
# Comment or remove the line below.
#Example
Configure this file and also the file /etc/clamd.conf
freshclam  (updates the database into specified directory)
freshclam -d -c 6 -l /var/log/clam-update.log (controls if there is a new database 6 times in a day, it's possible put this command in crontab if you want a computerized thing, remembering to not insert the option -d,
because otherwise it would start like a daemon)
clamscan -r / (control all subdirectories)

To control a directory, write:
clamscan --bell -i --remove --stdout -r /directory/
--bell utters an audio signal in case a virus is founded
-i shows only infected files
--remove delete infected files (Attention to use this program)
--stdout shows controlled files
-r controls the sub_directories

In this directory you find 3 files with db virus:
/usr/local/share/clamav
       or
/var/lib/clamav/
You can download the updates from here:
http://database.clamav.net/database/
You can update the antivirus like user clamav like that:
-Write:   freshclam
Eventually ....... Modify the file /etc/freshclam.conf and insert like second string:
DatabaseMirror db.it.clamav.net

Graphic interface for clamav antivirus (klamav) under Kde:
Go on web-site:
http://klamav.sourceforge.net/
Unzip klamav-X.tar.bz2 like that:
bunzip2 klamav-X.tar.bz2
tar xvf klamav-X.tar
cd klamav-X
./configure
make
make install
Now you have to launch klamav from Kde, go on update and download the updates of database antivirus.
From Konqueror surfing between the directories of s.o. and clicking on it with the button dx of mouse appears the written “Scan with clamav”, hence it's possible to control a directory or files before to open it. It's possible to launch antivirus and put it in background, you will see the icon of clamav antivirus below on the right on bar.

Have this antivirus gnu on Windows, click here:
http://www.clamwin.net/



43c)INSTALL INTERNET EXPLORER ON UBUNTU
Thanks for this procedure to Gianni Giusti member of Lug Acros. I had install IE6 on Ubuntu to test the websites also with this browser. The procedure has been very easy and everybody can do it.
Following 16 steps to exec: (we'll install IE6, MediaPlayer, Outlook Express 6)

1) Go on shell and write "sudo su", digit your password and now you are like root user.
2) digit cd /etc/apt
3) digit gedit source.list or launch you preferred editor
4) at the end of this file add:
## Wine
deb http://wine.sourceforge.net/apt/ binary/
deb-src http://wine.sourceforge.net/apt/ source/
5) Update the list of packets using the command apt-get, from synaptic or with another program
6) Now install the following packets:
wine
libwine
winetools
using the command apt-get apt-get, from synaptic or with another program
7) close the terminal of root (or write "su -username")
Open again a terminal (like root user) and digit winetools
9) If appears a weird message, proceed straight.
10) Select base setup
11) Select Create a fake... and after OK. If appears removing existing... means that you already have an installation, configured, give OK to delete it.
Give Ok on questions that are proposed (there is an automatic detection)
12) Done this, you proceed with all the points on list, selecting them one
by one and giving ok on everyone (True Type Font, DCom98, Microsoft Foundation., Internet Explorer 6 Eng)
13) Done all that, return on main menu
14) Go on Install windows system software and install "windows installer" (at moment it doesn't need, but could need it in a future)
15) Return on main menu and install the font:
 "installMicrosoft true type font" (install them all after return to main menu)
16) The installation is finished, but if you have also Office and you want install it, it's the moment to proceed (install tested software).
From there you can also install the player flash.
Ok, now we have installed our software ... How do I launch them ??
winetools has thought also about this Wink ... under the directory
/home/YOURUSERNAME/bin/ there are files to launch. example:
in my case, if I write from terminal:
/home/gianni/bin/ie6 I exec Internet Explorer 6 (obviously I made a link on menu, it's easy)

Problems had.
I haven't any specific problem, the unique three little have been:
1) When I've installed the flash player IE stopped itself, but restarted it, it is returned to work greatly with the plug-in perfectly installed.
2) The media player doesn't work the audio (maybe it's a problem of alsa?)
3) In a first trial the fonts didn't come downloaded (problem of link)

Now it's working perfectly, IE doesn't crash, it stable and fast (the loading is much fast, considering that has to charge all libraries, thing that under Windows happens when Windows starts).


44c)WORDPRESS FOR DUMMIES
Thanks to the author: $pooky Hunter's Nemus "http://linux.med.unifi.it/spooky/wordpress/"
Requirements:
A working computer with installed an Operating System such as Unix and a direct connection to Internet.
If you use a router adsl you must be sure to have the forward on the door 80 toward the intern IP of pc that will guest the blog.

Installation of software of support for WordPress
(Will be considered the Operating Systems Arch Linux and FreeBSD)


On Arch Linux
# pacman -Syu
# pacman -S apache php mysql
Insert the daemons in row /etc/rc.conf so they will be launched at start.
For the moment they can be launched by hand:
# cd /etc/rc.d/
# ./httpd start
# ./mysqld start

On FreeBSD-6.2
# cd /usr/ports && make update
# cd /www/apache22 && make install
# cd /usr/ports/lang/php5 && make install
# cd /usr/ports/lang/php5-extensions
# make config -> you will have to specify to compile the support for MYSQL and MYSQLI
# make install
# cd /usr/ports/databases/mysql-server-50 && make install
# cd /usr/ports/databases/mysql-client-50 && make install
There si some bug on script of installation of mysql, so we will have to go on /var/db/ and write
# chown mysql mysql
# chmod u+w+r+x mysql
# chmod u+w+r+x mysql/*
# chmod u+w+r+x mysql/mysql/*
Add at file /etc/rc.conf the following rows:
apache22_enable=”YES”
mysql_enable=”YES”
Now we will try to start manually Apache and Mysql through the script located in /usr/local/etc/rc.d/
If there are not other problems we can proceed at next step.

Creation of database
# mysql_install_db
# mysqladmin -u root password your_password
Now that the password for the root user has been chocen we can access at database
# mysql -u root -p
Enter password: “insert your password”
Now we create a database named wordpress.
mysql> CREATE DATABASE wordpress;
mysql> quit;
And we have finished.

Installation of wordpress
Download the last version from this address http://wordpress.org/latest.tar.gz
Copy it in the directory where Apache needs the pages of your user example: /home/utente/public_html/
# tar xzvdf latest.tar.gz
Open with a text-editor the file wp-config-sample.php

Search the rows:

 * define(’DB_NAME’, ‘wordpress’); // The name of the database substitute wordpress with name of your database (leave the apex)
In my case I've chosen wordpress like name of my database.
* define(’DB_USER’, ‘username’); // Your MySQL username and substitute the word username with user-name of your database (leave apex)
In my case 'root'
* define(’DB_PASSWORD’, ‘password’); // …and password substitute the password with that password with which of your database (leave apex)

Open a browser and go to an address like this:
http://vostro_dominio.it/[…]/wp-admin/install.php
Follow the instructions, write username and password and the game is done.

Now you can become crazy searching different plugins, trying all themes that you find in net 


45c)KOMPOZER
Kompozer is a program to modify .html pages under Archlinux (and other operating systems linux and not).
By browser go to web site Archlinux, enter in AUR pages, search kompozer and download tarball
kompozer.tar.gz, unzip with command:
tar zxvf kompozer.tar.gz
Enter in new directory kompozer (cd kompozer).
Give command:
makepkg PKGBUILD or makepkg --asroot PKGBUILD (if given like root user)
The command will download and will create the packet to install like that:
pacman -U kompozer-0.8b3-13-x86_64.pkg.tar.xz


46c)LINUX MALWARE DETECT
Linux Malware Detect is a program to detect, clean and or remove files infected by malware.
By browser go to web site Archlinux, enter in AUR pages, search maldet and download tarball maldet.tar.gz, unzip with command:
tar zxvf maldet.tar.gz
Enter in new directory maldet (cd maldet).
Give command:
makepkg PKGBUILD or makepkg --asroot PKGBUILD (if given like root user)
The command will download and will create the packet to install like that:
pacman -U maldet-1.4.2-1-x86_64.pkg.tar.xz
maldet -u  (To update maldet signature set)
maldet -a -n /directory (control all directory and files and clean infected files)


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


+++++++++++++++++++++++KERNEL+++++++++++++++++++++++++++++

1d)APPLY A PATCH ON KERNEL
If you want apply a patch on kernel, copy the patch in /usr/src
enter later in /usr/src/linux-kernel/ and write:
bzip2 -dc ../nomefile.bz2 | patch -p1
or
gzip -dc ../nomefile.gz | patch -p0


2d)COMPILE THE KERNEL IN DEBIAN
This is valid for kernel 2.2 and kernel 2.4
Take the kernel and move it in /usr/src
Unzip it with:
tar zxvf kernel.tar.gz
Enter and write:
make mrproper
make menuconfig (do the modify you prefer and save it)
make-kpkg kernel_image (write this row)
Exit from /usr/src/linux with (cd ..) and you'll fine a file of name kernel-image-version.deb  now you have to write:
dpkg -i kernel-image-version.deb
Follow the istructions to create a floppy of rescue modified and to reinstall the lilo (that do all alone).
Clearly if you have more distro and you want to be fussy in
/etc/lilo.conf
you will have to write instead of vmlinuz the name of file that you find in /boot/vmlinuzmodified (you can see the hour with ls -al).
Save file lilo.conf and write again lilo.


3d)RECOMPILE THE KERNEL TO BURN WITH IDE DISKS
Valid for kernel 2.2 and kernel 2.4
Go on /usr/src/linux
make mrproper
make xconfig o make menuconfig

- Kernel 2.2 and Kernel 2.4
Enter in Block Device, disable IDE/ATAPI cdrom support and able SCSI Emulation
Enter in SCSI Support and able Scsi support, Scsi cdrom support and disable the voice Lun
Enter in Sound and able the voice Sound support save and write:

-Kernel 2.6
Enter in Device Drivers, Ata/Atapi/MFM/RLL support and able:
Include IDE/ATA-2 DISK support
SCSI emulation support
generic default IDE chipset support
disable:
Include IDE/ATAPI CDROM support
Enter in SCSI Device support and able:
SCSI disk support
SCSI CDROM support
SCSI generic support
Enter in Sound and able Sound card Support
save and write:

make dep && make clean && make bzImage && make modules && make modules_install
cp -f System.map /boot
cd arch/i386/boot
cp -f bzImage /boot
Modify the file of configuration lilo.conf for lilo or menu.lst for
grub.
Reboot computer and one time returned in linux write:
cdrecord -scanbus
and see if 2 devices (cdrom and burner) are acknowledged.
Now with kernel 2.6 the reader cd-dvd remains 0,0,0 while the burner has became:
1,0,0
and not more like before with kernel 2.4:
0,1,0


4d)HOW RECOMPILE THE KERNEL
We are going to recompile the kernel 2.4.23 considering that my
computer is
composed from:
processor Duron 900, net-device ne2000 and 3com 3c905, usb scanner,
parallel printer, webcam usb, audio card Sound Blaster 128 PCI, device tv pci,
burner and reader dvd ide that it will be acknowledged how scsi. I've recompiled
the kernel without (almost) use modules, even though many of you are not
agree with me.
Unzip the kernel linux-2.4.23.tar.gz and enter into directory
/usr/src/linux-2.4.23/ and write command:
make mrproper
make manuconfig
-Code maturity.... with asterisk
-Loadable module .... with asterisk
-Processor Type..... put an asterisk on processor Duron 900 and don't  consider other
-General Setup.... put an asterisk Power Management Support, Advanced Power  and User Real Mode.
-Parallel Port Support.... put asterisk on first 3 options
-Plug and Play.... put asterisk on 2 options
-Block Device.... put asterisk only the floppy
-Networking Option.... put asterisk the first option, the second empty and put asterisk from third option Netlink until IpBroadcast, if you can't put asterisk insert the M such as module.
Select IpNetfilter (press Enter) that is iptables and put in all the M
(except one where you hat to put the y).
-ATA/IDE.... put asterisk on first option, go in IDE/ATA, deselect “Include IDE/ATAPI CDROM support” and put asterisk “SCSI emulation support ISA-PNP EIDE support”.
-SCSI support.... put asterisk SCSI CD-ROM support, SCSI generic
support, deselecting Probe all LUNs.
-Network Device Support.... Put M in front of Dummy, on Ethernet (10 or 100Mbit) put asterisk on Ethernet (10 or 100Mbit), 3COM cards, a M in front of 3c590/3c900, put asterisk EISA, VLB, PCI and PCI NE2000 and clones. An M in front of a PLIP (parallel port) until CSLIP (where is possible, put  an asterisk).
-Character devices.... put asterisk on Support for console, from Parallel printer to Support for. On I2C put asterisk on first 2 options.
-Multimedia devices put asterisk on "Video For Linux" and inside "Video For Linux" put asterisk on first, second, third, fifth, sixth, seventh and eighth written.
-File System.... Reiserfs support, Ext3, from DOS FAT to VFAT  (Windows-98),
from ISO 9660 CDROM to Transparent, /proc file, /dev/pts, Second extended, UDF file system and UDF write.
-Console driver.... asteriscare solo VGA text console.
-Sound.... oyt asterisk BT878 audio dma, Creative Ensoniq AudioPCI 97 (ES1371), TV card (bt848) mixer support.
-USB support.... put asterisk Support for, Preliminary USB, EHCI HCD, UHCI Alternate, OHCI (Compaq, USB Scanner support, USB OV511 Camera  support.)
Go on Exit, and save on Yes. Recompile the kernel with:
make dep && make clean && make bzImage && make modules && make
modules_install
Copy the file System.map into directory /boot, go in
/usr/src/linux/arch/i386/boot/ and write:
rdev -R bzImage l /dev/hda5 (partition where is installed Linux)
copy bzImage of this directory into directory /boot
First create a floppy/cd/usb stick of rescue.
Reboot the computer.


5d)HOW RECOMPILE KERNEL 2.6
This has been done on Slackware 9.1 and Archlinux 0.7.2
Usually in last distro the program module-init-tools-0.9.14-i486-2.tgz is already installed by default, in case use pacman in Archlinux or other program of updating for many distro (how installpkg, yast, apt-get, etc...),
in case download the file module-init-tools-0.9.14-i486-2.tgz and install it.
If you want surf with modem adsl and ethernet card is fondamentale (at
least in my case) put y or * in front of to own net-card and m or * in front of PPP.
make menuconfig
One time configured you kernel, save and write:
make all && make modules_install && generate-modprobe.conf
If you have problems or errors with the line above written, use also that written below:
make clean && make bzImage && make modules && make modules_install
cp -f System.map /boot
cd arch/i386/boot
cp -f bzImage /boot
or if you use lilo give easily make install (make all itself).
reboot the computer.
-On reboot if you give:
cdrecord -scanbus
you will see a different thing:
Ora with the kernel 2.6 the cd-dvd remains 0,0,0 while the burner has become:
1,0,0
and not more like before with the kernel 2.4.2:
0,1,0

-If from xterm or from console, write:
ls -al /dev/cdrom
You'll see a thing like:
/dev/cdrom -> sr0  (in Slackware)
/dev/cd/cdrom-sr0  (in ArchLinux)
The cdrom hence becomes /dev/sr0 and the burner /dev/sr1
To mount a cd dates it will need write:
mount /mnt/cdrom
            or
mount -t iso9660 /dev/sr0 /mnt/cdrom
The burner with a cd dates inserted will mount itself:
mount -t iso9660 /dev/sr1 /mnt/cdrom2
Obviously on Linux you can't mount an audio cd.

-On contrary of version 2.2 and 2.4 in kernel 2.6 the first audio card of net is the eth1 and not the eth 0, while the second net card it the eth0 and not the eth1. Who has configured in kernel the cards like module you need to work on modprobe eth0 and after with insmod eth1. Who has configured, like in my case, the cards with y or with * you need to enter in file
/etc/rc.d/rc.inet1.conf (on  slackware 9.1) and configure the file by
hand, you need only to write a thing like this:

# 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 this case I've decided that the card of net eth1 becomes recognized inserting an ip address, while I've not assigned any address on eth0, at reboot of o.s. will become charged only the card of net with ip address.

-Recompile the recent kernels 2.6.1X the scanner usb is has been always acknowledged launching the program xsane, but at start with Slackware I'vehad some problems with first kernel 2.6 and I've resolved like that:

Download the program libusb (at moment vers. 0.1.8) from this website:
http://libusb.sourceforge.net/
and installing it:
tar zxvf libusb-0.1.8.tar.gz
cd libusb-0.1.8
./configure
make
make install

Download the sources of Sane from website, or install it with on of many programs available with the distro (yast, apt-get, pacman) however in case:
http://www.sane-project.org/
ftp://ftp.mostang.com/pub/sane/ and download these programs (at moment those inserted are the last versions):
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
Unzip sane-backends-1.0.13.tar.gz and write:
./configure --enable-libusb && make && make install
Unzip sane-frontends-1.0.11.tar.gz and write:
./configure && make && make install
Unzip xsane-0.92.tar.gz and write:
./configure && make && make install

Now we configure the scanner:
sane-find-scanner
In my case it gives:
found USB scanner (vendor=0x055f, product=0x0006) at libusb:001:004
Edit file /etc/sane.d/dll.conf  and comment all the rows except the first "net" and that referred at label of your scanner (in my case mustek_usb).
Edit file .conf referred at label of your scanner (in my case mustek_usb.conf), comment all the rows and add the following row:
usb libusb:001:004 (this is the result of the command:
sane-find-scanner).
At the end write:
xsane
  or
scanimage -L
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

++++++++++++++++++++++++++++NETWORKING++++++++++++++++++++++++++
1e)MOUNT A MINI-LAN BETWEEN 2 COMPUTERS ONLY WITH TEXT COMMANDS AND NOT
Write the following text inserting the LAN address:
On first computer write:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
On second computer write:
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up
(Remember that the netmask is equal for all)
If you want insert more net addresses on the same netcard you need to write:
ifconfig eth0:1 192.168.1.3 netmask 255.255.255.0 up
Now ping one of the computers to see if you can reach the other net address:
ping 192.168.1.x
In text mode or inside xterm, to see the addresses of net, write:
ifconfig
To set the net on RedHat write (netcfg), while on Suse write (yast) and search the voice net. For the other distributions control the support on books or on the manuals of distributions.


2e)CONNECTING INTERNET BY SCRIPT WITHOUT KPPP (two procedures)
A) First procedure
# Doesn't work with tin.it
How I can connect on internet without using kppp and similar ?? I've
listened that it's possible using script, but what I've to do ??
In Linux we can use 2 programs:
"chat" that send commands to modem "pppd", the daemon that establish the dialog second the ppp protocol with the server of ISP.

The files where we will work are essentially 5:
/etc/resolv.conf
/etc/ppp/options
/etc/ppp/pap-secrets
start (create this file in / or where you want)
stop (create this file in / or where you want)
Well, we start:

-/etc/resolv.conf
Enter with vim or another editor in /etc/resolv.conf and write:
search nome_provider (es. search libero.it)
nameserver primary DNS     (ex. nameserver 193.70.192.25)
nameserver secondary DNS (ex. nameserver 193.70.152.25)

-/etc/ppp/options
Enter with vim or another editor in /etc/ppp/options and write:
/dev/ttyS1 (if com2, in instead is a com3 use ttyS2 etc...)
115200
debug
lock
crtscts
defaultroute
mtu 552
mru 552

-/etc/ppp/pap-secrets
Enter with vim or another editor in /etc/ppp/pap-secrets and write:
usernameconnection * password *

-start
Create and enter with vim or another editor start and write:
#!/bin/bash
/usr/sbin/pppd connect '/usr/sbin/chat -v ""
ATDT_telephone_number_to_compose CONNECT "" ' user your_username
-d -detach &
The last 3 rows above, starting from /usr must to be united in a only row.
Close the file and give it the permissions with (chmod 777 start)

-stop
Create and enter with vim or another editor start and write:
#!/bin/sh
DEVICE=ppp0
kill cat /var/run/$DEVICE.pid
echo "$DEVICE TERMINATO"
Close the file and give it the permissions with (chmod 777 stop)

To connect, write:
./start
To disconnect write:
./stop

B)Second procedure
Create a file ex. start and write all in a row inside it (configure it
second your requirements):
pppd /dev/modem 115200 connect 'chat -f scriptfile' crtscts
defaultroute lock login user nameuser deflate 15,15 modem &
Close the file and open a new one called scriptfile:
ABORT BUSY
ABORT "NO CARRIER"
ABORT "NO DIAL TONE"
""
ATZ
OK
ATD123456789
CONNECT
""
"name:"
"usernametoconnect"
"word:"
"writethepassword"
Now that you have saved the file, write chmod 777 to both files and
happy
surfing with ./start
Both files have to be in the same directory, otherwise you say to the
first
file where it can find the second.


3e)CONNECT TO INTERNET WITH WVDIAL
Install wvdial (you can find it in all distributions with extension .deb, .rpm and .tar.gz). Write like root user:
wvdialconf /etc/wvdial.conf
This will knowledge the modem and the other parameters, it will create later the file /etc/wvdial.conf
Enter with vim in this file and sobstitute the username, the password and the number's telephone with those real:
Configure the file /etc/resolv.conf with the dates of your provider:
search name_provider (ex. search libero.it)
nameserver primary DNS      (es. nameserver 193.70.192.25)
nameserver secondary DNS  (es. nameserver 193.70.152.25)
Now you write: wvdial &


4e)CONNECT TO INTERNET WITH KPPP
It's very easy, launch kppp and set the parameters such as you are in Windows. You'll have to acknowledge the modem, remember that the com1corresponds to ttyS0, com2 to ttyS1, etc ... you insert, as well, the row to initialization that usually is (ATX3), at this point connect yourself. Is you use a modem (inside your computer) you will have to set the jump (for ex. on my ex modem Trust 33.6). That's all, enjoy yourself and happy connection on Internet.


5e)INTERNET
- Wget
wget -c -nH -E -k -p -r -l 0
-c continues the download interrupted
-nH doesn't create the directory with the name of the website
-nd --no-directories  to put all in a alone directory
-E  rename in .html the pages (useful for example for webpages .php)
-r recursive
-l depth --level=depth  how many levels of link to follow
-k converts the link
-p download all that you need to show correctly the page
-H  ables the spanning to other host when it payoffs a recursive download

Now some examples of wget:
wget -r -c l http://www.websitethatyouwant.com/ (download and resume websites).
wget -r -c l ftp://ftp.websitethatyouwant.com/      (download and resume websites).

- lynx can be used how browser but doesn't use images
- netstat -vat shows the link and the opened ports during the connection


6e)TELNET AND FTP
- Telnet
We consider 2 computer:
pc1 with ip address 192.168.0.1
pc2 with ip address 192.168.0.2
telnet 192.168.0.2 and insert username and the password.
If you have inserted the username and the password correctly, you have logged on second computer.

- Ftp
To move files from 1 computer to 2 computer, write:
ftp 192.168.0.2 and insert username and the password:
If you have inserted the username and the password correctly, you have logged at second computer.
mput /home/pc2/*.doc  To move files with extension .doc from 1 computer to 2 computer
mget /home/pc2/*.doc  To get files with extension .doc from 2 computer to 1 computer
Try also the commands put and get for a single file.
Use the command "cd" to move yourself inside directory (cd .., cd nome-directory)
Use the command "lcd" (local directory) to know in which directory you find in, from computer from which you are operating.


7e)SHARE INTERNET CONNECTION (LINUX-LINUX-CLIENT)
I know that works with Redhat, Debian, Mandriva and Suse.
Server linux 192.168.1.1 server
client linux 192.168.1.2 linux
client windows 192.168.1.3 windows

A
On kernel of server linux 192.168.1.1 able the following options:
Code maturity level options: Prompt for development
Lodable module support: Enable loadable module support, Kernel daemon support (non h indispensabile)
Networking options: Network firewalls, tcp/ip networking, ip forwarding/gatewaying, ip firewalling, ip masquerading, ipautofw masquerading, icmpmasquerading, always defragment. Network device support:
Dummy net driver support
Ethernet 10 or 100 Mbit:  select own net-card.

On kernel of client Linux 192.168.1.2 able the following options:
Code maturity level options: Prompt for development
Lodable module support: Enable loadable module support, Kernel daemon support (it's not indispensable)
Networking options: tcp/ip networking
Network device support: Dummy net driver support
Ethernet 10 or 100 Mbit: select own net-card.

B
Enter in /etc/hosts and write on server Linux:
127.0.0.1 localhost
192.168.1.1 server.local.net server
Enter on /etc/hosts and write on client Linux:
127.0.0.1 localhost
192.168.1.2 linux.local.net linux
Enter in /etc/hostname of server and write::
#
server.local.net
#
linux.local.net

On server linux write:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.0
On client linux write:
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.0

On server Linux write:
route add 192.168.1.0 dev eth0
On client linux write:
route add 192.168.1.0 dev eth0
route add default gw 192.168.1.1

On Windows put the the address of net 192.168.1.3, the netmask
255.255.255.0, the dns got from provider and the
 gateway 192.168.1.1
(All that on Network Settings).

On server Linux write (if it's not good ipfwadm, write ipfwadm-wrapper):

ipfwadm-wrapper -F -p deny
echo 1> /proc/sys/net/ipv4/ipforward (write it if you have error on the row
above).
                        or
echo 1> /proc/sys/net/ipv4/ip_forward (con kernel 2.6)
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

On client Linux write:
Enter in /etc/resolv.conf
search domain.isp (es. search libero.it)
nameserver 193.70.192.25 (10 dns)
nameserver 193.70.152.25 (20 dns)

Now you should surf from clients Windows and from Linux.


8e)SHARE CONNECTION TO INTERNET (EASY WAY)
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
                  or
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
On pc client:
On computer client we active the default gateway:
route add default gw 192.168.1.1
At the end in file /etc/resolv.conf we'll write:
search name_domain_of_provider
nameserver dns_primary_of_provider
nameserver dns_secondary_of_provider
Happy surfing.


9e)CONNECT 2 COMPUTERS BY PARALLEL WIRE ON LPT1 (PLIP)
Get a wire for printers to connect 2 computers with Linux. Configure the kernel with the options of networking, tcpip and plip.
Compile the kernel and reboot computer (check at start the appears a line with the written plip). If you don't try to see it, write:
dmesg
and check that appear plip0 or plip1. Go in file /etc/hosts of first and second computer and write:
192.168.1.1 computer1
192.168.1.2 computer2
On 1 computer write:
ifconfig plip0 192.168.1.1 pointopoint 192.168.1.2 up
route add -host 192.168.1.2 dev plip0
On computer 2 write:
ifconfig plip0 192.168.1.2 pointopoint 192.168.1.1 up
route add -host 192.168.1.1 dev plip0
Now you have only to ping from computer 1 the computer 2.


10e)START A X SESSION FROM REMOTE (from Linux to Linux)
If we want connect in remote to a Linux computer (192.168.1.2) from a Linux computer (192.168.1.1), you have to write:
X :1.0 -query 192.168.1.2
From computer Linux on which you connect is active the graphic session 1, if it was the 2 I should write:
X :2.0 -query 192.168.1.2


11e)LAUNCH PROGRAMS FROM TELNET TO GRAPHIC SIDE
Enter in telnet in a computer with the graphic already started, maybe you are the same use with which you are entered in X. One time inserted login and password, to start xterm for example, write:
xterm -display :0

or also with this method:
export DISPLAY=:0
xterm


12e)LAUNCH APPLICATIONS FROM TELNET TO A GRAPHIC X &
On server start the graphic with:
X &
Enter in telnet from client on server and write:
export DISPLAY=:0
xterm &


13e)LAUNCH APPLICATIONS ON CLIENT BUT THAT WORKS ON SERVER
client=192.168.1.1 (es. computer where you found yourself)
server=192.168.1.2

telnet 192.168.1.2
export DISPLAY=192.168.1.1:0

Open from client a window xterm and write:
xhost +192.168.1.2
Now from window of telnet always opened, write for example:
firefox (wait 5-10 seconds and firefox will open itself, but the program will work on server).


14e)IPCHAINS AND FIREWALL
Little firewall with ipchains to use when you are connected on Internet, if exists a local network, adapt the ip address below:
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


15e)ADSL WITH MODEM ETHERNET ON LINUX
First, some considerations:
1)I have 3 telephones at home, the Telecom gave me 2 filters adsl, the thing to do is that to pull out a telephone from outlet on which you cant put a filter, or buy a new filter. Why I'm telling you this ?? Because I made 35 calls at 187 and nobody during these told me anything about this, just, I've discovered it, I've seen the adsl fix signal on modem. If it works, wait almost 1 minute from turn-on the the modem, it will become fix, if it light again you'll have to control the filters and relatives telephone wires, or otherwise call 187 to see if they have configured it like usb. After this, I'll say how compile a kernel starting from zero, if you use a kernel already recompiled of distro used, you should already surf with adsl. Who want to be a jeek, you will have to do this. Install the packet rp-pppoe present in your distro or download it from Internet. Download a kernel (I've done a try on 2.4.20), download it and write:
make mrproper
make menuconfig
The fundamental thing is create a modular kernel "M" (unfortunately without these, I am not successful to make to go the adsl, if someone made it, contact me). To understand us, use the "M" where possible, otherwise use the Y.
Under Loadable Modulo insert * or y in case of (make xmenuconfig), under Networking options put a M on Packet socket, under Network device support put a M on PPP (point-to-point protocol) and to all the others PPP put a M (otherwise a Y where is possible). On PPP over Ethernet put a M. In the other side of kernel you should select what you are interested in to acknowledge itself from linux (everybody has a different computer with different hardware). At the end exit, save and write:
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 (depends where you have the Linux partitions)
cp -f bzImage /boot
Configure /etc/lilo.conf because at start is considered bzImage instead that vmlinuz. Write:
lilo
Reboot compute and enjoy surfing.


16e)MAPPING OF ACCESS POINTS
Thanks to startx.
Prepare your equipping:

Gps satellite receiver bluetooth
Usb receiver bluetooth
Wireless card (optional external antenna http://www.trevormarshall.com )
Notebook with your preferred Linux distribution

Install correct software:

- bluez-utils e bluez-libs bluez-hcidump http://bluez.sourceforge.net/
gpsd http://freshmeat.net/projects/gpsd/
gpsdrive http://www.gpsdrive.cc/gpsdrive-2.10pre2.tar.gz
mysql e libmysqlclient.so.10 ( not the 12 or the 12 > but the 10)
kismet http://www.kismetwireless.net/
- ipw2100 http://ipw2100.sourceforge.net/firmware.php?fid=4 ?
http://prdownloads.sourceforge.net/ipw2100/ipw2100-1.2.1.tgz?download

*If you have an Intel PRO wireless of this type, otherwise driver and firmware of your card (ahead you will find the configurations of kismet.conf for using with other cards of test)

Dependences Kismet: http://www.kismetwireless.net/documentation.shtml

Imagemagick (5.4.7+): http://www.imagemagick.org/
Expat (1.95+): http://expat.sourceforge.net/
GMP: http://www.swox.com/gmp/
Ethereal (any): http://www.ethereal.com

Dependence Gpsdrive: http://www.gpsdrive.cc/readme.shtml

GTK-+2.x (better >=2.2.x)
pango
atk
pcre
xdevel (X11 development)
gettext
libcrypt
glibc

compiler gcc >=3.x ( if compiler si not known, use EXPORT CC=gcc-4.0 )
make

For vocal support both kismet and gpsdriver are installed festival or flite or both.
It's better doesn't use Festival as service, but launch it by hand if we want give voice to gpsdrive (starting it with option festival -e) or at kismet (not starting it).
After different tries with voice /sound/mut these are the settings of kismet.conf that I'm using:

Able the sound, deleting the wav for the junk traffic that is boring,
disabling the "speech festival", this because also if we modify the string of speech, the output results slow, saw that a lot of ap that coming detected in a auto session.

sound=true
# Path to sound player
soundplay=/usr/bin/play
# Optional parameters to pass to the player
soundopts=--volume=.3
# New network found
sound_new=/usr/local/share/kismet/wav/new_network.wav
# Wepped new network
sound_new_wep=${prefix}/com/kismet/wav/new_wep_network.wav
# Network traffic sound
sound_traffic=/usr/local/share/kismet/wav/traffic.wav
# Network junk traffic found
#sound_junktraffic=/usr/local/share/kismet/wav/junk_traffic.wav
# GPS lock aquired sound
# sound_gpslock=/usr/local/share/kismet/wav/foo.wav
# GPS lock lost sound
# sound_gpslost=/usr/local/share/kismet/wav/bar.wav
# Alert sound
sound_alert=/usr/local/share/kismet/wav/alert.wav

# Does the server have speech? (Again, not to be confused with the GUI's
speech)
speech=false
# Server's path to Festival
festival=/usr/bin/festival
# Are we using festival lite? If so, set the above "festival" path to also
# point to the "flite" binary
flite=false
# How do we speak? Valid options:
# speech Normal speech
# nato NATO spellings (alpha, bravo, charlie)
# spell Spell the letters out (aye, bee, sea)
speech_type=speech
speech_encrypted=Detected %s, Fuck is encrypted.
speech_unencrypted=Detected %s, Dork is open.

Other wireless care used for the test: http://b.domaindlx.com/startx/set.jpg

Kismet source config:

source=ipw2100,eth1,ipw2100 #Intel PRO wireless
#source=rt8180,wlan0,RTL #Netgear WG111.v2
#source=orinoco,eth2,orinoco #LucenT
#source=atmel_usb,wlan0,wlan0 # atmel chipset
#source=rt2500,ra0,rt2500 # DWL-G630
#source=rt2500,rausb0,rt2500 # Asus wl-167g

Configure mysql adding the database geoinfo of gpsdrive:

mysqld_safe &
mysql_secure_installation
cd /usr/local/share/gpsdrive/
mysql -u root -p <create.sql

The system is ready, from now you will need only ...

Detect the gps bluetooth :

hcitool scan
Scanning ...
xx:xx:xx:xx:xx:xx Rikaline

Connect the gps bluetooth:

rfcomm bind /dev/rfcomm0 xx:xx:xx:xx:xx:xx

Start the daemon gpsd :

gpsd -p /dev/rfcomm0

Start kismet controlling having the signal from gps, this because kismet doesn't write in database mysql the name of access-point founded until it has not a satellite position valid.

Start gpsdrive. In order to make that gpsdrive update the waypoints in real time, you need to set obviously further the port of gps used, the option "use mysql" and thanks to "libmysqlclient 10" will appear the
icon kismet below on left of the map.

For the maps ..
gpsfetchmap.pl -w waypoint -a 100
gpsfetchmap.pl -w waypoint -a 5 --scale 3000

where waypoint is the name of waypoint that you want to map founded in gpsdrive/way.txt.
If you want use the name of an access point, you copy way_kismet.txt in way.txt.
Download with gpsfetchmap the violet maps the policies of Expedia.

Here an example of an easy script bash.

vim Kismet

#!/bin/sh
#script "Kismet": Attach, Bind , Start script
PATH=/sbin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:$PATH
hcitool scan
sleep 5
mysqld_safe &
sleep 1
rfcomm bind /dev/rfcomm0 xx:xx:xx:xx:xx:xx #replace with your
gpsd -p /dev/rfcomm0
#festival -e #if you want use the speech in gpsdrive
kismet
# end-of-script

chmod +x Kismet
/kismet

If the graphic of gpsdrive, or the maps downloaded not satisfied us exist a tool that  permit us to import the database mysql of geoinfo in google earth. You can find it here:
http://svn.pythonfr.org/public/pythonfr/utils/misc/gpsdriveToGoogleEarth.py

#python gpsdriveToGoogleEarth.py
and you'll have your file ap.kml that will be sufficient, one time started google earth, open it " file > open " to obtain a screen type this..
http://b.domaindlx.com/startx/google-ap's.jpg


17e)LINUX DEBIAN FIRST STEPS WITH THE NET
Useful command:
find / -name hosts.allow - print # it searchs from root hosts.allow and prints the path

After the installation, to charge manually a module not detected.
Ex. the net card ethernet 3c509b
# modprobe 3c509

Assign an ip address at cards:
# ifconfig eth0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255

Make actives at every boot the configurations.
Inside file /etc/modules insert the row with the name of module [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

Inside the file /etc/network/interfaces insert the row 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 # The first net card 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

For a remote connection by TELNET
Installation of daemon telnet in.telnetd
has to be installed the server "telnetd" contained in telnetd-ssl
to install with 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...

The file that start the daemon telnet is in.telnetd, its name must be specified with the path inside the file /etc/inetd.conf.
(If I don't know where is founded:
debian:/etc# find / -name in.telnetd -print
/usr/sbin/in.telnetd)

contained of inetd.conf
telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd

Is needed after say which HOSTS have right at connection:

Contained of hosts.allow
#-- leafnode begin
leafnode: 127.0.0.1
ALL: LOCAL
linuxbox: 192.168.0.1
atlon: 192.168.0.16
#-- leafnode end

.and which excluded the previous that haven't:
Contained of hosts.deny
ALL: PARANOID
#-- leafnode begin
leafnode: ALL
#-- leafnode end

INETD has to be restarted.

To access at remote system like ROOT it need to modify the file securetty:
# Securetty di DEBIAN Woody (or 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


18e)SHARE PRINTER ON LINUX SUCH AS PRINTSERVER SAMBA CUPS
-We configure Cups.
Install the program cups, the last version on Slackware is cups-1.1.20-i486-1jim.tgz
Install it like that:
installpkg cups-1.1.20-i486-1jim.tgz
and later you need to start it from menu of pkgtool --> Setup -->services
(press the bar) and after select always with the bar rc.cups.
Edit the file /etc/cups/cupsd.conf and at the end of file we should find a voice equal at this:
#The default value is "IfRequested".
<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1

we are going to add:
Allow From 192.168.0.* #that is the ip address of our net
Allow From localhost #maybe it forgets who is localhost

now we go more below and we find:
#Restrict access to local domain
Order Deny,Allow
Deny From All
Allow From 127.0.0.1

We are going to add:
Allow From 192.168.0.* #that is the ip address our net.
Allow From localhost #maybe it forgets who is localhost

Well, now from our client we can configure the printer that we have connected at Server, we point at it with our browser http://ipaddressofserver:631 , if you don't find our printer go on
http://www.linux-foundation.org/en/OpenPrinting and search the driver correct, make a print and the part CUPS is ready.

-Configure Samba.
Here we are, we are in a side more difficult of system SAMBA, sure it's easy but to find at "4" rows here below, I can sure you that I had to sweat a lot because the documentations online are always almost not complete (I hope not intentionally, hehehehe) however I report below my extract of samba.conf with the voices that concern the side of CUPS.
It's fast and easy, for you that read but it has not been for me !
[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

[Printer]
path=/var/spool/cups
printer admin = root, guest, nobody
public = yes
guest ok = yes
printable = yes
IMPORTANT!!! the voice [Printer] must to be the same name that you have given at Printer using the CUPS configuration.
Obviously Samba has to start itself like a daemon, hence write:
pkgtool -->Setup --> services (press the bar) and after always with the bar
select rc.samba.
To start Samba write:
smbd stop
smbd start

-SOME SETTINGS BECAUSE ALL WORKS WELL
Don't stop yourself, it's finished, however after the start or the restart of cups, configure the directory "/var/spool/cups" with permissions only for "root"  therefore the clients wont try to print, hence it will need permit the write and read of directory for all, I've not gone to search the parameter of cups that do that (at least for now) but I've created a little scripts that launches itself after having started cups in this way:
#!/bin/sh
cd /
chmod 777 /var/spool/cups
cd /etc/init.d
/samba restart
cd /
I've positioned this script that launch itself after cups and samba, therefore in base at your distribution: rc.local, rcS.d, etc.
put it somewhere (usually copy it at the end of file). To pull out some doubt, with this configuration it's not necessary have an account of user on server Linux.

-CONFIGURE THE WINDOWS CLIENT
Install a new printer, search on net, install the suitable driver and print, good job.
Thanks to Valter Perregrini lospamnoncepiu@spamstop.com


19e)NFS SHARING TO EXCHANGE FILES IN A LAN WITH LINUX COMPUTERS
Thanks to Yawningman.
You have to be sure that the net cards of computers are working.
"dmesg | grep eth0"
(eth0,1...depends how we have configure the net-card.)
Hence, ping the remote computer with which we share files nfs
We consider for example 2 computers.
192.168.1.1 name host:first
192.168.1.2 name host:second
we consider for example that the directory we want share is on "first", and it is called "shared" directly under / , we have to be sure that the directory have the permissions of read and write toward all:
chmod o+rwx /shared one time done it, edit the file "/etc/exports" adding the following row :
"/share
second(rw,insecure,sync,no_subtree_check,insecure_locks,no_root_squash)
With this row at start I define the local path of directory that I wand share, after I put the name of remote host, instead in row between parenthesis,I accept the connections in write and read, I accept the connections from port 1024 and advanced, I synchronize the operations in write on required, I disable the verify of subdirectories, the access at files without request of lock, at the end I consider remote root like local root ..... naturally you can personalize all of this. With this row is assumed that the remote computer is 'reliable' in terms of security. I save all settings and I reboot the services nfs and portmap if they were already active, in contrary case I start them:
"service nfs start"
"service portmap start"
Both services, in order that the service can works correctly, they have to be able at start of computer, hence I'll sure myself that both start at reboot of computer:
chkconfig --level 35 nfs on
chkconfig --level 35 portmap on
at this point I'll be sure that the commands are gone well with:
chkconfig --list nfs
chkconfig --list portmap
on level 3 (text authentication text) and 5 (graphic authentication) should appear 'on' now we can pass to configure the second computer....
(192.168.1.2 second)
You have to be sure that the services nfs, and portmap are active, in case contrary repeat the operations like before. Create a directory of mount for the sharing, we suppose that the directory is "mydirectory" directly under / , make the 'remote' mount.
mount 192.168.1.1:/shared /mydirectory naturally if I've edit the file /etc/hosts with:
192.168.1.1. first
(and after having done an easy try "pint first" with positive answer, I can substitute the ip with the name of host) at this point, I'll have the shared directory, much useful for a common section, or if I wanted take
on loan, cause hard-disk full, a piece of another computer more capacious .... "the lunch is ready". It misses only a particular, if we want that at start of computer is already all ready without make the mount, well, we'll
edit fstat:
vi /etc/fstab
and I'll add the following string:
192.168.1.1:/shared /mydirectory nfs exec,dev,suid,rw 0 0


20e)DISCOVER THE INTRUDERS
How to see the sockets opened on o.s. with relatives users and processes that have opened them:
netstat -ltupe
netstat -ltupec (in real time)


21e)SAFETY FROM ROOTKITS BACKDOORS AND LOCAL EXPLOITS
We can use two tools, both are ok.
-rkhunter
Download the file rkhunter-1.2.7.tar.gz from this website:
http://www.rootkit.nl/projects/rootkit_hunter.html
Unzip it:
tar zxvf rkhunter-1.2.7.tar.gz
cd rkhunter
Install it:
/installer.sh
cd /usr/local/bin
Give it the permission to be executed:
chmod +x rkhunter
Download the update:
/rkhunter --update
Active the scansion like that:
/rkhunter -c

-chrootkit
From distro Archlinux download and install the tool with pacman:
pacman -S chrootkitargets: chkrootkit-0.45-1
Total Package Size:   0.2 MB
Proceed with upgrade? [Y/n] Y
:: Retrieving packages from extra...
chkrootkit-0.45-1        [################] 100%     220K    86.3K/s
00:00:02
checking package integrity... done.
loading package data... done.
checking for file conflicts... done.
installing chkrootkit... done.
Check out the /opt/chkrootkit directory, run chkrootkit as root this way:
# ./chkrootkit
[root@myhost Temp]# cd /opt/chkrootkit/
/chkrootkit

For the other distro like Debian for example, use apt-get or download from here the source:
http://www.chkrootkit.org/download/


22e)WIRELESS CARD ON A LAPTOP WITH ARCHLINUX
The internal wireless card is a Pro Intel 2200BG, the side under written regards the distro Archlinux both con recompiled kernel  (2.6.15.2) and not recompiled, and hence with kernel that is already present on Archlinux.
Using a recompiled kernel, at moment of configuration of this NOT select any wireless devices:
We will need of 3 files:
Ieee80211
http://ieee80211.sourceforge.net/
Ipw2200
http://ipw2200.sourceforge.net/
firmware v3.0
http://ipw2200.sourceforge.net/firmware.php

- With kernel NOT recompiled and hence using that of default:
Unzip:
ieee80211-1.1.14.tgz
tar zxvf ieee80211-1.1.14.tgz
 remove-old  (insert also the dot, if there are questions, answer with y)
make (if there are questions, answer with y)
make install
If the procedure fails, repeat it.
Unzip:
ipw2200-1.1.3.tgz
tar zxvf ipw2200-1.1.3.tgz
 remove-old  (insert also the dot, if there are questions, answer with y)
make (if there are questions, answer with y)
make install
If the procedure fails, repeat it.
At the end unzip ipw2200-firmware-3.0.tgz and copy 4 files presents in /lib/firmware (if doesn't exist, create the directory from root user):
tar zxvf ipw2200-firmware-3.0.tgz
depmod -a
modprobe ipw2200
iwconfig
At this point you should find the card wireless eth2 or wlan0, or another new device.
Under Archlinux go in /etc/ and edit the file rc.conf
If you have more connections on router wireless assign a dhcp at net-card or assign it an ip address fix.
eth2="dhcp"
INTERFACES=(lo eth2)
ROUTES=(!gateway)  (If the card will have an ip address fix, delete the exclamation point "!")

- With recompiled kernel:
Inside the kernel don't select any device wireless under network and unzip:
ieee80211-1.1.14.tgz
tar zxvf ieee80211-1.1.14.tgz
 remove-old  (insert also the dot, if there are questions, answer with y)
make (if there are questions, answer with y)
make install
If the procedure fails, repeat it.
Unzip:
tar zxvf ipw2200-1.1.3.tgz
 remove-old  (insert also the dot, if there are questions, answer with y)
make (if there are questions, answer with y)
make install
If the procedure fails repeat it.
At the end unzip ipw2200-firmware-3.0.tgz and copy 4 files present in /lib/firmware (if doesn't exist, create the directory from root user):
tar zxvf ipw2200-fw-3.0.tgz
depmod -a
modprobe ipw2200
iwconfig
If the wireless card founded will be eth2 we have almost finished.
Under Archlinux in /etc/rc.conf, choice if the card will have to obtain an ip address automatically in dhcp, or if you must specify it.
In my case /etc/rc.conf is configure like that:
eth2="dhcp"
INTERFACES=(lo eth2)
ROUTES=(!gateway)  (If the card will have an ip address, delete the exclamation point "!")
In the other distributions linux the manage of files for network is different, hence you control well.

First ov all if you don't want that the dns changes in /etc/conf.d/dhcpcd at every reboot, insert the parameter (-R):
DHCPCD_ARGS="-R -t 30 -h $HOSTNAME"

And now we can surf on internet with wireless.
We can see how to do it manually and also with the graphic program KiFiManager.

- Manually:
iwlist eth2 scanning   (It will find for example 2 server wireless, where
only the second is crypted, hence, to connect we will need of the password)
Cell 02 -  Address: 00:14:BF:00:10:04
                    ESSID:"dsaw"
                    Protocol:IEEE 802.11bg
                    Mode:Master
                    Channel:1
                    Encryption key:on
                    Bit Rates:54 Mb/s
                    Extra: Rates (Mb/s): 1 2 5.5 6 9 11 12 18 24 36 48 54
                    Quality:37  Signal level:0  Noise level:0
                    Extra: Last beacon: 500ms ago

Cell 03 - Address: 00:13:10:0C:D7:4A
                    ESSID:"linksys"
                    Protocol:IEEE 802.11b
                    Mode:Master
                    Channel:6
                    Encryption key:off
                    Bit Rates:11 Mb/s
                    Extra: Rates (Mb/s): 1 2 5.5 11
                    Quality:37  Signal level:0  Noise level:0
                    Extra: Last beacon: 168ms ago

iwlist eth2 frequency   (It find the frequency of 6 channels)
eth2      11 channels in total; available frequencies :
          Channel 01 : 2.412 GHz
          Channel 02 : 2.417 GHz
          Channel 03 : 2.422 GHz
          Channel 04 : 2.427 GHz
          Channel 05 : 2.432 GHz
          Channel 06 : 2.437 GHz
          Channel 07 : 2.442 GHz
          Channel 08 : 2.447 GHz
          Channel 09 : 2.452 GHz
          Channel 10 : 2.457 GHz
          Channel 11 : 2.462 GHz
          Current Channel=1

Connect to server of network called linksys that is not crypted (not always
is necessary to know the frequency, the mode and the channel):
iwconfig eth2 essid linksys channel 6 mode auto freq 2.437G ap 00:13:10:0C:D7:4A
cd /etc/rc.d && ./network restart (on Archlinux restart the net, in other distro we'll do differently. If we have error or if the card doesn't acquires the ip address in dhcp, it means that there is not signal in that moment or that you have inserted a wrong parameter).
ifconfig eth2                 (write an ifconfig to see if the card eth2 has an ip address, otherwise write again the command above)

Connect to server called dsaw that is crypted
with password type WEP (I've inserted 2 strings for example, it's ok use both).
iwconfig eth2 essid dsaw key restricted 5693FFC5FF
                              or
iwconfig eth2 mode auto essid dsaw freq 2.412G channel 1 key restricted 5693FFC5FF ap 00:14:BF:00:10:04
cd /etc/rc.d && ./network restart  (on Archlinux restart the network,in other distro is different. If you have an error or the card doesn't acquires the ip address in dhcp, it means that there is not signal in that moment or
that you have inserted a wrong parameter).
ifconfig eth2                (write an ifconfig to see if the card eth2 has an ip address, otherwise write again the command above)


- Wireless with Password WPA
Install wicd, dhclient and
wpa_supplicant

pacman -Sy wicd
pacman -S dhclient wpa_supplicant

Modify the file
wpa_supplicant.conf
cd /etc
vi wpa_supplicant.conf

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1

network={
ssid="Panther"
scan_ssid=0
proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
psk="your_password"
}

iwlist eth2 scanning
wpa_passphrase Panther dreamdream   (to cript password)
netcfg --stop eth2  (stop wireless interface eth2)
iwconfig eth2 mode managed essid Panther channel 6
ifconfig eth2 up
wpa_supplicant -D wext -i eth2 -c /etc/wpa_supplicant.conf -ddd
/etc/rc.d/network restart

If you want that after the reboot of your laptop will be automatically all configured, insert how follows in file /etc/rc.local:
depmod -a
modprobe ipw2200
modprobe ieee80211_crypt
modprobe ieee80211
netcfg --stop eth2
iwconfig eth2 mode managed essid Panther channel 6
ifconfig eth2 up
wpa_supplicant -D wext -i eth2 -c /etc/wpa_supplicant.conf -d &



- Graphically with KiFiManager:
Under Kde opern KiFiManager, when will become founded 1 or more connections, proceed with the restart of network inside of your Linux box, under Archlinux you need to go under /etc/rc.d/ and restart the network service ./network restart (if the service is busy, it means that in that precise moment the signal is absent), hence retry.
Click on button "Search Dates", it will appear a windows with the connections wifi founded (Write yourself the name of connections, under the voice "Name of network"). Click on button "Close", go on "Settings" and
after on "Editor of configuration"
Under Configuration1 there will be for example these configurations:
Name of network:              Wifi1
X                                          Interface, automatically detected
Fast:                                    automatic
Use the cryptography:        If you have one of them, write the password required
X:                                         Charge the configuration pre-selected at start
Configuration to charge:    Configuration 1
If you have 3 lines wifi founded, choice 3 near at voice: Number configurations
Hence to surf with one of inserted configurations, you need to press the key ACTIVE under everyone of Configurations pre-configured.
Just clicked, exit from this window and under the voice "Connected at network" will appear the name of the net previously chosen. To active it and have an ip address from the server dhcp wifi, on Archlinux restart the net like above written (cd /etc/rc.d/ && ./network restart), in other distro you see how to do.


23e)MAIL SERVER WITH POSTFIX AND TPOP3D ON ARCHLINUX
We will go to install a Mail server on a private network on Archlinux, without access on Internet.
This will be only an installation and base configuration of a mail-server, there are not many kinds of control, because we will send and receive email inside our private lan. Hence, this example is applicable inside of an
office or of a company.

INSTALLATION OF POSTFIX
pacman -S postfix
useradd postfix
You find hostname inside the file /etc/rc.conf or opening an xterm or pressing ctrl-alt-F1, in my case I've written:
myhost

Dando cat /etc/hosts
#<ip-address>   <hostname.domain.org>   <hostame>
        127.0.0.1             myhost.mia.net                myhost

Enter in file /etc/postfix/main.cf and set these parameters:
queue_directory = /var/spool/postfixy
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
mail_owner = postfix
myhostname = myhost
mydomain = mia.net
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
unknown_local_recipient_reject_code = 550
mynetworks = 10.0.0.0/24, 127.0.0.0/8 (insert your lan)
alias_maps = hash:/etc/postfix/aliases
alias_database = $alias_maps
home_mailbox = Mailbox  (the Mailbox of users)
mail_spool_directory = /var/mail

In case of manual installation will need also these commands:
groupadd -g 33333 postfix
groupadd -g 33335 maildrop
groupadd postdrop
useradd -u 33333 -g 33333 -d /dev/null -s /bin/false postfix
useradd -u 33335 -g 33335 -d /dev/null -s /bin/false maildrop

INSTALLATION OF TPOP3D
pacman -S tpop3d
Enter in /etc/conf.d/tpop3d and configure the row inside it, we will have say to it where is located the file tpop3d.conf (in case of Archlinux in directory /etc )
TPOP3D_ARGS="-f /etc/tpop3d.conf -p /var/run/tpop3d.pid"
Configure file tpop3d.conf saying where to go to insert the email, we will say to it where rescue them in:
mailbox: bsd: /home/$user/Mailbox

START THE SERVICES
cd /etc/rc.d/
/tpop3d start
/postfix start
    or
postfix start  (in case of manual installation of postfix)

CREATE AN USER TEST
Create a user text called pc2
adduser  (press always the key Enter and at the end insert a password)

CONFIGURE THE MAIL CLIENT (THUNDERBIRD)
Open a mail's program (for example Thunderbird) and configure it like that:
Account Name: pc2 (name of user created)
Your Name: pc2
Eamil Address: pc2@mia.net
Accounting Server (SMTP) choice pc2 10.0.0.1 (Default)
Server Name:10.0.0.1  port 110(insert the ip address where is located the mail server)
User Name: pc2
Outgoing Server (SMTP) Server Name: 10.0.0.1 (insert the ip address where is located the mail server)
Port 25
User Name: pc2

Now doesn't remain that test all this and write itself an email at this address:
pc2@mia.net
Wanting add a true user "rossi_mario" we will write an example:
adduser    (and after rossi_mario), after press always the key ENTER
The email of Rossi Mario will be:
rossi_mario@mia.net


24e)WEBSITE WIKI WITH PMWIKI
Build a website wiki with http://pmwiki.org only with (855 kb unzipped)

All of this has been tried under Archlinux
Install Php and Apache and download pmwiki from website, that under Archlinux you should do like that:
pacman -S php
pacman -S apache

Unzip pmwiki-latest.zip where you want and move the files of the directory pmwiki-2.1.11 inside the directory /home/http/html/

APACHE:
cd /etc/httpd/conf/
Edit httpd.conf
Able the following row:
LoadModule php5_module modules/libphp5.so

Say to Apache which is the directory of reference "DocumentRoot ":
DocumentRoot "/home/httpd/html"

Substitute the voice "None" with "All"
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

mkdir /home/httpd/html/wiki.d
chmod 777 /home/httpd/html/wiki.d
cd docs/
cp sample-config.php ../local/config.php

Start Apache with the command "apachectl start" (If you have the error "httpd: apr_sockaddr_info_get()" modify the file hosts inserting the hostname of your o.s. linux.)
vi /etc/hosts
127.0.0.1 myhost.localdomain myhost

Open the browser and write (myhost) and click on pmwiki.php
To update the Italian language or make available other languages, download i18n.zip, unzip it and enter in directory wikilib.d/ selecting PmWikilt* and moving them in:
/home/httpd/html/wikilib.d/

To modify all the pages with only a password:
$DefaultPasswords['edit'] = crypt('password that you choose');

To modify the logo above on left:
$PageLogoUrl = "$PubDirUrl/skins/pmwiki/manualinux.jpg";

To modify the name of primary webpage:
$WikiTitle = 'PmWiki';

If you don't want that appear one or all the written View, Edit, History, Print, you need only to modify this file:
Site.PageActions

If you don't want that appear the written above "Recent Changes, Search" and below " Edit - History - Print - Recent Changes - Search" you need to modify the file pmwiki.tmpl inside skin/pmwiki


25e)IPTABLES
On iptables exist 3 tables: Filter, Nat, Mangle.

The table Filter is that of default and accepts the rules (INPUT, OUTPUT, FORWARD)

INPUT "Contains" the rules for the traffic directed to server
FORWARD "Contains" the rules for the traffic sent to 1 ip behind this server
(for example if this computer is used like a firewall for others server)
OUTPUT "Take" the rules for the traffic that is arriving from this server out on Internet

The nat necessary for natting and masquerading accepts:
(PREROUTING, POSTROUTING, OUTPUT).

When the traffic passes through the kernel, this determines a target based on packet matched to a rule.

In general the targets are:
ACCEPT The traffic is accepted for the delivering
REJECT  The traffic is denied, it sends a packet back to host-sender
DROP     The traffic is deleted. It's not sent any to host-sender.

It's important see that the order in which the rules are written is fundamental.
For example, if you first rule denies everything .... then it's doesn't important what you permit specifically , because it will be denied.

-A         => Says to iptables to append this rule to chain of INPUT
-s         => Source Address. This rule belongs only at traffic inbound from this ip. Substitute the ip address with                    which you are using the ssh.
-d         => Destination Address. This rule permits only the traffic that goes to this IP. Substitute the IP of
                   this server.
-p         => Protocol. Specifies the traffic with the TCP.
-icmp   => (ping packet)
-tcp      => (packet example... telnet, ftp etc)
-udp     => (other type of packet)
--dport => Port of destination. Specifies the traffic that is of the port 22 TCP (SSH)
-j          => Jump.Type of work to carry out, if everything in these rules is matched, then 'jump'
                  will be in ACCEPT
-!         => (not) suggest all that is not referred at parameter that we are passing.
-i         => (interface) eth0, eth1 "net cards" , ppp0 "Internet interface"
-D        => (delete one or more rules)
-F        => (delete all rules)
-L        => (list all rules or that of indicated chain)
-N        => (create a new chain)

You have to notice that any of what are you doing, will be saved on disk until you don't exec 'iptables-save'. All the rules are only in memory.
One time that the server is rebooted, or you exec 'iptables-flush', or every thing on which you have worked, it will disappear. It's better then write the rules on a text file.

To show the type of services that are present in /etc/services, write:
cat /etc/services

To able the masquerading you need to write:
echo "1" > /proc/sys/net/ipv4/ip_forward
How save own configuration of iptables ?
Easy, write you firewall, for example in file /etc/rc.d/rc.firewall
save it, give it the correct permissions and start it:
cd /etc/rc.d && ./rc.firewall
If you must do the modifies on the fly and you don't want loose them, you need to save them like that:
iptables-save > /etc/rc.d/rc.firewall
If one time rebooted the computer, you want exec the configuration iptables previously saved it, you need
to write:
iptables-restore < /etc/rc.d/firewall
Or if you want charge at every reboot the configuration iptables, you need to write at the end of file /etc/rc.d/rc.local:
cd /etc/rc.d && ./rc.firewall

Or more easily to save or restore the rules:
iptables-save > /root/iptables-save.out
Restore the rules:
iptables-restore -c /root/iptables-save.out

The 3 ways of handshake between 3 hosts when they transmit dates between them are:

*                 NEW => The Server 1 connect itself to Server 2 publishing a packet SYN (Synchronize).
*         RELATED => The Server 2 receives the packet  SYN, and after answers with a packet SYN-ACK                                                (Synchronize Acknowledgment).
* ESTABLISHED => The Server 1 receives the packet SYN-ACK and after answers with the final
                                    packet ACK (Acknowledgment).

After that these 3 ways of handshake are completed, the traffic is now ESTABLISHED.
In order for this type of communication TCP, are necessaries these 3 rules:

# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

Give this command to show the list of rules of new chain:
iptables --list

This is the general scheme to follow to set a rule.
iptables (enter, exit, for) (from or for) (address) (packet type) (accept, deny)

And now we enter in live with some of examples:

----------------------------WHAT DISCARD:------------------------------------
BAD GUYS (Block the ip addresses not wished)
# iptables -A INPUT -s 172.34.5.8 -j DROP

NO SPAMMERS (note the use of FQDN)
# iptables -A INPUT -s mail.spammer.org -d 10.1.15.1 -p tcp --dport 25 -j REJECT
----------------------------------------------------------------------------

------------------------------WHAT ACCEPT:----------------------------------
MYSQL (Permits the remote access to a particular IP):
# iptables -A INPUT -s 172.50.3.45 -d 10.1.15.1 -p tcp --dport 3306 -j ACCEPT


SSH:
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 22 -j ACCEPT

Sendmail/Postfix:
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 25 -j ACCEPT

FTP: (Note how you can specify a range of ports 20-21)
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 20:21 -j ACCEPT

Passive FTP Ports Maybe: (Newly, specify the ports 50000 through 50050  in a rule)
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 50000:50050 -j ACCEPT

HTTP/Apache
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 80 -j ACCEPT

SSL/Apache
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 443 -j ACCEPT

IMAP
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 143 -j ACCEPT

IMAPS
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 993 -j ACCEPT

POP3
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 110 -j ACCEPT

POP3S
# iptables -A INPUT -d 10.1.15.1 -p tcp --dport 995 -j ACCEPT

Every traffic from localhost:
# iptables -A INPUT -d 10.1.15.1 -s 127.0.0.1 -j ACCEPT

ICMP/Ping:
# iptables -A INPUT -d 10.1.15.1 -p icmp -j
----------------------------------------------------------------------------

--------------------------------WHAT REFUSE:--------------------------------
We refuse every other thing to that IP:
# iptables -A INPUT -d 10.1.15.1 -j REJECT

Or we refuse every othe thing that arrives through every other IP:
# iptables -A INPUT -j REJECT
# iptables -A FORWARD -j
----------------------------------------------------------------------------

Others examples:

-This example prevents the ping arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p icmp -i eth0 -j DROP

-This example accepts the ping arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p icmp -i eth0 -j ACCEPT

-This example prevents the ftp arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p tcp --dport ftp -i eth0 -j DROP
                                         or
iptables -A INPUT -s 192.168.1.2 -p tcp --dport 21 -i eth0 -j DROP

-This example accepts the ftp arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p tcp --dport ftp -i eth0 -j ACCEPT
                                         or
iptables -A INPUT -s 192.168.1.2 -p tcp --dport 21 -i eth0 -j ACCEPT

-This example  prevents the telnet arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p tcp --dport telnet -i eth0 -j DROP
                                        or
iptables -A INPUT -s 192.168.1.2 -p tcp --dport 23 -i eth0 -j DROP

-This example accepts the telnet arriving from ip 192.168.1.2
iptables -A INPUT -s 192.168.1.2 -p tcp --dport telnet -i eth0 -j ACCEPT
                                        or
iptables -A INPUT -s 192.168.1.2 -p tcp --dport 23 -i eth0 -j ACCEPT

-This example accepts the telnet arriving from Internet (ppp0)
iptables -A INPUT -p tcp ?dport telnet -i ppp0 -j ACCEPT

-This example prevents the telnet arriving from Internet (ppp0)
iptables -A INPUT -p tcp ?dport telnet -i ppp0 -j DROP

-This example blocks all traffic that arrives from Internet that try to
open some connection:
iptables -A INPUT -i ppp0 -p tcp --syn -j DROP

-This example makes available from Internet the server web (port 80, see /etc/services) presents on our s.o. linux and deny to use others services (ex. ftp, telnet):
iptables -A INPUT -i ppp0 -p tcp ?syn ?dport ! 80 -j DROP

-This example blocks all icmp type echo-replay and hence the ping:
iptables -A INPUT -p icmp --icmp-type 0 -j DROP

-This example accepts a packet toward the port 21 if arrives from host
www.tivedotonico.com
iptables -A INPUT -s www.tivedotonico.com -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp ?dport 21 -j DROP
            or we could write:
iptables -A INPUT -s ! www.tivedotonico.com -p tcp ?dport 21 -j DROP
That is refuses all packets that arrive on port 21 except if arrives from host www.tivedotonico.com

In Nat the principals chains are:
PREROUTING
POSTROUTING
OUTPUT (packets that are going out from our computer)

Le actions more used are:
-SNAT grants to change the sender and the source-port (POSTROUTING).
Only on static ip addresses (address ip local networks).

-DNAT permits to change the destination of packets to use it with PREROUTING because change the destination of a packet could influence the decisions of routing. It's also possible specify a different port of destination.

-MASQUERADE is type SNAT  but this permit that the packets have how sender the ip address of interface of net from which they will go out
(POSTROUTING).It uses MASQUERADE with ip address assigned dynamically (Intenet connections).

-REDIRECT permits  to change the port of destination of a packet (PREROUTING).
Permit that the packet is redirected on a local ip at a specified port.
iptables -j DNAT --to 192.168.100.4:port -j REDIRECT --to-ports port

It intercepts all packets arriving from eth0 toward a server www and drive them on our proxy server.
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport www -j DNAT –to proxy:8080

Modify the sender of packets that exit from eth2 and arriving from our lan 192.168.200.0/24 and with external ip address of our firewall.
iptables -t nat -A POSTROUTING -o eth2 -s 192.168.200.0/24 -j SNAT –to 123.45.68.1

Masquerade the packets in outbound from net-card ppp0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE


26e)SURF ON INTERNET WITH GPRS ON LINUX
Thanks to Livio DiPietro aka Tamburo member of Lug Acros.
Instructions to install and configure GPRS Easy Connect v2.0.0
Preamble: I use Slackware 9 and because the program can work correctly, install the library Tk-800.024.tar.gz (that you find on website www.easyconnect.linuxuser.hu) and the libraries www-perl-5.64.tar.gz  (You can download theme doing an easy search on www.google.com). For the other distributions (Mandriva, RedHat, etc ....) the RPM PerlTk is enogh to work correctly the GPRS Easy Connect v.2.0.0.
To install the Tk-800.024.tar.gz, proceed like that:

Unzip:
gzip -dc Tk-800.024.tar.gz | tar -xof -

Build:
perl Makefile.PL
make
make test

Installation
make install

The libwww unzip themselves with traditional tar zxvf
libwww-perl-5.64.tar.gz and after proceed from "Construction".
Download from http://www.easyconnect.linuxuser.hu the last release of GPRS Easy Connect v.2.0.0 in /usr/local (I've read it in some readme that you need to put in that directory); unzip the file (it's in format .tar.gz). You
will get the file GPRS_Easy_Connect_200_Install, well.. at this point..
startx!! Oh yes, now we will go in graphic mode! :) Are you there?
Well, now open xterm, go in /usr/local where there is file:
GPRS_Easy_Connect_200_Install, digit ./GPRS_Easy_Connect_200_Install

At this point, if you have done all, the program launches the graphic tool of installation, go ahead, where is asked if you want accept the license and go ahead again .....  To launch the program digit, always in xterm,
gprsec and Enter... ehm.. A window will open itself where you can do the connection, but all of you that are incredible geeks, click in central button, below, that of settings.
Now it will appear, a little window shared in two sides like columns;
in a left window there are 4 buttons and I'll list to you:

Obligatory parameters, optionals parameters, unusual parameters and limit settings. We are interested in first two.

Obligatory parameters:
1) In right side for first thing you choice the model of gprs cellphone
the you have, there are many models:
2) A weird written "Wake your operator" indicates which mobile operator you
need to choice (Omnitel,Tim,Wind);
3) the third parameter, the APN that is automatically assigned when wake ehm.... choice the mobile operator;
4) user: if is needed, the program put for you the parameter, every
mobile operator has s predefined user;
5) password: equal at user
6) the language: Italian of course!
7) the COM where you have connected the cellphone (the program supports also the communication with infrared I advice it, get the wire, where is possible);
8) The or the DNS: if dynamic, flag the little square, in contrary case put that indicated; in doubt control the parameters supplied from telephone operator. Click now, in column on left, on green button "OK/Save Dates".
Optionals Parameters: put on first box above the value 115200. Click now, in column on left, on green button "OK/Save Dates".
Now you are returned in primary screen, if all that you have configured is ok, press on "Connect" and happy surf ! :)

ALT!!! Some advices:
I'll describe what happen when I decide to connect: click on Connect, a window will open itself where a funny bar composed from little green squares is going on.. at a certain point, appears a msg of error: it says that is
not possible to connect.. well, this is a bug, on my Siemens S55 appears the written GPRS followed from a triangle of this type: |> beh, or like that.
That triangle indicates that I'm online !! I've already surfed on Internet, I go on chat, and works fine.

I'm using Aruba that together at Wind offers the flat by connection GPRS, for this reason the APN (Access Point Name) of Wind (internet.wind) doesn't correspond at all with which of Aruba (internet.wind.biz).
What to do to modify the APN? Easy, go in /usr/share/gprsec/tools/ and edit the file apn with vim.
In the last row there are presents the parameters of connection through Wind. I've modified the APN internet.wind in internet.wind.biz  and all work fine. You can also copy the entire string, past it, change Wind in Aruba and leave unchanged the parameters except the APN.. you can choose :)


27e)CONFIGURE SSH
First of all install the programma called ssh on your distro:
pacman -S ssh       (on ArchLinux)
apt-get install ssh  (on Debian)
Move later into directory /etc/ssh and make a copy of 2 first files:
cp ssh_config ssh_configold
cp sshd_config sshd_configold


-Enter in ssh_config and enable the following values;
ForwardX11 yes
Port 22
Protocol 2,1
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no

-Enter in sshd_config and configure these parameters:
Port 22
Protocol 2,1
SyslogFacility AUTH
LogLevel INFO
PasswordAuthentication yes
ChallengeResponseAuthentication no
X11Forwarding yes
X11 UseLocalhost yes
Subsystem sftp /usr/lib/openssh/sftp-server

Now start the ssh daemon:
cd /etc/rc.d/
./sshd start (if you have error, disable the last 2 rows on file ssh_config and restart the daemon)
If on ArchLinux we want always start the daemon at restart than insert sshd in file /etc/rc.conf
If we want enable ssh inside firewall write:
iptables -A INPUT -d 192.168.1.1 -p tcp --dport 22 -j ACCEPT
To connect from a client to this server with ssh enabled, you need to write:
ssh server_ip (ssh 192.168.1.1) or (ssh user@192.168.1.1)
If we login with ssh and we want open a program:
ssh -X 192.168.1.1 -l username program_name

To show the log files:
cat /var/log/auth.log | grep ssh
                 or
grep ssh /var/log/auth.log



28e)ASSIGN DOUBLE IP ADDRESS TO NETWORK CARD
ifconfig eth0:1 192.168.1.3 netmask 255.255.255.0 up

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


++++++++++++++++++++++++OTHER++++++++++++++++++++++++++++++
1f)HOW INSTALL LINUX ON COMPUTER WITH PROCESSOR 386 WITH 2 MEGA OF RAM??
1)Bring 2 computers, one with processor 386 and another more powerful  (from Pentium 120 and more with installed Linux).
2)Download kernel version 2.2.20 and put on Pentium computer
3)Get a RedhHat 5.2
4)Download the mini-distro hal91 and put it on floppy
5)Create a floppy of rescue Win98 or a cd Win98

We are ready.
On Pentium computer unzip kernel 2.2.20.tar.gz in /usr/src
tar zxvf kernel-2.2.20.tar.gz
cd linux
make mrproper
make menuconfig
Go in "Processor type and features", "Processor Family" and select with y or with * 386 or 486, after select "Math emulation" and "MTTR ecc...".
You have to considerate that you are recompiling the kernel on Pentium but for computer 386-486, hence control what kind of peripherals there are and select what you need, exit and save. Write:
make dep && make clean && make bzImage && make modules && make
modules_install
cd arch/i386/boot
rdev -R bzImage l /dev/hda5 (choice hda5 because on computer 386-486 will be installed a partition dos (hda1), a Linux  and a swap (hda6)).
Copy this file (bzImage) in a floppy formatted dos
Go on computer 386-486, use fdisk from floppy of rescue of win98 (or from cd of installation Win98), delete all the partition present and create a dos partition from 10 mega without format it yet (we will do that later).
Move hard-disk from computer 386-486 to Pentium because it will have a cd-reader and install RedHat 5.0-5.2, it's Ok also a minimum installation, almost 80 megabyte. Don't install lilo, we don't need it, hence finished
installation, turnoff the computer. Move hard-disk with installed the red-hat minimum version on computer 386-486 and insert the floppy of Win98, you make
read itself at boot and format the partition dos (10 mega) writing:
format c: /s  (reboot computer later)
One time in dos copy inside it file bzImage (previously saved in a floppy), and the file loadlin.exe (that you find in all distributions into directory dostools). At this point write:
a:
copy bzimage c:
copy loadlin.exe c:
c:
loadlin bzimage

If you want, you can create a file autoexec.bat (put it in c: ) and write inside it the same row (loadlin bzImage), so just turned on the computer, this will charge the dos and automatically it will go on Linux. If Linux doesn't is charged, I advice you to use the mini-distro hal91 (move hard-disk from computer 386-486 to Pentium more powerful), make charge it at start, mount the partition dos (mount -t msdos /dev/hda1 /cdrom) and that Linux (mount -t ext2 /dev/hda5 /floppy) and copy the file bzImage from dos to linux in (/floppy/boot), at this point rename the file from bzimage to bzImage:
cp /cdrom/bzimage /floppy/boot && mv /floppy/boot/bzimage
/floppy/boot/bzImage
Restart computer, if you can't go on dos, use rescue-floppy of Windows
and in dos write:
loadlin bzimage


2f)HOW CREATE OWN MINIDISTRO ON 2 FLOPPY-DISK
With kernel 2.4 and with last distros I've couldn't make anything, I've not tried with Debian with kernel 2.2.0. I've done it with a RedHat 5.1 with kernel 2.0.34, it has been used busybox.0.60.2 and syslinux (take on
that accept the option -s how for example the version 1.43 or 1.46). Compile kernel how you want but overall with these options, you can mount cd, partitions, etc  , you can personalize it how you want :

386
Loopback device support
Ramdisk
Initial Ram disk(initrd) support

Recompile kernel like that:
make dep && make clean && make bzImage && make modules && make modules_install
Don't write the option module if you have not enabled anything in Loadable module support.
It will be created the file /usr/src/linux/arch/i386/boot/bzImage
Unzip busybox:
tar zxvf busybox-0.60.2.tar.gz
cd busybox
vi Config.sys
You can disable with double // in front of, you can able without the // in front of.

Enable:
#define BB_ASH
#define BB_HOSTNAME
#define BB_FEATURE_SH_IS_ASH (we say to it that we will use ash and not the bash ).

Disable:
//#define BB_FEATURE_SH_IS_MSH
If you want you can enable others options, but these and the others just enable by default are Ok to have a minimum stable system and working on floppy. Exit and save file:
Write:
make
make install
mkdir /distro
mkdir /distro/root
cd <directory di busybox>/_install
mkdir /distro (our directory base of work)
mkdir /distro/root (our  / for floppy of 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

I've created every device in /distro/root/dev
cd /dev
Control which device you have in your distro, for example can happens that misses hdc4 or hdd2, not all these devices hence will be present in your distribution (in this case the 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 hdb1hdb2 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

The directory /etc/ contains the following files:

fstab  (informations for mount of partitions)
group (list of groups)
hosts  (associations names host with IP)
inittab (file of configuration of init)
it-lmc.map (definition of Italian keyboard)
ld.so.cache  (cache of libraries)
ld.so.conf (configuration of libraries)
login.defs (file of configuration of login)
modules.conf (file of configuration of modules)
mtab (partitions mounted)
pam.conf (configuration of PAM)
passwd (list of users)
profile (file of personalized configuration)
protocols (list of protocols of network)
rc.M (script of configuration of run-levels)
rcH  (script executed at exit of system)
rcS  (script of configuration of system)
services (list of networking services)
syslog.conf (file of configuration of syslogd)

In file /distro/root/etc/inittab I've written inside:
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

In file /distro/root/etc/rcS I've written:
#!/bin/sh
/bin/mount -av
/bin/mount -o remount,rw /dev/ram0 /
/sbin/syslogd -m0
/sbin/klogd
/bin/hostname ngm2

In file /distro/root/syslog.conf I've written:
*.* /var/log/messages

The file /distro/root/etc/fstab contains the following rows:
proc /proc proc defaults 0 0
/dev/ram0 / ext2 defaults,noauto 0 0
/dev/fd0 /mnt/floppy auto default,user,noauto 0 0

The file /distro/root/etc/rc.M:
#!/bin/sh
/bin/loadkeys /etc/it-lmc.map

The file rcH contains the following instructions:
#!/bin/sh
umount -va
echo "Grazie !!!"
echo "Panther"
echo "http://www.tivedotonico.com"

The file /distro/root/etc/passwd contains:
root::0:0:root:/root:/bin/sh

The file /distro/root/etc/etc/group contains:
root::0:root

The file /distro/root/etc/pam.conf, has the following contained:
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

The file /distro/root/etc/login.defs contains the definition of variables used from program login:
FAIL_DELAY 3
LOGIN_RETRIES 3

The file /distro/root/etc/hosts contains:
127.0.0.1 localhost

The directory /distro/root/etc/lib contains 2 files go in /lib and copy 2 files:
cd /lib
cp ld-linux.so.2 /distro/root/lib
cp libc.so.6 /distro/root/lib

### The directory /distro/root/proc must to be  created empty.

### The directory /distro/root/tmp must to be  created empty.

### The directory /distro/root/root must to be  created empty.

### The directory /distro/root/home must to be  created empty.

### The directory /distro/root/var must to be  created empty.

### The directories /distro/root/bin /distro/root/sbin
/distro/root/usr/bin
/distro/root/usr/sbin
/distro/root/usr/personal contain the programs that can be executed in
mini-distribution created from busybox (ls -al)

In succession you find the side to create the floppy of boot.

Format a floppy like that:
badblocks /dev/fd0u1440 && fdformat /dev/fd0u1440 && mkfs -t msdos /dev/fd0
or depends from what distro you have used badblocks /dev/fd0H1440 && fdformat /dev/fd0H1440 && mkfs -t msdos /dev/fd0
It must to be started avviabile with syslinux (you should already find it installed or unzip it and write):
./syslinux -s /dev/fd0
          or
syslinux -s /dev/fd0
Mount the floppy:
mount -t msdos /dev/fd0 /mnt/floppy
Copy the file bzImage on floppy:
cp /usr/src/linux/arch/i386/boot/bzImage /mnt/floppy/bzimage
Configure the file bzimage in 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
Inside /mnt/floppy create the file syslinux.cfg with vim:
vi syslinux.cfg
and write inside it:
DEFAULT bzimage
APPEND vga=normal noinitrd load_ramdisk=1 prompt_ramdisk=1 ramdisk_size=16384 root=/dev/fd0 disksize=1.44 init=/bin/ash #put all on the same row from
APPEND to ash
TIMEOUT 0
DISPLAY boot.txt
PROMPT 1
F1 f1.txt
F2 f2.txt
Save and exit (Esc:wq!)
Always inside /mnt/floppy create of file boot.txt, f1.txt and f2.txt
with editor vim:
Write inside it what you want, the same with the file f1.txt and f2.txt
Unmount the floppy with:
cd / && umount /mnt/floppy
The floppy of boot is ready.

Create the floppy of 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 (Answer yes at the question that is done to you)
Doesn't remain that restart computer with floppy of boot inserted, it will be required later to insert the second floppy. From the tries I've done, I've not done anything with kernel 2.4.xx, the floppy will give errors.
I repeat, I've not yet tried with a Debian with kernel 2.2.xx, however I believe that the thing can works fine. One thing to say is that, in Config.sys, we will say it,to start the ash and not the bash, if it misses, that setting the minidistro will not start, giving errors or stopping itself.

vmlinuz  (of redhat5.1)
root.gz  (just ready)
syslinux.cfg (of floppy of boot)
boot.txt


3f)INSTALL UNIX MINIX 2.0.3
Minix is an o.s. unix that ca be installed on Pentium,486,386,286,8086 and work in msdos mode.
The installation has been executed with minix 2.0.3 for 386,486,Pentium with address http://www.cs.vu.nl/pub/minix/2.0.3/, the files downloaded are ROOT.MNX, USR.MNX and NET.TAZ (more the others  3 files .TAZ). All floppy used have to be opened, one window remains always opened, the other have to be closed. Take 2 floppy, on first will be copied root.mnx and usr.mnx, while on second will be copied net.taz
cat ROOT.MNX USR.MNX > /dev/fd0
cat NET.TAZ > /dev/fd0
Start computer with first floppy inserted and at written to press the key with = press the key l near at key Enter, after write with floppy inserted after the written Finish the name   ./usr:
/dev/fd0p2
At login digit root and after write setup and for 2 times press Enter.
Choice Italian keyboard writing Italian and pressing Enter, write after part.

Delete or add the partitions on hard-disk or choice the second hard-disk eventually available. Leave /dev/c0d0 pressing the row toward down, go on Type and with key - choice 81 MINIX, move the the arrow toward right
under Kb and write 35000 (35 mega) or that you want. Save pressing the key w and confirm the save press int the key y, press after the key q to exit. On video will appear the written to confirm the partition, we will write
/dev/c0d0p0 (p0 is under Sort).
Is required also the dimension of partition of swap in kb, write 2000 (2 mega) or what you want, press after the key Enter. It will be done a scansion of disk to search damages sectors, to stop it press the key Esc.
At this point will start the installation, at the end minix will require to digit halt and press Enter after ctrl-alt-canc. At reboot press the key l, at login write root, after setup /usr and press Enter. Insert the second floppy and write at required of floppy 1440 and Enter 3 times. Files will be transferred for the networking side on operating system. We see how install:

CMD.TAZ (command sources)
SYS.TAZ (source operating system)
USR.TAZ (files executables)
To install CMD.TAZ take others 3 floppy and write for every floppy a row giving after Enter.
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
Insert the first floppy and on minix write setup /usr
Write 1440 and press Enter 3 times.
The program will ask to insert the second and after the third floppy.
To install SYS.TAZ take the others 2 floppy and write for every floppy a row giving after Enter.
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
Insert the first floppy and on minix write setup /usr
Write 1440 and press Enter 3 times. The program will ask to insert the second floppy. To install USR.TAZ take other 3 floppy and write of every floppy a row giving after Enter.
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
Insert the first floppy and on minix write setup /usr
Write 1440 and press Enter 3 times. The program will ask to insert the second floppy. Now you have a Unix system complete of all, using almost 21.35 mega, if you don't believe me, write at prompt df.
You can set the Italian keyboard like that, (at least I've don like that for
root user), going in /usr/src and entering with editor vim I've added at file .profile the written:
cd /usr/src
vi .profile
loadkeys /usr/lib/keymaps/italian.map
press i, add the row loadkeys /usr/lib/keymaps/italian.map press the keys shift and the key with the at (@) (2 times) wq
One time exit write halt and reboot computer, at login the keyboard will be Italian. To recompile the kernel under minix you need to adapt the file /usr/include/minix/config.h (open it with vim, to delete the text #
press Esc and the key x, to insert the key i) and go in /usr/src/tools and give the command make. If all will go well, copy the file image like that:
cp image /minix/rete.0.1
shutdown -h.
If you know you the o.s. can recognize a net-card ne2000 and how gives it an ip address, tell me !!


4f)PROGRAMS GPL LINUX <--> WINDOWS
All programs listed below are under license gpl, hence freely usable and without any restriction.

Zip:
7Zip http://www.7-zip.org/

Antivirus:
Clamav
http://www.clamwin.com/
http://sourceforge.net/projects/clamwin/

Editor for the Office:
OpenOffice http://www.openoffice.org
OpenOffice http://www.openoffice.org

Editor:
Vim http://www.vim.org/
Gedit http://ftp.gnome.org/pub/gnome/binaries/win32/gedit/
Emacs http://ftp.gnu.org/pub/gnu/emacs/windows/
Xemacs http://ftp.xemacs.org/windows/win32/

Graphic:
Gimp www.gimp.org

See images (only for Windows):
Mfa http://www.mediafileassistant.com/

Audio Player (cd, mp3, ogg, ecc..):
Zinf www.zinf.org

Video Player:
Mplayer http://www.mplayerhq.hu/MPlayer/releases/win32-beta/
Vlc http://www.videolan.org/vlc/

Build  web-pages:
Kompozer http://www.kompozer.net

Browser and EmailClient:
Firefox e Thunderbird http://www.mozilla.org/

P2P client:
Amule http://www.amule.org/

Ftp server and client:
Filezilla http://filezilla.sourceforge.net/

Client telnet-ssh-raw-rlogin:
Putty http://www.chiark.greenend.org.uk/~sgtatham/putty/

Server ssh:
Sshwindows http://sshwindows.sourceforge.net/download/releases/

Gpg:
Winpt http://winpt.sourceforge.net/

Icq:
Sim http://sim-icq.sourceforge.net/

Grafica 3d:
Blender http://www.blender3d.com/
FreeCad http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Main_Page

Modify video:
VideoLan Client-Server http://www.videolan.org

Database:
PostgreSQL http://www.postgresql.org
Mysql http://dev.mysql.com/downloads/
Sqlite http://www.sqlite.org/download.html
Picosql http://www.picosoft.it/picosql/


Programming Languages:
Perl http://www.perl.com/
Python http://www.python.org/
Ruby http://www.ruby-language.org
Php http://www.php.net
C http://gcc.gnu.org/install/specific.html
TclTk  http://www.tcl.tk/software/tcltk/downloadnow84.html
Interfaccia grafica Glade http://gladewin32.sourceforge.net/


Burn:
Burn4free http://www.burn4free.com/

Work on music files:
Audicity (install also these programs wxWidgets, Mad, Ogg Vorbis, Lame).

If the links are corrupted or you want suggest or modify the programs above, write me.


6f)SWITCH FROM INITSCRIPTS TO SYSTEMD ON ARCHLINUX
Thanks about article to Linux Freedom http://www.lffl.org

If after last update, Archlinux doesn't recognize more any networkd card (wifi or lan) and if there are problems with power adapter (signs that doesn't work more battery), switch to systemd.

pacman -S systemd

On shell launch command "updatedb" to update list of files to search

Create configuration file systemd:
vi /etc/hostname
adding our hostname (ex. Panther)

vi /etc/hosts
127.0.0.1 localhost.localdomain localhost Panther
::1 localhost.localdomain localhost Panther

vi /etc/vconsole.conf and insert:
KEYMAP="it"
FONT="Lat2-Terminus16"
FONT_MAP

vi /etc/locale.gen
togliamo il cancelletto da:
en_US.UTF-8 UTF-8
it_IT.UTF-8 UTF-8

On shell digit:
locale-gen
echo LANG=it_IT.UTF-8 > /etc/locale.conf
export LANG=it_IT.UTF-8

Set time zone:
ln -sf /usr/share/zoneinfo/Europe/Rome /etc/localtime

On pc with dualboot Windows and if watch is 2 hours back:
create file /etc/adjtime
insert:
0.0 0.0 0.0
0
LOCAL


Impostare i demoni di avvio
systemctl enable nomemodulo.service
La lista dei nostri demoni la troviamo nell'ultima parte del
file rc.conf.


Modify GRUB:
Write on shell:
locate systemd
to search where is file, if on /bin/systemd or /usr/lib/systemd/systemd
vi /etc/default/grub
modify "quiet" in GRUB_CMDLINE_LINUX_DEFAULT adding
"init=/bin/systemd" or "init=/usr/lib/systemd/systemd"
the result will be:
GRUB_CMDLINE_LINUX_DEFAULT="init=/bin/systemd"
or
GRUB_CMDLINE_LINUX_DEFAULT="init=/usr/lib/systemd/systemd"
and control if grub.cfg has correct path for systemd to start Archlinux

Update Grub typing:
grub-mkconfig -o /boot/grub/grub.cfg

at this point reboot the operating system

If all works how we aspect, install systemd-sysvcompat:
pacman -S systemd-sysvcompat
Will be required to remove initscripts and sysvinit, accept and will have our systemd perfectly working.



++++++++++++++++GNU Free Documentation License++++++++++++++++++++++++++++

GNU Free Documentation License

Version 1.3, 3 November 2008

Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. <http://fsf.org/>

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.

The "publisher" means any person or entity that distributes copies of the Document to the public.

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 under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.

However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.

Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.

Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it.
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. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
11. RELICENSING

"Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A "Massive Multiauthor Collaboration" (or "MMC") contained in the site means any set of copyrightable works thus published on the MMC site.

"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization.

"Incorporate" means to publish or republish a Document, in whole or in part, as part of another Document.

An MMC is "eligible for relicensing" if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.

The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing.
ADDENDUM: How to use this License for your documents

To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:

    Copyright (C)  YEAR  YOUR NAME.
    Permission is granted to copy, distribute and/or modify this document
    under the terms of the GNU Free Documentation License, Version 1.3
    or any later version published by the Free Software Foundation;
    with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
    A copy of the license is included in the section entitled "GNU
    Free Documentation License".

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with … Texts." line with this:

    with the Invariant Sections being LIST THEIR TITLES, with the
    Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.

If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.

If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.