CHECKPC(8)

πŸ’– CHECKPC(8) β€” the checkpc command, bestie edition πŸ’–

okay so this is checkpc, from section 8 of the manual (the big-girl system admin section, yes ma'am πŸ‘‘). it's the little tool that goes through your printcap database and makes sure everything actually exists and has the right permissions. no cap. 🫢


✨ SYNOPSIS ✨

checkpc [ -aflprsV ] [ -Aage[DHMS] ] [ -Ddebugflags ] [ -Pprinter ] [ -t size[kM] ]

🌸 DESCRIPTION 🌸

so checkpc is literally out here checking that every entry in your printcap database exists and has the correct permissions. it's giving main character energy when you're installing a brand new printcap database, and also when you're cleaning up printer spoolers that have been sitting there since 2009 like πŸ’€

  • -a β€” bestie, do NOT create accounting files (:af). that's it, that's the whole vibe.
  • -f β€” the fix flag πŸ› οΈ. this makes checkpc create and fix all the various files and permissions. and like… it does it in a simple minded manner, which is the manpage's words not mine 😭. so you might have to run the program several times until all the permissions are finally correct. it also reports its actions in extremely verbose detail. it will not shut up and honestly? iconic.
  • -l β€” do NOT create log files (:lf). protecting your peace πŸŽ€.
  • -p β€” print verbose printcap info. super useful if you're nosy (affectionate) about the printcap values πŸ‘€.
  • -r β€” remove junk or job files older than the age set by -A. ⚠️ you MUST set the age to a non-zero value, otherwise literally no files get removed. zero means nothing happens, periodt.
  • -s β€” do NOT create filter status files (:ps). we simply are not doing that today πŸ’….
  • -A Age[DHMS] β€” report junk or job files older than age. the age time can have a suffix: days (D), hours (H), minutes (M), or seconds (S). default is days. ⏰
  • -D debugflags β€” run the program with debugging flags. see the LPRng HOWTO for the details of what the flags actually do πŸ•΅οΈβ™€οΈ.
  • -V β€” Verbose mode. yes queen, tell me everything πŸ“’.
  • -P printer β€” process only the specified print queue. just one. monogamy 🫢.
  • -t size[kM] β€” truncate log files (:lf) to the specified size in Kbytes or Mbytes (default is Mbytes). βœ‚οΈ
  • -T serial-line β€” set process name and start feature test. slay, go off πŸ”₯.

😭 ANNOYING FEATURES 😭

okay so this is the part where I hold your hand. if you use the -f (fix) option and you do NOT run this as root, it will complain… but then attempt to carry out the operations anyway. and bestie, that leads to a large number of failure reports if the ownership and/or permissions are incorrect. it's giving "I know I'm not supposed to be here but I'm going to try anyway" πŸ’€. so like, just run it as root, fr fr.


πŸ—‚οΈ FILES πŸ—‚οΈ

the files used by LPRng are set by values in the printer configuration file and by configuration options. the following are a commonly used set of default values:

/etc/lprng/lpd.conf                          LPRng configuration file
${HOME}/.printcap                            user printer description file
/etc/printcap                                printer description file
/etc/lprng/lpd.perms                         permissions
/var/run/lprng/lpd                           lock file for queue control
/var/spool/lpd                               spool directories
/var/spool/lpd/QUEUE/control                 queue control
/var/spool/lpd/QUEUE/log                     trace or debug log file
/var/spool/lpd/QUEUE/acct                    accounting file
/var/spool/lpd/QUEUE/status                  status file

πŸ‘€ SEE ALSO πŸ‘€

lpd.conf(5), lpc(8), lpd(8), lpr(1), lpq(1), lprm(1), printcap(5), lpd.perms(5), pr(1), lprng_certs(1), lprng_index_certs(1).

go read those too, iykyk πŸ“š


🫢 AUTHOR 🫢

Patrick Powell <papowell@lprng.com>.


🩺 DIAGNOSTICS 🩺

most of the diagnostics are self explanatory, bestie. but if you are puzzled over the exact cause of failure, set the debugging level on (-D5) and run again. πŸ”

the debugging information will help you pinpoint the exact cause of failure. it's literally the blueprint. ✨


🌈 HISTORY 🌈

LPRng is an enhanced printer spooler system with functionality similar to the Berkeley LPR software. the LPRng developer mailing list is lprng-devel@lists.sourceforge.net β€” subscribe by visiting https://lists.sourceforge.net/lists/listinfo/lprng-devel or sending mail to lprng-request@lists.sourceforge.net with the word subscribe in the body. πŸ“¬

the software is available via http://lprng.sourceforge.net 🌐


and that's the whole page, babe πŸŽ€ β€” this one's from LPRng, dated 2007-02-22, and it's the CHECKPC(8) page. vintage but still serving looks βœ¨πŸ’–πŸ¦‹

πŸ“¦ where this page comes from