The portreserve program aims to help services with well-known ports that lie in the bindresvport() range. It prevents portmap (or other programs using bindresvport()) from occupying a real service’s port by occupying it itself, until the real service tells it to release the port (generally in its init script).

I work on this application as part of my job at Red Hat.


Download tarball releases from:

Source Code

See the portreserve project on Pagure.

Bug Reporting

Report issues at Pagure.

6 Responses to “portreserve”

  1. Cyrus Mehta says:

    Sounds like a great utility, not asking for Solaris port, but just asking if you consider this a purely Linux solution to this very real problem across most Unices, or do you think it can be easily modified to support Solaris (Sparc if it matters).

  2. tim says:

    I don’t think there’s any reason it wouldn’t work on Solaris as-is to be honest, but I haven’t tried it.

  3. Paul Campbell says:

    Sorry if this is a dumb question.

    Why is portreserve needed ?

    I am trying to remove services that I don’t need.
    It looks like CUPS has a dependency on this.

    Can you point me to someplace where I can read more about the service ?

  4. tim says:

    It’s to prevent portmap from stealing well-known ports for services that are installed.

    Here’s the original discussion about the problem:

  5. […] a while ago I wrote portreserve, a utility to prevent ports getting stolen at boot time by portmap. This would happen with CUPS, […]

  6. bill says:

    Thanks for the utility and sharing.

Leave a reply

Comments are moderated. Comments that are inappropriate, offensive, vulgar, badly written or insulting will be deleted or edited to make the author look silly.