1

I would like to know what is contained in the "/" directory and is it capable of utilizing 50GB. My system all the 50GB allocated to "/" had been utilized. I want to know what to delete if want to utilize the space in an efficient way? I can't see any big files in "/" .

Anthon
  • 79,293

2 Answers2

0

The directory / contains several directories like /usr and /var which may contain a lot of data.

Use du -sh /{usr,var} to see which directories contain the most data.

You most probably want to have a look into /var/log which might contain a lot of old log files, /var/cache which might contain a lot of cached files used by your package manager and /var/tmp which might contain a lot of temporary files.

Also the homedirectory of the user root resides in /root which is on your / filesystem. Maybe the root user stored a lot of files into the homedirectory.

There can be some other possibilities but to avoid listing them I advise to start with the above, if that does not clarifies the disk usage to you do du sh /* and extract the directories residing on the / filesystem and analyze them all.

Lambert
  • 12,680
0

Space doesn't get allocated to directories, so it's impossible to utilize all the space allocated to a directory.  Space gets allocated to filesystems.  (If you don't understand what a "filesystem" is, think of it, to a first approximation, as a partition.)  Filesystems contain directory trees; a filesystem is generally referenced by the name of the directory at the top of its tree.  So, for example, you always have a / filesystem; /home, /usr, and /tmp are frequently separate filesystems.  Things like /proc and /sys are special file systems; sometimes /dev and/or /devices are, also.  They don't take up any real disk space at all (or very little), so let's ignore those for the moment.

To find out what filesystems your system has, run the mount command.  You should get output something like this:

/dev/sda5 on  /  type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
tmpfs on /tmp type tmpfs (rw,noexec,nosuid)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
/dev/sda6 on /mydata type ext2 (rw)
/dev/sda7 on /backup type vfat (rw)
/dev/sdb on /media/myusb type vfat (rw,nosuid,nodev)

The directory names that appear as the third word on each line (after the on) are the mounted filesystems.  So anything of the form /proc/something is in the /proc filesystem, anything of the form /backup/something is in the /backup filesystem, and so on.  Everything else under the sun is part of the / filesystem.  This gives you a first idea of where you need to be looking.

Also, of course, the df command lists your filesystems along with total size, used space, and available space.


find / -type d -print

will list all the directories in the system.  If your version of find supports it,

find / -maxdepth 2 -type d -print

will list all the directories in the first two levels; i.e., it will include /usr/share but not /usr/share/man.  And

find / -xdev  -maxdepth 2 -type d -print

or

find / -mount -maxdepth 2 -type d -print

will list the first two levels of directories in the / filesystem.  This gives you a better idea of where you need to be looking.


But, if your system supports this, you can go one better:

du -x -d2 /

or

du --one-file-system --max-depth=2 /

will show you the space used in each directory in the first two levels of directories in the / filesystem.  (Note that it shows cumulative totals; e.g., the number shown for /usr includes files in /usr/bin, /usr/share, etc.)  This can help you find out where your disk space is being used.  (Sorting it by size is a useful trick to find the directories that are using the most space.)