Important: You are required to change your passwords used for Gentoo services and set an email address for your Wiki account if you haven't done so. See the full announcement and Wiki email policy change for more information.

eclean

From Gentoo Wiki
Jump to: navigation, search

eclean is a tool for cleaning Portage source files and binary packages.

Installation

Install app-portage/gentoolkit:

root # emerge --ask gentoolkit

Usage

By default, source files are in /usr/portage/distfiles, while binary packages are in /usr/portage/packages; this can be changed by altering the DISTDIR and the PKGDIR variables respectively in /etc/portage/make.conf. Both locations can grow quite big if not periodically cleaned.

You can clean the source files directory with the following command:

root # eclean distfiles

For the directory with the binary packages you should use the following command instead:

root # eclean packages

By default, source files and binary packages corresponding to any ebuild in the current Portage tree will not be deleted. This way, the user can easily downgrade a package or install a previously removed package, provided that it is still in the current Portage tree.

Let's make an example. Suppose packages foo-1.0 and foo-1.1 are both in the Portage tree. You update from foo-1.0 to foo-1.1, and then you run eclean distfiles: source files for both versions will be kept, so if you have any problem with foo-1.1 you can easily re-install foo-1.0 without re-downloading anything.

The other possible case is installing a previously removed package. Suppose you have package foo (any version) in the Portage tree. You (inadvertently) remove it, and then you run eclean distfiles: again, source files for foo will be kept, so you can re-install it without re-downloading anything.

The same examples also apply for binary packages.

If you want to save more disk space you can add the --destructive option: every source file or binary package that does not correspond to some currently installed package version will be deleted. Please notice that this way you won't be protected in case you need to downgrade a package or re-install a previously removed package.

As an alternative, you can use both the --destructive and the --package-names options: every source file or binary package that does not correspond to some currently installed package (version does not matter) will be deleted. You still won't be protected in case you need to re-install a previously removed package, but you will be protected if you need to downgrade a package.

For more details read the eclean(1) man page:

user $ man 1 eclean

See also