Easy Way to Upgrade FreeBSD’s Ports

Before you can update and upgrade the FreeBSD’s ports, the Ports Collection needs to be updated. Follow step here to update the Ports Collection.

Once you updated your Ports Collection, before attempting a port upgrade, you should check the /usr/ports/UPDATING file. This file describes various issues and additional steps users may encounter and need to perform when updating a port.

Keeping the ports up to date can be a tedious job. Just for example, to upgrade a port you need to go to the ports directory, build the port, deinstall the old port, install the new port, and then clean up after the build. If there are numerous ports that need to be upgrade, it will be very troublesome. This was a large problem for system administrators to deal with, and FreeBSD have utilities which do this automatically, and that’s sysutils/portupgrade utility.

To install sysutils/portupgrade utility, use the command just as to install any other port: make install clean.

Create a database with the following command: pkgdb -F

The command will read the list of installed ports and create a database file in the /var/db/pkg directory.

Run portupgrade -a to start to update the ports.

The portupgrade will read the database file created by pkgdb -F and the ports INDEX file. Finally, portupgrade will begin to download, build, backup, install, and clean the ports which have been updated.

Portupgrade utility has a lot of options for different uses, the most important ones listed below.

If you want to upgrade only a certain application, not the complete database, use portupgrade pkgname, include the flags -r if portupgrade should act on all those packages depending on the given package as well, and -R to act on all packages required by the given packages.

To use packages instead of ports for installation, provide -P. With this option portupgrade searches the local directories listed in PKG_PATH, or fetches packages from remote site if it is not found locally. If packages can not be found locally or fetched remotely, portupgrade will use ports. To avoid using ports, specify -PP.

To just fetch distfiles (or packages, if -P is specified) without building or installing anything, use -F.

Note: It is important to regularly update the package database using pkgdb -F to fix inconsistencies, especially when portupgrade asks you to. Do not abort portupgrade while it is updating the package database, this will leave you an inconsistent database.


Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to comments feature has been disabled. To receive notification of latest comments posted, subscribe to My Digital Life Comments RSS feed or register to receive new comments in daily email digest.
Custom Search

New Articles

Incoming Search Terms for the Article

upgrade port - upgrade ports - freebsd portupgrade - freebsd pkg_path - ports upgrade - upgrade ports freebsd - freebsd port upgrade - freebsd update packages - best way to update freebsd - freebsd ports upgrade - freebsd upgrading packages - freebsd pkg update - freebsd upgrade port - freebsd upgrade package - pkg upgrade freebsd - package updates freebsd - freebsd package update - pkg_path freebsd - Ports update freebsd - freebsd upgrading ports - how to update freebsd ports - freebsd+how to upgrade ports - freebsd upgrade all ports - freebsd ports upgrade system - update pkg database freebsd - upgrade port package - clean port freebsd - freebsd update package database - freebsd ports pkg update - portupgrade - portupgrade freebsd - upgrade packages + freebsd - freebsd ports or packages - how to update packages on FreeBSD - port update freebsd how to - upgrading packages freebsd - update freebsd ports - freebsd port cleanup unused ports - portupdate freebsd - portupgrade package upgrade - freebsd pkgdb how to - upgrade package freebsd - freebsd clean ports - upgrade port freebsd - freebsd ports upgrade port - freebsd portsupgrade - package update freebsd - how to update Apache on freebsd using ports - upgrade port using package - upgrade apache22 freebsd -