1. Step: Find out what problem you actually have
When your filesystem is unexpectedly full, there are a lot of possible causes. See Eliah Kagan's answer for some more about this. In the vast majority of cases it should be easy to identify (and eventually repair) the real cause, so reformatting/reinstalling would not be necessary.
So the first step is to find out, what exactly is the problem, i.e., where has the missing space gone. So first execute
df -hl -x tmpfs -x devtmpfs
This shows a list of all the used partitions of the disks in your machine, their size, how full they are and their mount point. From this list, take the one which you think is too full and note its mount point. In your case, it is the root file system which is mounted at /
.
Now we analyze where inside this file system the space is used. Execute
sudo du -xhsc /* 2> /dev/null
(Replace /
with the mount point identified above.)
It needs sudo because not all directories might be readable for your user. It may take some time (especially on large file systems) because it needs to visit every single directory on them.
What this command does is to show you each file and directory inside the given directory together with its size (including subdirectories).
So from this list take the one(s) which you think is larger than it should be, and call the command again on this directory. (That is, run the command again, but with the name of a big directory from a previous listing replacing /
.)
For example, in your case it was clear /var
was the only big directory, so you would need to execute
sudo du -xhsc /var/* 2> /dev/null
Continue with these steps until you have either found a single file which is so big, or you have found a directory with lots of files that together take up all that space.
In your case the next step was to execute
sudo du -xhsc /var/log/* 2> /dev/null
because /var/log
was so big, and this showed you that there was a single log file named uvcdynctrl-udev.log
with 174GB (which is obviously bad).
2. Step: Identify why the files are there and why they are so big
Now we need to find out why the identified are there, or why they are so big, if they are expected to be there.
In your case, a log file in /var/log
is nothing suspicious, but its size surely is. Fortunately, a Google search simply with the file name brings up the following bug report as the first hit, which is clearly the same problem as we have: http://bugs.launchpad.net/ubuntu/+source/libwebcam/+bug/811604
3. Step: Solve the problem
In this case, a log file of some webcam-related stuff seems not to be interesting, so we can easily delete it with the command sudo rm /var/log/uvcdynctrl-udev.log
and free all the space.
Unfortunately, the bug report is still open, and there are no solutions or workarounds in the comments, so you probably have to live with this bug for now. You can delete the log file from time to time to free some space.