Interviewer: Lets say there is a partition of 100GB. When i
tried to create a file using touch command, under any
directory, it was unable to create the file- '100% full
disk space'. I calculated the size of each and every
directory on that partition mannually by adding each file
size & in came out to be total size 50GB. Then where is the
remaining 50GB ? why it is showing disk space 100% full
in 'df -h' command?
Answers were Sorted based on User's Feedback
Answer / kenji
One possibility is that there are many small size files. "Small" is relative to block size. For example the block size of ext3 file system is 4096. A file size of 4097 uses 2 blocks resulting 50% efficiency. This can explain why 100G partition gets disk full at 50G usage.
Another possibility is there are processes having large open files which are not linked. Such files are not visible by 'ls' commands but their usage still shows up by df -h.
At the event of 'disk full' I would check inode usage as well. Normally max inodes were allocated as "partition size / block size" so insufficient inodes rarely happens. typing 'df -i' doesn't cost you much :-)
I initially thought of "inode full" which you can check by df -i
| Is This Answer Correct ? | 6 Yes | 1 No |
Answer / kenji
I guess "inode checking" part I posted was extraneous and not really true for today's large disk.
| Is This Answer Correct ? | 2 Yes | 1 No |
How do you make programs portable on unix and dos under such circumstances?
What is unix inode?
What is meant by u-area?
How do you determine and set the path in unix?
How to get the last word from a line in Unix file?
What is the property of unix?
Explain what are links and symbolic links in unix file system?
How would you display the last line of a file?
What is the root directory in unix?
Where is unix used today?
Which is the shell of unix?
How can you count the number of characters and lines in a file?