Howto Find Out or Learn Harddisk Size in Linux or UNIX

by on August 8, 2006 · 18 comments· LAST UPDATED March 21, 2011

in

How do I find out my installed hard disk size in Linux or UNIX like operating systems?

Under Linux and UNIX operating systems you can use the df command. The df command displays the amount of disk space available on the file system containing each file name argument. If no file name is given, the space available on all currently mounted file systems is shown.

Task: Display Hard Disk Partition Size

Open a command-line terminal (select Applications > Accessories > Terminal), and then type:
$ df
Sample outputs:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hdb1             19228276  14699744   3551784  81% /
tmpfs                   384300         4    384296   1% /dev/shm
/dev/hdb5             27917308  23883184   2615988  91% /data/network

Task: Display Hard Disk Partition Size in Mega bytes or GB or TB

Type the following command:
$ df -H
Sample outputs:

Filesystem             Size   Used  Avail Use% Mounted on
/dev/hdb1               20G    16G   3.7G  81% /
tmpfs                  394M   4.1k   394M   1% /dev/shm
/dev/hdb5               29G    25G   2.7G  91% /data/network

Task: Display TOTAL Hard Disk Size

The fdisk command is partition table manipulator for Linux. But it can be used to display total hard disk size. You must type the following command as the root user:
# fdisk -l | grep Disk
Sample outputs:

Disk /dev/hda: 20.0 GB, 20060651520 bytes
Disk /dev/hdb: 80.0 GB, 80060424192 bytes
TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 18 comments… read them below or add one }

1 Ashish December 17, 2008 at 7:33 am

Hello Sir,
Pls verify the other userfull command for me on linux.

Reply

2 Andrew March 24, 2009 at 4:12 pm

Thanks for the fdisk -l tip! I’ve been wondering how to see total disk size, not just partitions. Now I know!

Reply

3 senshikaze July 1, 2009 at 2:35 pm

Nice and quick, thanks!

Reply

4 Louwrentius August 18, 2009 at 9:25 pm

The following command is an improvement of the Fdisk -l command, which is actually exactly what most people are looking for:

Bunny:~# fdisk -l 2> /dev/null | grep Disk | grep -v identifier
Disk /dev/sda: 60.0 GB, 60011642880 bytes
Disk /dev/sdb: 60.0 GB, 60011642880 bytes
Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes
Disk /dev/sdd: 1000.2 GB, 1000204886016 bytes
…..
Disk /dev/sdv: 1000.1 GB, 1000123400192 bytes
Disk /dev/md5: 18002.2 GB, 18002220023808 bytes

Reply

5 Elie October 8, 2009 at 1:20 pm

hi plz how put a hard disck in a server and mirror i want the comment

Reply

6 barth October 4, 2010 at 9:38 pm

> fdisk -l | egrep ‘Disk.*bytes’ | awk ‘{ sub(/,/,””); sum +=$3; print $2″ “$3″ “$4 } END { print “—————–“; print “total: ” sum ” GB”}’

and you will get something simillar to it:
/dev/sda: 80.0 GB
/dev/sdb: 120.0 GB
/dev/sdc: 2000.4 GB
/dev/sdd: 250.1 GB
/dev/sde: 250.1 GB
—————–
total: 2700.6 GB

Reply

7 kamran March 9, 2011 at 5:05 pm

sir df is only work for mounted filesystem. and fdisk does’nt show any free space of the whole disk

Reply

8 bazooka May 18, 2011 at 2:51 am

why people need to show off with the linux command?

fdisk -l | egrep 'Disk.*bytes' | awk '{ sub(/,/,""); sum +=$3; print $2" "$3" "$4 } END { print "—————–"; print "total: " sum " GB"}'

wut the heck..why dont you type a little bit more until it becomes some great bash romance..i think this website has explain pretty well..or maybe u can check this link

http://www.cyberciti.biz/faq/linux-viewing-drive-partitions-with-fdisk-parted/

Reply

9 sandeep January 3, 2012 at 6:21 am

nice and helpful…

Reply

10 kamal March 28, 2012 at 2:01 pm

Hi
Thanks a lot
It’s very usefull for me.

I have one question…
below mentioned command will work on AIX, FreeBSD, HPUX, IRIX,Mac OS X, NetBSD, OpenBSD,OpenVMS, POWER HMC, IBM Hardware Management Consoles ,Solaris, Tru64,UnixWare, SCO OpenServer and SCO UNIX VMware ESX VMware ESXi …………???

fdisk -l | egrep ‘Disk.*bytes’ | awk ‘{ sub(/,/,””); sum +=$3; print $2″ “$3″ “$4 } END { print “—————–”; print “total: ” sum ” GB”}’

fdisk -l |grep Disk

Reply

11 Patrick July 4, 2012 at 7:09 am

Thanks ….it worked like a charm

Reply

12 indra September 10, 2012 at 9:43 am

thank u very much, great tips !!

Reply

13 shital September 19, 2012 at 7:37 am

is there a command that shows only used hard disk size??

Reply

14 gokul krishna February 14, 2013 at 6:19 am

thanks it really helped me

Reply

15 sdfasdfsdf February 25, 2013 at 1:30 pm

dmesg | grep GiB

Reply

16 fser May 27, 2013 at 4:06 pm

If using lvm, you can use pvdisplay

 # pvdisplay
  --- Physical volume ---
  PV Name               /dev/md2
  VG Name               alternc
  PV Size               1,79 TiB / not usable 768,00 KiB
  Allocatable           yes
  PE Size               4,00 MiB
  Total PE              468340
  Free PE               33652
  Allocated PE          434688
  PV UUID               DBE80K-p3VS-kdtX-e1eJ-Fqbt-diSD-FeNvPL

Reply

17 Asep Saepuloh February 10, 2014 at 5:13 am

Thank’s

Reply

18 MAK April 18, 2014 at 5:19 am

Our vendor has finished installing redhat OS on our servers & has submitted an installation report. When I verify the file system using df -h , the sum of the size of the file systems as shown in the output is greater than the actual HDD size allocated to that virtual machine. But when I use fdisk -l|grep Disk, the size shown in output matches with the hdd size. Can you please help me out as to how do I verify the file system ??

My aim is to match the HDD size allocated to particular Virtual machine with the total size all file systems on that VM.

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: