Cups-2.4.10

Introduksjon til Cups

Common Unix Printing System (CUPS) er en utskriftskø og tilhørende verktøy. Den er basert på "Internet Printing Protocol" og gir utskriftstjenester til de fleste PostScript og rasterskrivere.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

Cups Avhengigheter

Påkrevd

GnuTLS-3.8.7.1

Anbefalt

Valgfri

Avahi-0.8, libpaper-2.2.5, MIT Kerberos V5-1.21.3, PHP-8.3.12, og Python2

Påkrevd (Etter installasjon)

cups-filters-2.0.1

Valgfri (Etter installasjon)

Gutenprint-5.3.4 og hplip (HP skrivere)

Kjernekonfigurasjon

[Notat]

Notat

Det pleide å være en konflikt mellom Cups libusb bakstykke og usblp kjernedriveren. Dette er ikke lenger tilfelle, og Cups vil fungere med begge disse aktivert.

Hvis du vil bruke kjernens usblp driver (for eksempel hvis du ønsker å bruke escputil fra Gutenprint-5.3.4) aktiver følgende alternativer i kjernekonfigurasjonen din og rekompilere kjernen:

Device Drivers --->
  [*] USB support --->                                             [USB_SUPPORT]
    <*/M> USB Printer support                                      [USB_PRINTER]

Hvis du har en parallellskriver, aktiver følgende alternativer i din kjernekonfigurasjon og kompiler kjernen på nytt:

Device Drivers --->
  <*/M> Parallel port support --->                                     [PARPORT]
    <*/M> PC-style hardware                                         [PARPORT_PC]
  Character devices --->
    <*/M> Parallel printer support                                     [PRINTER]

Installasjon av Cups

Du må legge til en lp bruker, siden Cups vil opprette noen filer som eies av denne brukeren. (lp brukeren er standard som brukes av Cups, men kan bli endret til en annen bruker ved å sende en parameter til configure skriptet.) Bruk følgende kommando som root bruker:

useradd -c "Print Service User" -d /var/spool/cups -g lp -s /bin/false -u 9 lp

Du trenger også en dedikert gruppe som vil inneholde brukere som har tillatelse til å gjøre Cups administrative oppgaver. Legg til gruppen ved å kjøre følgende kommando som root bruker:

groupadd -g 19 lpadmin

Hvis du vil legge til en bruker i Cups administrativ gruppe, kjør følgende kommando som root bruker:

usermod -a -G lpadmin <username>

Hvis du ikke installerte xdg-utils-1.2.1, bruk følgende sed for å endre standard nettleser som skal brukes for å få tilgang til Cups nettgrensesnitt:

sed -i 's#@CUPS_HTMLVIEW@#firefox#' desktop/cups.desktop.in

Erstatt firefox med nettleseren du ønsker å bruke.

Bygg Cups ved å kjøre følgende kommandoer:

./configure --libdir=/usr/lib            \
            --with-rcdir=/tmp/cupsinit   \
                        --with-rundir=/run/cups      \
            --with-system-groups=lpadmin \
            --with-docdir=/usr/share/cups/doc-2.4.10 &&
make

For å teste resultatene, kjør: LC_ALL=C make -k check. En allerede aktiv grafisk sesjon med bussadresse er nødvendig for å kjøre testene. Pass på at en annen forekomst av Cups ikke kjører, ellers vil minst 4 tester mislykkes med "address in use".

Nå, som root bruker:

make install &&
ln -svnf ../cups/doc-2.4.10 /usr/share/doc/cups-2.4.10

Fjern det leverte oppstartskriptet, som er inkompatibelt med LFS:

rm -rf /tmp/cupsinit

Opprett et grunnleggende Cups klientkonfigurasjonsfil ved å kjøre følgende kommando som root bruker:

echo "ServerName /run/cups/cups.sock" > /etc/cups/client.conf
[Notat]

Notat

Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og du kan forbedre systemytelsen og minnebruken ved å oppdatere /usr/share/icons/hicolor/index.theme. For å utføre oppdateringen må du ha GTK+-3.24.43 installert og utstede følgende kommando som root bruker:

gtk-update-icon-cache -qtf /usr/share/icons/hicolor

Parameterforklaringer

--with-rcdir=/tmp/cupsinit: Denne bryteren forteller byggeprosessen å installere det sendte oppstartskriptet i /tmp i stedet for /etc/rc.d.

--with-rundir=/run/cups: This switch prevents the package from referring to the deprecated /var/run directory.

--with-system-groups=lpadmin: Denne bryteren sikrer at bare lpadmin vil bli brukt som Cups administrative gruppe.

--disable-libusb: Bruk denne bryteren hvis du har installert libusb-1.0.27, men ønsker å bruke kjernens usblp driver.

--enable-libpaper: Bruk denne bryteren hvis du har installert libpaper og ønsker å bruke den med Cups.

Konfigurere Cups

Konfigurasjonsfiler

/etc/cups/*

Konfigurasjonsinformasjon

Normalt settes skrivere opp via en nettleser. Cups serveren vil normalt koble til via url http://localhost:631. Derfra skrivere, utskrifts jobber, og serverkonfigurasjonen kan settes opp og administreres. Ekstern systemadministrasjon kan også settes opp. Konfigurasjon kan også gjøres fra kommandolinjen via lpadmin, lpoptions, og lpstat kommandoene.

Konfigurasjon av Cups er avhengig av skrivertypen og kan være kompleks. Vanligvis er PostScript skrivere enklere. For detaljerte instruksjoner om konfigurasjon og bruk av Cups, se https://www.cups.org/documentation.html.

For ikke-PostScript skrivere for å skrive ut med Cups, må du installere ghostscript-10.04.0 for å konvertere PostScript til rasterbilder og en driver (f.eks. fra Gutenprint-5.3.4) for å konvertere det resulterende rasterbildet til en form som skriveren forstår. Foomatic drivere bruker ghostscript-10.04.0 for å konvertere PostScript til en utskrivbar form direkte, men dette anses som suboptimalt av Cups utviklere.

Linux PAM Konfigurasjon

Hvis CUPS er bygget med Linux PAM støtte, må du opprette en PAM konfigurasjonsfil for å få den til å fungere riktig med BLFS.

Utfør følgende kommando som root bruker for å opprette konfigurasjonensfilen for Linux PAM:

cat > /etc/pam.d/cups << "EOF"
# Begin /etc/pam.d/cups

auth    include system-auth
account include system-account
session include system-session

# End /etc/pam.d/cups
EOF

Oppstartsskript

Hvis du vil at Cups utskriftstjeneste skal starte automatisk når systemet startes opp, installer init skriptet inkludert i blfs-bootscripts-20240913 pakken:

make install-cups

Innhold

Installerte Programmer: cancel, cupsaccept, cups-config, cupsctl, cupsd, cupsdisable, cupsenable, cupsfilter, cupsreject, cupstestppd, ippeveprinter, ippfind, ipptool, lp, lpadmin, lpc, lpinfo, lpmove, lpoptions, lpq, lpr, lprm, lpstat, ppdc, ppdhtml, ppdi, ppdmerge, og ppdpo
Installerte Biblioteker: libcupsimage.so og libcups.so
Installerte Mapper: /etc/cups, /usr/{include,lib,share}/cups, /usr/share/doc/cups-2.4.10, /run/cups, og /var/{cache,log,spool}/cups

Korte Beskrivelser

cancel

kansellerer eksisterende utskriftsjobber fra utskriftskøene

cupsaccept

aksepere jobber sendt til en destinasjon

cups-config

er et Cups programkonfigurasjonsverktøy

cupsctl

oppdaterer eller spør cupsd.conf filen for en server

cupsd

er planleggeren for Common Unix Printing System

cupsdisable

stopper skrivere og klasser

cupsenable

starter skrivere og klasser

cupsfilter

er et grensesnitt til Cups filter undersystem som lar deg konvertere en fil til et bestemt format

cupsreject

avviser jobber sendt til en destinasjon

cupstestppd

tester samsvar med PPD filer

ippeveprinter

er en IPP Everywhere skriver for CUPS

ippfind

finner Internett utskriftsprotokoll Skrivere

ipptool

sender IPP forespørsler til spesifisert URI og tester og/eller viser resultatene

lp

sender filer til utskrift eller endrer en ventende jobb

lpadmin

konfigurerer skriver og klasse køer levert av Cups

lpc

gir begrenset kontroll over skriver og klasse køer levert av Cups

lpinfo

viser tilgjengelige enheter eller drivere som er kjent for Cups serveren

lpmove

flytter den angitte jobben til en ny destinasjon

lpoptions

viser eller angir skriveralternativer og standardinnstillinger

lpq

viser gjeldende utskriftskøstatus på den navngitte skriveren

lpr

sender filer til utskrift

lprm

avbryter utskriftsjobber som har stått i kø for utskrift

lpstat

viser statusinformasjon om gjeldende klasser, jobber, og skrivere

ppdc

kompilerer PPDC kildefiler til en eller flere PPD filer

ppdhtml

leser en driverinformasjonsfil og lager et HTML sammendragsside som viser alle driverne i en fil og støttede alternativer

ppdi

importerer en eller flere PPD filer til en PPD kompilatorkildefil

ppdmerge

slår sammen to eller flere PPD filer til en enkel flerspråklig PPD fil

ppdpo

trekker ut UI strenger fra PPDC kildefiler og oppdaterer enten en GNU gettext eller Mac OS X strengformat meldingskatalog kildefil for oversettelse

libcups.so

inneholder Cups API funksjoner