Linux Basics

How to add additional drive to CentOS server

add additional drive
add additional drive

How to add additional drive to CentOS server

We may need to add additional drive to CentOS server for extra disk space.

You can do it using the following steps.

First you need to check the disk space and available mounted drives using df command.

 
[root@server ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 528G 923M 500G 1% /
tmpfs 16G 0 16G 0% /dev/shm
/dev/sda1 3.9G 45M 3.7G 2% /boot
[root@server ~]#

From the above snippet, you can see that only one drive is mounted on the server. The newly added drive can be found by following command. (The command and its output is shown below):

 
[root@server ~]# fdisk -l

Disk /dev/sda: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 4294966784 bytes
Disk identifier: 0x0005aacb

Device Boot Start End Blocks Id System
/dev/sda1 * 523 1045 4194303+ 83 Linux
/dev/sda2 1045 2611 12582910+ 82 Linux swap / Solaris
/dev/sda3 2611 72582 562036669 83 Linux

Disk /dev/sdb: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf13441f5

Here you can see an additional drive of size 600 GB is added to the server and the server detected it as /dev/sdb.

Create a new partition table

You need to create a new partition on the new drive. Please run the following commands (the commands on blue colour).

 
[root@server ~]# fdisk /dev/sdb 
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x60f6329d.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p
Disk /dev/sdb: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x60f6329d
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-72961, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-72961, default 72961): 
Using default value 72961
Command (m for help): p
Disk /dev/sdb: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x60f6329d
Device Boot Start End Blocks Id System
/dev/sdb1 1 72961 586059201 83 Linux
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): L
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 
1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx 
5 Extended 42 SFS 86 NTFS volume set da Non-FS data 
6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 
8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt 
9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access 
a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O 
b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor 
c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs 
e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT 
f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b
11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 
12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor 
14 Hidden FAT16 <3 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 
16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS 
17 Hidden HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE 
18 AST SmartSleep 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep 
1c Hidden W95 FAT3 80 Old Minix be Solaris boot ff BBT 
1e Hidden W95 FAT1
Hex code (type L to list codes): 83
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

Mount

 

Check the new partition is added properly:

 
[root@server ~]# fdisk -l
Disk /dev/sda: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 4294966784 bytes
Disk identifier: 0x0005aacb
Device Boot Start End Blocks Id System
/dev/sda1 * 523 1045 4194303+ 83 Linux
/dev/sda2 1045 2611 12582910+ 82 Linux swap / Solaris
/dev/sda3 2611 72582 562036669 83 Linux
Disk /dev/sdb: 600.1 GB, 600127266816 bytes
255 heads, 63 sectors/track, 72961 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x60f6329d
Device Boot Start End Blocks Id System
/dev/sdb1 1 72961 586059201 83 Linux

Re-read the partition table by the following command

 
partprobe

Format the partition

 
mkfs.ext3 /dev/sdb1

Create a mount point

 
mkdir /backup

Mount the new partition permanently.

 
vim /etc/fstab

and add the following into it.

 
/dev/sdb1 /backup ext3 defaults 0 0

Then mount the new partition by the following command.

 
mount -a

check the new partition is added properly.

 
[root@server ~]# mount
/dev/sda3 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sdb1 on /backup type ext3 (rw)
[root@server ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 528G 923M 500G 1% /
tmpfs 16G 0 16G 0% /dev/shm
/dev/sda1 3.9G 45M 3.7G 2% /boot
/dev/sdb1 551G 198M 523G 1% /backup
[root@server ~]#

That’s it!

If you like this post and wish to receive more articles from us, please like our FB page: Grepitout

Your suggestions and feedbacks will encourage us and help to improve further, please feel free to write your comments.

For more details on our services, please drop us an E-mail at info@grepitout.com