rlprd(8)
π rlprd(8) β the remote printing proxy daemon bestie π
aka rlprd β from the UNIX Reference Manual, no less π
β¨ NAME β¨
rlprd β remote printing proxy daemon π¨οΈβ¨
π SYNOPSIS π
rlprd [-nqV] [-pport] [-ttimeout] [--debug]
okay so that's the whole vibe right there, short and slay π
π¦ DESCRIPTION π¦
So like. rlprd is a proxy that sits between the remote printing commands β that's rlpr(1), rlpq(1), and rlprm(1) β and your standard lpd print servers. It's for when those remote printing commands literally cannot be installed setuid root, which, yeah, happens π. Wanna know how to actually configure the remote printing commands? Bestie, go read rlpr(1), it's all in there. π«Ά
Now the important part, no cap: rlprd has to be installed setuid root. Like, it needs that. If it can't run that way, it is useless. Not even exaggerating, that's just the truth. π
Here's how it works, and it's lowkey iconic: it takes the non-privileged port requests coming from rlpr(1) clients and maps them onto privileged ports, so the lpd's will actually listen to them. And the whole "we're losing the security of privileged ports" thing? Not a problem, fr fr β that "security" is a non-issue anyway, because the Internet is no longer just Unix, and Unix is literally the only OS that even has the privileged port concept. π
Also, huge clarification: rlprd is NOT a replacement for lpd(8). It just passes data along to an lpd(8) on a target machine β and that target machine gets specified by an invocation of a remote printing command. But here's the cute part: when a client is using the rlpr suite of tools to do remote printing, that client does not need to run an lpd(8) locally. Main character energy, honestly. π
β οΈ okay so heads up bestie, this one matters: once an rlprd is set up on a network (and yes, that includes the Internet π), any host may connect to it and use its proxy services β as long as it knows the name of the machine running it. So, like, keep that in mind. π
π OPTIONS π
--debugβ prints gobs and gobs of debugging info. gobs. π-n,--no-daemonβ don't runrlprdas a daemon. Usually not needed. π€-p,--port=numberβ pick an alternate port to listen on (instead of the default7290). Usually not needed. π-q,--quiet,--silentβ quiet mode, so stay quiet and chill π§ β except for fatal errors, those still get to speak.-t,--timeout=secondsβ sets the inactivity timer. If the connection hangs for more than seconds seconds, thenrlprdwill time out that connection. There's a special value,-1, if you wanna wait forever (romantic β¨). Default timeout is3seconds.-V,--versionβ prints the version and exits, bye π
πΈ SEE ALSO πΈ
rlpr(1), rlpq(1), rlprm(1), rlprrc(5) β go read them, iykyk π
π AUTHOR π
meem <meem@gnu.org> β an actual legend, we stan π
π BUGS/LIMITATIONS π
Currently, it is not possible to run rlprd from inetd(8). That's the limitation, bestie. That's it. π₯²
and that's the whole page, mwah π this was rlpr version 2.04, dated 1999/10/28 β yeah it's vintage, it's still iconic, periodt. ππ¦πΈ
π¦ where this page comes from
- debian bookworm: rlpr 2.05-5+b2
- debian trixie: rlpr 2.06-2 Β· GPL-1.0-or-later
- ubuntu jammy: rlpr 2.05-5
- ubuntu noble: rlpr 2.06-2build1 Β· GPL-1.0-or-later
- ubuntu questing: rlpr 2.06-3
- ubuntu resolute: rlpr 2.06-3build1 Β· GPL-1.0-or-later
- ubuntu stonking: rlpr 2.06-3build1 Β· GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms