Add new disk and Create /u01 Mount Point
Contents 1) Delete existing disk from virtual box ...... 2 2) Add disk to Virtual Box ...... 7 3) Discover/find the Added Disk: ...... 9 4) Format and Create the disk Slice/partition for /u01 mount point ...... 11 5) Create File system and Mount point...... 15
1 | P a g e
1) Delete existing disk from virtual box
I have to delete existing disk for /u01 to create disk with higher Size.
First unmount the /u01 filesystem ======mgracsolsrv64bit1:[root]$ df -h |egrep 'Filesystem|u01|u02' Filesystem size used avail capacity Mounted on /dev/dsk/c0t2d0s0 9.9G 10M 9.7G 1% /u01 mgracsolsrv64bit1:[root]$ mount |egrep 'u01|u02' /u01 on /dev/dsk/c0t2d0s0 read/write/setuid/devices/rstchown/intr/largefiles/logging/xattr/onerror=panic/dev =840080 on Mon Oct 14 22:13:44 2013 umount /u01
Remove the entry for /u01 from /etc/vfstab ======vi /etc/vfstab
Delete the partition: ======# format Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0
PARTITION MENU: 0 - change `0' partition 1 - change `1' partition 2 - change `2' partition 3 - change `3' partition 4 - change `4' partition 5 - change `5' partition 6 - change `6' partition 7 - change `7' partition select - select a predefined table modify - modify a predefined partition table name - name the current table print - display the current table label - write partition map and label to the disk !
2 | P a g e
partition> print Current partition table (unnamed): Total disk cylinders available: 1955 + 2 (reserved cylinders)
Part Tag Flag Cylinders Size Blocks 0 unassigned wm 1 - 1306 10.00GB (1306/0/0) 20980890 1 unassigned wm 0 0 (0/0/0) 0 2 backup wu 0 - 1954 14.98GB (1955/0/0) 31407075 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 unassigned wm 0 0 (0/0/0) 0 partition> partition > 0 Part Tag Flag Cylinders Size Blocks 0 unassigned wm 1 - 1306 10.00GB (1306/0/0) 20980890
Enter partition id tag[unassigned]: Enter partition permission flags[wm]: Enter new starting cyl[1]: Enter partition size[20980890b, 1306c, 1306e, 10244.58mb, 10.00gb]: 0 partition> print Current partition table (unnamed): Total disk cylinders available: 1955 + 2 (reserved cylinders)
Part Tag Flag Cylinders Size Blocks 0 unassigned wm 0 0 (0/0/0) 0 1 unassigned wm 0 0 (0/0/0) 0 2 backup wu 0 - 1954 14.98GB (1955/0/0) 31407075 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 unassigned wm 0 0 (0/0/0) 0 partition>
Save your changes. Label the disk. ======partition> label Ready to label disk, continue? y partition>q
3 | P a g e
First Shut down VM Server , Go to File -> Virtual Media Manager. Highlight the Disk you need to delete from VM and click the Release button. Once release from VM’s , its ready for remove , When prompt if you want to Keep/Delete the file, select Delete. This will delete the vdi file from your system.
4 | P a g e
5 | P a g e
6 | P a g e
2) Add disk to Virtual Box
Check existing Disks: ======mgracsolsrv64bit1:[root]$ cfgadm Ap_Id Type Receptacle Occupant Condition sata0/0::dsk/c0t0d0 disk connected configured ok sata0/1::dsk/c0t1d0 cd/dvd connected configured ok sata0/2 sata-port empty unconfigured ok sata0/3 sata-port empty unconfigured ok sata0/4 sata-port empty unconfigured ok sata0/5 sata-port empty unconfigured ok sata0/6 sata-port empty unconfigured ok sata0/7 sata-port empty unconfigured ok sata0/8 sata-port empty unconfigured ok sata0/9 sata-port empty unconfigured ok sata0/10 sata-port empty unconfigured ok
7 | P a g e
8 | P a g e
3) Discover/find the Added Disk: Now start the VM server to format and mount as /u01
Login as root user. mgracsolsrv64bit1:[root]$ cfgadm Ap_Id Type Receptacle Occupant Condition sata0/0::dsk/c0t0d0 disk connected configured ok sata0/1::dsk/c0t1d0 cd/dvd connected configured ok sata0/2::dsk/c0t2d0 disk connected configured ok sata0/3 sata-port empty unconfigured ok sata0/4 sata-port empty unconfigured ok sata0/5 sata-port empty unconfigured ok sata0/6 sata-port empty unconfigured ok sata0/7 sata-port empty unconfigured ok sata0/8 sata-port empty unconfigured ok sata0/9 sata-port empty unconfigured ok sata0/10 sata-port empty unconfigured ok sata0/11 sata-port empty unconfigured ok sata0/12 sata-port empty unconfigured ok sata0/13 sata-port empty unconfigured ok sata0/14 sata-port empty unconfigured ok sata0/15 sata-port empty unconfigured ok sata0/16 sata-port empty unconfigured ok sata0/17 sata-port empty unconfigured ok sata0/18 sata-port empty unconfigured ok sata0/19 sata-port empty unconfigured ok sata0/20 sata-port empty unconfigured ok sata0/21 sata-port empty unconfigured ok sata0/22 sata-port empty unconfigured ok sata0/23 sata-port empty unconfigured ok sata0/24 sata-port empty unconfigured ok sata0/25 sata-port empty unconfigured ok sata0/26 sata-port empty unconfigured ok sata0/27 sata-port empty unconfigured ok sata0/28 sata-port empty unconfigured ok sata0/29 sata-port empty unconfigured ok usb0/1 usb-input connected configured ok usb0/2 unknown empty unconfigured ok usb0/3 unknown empty unconfigured ok usb0/4 unknown empty unconfigured ok usb0/5 unknown empty unconfigured ok usb0/6 unknown empty unconfigured ok usb0/7 unknown empty unconfigured ok usb0/8 unknown empty unconfigured ok mgracsolsrv64bit1:[root]$ echo|format Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0
9 | P a g e
Below commands Useful when disk is not visible, then rescan the disk, see the example below ======# cfgadm -al ( verification of FC conroller connections ) # devfsadm -c disk -v (rescanning disks ) # echo|format ( verifiy disks from OS)
/u01 does not exist in below: mgracsolsrv64bit1:[root]$ df -h Filesystem size used avail capacity Mounted on /dev/dsk/c0t0d0s0 8.1G 5.1G 3.0G 64% / /devices 0K 0K 0K 0% /devices ctfs 0K 0K 0K 0% /system/contract proc 0K 0K 0K 0% /proc mnttab 0K 0K 0K 0% /etc/mnttab swap 3.1G 984K 3.1G 1% /etc/svc/volatile objfs 0K 0K 0K 0% /system/object sharefs 0K 0K 0K 0% /etc/dfs/sharetab /usr/lib/libc/libc_hwcap1.so.1 8.1G 5.1G 3.0G 64% /lib/libc.so.1 fd 0K 0K 0K 0% /dev/fd swap 3.1G 36K 3.1G 1% /tmp swap 3.1G 36K 3.1G 1% /var/run /dev/dsk/c0t0d0s7 7.1G 3.7G 3.4G 53% /export/home winshare 225G 137G 88G 62% /mnt/sf_winshare mgracsolsrv64bit1:[root]$ echo|format Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0
# cat /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - /dev/dsk/c0t0d0s1 - - swap - no - /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no - /dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes - /devices - /devices devfs - no - sharefs - /etc/dfs/sharetab sharefs - no - ctfs - /system/contract ctfs - no - objfs - /system/object objfs - no - swap - /tmp tmpfs - yes -
10 | P a g e
Example discovering the disk manually when not visible: ======# echo|format Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0
Shows only One disk as above.
# devfsadm This scan command will discover the new disk we recently added above.
# echo|format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t0d0
4) Format and Create the disk Slice/partition for /u01 mount point http://docs.oracle.com/html/B10766_08/presolaris.htm
======
On x86 systems only, use the fdisk command to create a Solaris partition on the disk if one does not already exist.
Solaris fdisk partitions must start at cylinder 1 , not cylinder 0 . If you create a new fdisk partition, you must label the disk before continuing.
Note:
To prevent the CRS or database files from overwriting the partition table, do not use slices that start at cylinder 0 (for example below, disk#1 slice# 0).
mgracsolsrv64bit1:[root]$ format Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0
FORMAT MENU: disk - select a disk type - select (define) a disk type
11 | P a g e
partition - select (define) a partition table current - describe the current disk format - format and analyze the disk fdisk - run the fdisk program repair - repair a defective sector label - write label to the disk analyze - surface analysis defect - defect list management backup - search for backup labels verify - read and display labels save - save new disk/partition definitions inquiry - show vendor, product and revision volname - set 8-character volume name !
Note for fdisk : Specify n at the prompt if you do not want the Solaris fdisk partition to span the entire disk. http://docs.oracle.com/cd/E19620-01/805-3727/6j3ht4dkb/index.html#disksxadd-33190
We would need the entire disk space for /u01 Oracle software install, we say Y to span entire disk. format > fdisk No fdisk table exists. The default partition for the disk is:
a 100% "SOLARIS System" partition
Type "y" to accept the default partition, otherwise type "n" to edit the partition table. Y
Check the disk % utilization shows 100% as we span entire disk ======format> fdisk Total disk size is 2088 cylinders Cylinder size is 16065 (512 byte) blocks
Cylinders Partition Status Type Start End Length % ======1 Active Solaris2 1 2087 2087 100
SELECT ONE OF THE FOLLOWING: 1. Create a partition 2. Specify the active partition 3. Delete a partition 4. Change between Solaris and Solaris2 Partition IDs 5. Exit (update disk configuration and exit) 6. Cancel (exit without updating disk configuration) Enter Selection: 6
12 | P a g e
format > p
PARTITION MENU: 0 - change `0' partition 1 - change `1' partition 2 - change `2' partition 3 - change `3' partition …… …… 7 - change `7' partition select - select a predefined table modify - modify a predefined partition table name - name the current table print - display the current table label - write partition map and label to the disk !
Part Tag Flag Cylinders Size Blocks 0 unassigned wm 0 0 (0/0/0) 0 1 unassigned wm 0 0 (0/0/0) 0 2 backup wu 0 - 2084 15.97GB (2085/0/0) 33495525 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 unassigned wm 0 0 (0/0/0) 0
partition > 0 ===> Assign 15.96GB disk space for partition number 0 Part Tag Flag Cylinders Size Blocks 0 unassigned wm 0 0 (0/0/0) 0 Enter partition id tag[unassigned]: ===> Enter blank Enter partition permission flags[wm]: ===> Enter blank Enter new starting cyl[0]: 1 ******IMP Note : never start from zero (0) instead start with 1, as explained above. Enter partition size[0b, 0c, 1e, 0.00mb, 0.00gb]: 15.96gb ===> allocate 15.96GB partition > p Current partition table (unnamed): Total disk cylinders available: 2085 + 2 (reserved cylinders)
Part Tag Flag Cylinders Size Blocks 0 unassigned wm 1 - 2084 15.96GB (2084/0/0) 33479460 ==>chk sz 1 unassigned wm 0 0 (0/0/0) 0 2 backup wu 0 - 2084 15.97GB (2085/0/0) 33495525 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0
13 | P a g e
5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 unassigned wm 0 0 (0/0/0) 0
partition> label ==> Save partition information Ready to label disk, continue? y partition> q
FORMAT MENU: disk - select a disk type - select (define) a disk type partition - select (define) a partition table current - describe the current disk format - format and analyze the disk fdisk - run the fdisk program repair - repair a defective sector label - write label to the disk analyze - surface analysis defect - defect list management backup - search for backup labels verify - read and display labels save - save new disk/partition definitions inquiry - show vendor, product and revision volname - set 8-character volume name !
format> verify Warning: Primary label on disk appears to be different from current label.
Warning: Check the current partitioning and 'label' the disk or use the 'backup' command.
Primary label contents:
Volume name = < > ascii name =
14 | P a g e
7 unassigned wm 0 0 (0/0/0) 0 8 boot wu 0 - 0 7.84MB (1/0/0) 16065 9 unassigned wm 0 0 (0/0/0) 0
format> format> q # mgracsolsrv64bit1:[root]$ prtvtoc /dev/rdsk/c0t2d0s0 * /dev/rdsk/c0t2d0s0 partition map * * Dimensions: * 512 bytes/sector * 63 sectors/track * 255 tracks/cylinder * 16065 sectors/cylinder * 2087 cylinders * 2085 accessible cylinders * * Flags: * 1: unmountable * 10: read-only * * First Sector Last * Partition Tag Flags Sector Count Sector Mount Directory 0 0 00 16065 33479460 33495524 2 5 01 0 33495525 33495524 8 1 01 0 16065 16064 mgracsolsrv64bit1:[root]$
5) Create File system and Mount point.
The location of block disk device files is /dev/dsk, while raw(character) disks are located in /dev/rdsk.
For every disk device, there are usually two device files - the block device and the character ("raw") device. In general:
• block devices are generally stored under /dev/dsk and used for filesystem type access (e.g mount) • character devices are generally stored under /dev/rdsk used for everything else (e.g. fsck, newfs, etc..)
In Solaris whenever you create a new slice using format command a raw physical slice or a Raw Device will be created which is addressed as /dev/rdsk/c#d#s# where # is the number for slice.
After formatting it with newfs command the slice will be addressed as /dev/dsk/c#d#s# which can now be used for mounting.
15 | P a g e
Block disk device ======# ls -ltrh /dev/ dsk /c0t2d0s0 lrwxrwxrwx 1 root root 47 Jul 10 19:34 /dev/dsk/c0t2d0s0 -> ../../devices/pci@0,0/pci8086,2829@d/disk@2,0:a
Raw (character) disks ======# ls -ltrh /dev/ rdsk /c0t2d0s0 lrwxrwxrwx 1 root root 51 Jul 10 19:34 /dev/rdsk/c0t2d0s0 -> ../../devices/pci@0,0/pci8086,2829@d/disk@2,0:a, raw
E.g. Breaking Down c0t2d0s7 ======This section breaks down the different components of a disk device file. In this example, I will be using the disk device file: c0t2d0s7 . The four components of the disk device file are: controller, target, LUN and slice/partition and further defined in the following table:
This device is attached to controller #0. On a SPARCstation this is c0 usually the on-board SCSI or IDE controller. If this is a PC it usually refers to the first IDE controller on the motherboard. The device is target #2 - (i.e. the second device on this controller.) On a SCSI controller this is the SCSI target ID and is usually set via a switch on any external enclosure or by jumpers on the disk itself. t2 On an IDE controller target #2 ref ers to the second IDE disk. With IDE this is generally determined by the device's position on the IDE cable. The device is Logical Unit / "LUN" #0 (the first) on this target. d0 Under SCSI a single target can support up-to eight devices. This is rarely seen in practice, but some hardware raid controllers use LUNs. Slice or Partition number 7. Under Solaris, this relates to the s7 partition number as set when using the format command.
http://docs.oracle.com/cd/E19620-01/805-3727/6j3ht4dkb/index.html#disksxadd-41967 http://www.shrubbery.net/solaris9ab/SUNWaadm/SYSADV1/p101.html
newfs /dev/ rdsk /c0t2d0s 0
mgracsolsrv64bit1:[root]$ newfs /dev/rdsk/c0t2d0s 0 newfs: construct a new file system /dev/rdsk/c0t2d0s0: (y/n)? y Warning: 5340 sector(s) in last cylinder unallocated /dev/rdsk/c0t2d0s0: 33479460 sectors in 5450 cylinders of 48 tracks, 128 sectors 16347.4MB in 341 cyl groups (16 c/g, 48.00MB/g, 5824 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 98464, 196896, 295328, 393760, 492192, 590624, 689056, 787488, 885920, Initializing cylinder groups:
16 | P a g e
...... super-block backups for last 10 cylinder groups at: 32540064, 32638496, 32736928, 32835360, 32933792, 33032224, 33130656, 33229088, 33327520, 33425952 mgracsolsrv64bit1:[root]$
Check Filesystem or any issues ======fsck /dev/ dsk /c0t2d0s0 OR fsck /dev/ rdsk /c0t2d0s0
mgracsolsrv64bit1:[root]$ fsck /dev/dsk/c0t2d0s0 ** /dev/ rdsk /c0t2d0s0 ** Last Mounted on ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3a - Check Connectivity ** Phase 3b - Verify Shadows/ACLs ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cylinder Groups 2 files, 9 used, 16485995 free (11 frags, 2060748 blocks, 0.0% fragmentation)
Information before mounting ======# df -h Filesystem size used avail capacity Mounted on /dev/dsk/c0t0d0s0 8.1G 5.1G 3.0G 64% / /devices 0K 0K 0K 0% /devices ctfs 0K 0K 0K 0% /system/contract proc 0K 0K 0K 0% /proc mnttab 0K 0K 0K 0% /etc/mnttab swap 3.1G 984K 3.1G 1% /etc/svc/volatile objfs 0K 0K 0K 0% /system/object sharefs 0K 0K 0K 0% /etc/dfs/sharetab /usr/lib/libc/libc_hwcap1.so.1 8.1G 5.1G 3.0G 64% /lib/libc.so.1 fd 0K 0K 0K 0% /dev/fd swap 3.1G 36K 3.1G 1% /tmp swap 3.1G 36K 3.1G 1% /var/run /dev/dsk/c0t0d0s7 7.1G 3.7G 3.4G 53% /export/home winshare 225G 132G 93G 59% /mnt/sf_winshare
Create mount Directory ======mkdir /u01
Mount Filesystem with above Directory: use block disk device ======mount -F ufs /dev/dsk/c0t2d0s0 /u01
17 | P a g e
Above Command will update into /etc/mnttab file ======cat /etc/mnttab
Check currently if they mounted ======mgracsolsrv64bit1:[root]$ mount |egrep 'u01|u02' /u01 on /dev/dsk/c0t2d0s0 read/write/setuid/devices/rstchown/intr/largefiles/logging/xattr/onerror=panic/dev =840080 on Thu Oct 17 14:18:44 2013
mgracsolsrv64bit1:[root]$ df -h |egrep 'Filesystem|u01|u02' Filesystem size used avail capacity Mounted on /dev/dsk/ c0t2d0s0 16G 16M 16G 1% /u01
To make permanent visible after every restart add mount details in /etc/vfstab ======
# cat /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - /dev/dsk/c0t0d0s1 - - swap - no - /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no - /dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes - /devices - /devices devfs - no - sharefs - /etc/dfs/sharetab sharefs - no - ctfs - /system/contract ctfs - no - objfs - /system/object objfs - no - swap - /tmp tmpfs - yes -
/etc/vfstab
To see the difference between the block device and character device for a device, consider the following. The /etc/vfstab contains entries for a single filesystem on a Solaris server: /dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes - The first 2 fields in the above entry, list the same disk device as both a block device ("dsk") and character device ("rdsk"). The block device is used by mount when mounting the filesystem while the character device is used by fsck when checking the filesystem and newfs when creating the filesystem. Both fields must be present in /etc/vfstab.
18 | P a g e
Backup /etc/vfstab as below ======# cp /etc/vfstab /etc/vfstab.orig.bkp
# vi /etc/vfstab
Add below lines in vfstab file /dev/dsk/c0t2d0s0 /dev/rdsk/c0t2d0s0 /u01 ufs 2 yes -
# cat /etc/vfstab
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - /dev/dsk/c0t0d0s1 - - swap - no - /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no - /dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes - /dev/dsk/c0t2d0s0 /dev/rdsk/c0t2d0s0 /u01 ufs 2 yes - /devices - /devices devfs - no - sharefs - /etc/dfs/sharetab sharefs - no - ctfs - /system/contract ctfs - no - objfs - /system/object objfs - no - swap - /tmp tmpfs - yes - /export/home/oracle/tmp/oracle_install_swap - - swap - no - /mytemp/oracle_install_swap - - swap - no - #
Restart Server and check if they get’s mounted automatically :
# init 6 => will reboot server.
mgracsolsrv64bit1:[root]$ df -h |egrep 'Filesystem|u01|u02' Filesystem size used avail capacity Mounted on /dev/dsk/ c0t2d0s0 16G 16M 16G 1% /u01
19 | P a g e
References: http://docs.oracle.com/cd/E19620-01/805-3727/6j3ht4dk7/index.html http://docs.oracle.com/cd/E19620-01/805-3727/6j3ht4dkb/index.html#disksxadd-33190 http://www.idevelopment.info/data/Unix/Solaris/SOLARIS_UnderstandingDiskDeviceFiles.shtml http://www.idevelopment.info/data/Unix/Solaris/UNIX_Solaris_home.shtml cfgadm : http://docs.oracle.com/cd/E19469-01/819-6562-17/chapter11_disk.html network : http://docs.oracle.com/cd/E19665-01/819-5235-13/chapter4.html#d0e5222 http://docs.oracle.com/cd/E19665-01/819-5235-13/chapter9.html http://docs.oracle.com/cd/E18752_01/html/816-4520/tasks-disksets-41.html http://gurkulindia.com/main/2012/02/configuring-solaris-10-host-with-san-storage-emc-clarion/ block/raw device : http://docs.oracle.com/cd/E19455-01/805-6331/6j5vgg68a/index.html http://www.geekinterview.com/question_details/25057 http://www.idevelopment.info/data/Unix/Solaris/SOLARIS_RemovingInvalidDiskDeviceFiles.shtml http://www.shrubbery.net/solaris9ab/SUNWaadm/SYSADV1/p115.html
20 | P a g e