40GB drive formats to only 31GB?

Posted on 2002-06-20
Last Modified: 2008-03-06
I recently got a new Samsung 40GB hard drive and installed it as a slave drive.

My BIOS correctly identified the make and model number of the drive, and can support hard drives up to 136GB according to the documentation.

However, when I partition and format the drive, all I get and up with is 31GB.  What's the deal here?

prompt> fdisk /dev/hdb

[ make single partition /dev/hdb1 using all available sectors ]

prompt> mke2fs /dev/hdb1
prompt> mount /dev/hdb1 /mnt/samsung
prompt> df
/dev/hdb1              31G  718M   29G   2% /mnt/samsung

[this is after moving some data to the drive]

I was expecting 40G (or at least closer to it) when I df'ed.  Is the 31G to be expected?

Question by:truittj
  • 4
  • 2
  • 2
  • +1
LVL 51

Expert Comment

ID: 7098083
this is probably 'cause mke2fs used to much inodes by default.
You can check with
  sfdisk -s /dev/hdb1
  df -i /dev/hdb1

If you have too much inodes, make your filesystem like this:
   mke2fs -i 1024 /dev/hdb1

Expert Comment

ID: 7098898
How big does the bios report your drive as? Some drives need special jumper settings to show full 40 GB.

Author Comment

ID: 7099233
Here's what I see:

prompt# df -i /dev/hdb1
Filesystem        Inodes   IUsed   IFree IUse% Mounted on
/dev/hdb1        4128768   10168 4118600    0% /home

prompt# sfdisk -s /dev/hdb1

How do I know how many inodes are too many?  What is considered an acceptable block size or bytes/inode ratio?

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.


Author Comment

ID: 7099379
Here's a it more info on the formatted drive:

prompt# tune2fs -l /dev/hdb1
tune2fs 1.18, 11-Nov-1999 for EXT2 FS 0.5b, 95/08/09
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          dc5a4c99-6b68-4366-98de-6cfef71b171d
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      filetype sparse_super
Filesystem state:         not clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              4128768
Block count:              8255394
Reserved block count:     412769
Free blocks:              7941957
Free inodes:              4118601
First block:              0
Block size:               4096
Fragment size:            4096
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         16384
Inode blocks per group:   512
Last mount time:          Thu Jun 20 14:06:41 2002
Last write time:          Fri Jun 21 13:25:23 2002
Mount count:              4
Maximum mount count:      20
Last checked:             Wed Jun 19 10:10:17 2002
Check interval:           15552000 (6 months)
Next check after:         Mon Dec 16 09:10:17 2002
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               128


P.S. DVB - I have not yet rebooted to poke through the BIOS and see how large it reports the drive.  I'll let you know as soon as I look.


Author Comment

ID: 7099450
OK - BIOS report on the drive:

Samsung SV4002H  [this is the correct model number]

CHS Format

Cylinders: 16383
Heads: 16
Sectors: 63
Maximum capacity: 8455 MB

LBA Format

Total sectors: 66055248
Maximum capacity: 33820 MB
Multi-Sector Transfers: 16 Sectors
LBA Mode Control: Enabled
Transfer Mode: FPIO4 & Bus Mastering
Ultra DMA: Mode 2

So it looks as if it is indeed a BIOS issue.  Unfortunately, I don't have the motherboard manual - all I have is the online documentation at:

and that seems to give the impression that there aren't any jumper settings I need to worry about.  I'll check and see if there's a BIOS update I should install, and will take a look at the motherboard and try to see if there are any jumper candidates labeled.


Accepted Solution

DVB earned 200 total points
ID: 7100040
Ok, my drive has *two* jumpers, instead of one. Remove the HDD and see what the jumper settings have to be to keep the disk at 40G (thats will reports as 38.some GB since the marketing literature has 1GB = 1000 MB). The jumper settings are given on the HDD case itself.

Expert Comment

ID: 7100869
Well you probably resolved this by now but,

Your bios is ok for this size of drive as it has the extension necessary for up to 136 GB (the next barrier)

As DVB indicated the problem is most likely the 32/33 GB "clip".  The large drives now have a jumper that "clip" the size reporting to less than 40 GB to enable use on older systems that have a bios problem and where the bios cannot be updated, not your case.

Recheck the drive and remove the limiter clip.

You will have to redo the drive to get full value.

If you have trouble locating it the samsung tech site is

Good Luck

LVL 51

Expert Comment

ID: 7102151
> Inode count:              4128768
> Block count:              8255394
That's your problem, excatly as I assumed in my comment.
I don't have much experiance about the amount of inodes per amount of blocks, but it is roughly 5%, usually. For lage disks it could be less.
Make a new filesystem with less inodes. See the Large_Disk howtos.

Author Comment

ID: 7105001
Jumper setting on the drive itself it was - many thanks to DVB and ITsheresomewhere.  For reference, I was using the "lower 32GB" jumper setting for a slave drive, and had to change it to the "upper 32GB" jumper setting.  I'm not entirely sure what "lower" and "upper" refer to, but the "lower" setting will result in only 32GB being recognized, whereas the "upper" setting allows the BIOS to see the whole drive.

Thanks for the help!


Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
route 2 traffic streams on single NIC 6 49
Linux VM 6 89
linux(debian) mouse poor performance 4 41
ifconfig 4 46
rdate is a Linux command and the network time protocol for immediate date and time setup from another machine. The clocks are synchronized by entering rdate with the -s switch (command without switch just checks the time but does not set anything). …
If you have a server on collocation with the super-fast CPU, that doesn't mean that you get it running at full power. Here is a preamble. When doing inventory of Linux servers, that I'm administering, I've found that some of them are running on l…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question