- Check Disk Space with the Commands du and df - Linux
- How to find size of directory in linux
- How do I get the size of a directory on the command line
- Linux Check Disk Space Command To View System
- display the size and other stats of a file/directory or a filesystem.
- How to Get the Size of a Directory in Linux | Linuxizelinuxize.com › post › system Linux and Unix du command tutorial with examples
To answer these questions, I published an article in 2013. Since then it attained nearly half a million views. After 7 years, i find myself prompted to add some more details on it in relation to latest developments around this. So, please have all your above answers here:
Linux (and Typically all UNIX based or UNIX alike systems including AIX, Solaris, MAC or CentOS) offer two commands for checking out free disk space.
1. Linux "df" command :
Report file system disk space usage. That is, it shows information about the file system on which each FILE resides, or all file systems by default.
Syntax: df [OPTION]... [FILE]...
Mandatory arguments to long options are mandatory for short options too.
-a, --all include dummy file systems
-B, --block-size=SIZE use SIZE-byte blocks
-h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)
-H, --si likewise, but use powers of 1000 not 1024
-i, --inodes list inode information instead of block usage
-k like --block-size=1K
-l, --local limit listing to local file systems
--no-sync do not invoke sync before getting usage info (default)
-P, --portability use the POSIX output format
--sync invoke sync before getting usage info
-t, --type=TYPE limit listing to file systems of type TYPE
-T, --print-type print file system type
-x, --exclude-type=TYPE limit listing to file systems not of type TYPE
-v (ignored)
--help display this help and exit
--version output version information and exit
SIZE may be (or may be an integer optionally followed by) one of following:
kB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.
EG. I am in a directory. But "df" command has nothing to deal with that. It outputs current OVERALL status of the system and its partitions.
2. Linux "du" command :
Estimate file space usage. That is, it summarize disk usage of each FILE, recursively for directories.
Syntax: du [OPTION]... [FILE]...
Mandatory arguments to long options are mandatory for short options too.
-a, --all write counts for all files, not just directories
--apparent-size print apparent sizes, rather than disk usage; although
the apparent size is usually smaller, it may be
larger due to holes in (`sparse') files, internal
fragmentation, indirect blocks, and the like
-B, --block-size=SIZE use SIZE-byte blocks
-b, --bytes equivalent to `--apparent-size --block-size=1'
-c, --total produce a grand total
-D, --dereference-args dereference only symlinks that are listed on the
command line
--files0-from=F summarize disk usage of the NUL-terminated file
names specified in file F
-H like --si, but also evokes a warning; will soon
change to be equivalent to --dereference-args (-D)
-h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)
--si like -h, but use powers of 1000 not 1024
-k like --block-size=1K
-l, --count-links count sizes many times if hard linked
-m like --block-size=1M
-L, --dereference dereference all symbolic links
-P, --no-dereference don't follow any symbolic links (this is the default)
-0, --null end each output line with 0 byte rather than newline
-S, --separate-dirs do not include size of subdirectories
-s, --summarize display only a total for each argument
-x, --one-file-system skip directories on different file systems
-X FILE, --exclude-from=FILE Exclude files that match any pattern in FILE.
--exclude=PATTERN Exclude files that match PATTERN.
--max-depth=N print the total for a directory (or file, with --all)
only if it is N or fewer levels below the command
line argument; --max-depth=0 is the same as
--summarize
--time show time of the last modification of any file in the
directory, or any of its subdirectories
--time=WORD show time as WORD instead of modification time:
atime, access, use, ctime or status
--time-style=STYLE show times using style STYLE:
full-iso, long-iso, iso, +FORMAT
FORMAT is interpreted like `date'
--help display this help and exit
--version output version information and exit
SIZE may be (or may be an integer optionally followed by) one of following:
kB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.
Eg. I am in a directory. The "du" command tells about that directory. For eg. the following picture directly outputs the total size of that folder.
Just to add more:
Remember 3 important commands when you are sitting on a linux, solaris, AIX, FreeBSD, or Mac Box [Huh, enuff. Just remember Unix :) ]
1. df
df command can get how much space is occupied and how much available space.
You can give a device or mount point as an argument, and df report data only for the filesystem physically residing on that device. For example, the following command provides information only for the partition /dev/sda:
$ df /dev/sda
$ df -h /dev/sdc1
$ df /data/
2. du
du is the abbreviation of “disk usage”, this command will progressively into each subdirectory
Also, we can use the du command to look at the file size:
du anwar.txt
Remember, when du reports file sizes in blocks, the size it uses depends on several factors. You can specify which block size it should use on the command line. If you don’t force du to use a particular block size, it follows a set of rules to decide which one to use.
First, it checks the following environment variables:
DU_BLOCK_SIZE
BLOCK_SIZE
BLOCKSIZE
If any of these exist, the block size is set, and du stops checking. If none are set, du defaults to a block size of 1,024 bytes. Unless, that is, an environment variable called POSIXLY_CORRECT is set. If that’s the case, du defaults to a block size of 512 bytes.
So, how do we find out which one is in use? You can check each environment variable to work it out, but there’s a quicker way. Let’s compare the results to the block size the file system uses instead.
To discover the block size the file system uses, we’ll use the tune2fs program. We’ll then use the -l option, pipe the output through grep, and then print lines that contain the word “Block.”
In this example, we’ll look at the file system on the first partition of the first hard drive, sda1, and we’ll need to use sudo:
sudo tune2fs -l /dev/sda1 | grep Block
3. fdisk
fdisk can be used to manage disk partitions. One can do tasks like create new partition or delete an existing partition
There is yet another tool/ command that you can use:
btrfs fi df /device/ – Show disk space usage information for a btrfs based mount point/file system.
Hope this acts like a quick guide to men and women trying to play with Linux and other UNIX alike systems.
Original post link: https://www.w3lc.com/2013/05/checking-file-system-directory-size-in.html
Cheers :)
No comments:
Post a Comment