Translation Deutsch

Freeing Disk Space

If you think you are running near the end of your disk space, this information may help you.

Firstly confirm what devices you have, whether they are mounted or not. Run (as root or sudo)

fdisk -l

Then see which of those are mounted and what space is available on them by typing in a console

df -hT

or in X Windows, run the program kdf.

If you feel that you need to free up some space, here are a few tips and tricks.

Command line tools to see which package are using the most disk space:

In lenny, aptitude has "why" and "why-not".

 aptitude why package1 

shows why package1 may have been installed.

 aptitude why package1 package2 

tries to work out why installing package1 would drag in package2.

"why-not" looks at conflicts.

These commands only provide one possible explanation. Check /var/log/aptitude for definitive information.

Using aptitude to list uninstalled recommended or suggested packages:

aptitude search '~RBsuggests:~i!~i' 

To list upgradeable packages:

 aptitude search '~U' 

To list manually installed packages:

 aptitude search '~i!~M'

To install without recommends but not uninstalling other recommends:

 aptitude install -R -o Aptitude::Keep-Recommends=true 

To list packages in decreasing order of size:

 aptitude -F '%I %p' search '~i'|egrep '^[0-9]+[\.,]?[0-9]*[MG]B'|sort -n

Using dpigs (debian-goodies):

 dpigs -n50

Using ?DebianPkg:wajig:

 wajig size

Tools to erase

files you do not want

packages you do not want

Tools to alter files to reduce them

Stripping dbus-daemon exposes a bug in BFD. Executing in find /usr/bin -not -name strip -and -not -name dbus-daemon -execdir strip --strip-unneeded '{}' \;  reduced the size of contents of the directory in a Squeeze installation from 140MB to 120MB.

Do not compress bash or your scripts will crash. Compressed executables may require more memory when run.

Reduce data creation

Use the following line as your /etc/rsyslog.conf configuration file in order to not save logs but output them on virtual terminal 12:

On systems that have been running for some time you might consider stripping out old log files.

Note that localepurge is a package that will strip unwanted language versions from everything you install. If you want a new language in the future you will have to add the locale and then re-install the package.

You might consider running  dpkg -l  periodically and manually going through it to see if there are packages which you never use. Alternately you can install the package popularity-contest and run  popularity-contest | sort > popcon  This will list the packages in least-used order in a text file called ~/popcon. Then to actually remove some unwanted/unused package you can do  aptitude purge -s <unwanted package>  to simulate the process and see what else is affected. You can answer yes to seemingly drastic removals because the  -s  makes it simulate and report, not actually execute. Once you are happy with the consequences do  aptitude purge <unused package>  and aptitude will still tell you what it's doing and what dependencies are affected, but when you say Yes, it will actually execute the removal.

Using a compressed filesystem can save a lot of space. Typically squashfs reduces space used by about 50%, but it is read-only.

ToDo - Check media compressions.