Berkeley printing system

{{Short description|Printing subsystem of BSD operating system}}

{{Expand German|date=January 2025}}

The Berkeley printing system is one of several standard architectures for printing on the Unix platform.{{Cite manual |url=https://www.office.xerox.com/support/dctips/dc99cc25.pdf |title=BSD vs. System V Printing |date=November 25, 2003 |publisher=Xerox Multifunction Devices |access-date=April 4, 2025}} It originated in 2.10BSD,{{Citation needed|date=April 2025|reason=Cannot find a source supporting its introduction in 2.10BSD}} and is still used to varying degrees in BSD derivatives such as FreeBSD,{{Cite web |date=June 6, 1993 |title=LPR(1) |url=https://man.freebsd.org/cgi/man.cgi?query=lpr&sektion=1&format=html |access-date=April 4, 2025 |website=FreeBSD Manual Pages |publisher=The FreeBSD Project}}{{Cite web |date=April 15, 2021 |title=LPD(8) |url=https://man.freebsd.org/cgi/man.cgi?query=lpd&sektion=8&format=html |access-date=April 4, 2025 |website=FreeBSD Manual Pages |publisher=The FreeBSD Project}} NetBSD,{{Cite manual |title=The NetBSD Guide |publisher=The NetBSD Foundation |year=2025 |chapter=Chapter 12. Printing, Part III. System configuration, administration and tuning |chapter-url=https://www.netbsd.org/docs/guide/en/chap-print.html}} OpenBSD,{{Cite manual |title=OpenBSD manual page server |date=June 17, 2023 |publisher=OpenBSD |chapter=LPD(8) |access-date=April 4, 2025 |chapter-url=https://man.openbsd.org/lpd.8}} and DragonFly BSD.{{Cite manual |title=DragonFly On-Line Manual Pages |publisher=Dragonfly BSD |chapter=LPR(1) |access-date=April 4, 2025 |chapter-url=https://man.dragonflybsd.org/?command=lpr§ion=1}}{{Cite manual |title=DragonFly On-Line Manual Pages |publisher=Dragonfly BSD |chapter=LPD(8) |access-date=April 4, 2025 |chapter-url=https://man.dragonflybsd.org/?command=lpd§ion=8}} A system running this print architecture could traditionally be identified by the use of the user command lpr as the primary interface to the print system, as opposed to the System V printing system lp command.{{Cite book |last=Shah |first=Ankur |title=CUPS Administrative Guide |publisher=Packt |year=2008 |isbn=978-1847192585 |chapter=History of Printing in UNIX |access-date=April 4, 2025 |chapter-url=https://fwdbook.qq.com/read/1034852842/15?source=m_jump}}{{Cite web |last=Sanderson II |first=Steven P. |date=January 31, 2025 |title=Complete Guide to Linux Printing Commands: From Basic to Advanced |url=https://www.spsanderson.com/steveondata/posts/2025-01-31/ |access-date=April 4, 2025 |website=spsanderson.com}}

Typical user commands available to the Berkeley print system are:

  • lpr — the user command to assign a job to the print queue
  • lpq — shows the current print queue
  • lprm — deletes a job from the print queue

The lpd program is the daemon with which those programs communicate.

These programs support the line printer daemon protocol, so that other machines on a network can submit jobs to a print queue on a machine running the Berkeley printing system, and so that the Berkeley printing system user commands can submit jobs to machines that support that protocol.{{Cite IETF|rfc=1179|title=Line Printer Daemon Protocol|first1=Leo|last1=McLaughlin|url=https://datatracker.ietf.org/doc/html/rfc1179|date=August 1990|publisher=IETF|access-date=April 4, 2025}}

References

See also