This is a very high level step by step guide to what you need to do to add a new disk to you system. Along with partitioning it and mounting it to be available on boot.

Note :
sdb being your new disk.
/opt/app/oracle/oradata1 being your new mount point.

root@server:~# fdisk -l

Disk /dev/sda: 1288.4 GB, 1288490188800 bytes
255 heads, 63 sectors/track, 156650 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 156650 1258186702+ 8e Linux LVM

root@server:~# for i in 0 1 2 3 4 5 6 7 8 9 10; do echo “- – – ” > /sys/class/scsi_host/host$i/scan; done
-bash: /sys/class/scsi_host/host3/scan: No such file or directory
-bash: /sys/class/scsi_host/host4/scan: No such file or directory
-bash: /sys/class/scsi_host/host5/scan: No such file or directory
-bash: /sys/class/scsi_host/host6/scan: No such file or directory
-bash: /sys/class/scsi_host/host7/scan: No such file or directory
-bash: /sys/class/scsi_host/host8/scan: No such file or directory
-bash: /sys/class/scsi_host/host9/scan: No such file or directory
-bash: /sys/class/scsi_host/host10/scan: No such file or directory
root@server:~# fdisk -l

Disk /dev/sda: 1288.4 GB, 1288490188800 bytes
255 heads, 63 sectors/track, 156650 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 156650 1258186702+ 8e Linux LVM

Disk /dev/sdb: 536.8 GB, 536870912000 bytes
255 heads, 63 sectors/track, 65270 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn’t contain a valid partition table

root@server:~# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won’t be recoverable.

The number of cylinders for this disk is set to 65270.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): p

Disk /dev/sdb: 536.8 GB, 536870912000 bytes
255 heads, 63 sectors/track, 65270 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-65270, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-65270, default 65270):
Using default value 65270

Command (m for help): p

Disk /dev/sdb: 536.8 GB, 536870912000 bytes
255 heads, 63 sectors/track, 65270 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 65270 524281243+ 83 Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
root@server:~# mkdir /opt/app/oracle/oradata1
root@server:~# vi /etc/fstab
add the following to fstab so it mounts on boot…

/dev/sdb1 /opt/app/oracle/oradata1 ext3 defaults 1 2

root@server:~# mkfs -t ext3 /dev/sdb1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
65536000 inodes, 131070310 blocks
6553515 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
4000 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@server:~# mount –all
root@server:~# chown oracle /opt/app/oracle/oradata1
root@ server:~# df -h | grep /dev/sdb1
/dev/sdb1 493G 198M 467G 1% /opt/app/oracle/oradata1