Ceci est une ancienne révision du document !
Table des matières
Version : 2021.01
Dernière mise-à-jour : 2021/06/04 07:39
LCF509 - Gestion des Impressions
Contenu du Module
- LCF509 - Gestion des Impressions
- Contenu du Module
- Cups
- Protocoles
- Paquets
- Daemon
- Le fichier /etc/cups/cupsd.conf
- Filtres
- Backends
- Journaux
- Imprimantes
- Administration
- La Commande lpstat
- La Commande lpadmin
- Les Commandes accept et cupsenable
- Classe d'imprimantes
- Le fichier /etc/cups/printers.conf
- Le fichier /etc/cups/classes.conf
- La Commande cancel
- La Commande lpmove
- L'interface Web
Cups
Le logiciel Common Unix Printing System est un système de gestion des impressions conçu pour Unix.
Protocoles
Cups utilise le protocole IPP sur les ports udp/631 et tcp/631.
Ce protocole :
- est une extension du protocole HTTP
- permet d'administrer CUPS via un navigateur web
- permet de décrire les spools d'impression par simple URL
Cups peut aussi utiliser les deux protocoles suivants :
- tcp/515 - Protocole BSD
- tcp/9100 - Protocole JeTDirect pour les imprimantes réseau HP
Daemon
cupsd est le daemon principal du système CUPS. Quand cupsd traite une impression, il transmet les données à un filtre en fonction du modèle d'imprimante. Après traitement par le filtre, cupsd transmet le résultat à un backend qui se charge de l'impression. Les échanges entre cupsd et ces programmes se font via des répertoires de spools et des tubes.
Installation
Afin d'installer cups il convient d'utiliser dnf :
[root@centos8 ~]# dnf install cups -y
Ensuite activez et démarrez le service cups :
[root@centos8 ~]# systemctl status cups ● cups.service - CUPS Scheduler Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; vendor preset: enabled) Active: inactive (dead) Docs: man:cupsd(8) [root@centos8 ~]# systemctl enable cups [root@centos8 ~]# systemctl start cups [root@centos8 ~]# systemctl status cups ● cups.service - CUPS Scheduler Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-06-03 14:06:35 EDT; 4s ago Docs: man:cupsd(8) Main PID: 32727 (cupsd) Status: "Scheduler is running..." Tasks: 1 (limit: 23720) Memory: 1.9M CGroup: /system.slice/cups.service └─32727 /usr/sbin/cupsd -l Jun 03 14:06:35 centos8.ittraining.loc systemd[1]: Starting CUPS Scheduler... Jun 03 14:06:35 centos8.ittraining.loc systemd[1]: Started CUPS Scheduler.
Le Fichier /etc/cups/cupsd.conf
Le fichier de configuration de CUPS est /etc/cups/cupsd.conf. Dans ce fichier on peut trouver :
- le port d'ecoute d'IPP
- les comptes utilisateur et groupe sous lesquels s'exécute le serveur
- le niveau de journalisation
- la configuration du serveur Browse, c'est-à-dire de découverte des imprimantes réseaux
- les ACL d'accès au spools
- les ACL d'accès à l'administration du serveur.
[root@centos8 ~]# cat /etc/cups/cupsd.conf MaxLogSize 0 # # Configuration file for the CUPS scheduler. See "man cupsd.conf" for a # complete description of this file. # # Log general information in error_log - change "warn" to "debug" # for troubleshooting... LogLevel warn # Only listen for connections from the local machine. Listen localhost:631 Listen /var/run/cups/cups.sock # Show shared printers on the local network. Browsing On BrowseLocalProtocols dnssd # Default authentication type, when authentication is required... DefaultAuthType Basic # Web interface setting... WebInterface Yes # Restrict access to the server... <Location /> Order allow,deny </Location> # Restrict access to the admin pages... <Location /admin> Order allow,deny </Location> # Restrict access to configuration files... <Location /admin/conf> AuthType Default Require user @SYSTEM Order allow,deny </Location> # Restrict access to log files... <Location /admin/log> AuthType Default Require user @SYSTEM Order allow,deny </Location> # Set the default printer/job policies... <Policy default> # Job/subscription privacy... JobPrivateAccess default JobPrivateValues default SubscriptionPrivateAccess default SubscriptionPrivateValues default # Job-related operations must be done by the owner or an administrator... <Limit Create-Job Print-Job Print-URI Validate-Job> Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> Require user @OWNER @SYSTEM Order deny,allow </Limit> # All administration operations require an administrator to authenticate... <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # All printer operations require a printer operator to authenticate... <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> # Set the authenticated printer/job policies... <Policy authenticated> # Job/subscription privacy... JobPrivateAccess default JobPrivateValues default SubscriptionPrivateAccess default SubscriptionPrivateValues default # Job-related operations must be done by the owner or an administrator... <Limit Create-Job Print-Job Print-URI Validate-Job> AuthType Default Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> # All administration operations require an administrator to authenticate... <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # All printer operations require a printer operator to authenticate... <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> # Set the kerberized printer/job policies... <Policy kerberos> # Job/subscription privacy... JobPrivateAccess default JobPrivateValues default SubscriptionPrivateAccess default SubscriptionPrivateValues default # Job-related operations must be done by the owner or an administrator... <Limit Create-Job Print-Job Print-URI Validate-Job> AuthType Negotiate Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> AuthType Negotiate Require user @OWNER @SYSTEM Order deny,allow </Limit> # All administration operations require an administrator to authenticate... <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # All printer operations require a printer operator to authenticate... <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> AuthType Negotiate Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy>
Filtres
Les filtres disponibles au système CUPS se trouvent dans le répertoire /usr/lib/cups/filter :
[root@centos8 ~]# ls /usr/lib/cups/filter bannertopdf commandtopclx gstoraster imagetoubrl pdftoraster rastertolabel svgtopdf texttops xfigtopdf brftoembosser commandtops gziptoany imageubrltoindexv3 pstops rastertopclm sys5ippprinter texttotext brftopagedbrf emftopdf imagetobrf imageubrltoindexv4 rastertodymo rastertopclx textbrftoindexv3 vectortobrf cgmtopdf foomatic-rip imagetopdf musicxmltobrf rastertoepson rastertopdf textbrftoindexv4 vectortopdf cmxtopdf gstopdf imagetops pdftopdf rastertoescpx rastertops texttobrf vectortoubrl commandtoescpx gstopxl imagetoraster pdftops rastertohp rastertopwg texttopdf wmftopdf
Backends
Les Backends disponibles au système CUPS se trouvent dans le répertoire /usr/lib/cups/backend :
[root@centos8 ~]# ls /usr/lib/cups/backend beh cups-brf dnssd driverless failover http https implicitclass ipp ipps lpd ncp parallel serial snmp socket usb
La liste des backends reconnus par CUPS peut être obtenue en saisissant la commande suivante :
[root@centos8 ~]# lpinfo -v network http network https network ipp network ipps network lpd network socket network beh
Il y a un type de backend par liaison locale d'imprimante (usb, série, parallèle). Il peut y avoir aussi un backend par type de protocole réseau :
Backend | Description |
---|---|
IPP | Client IPP |
LPD | Client LPD |
SMB | Client SMB |
Socket | Client JetDirect sur port tcp/9100 |
Pap/cap | Client AppleTalk |
Journaux
Les journaux de CUPS se trouvent dans /var/log/cups :
[root@centos8 ~]# ls -l /var/log/cups total 12 -rw-------. 1 root lp 166 Jun 3 14:02 access_log -rw-------. 1 root lp 166 Jun 3 14:02 error_log -rw-------. 1 root lp 166 Jun 3 14:02 page_log
Imprimantes
La commande suivante liste les imprimantes connues de CUPS :
[root@centos8 ~]# lpinfo -m | more lsb/usr/cupsfilters/Fuji_Xerox-DocuPrint_CM305_df-PDF.ppd Fuji Xerox drv:///sample.drv/dymo.ppd Dymo Label Printer drv:///sample.drv/epson9.ppd Epson 9-Pin Series drv:///sample.drv/epson24.ppd Epson 24-Pin Series drv:///generic-brf.drv/gen-brf.ppd Generic Braille embosser, 1.0 drv:///cupsfilters.drv/pwgrast.ppd Generic IPP Everywhere Printer drv:///sample.drv/generpcl.ppd Generic PCL Laser Printer lsb/usr/cupsfilters/Generic-PDF_Printer-PDF.ppd Generic PDF Printer drv:///sample.drv/generic.ppd Generic PostScript Printer drv:///cupsfilters.drv/textonly.ppd Generic Text-Only Printer drv:///generic-ubrl.drv/gen-ubrl.ppd Generic UBRL generator, 1.0 lsb/usr/cupsfilters/HP-Color_LaserJet_CM3530_MFP-PDF.ppd HP Color LaserJet CM3530 MFP PDF lsb/usr/cupsfilters/pxlcolor.ppd HP Color LaserJet Series PCL 6 CUPS drv:///cupsfilters.drv/dsgnjt600pcl.ppd HP DesignJet 600 pcl, 1.0 drv:///cupsfilters.drv/dsgnjt750cpcl.ppd HP DesignJet 750c pcl, 1.0 drv:///cupsfilters.drv/dsgnjt1050cpcl.ppd HP DesignJet 1050c pcl, 1.0 drv:///cupsfilters.drv/dsgnjt4000pcl.ppd HP DesignJet 4000 pcl, 1.0 drv:///cupsfilters.drv/dsgnjtt790pcl.ppd HP DesignJet T790 pcl, 1.0 drv:///cupsfilters.drv/dsgnjtt1100pcl.ppd HP DesignJet T1100 pcl, 1.0 drv:///sample.drv/deskjet.ppd HP DeskJet Series drv:///sample.drv/laserjet.ppd HP LaserJet Series PCL 4/5 lsb/usr/cupsfilters/pxlmono.ppd HP LaserJet Series PCL 6 CUPS drv:///indexv3.drv/i4waves3.ppd Index 4-Waves PRO, 1.0 drv:///indexv3.drv/i4x4pro3.ppd Index 4x4 PRO V3, 1.0 drv:///indexv3.drv/ibasicd3.ppd Index Basic-D V3, 1.0 drv:///indexv4.drv/ibasicd4.ppd Index Basic-D V4/V5, 1.0 drv:///indexv3.drv/ibasics3.ppd Index Basic-S V3, 1.0 drv:///indexv4.drv/ibasics4.ppd Index Basic-S V4/V5, 1.0 drv:///indexv4.drv/ibrlbox4.ppd Index Braille Box V4/V5, 1.0 drv:///indexv3.drv/ieveres3.ppd Index Everest-D V3, 1.0 drv:///indexv4.drv/ieveres4.ppd Index Everest-D V4/V5, 1.0 --More--
Administration
Le serveur CUPS est administré en ligne de commande par l'utilisation d'une ou de plusieurs des commandes suivantes :
Commande | Description |
---|---|
lpadmin | Principale commande d'administration pour ajouter, supprimer et modifier des files d'attente |
accept | Autorise le dépôt de requêtes dans un spool |
reject | Interdit le dépôt de requêtes dans un spool |
cupsenable | Autorise le traitement des requêtes dans un spool |
cupsdisable | Interdit le traitement des requêtes dans un spool |
lpstat | Liste des travaux en attente |
cancel | Supprime des requêtes |
lpmove | Déplace des travaux en attente d'un spool à un autre |
lpinfo | Affiche la liste des filtres ou backends disponibles |
lppasswd | Gère les comptes et les mots de passe pour l'accès web |
La Commande lpstat
Pour consulter la liste des files d'attente, il convient d'utiliser donc la commande lpstat :
[root@centos8 ~]# lpstat -t scheduler is running no system default destination lpstat: No destinations added. lpstat: No destinations added. lpstat: No destinations added. lpstat: No destinations added.
La Commande lpadmin
Créez maintenant une file d'attente sans pilote. Les imprimantes sans pilote utilisent le mode raw :
[root@centos8 ~]# lpadmin -p imp1 -v socket://localhost:12000 -m raw
Les options de cette commande sont les suivantes :
Options | Description |
---|---|
-p | Le nom de la file |
-v | L'imprimante physique ou réseau sous forme URL |
-m | Le modèle à utiliser (un fichier ayant une extension ppd qui identifie l'imprimante) |
Les types de URL possible sont :
URL | Description |
---|---|
file:/chemin/fichier | Impression dans un fichier |
http://serveur:631/ipp/port1 | Impression via http |
lpd://serveur/queue | Impression via LPD |
ipp://serveur:631/printers/queue | Impression via IPP |
smb://workgroup/serveur/nompartage | Impression via SMB |
socket://serveur | Impression via JetDirect |
serial:/dev/ttyS0?baud=1200+bits=8+parity=none+flow=none | Impression via port série |
parallel:/dev/lp0 | Impression via port parallèle |
Vérifiez la création de la file d'attente :
[root@centos8 ~]# lpstat -t scheduler is running no system default destination device for imp1: socket://localhost:12000 imp1 not accepting requests since Thu 03 Jun 2021 02:10:02 PM EDT - reason unknown printer imp1 disabled since Thu 03 Jun 2021 02:10:02 PM EDT - reason unknown
Les Commandes accept, cupsenable
Il est maintenant possible d'activer l'imprimante grâce aux commandes accept et cupsenable :
[root@centos8 ~]# accept imp1 [root@centos8 ~]# lpstat -t scheduler is running no system default destination device for imp1: socket://localhost:12000 imp1 accepting requests since Thu 03 Jun 2021 02:10:02 PM EDT printer imp1 disabled since Thu 03 Jun 2021 02:10:02 PM EDT - reason unknown [root@centos8 ~]# cupsenable imp1 [root@centos8 ~]# lpstat -t scheduler is running no system default destination device for imp1: socket://localhost:12000 imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT
Important : Notez que les deux commandes accept et cupsenable ont leurs opposées : reject et cupsdisable.
Pour nommer une imprimante en tant que la destination par défaut, il convient d'utiliser la commande lpadmin avec l'option -d :
[root@centos8 ~]# lpadmin -d imp1 [root@centos8 ~]# lpstat -t scheduler is running system default destination: imp1 device for imp1: socket://localhost:12000 imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT
Vous allez mainteant créer une file d'attente dans CUPS pour une imprimante HP Color LaserJet Series PCL 6 utilisant le fichier pxlcolor.ppd, appelée Imprimante1 et étant connectée au port parallèle.
Sous RHEL/CentOS la file d'attente physique pour cette imprimante existe déjà :
[root@centos8 ~]# ls -l /dev/lp0 crw-rw----. 1 root lp 6, 0 Jun 3 14:02 /dev/lp0
Créez donc la file d'attente dans CUPS :
[root@centos8 ~]# lpadmin -p Imprimante1 -E -v parallel:/dev/lp0 -m pxlcolor.ppd [root@centos8 ~]# lpstat -t scheduler is running system default destination: imp1 device for imp1: socket://localhost:12000 device for Imprimante1: parallel:/dev/lp0 imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT Imprimante1 accepting requests since Thu 03 Jun 2021 02:17:25 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT printer Imprimante1 is idle. enabled since Thu 03 Jun 2021 02:17:25 PM EDT
Important : Notez que l'option -E permet de combiner les options accept et cupsenable de la commande lpadmin.
Testez maintenant votre imprimante fictive :
[root@centos8 ~]# echo "Test Printer File" > /tmp/test.print [root@centos8 ~]# lpadmin -d Imprimante1 [root@centos8 ~]# lpstat -t scheduler is running system default destination: Imprimante1 device for imp1: socket://localhost:12000 device for Imprimante1: parallel:/dev/lp0 imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT Imprimante1 accepting requests since Thu 03 Jun 2021 02:17:25 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT printer Imprimante1 is idle. enabled since Thu 03 Jun 2021 02:17:25 PM EDT [root@centos8 ~]# lp /tmp/test.print request id is Imprimante1-1 (1 file(s))
Important : Notez que l'impression a eu lieu et la requête s'appelle Imprimante1-1.
Créez maintenant une deuxième file d'attente Imprimante2 et saisissez la commande lpstat -t. Vous devez obtenir un résultat similaire à celui-ci :
[root@centos8 ~]# lpstat -t scheduler is running system default destination: Imprimante1 device for imp1: socket://localhost:12000 device for Imprimante1: parallel:/dev/lp0 device for Imprimante2: parallel:/dev/lp1 imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT Imprimante1 accepting requests since Thu 03 Jun 2021 02:23:03 PM EDT Imprimante2 accepting requests since Thu 03 Jun 2021 02:23:46 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT printer Imprimante1 now printing Imprimante1-1. enabled since Thu 03 Jun 2021 02:23:03 PM EDT Printer not connected; will retry in 30 seconds. printer Imprimante2 is idle. enabled since Thu 03 Jun 2021 02:23:46 PM EDT Imprimante1-1 root 1024 Thu 03 Jun 2021 02:23:03 PM EDT
Classe d'imprimantes
Une classe est un ensemble ordonné d'imprimantes. Les requêtes envoyées à la classe sont imprimées sur la première imprimante disponible.
Pour créer une classe il convient d'utiliser la commande lpadmin avec l'option -c suivie par le nom de la classe à créer :
[root@centos8 ~]# lpadmin -p Imprimante1 -c classe1 [root@centos8 ~]# lpadmin -p Imprimante2 -c classe1
Vérifiez la création de la classe :
[root@centos8 ~]# lpstat -t scheduler is running system default destination: Imprimante1 members of class classe1: Imprimante1 Imprimante2 device for classe1: ///dev/null device for imp1: socket://localhost:12000 device for Imprimante1: parallel:/dev/lp0 device for Imprimante2: parallel:/dev/lp1 classe1 not accepting requests since Thu 03 Jun 2021 02:24:25 PM EDT - reason unknown imp1 accepting requests since Thu 03 Jun 2021 02:11:17 PM EDT Imprimante1 accepting requests since Thu 03 Jun 2021 02:23:03 PM EDT Imprimante2 accepting requests since Thu 03 Jun 2021 02:23:46 PM EDT printer classe1 disabled since Thu 03 Jun 2021 02:24:25 PM EDT - reason unknown printer imp1 is idle. enabled since Thu 03 Jun 2021 02:11:17 PM EDT printer Imprimante1 now printing Imprimante1-1. enabled since Thu 03 Jun 2021 02:23:03 PM EDT Printer not connected; will retry in 30 seconds. printer Imprimante2 is idle. enabled since Thu 03 Jun 2021 02:23:46 PM EDT Imprimante1-1 root 1024 Thu 03 Jun 2021 02:23:03 PM EDT
Le fichier /etc/cups/printers.conf
La configuration globale des files d'attente se trouve dans le fichier /etc/cups/printers.conf :
[root@centos8 ~]# cat /etc/cups/printers.conf # Printer configuration file for CUPS v2.2.6 # Written by cupsd on 2021-06-03 14:24 # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING <Printer imp1> UUID urn:uuid:2af2862a-9a4d-3095-59d5-ca108d8d9837 Info imp1 DeviceURI socket://localhost:12000 State Idle StateTime 1622743877 ConfigTime 1622743802 Type 4 Accepting Yes Shared Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy stop-printer </Printer> <DefaultPrinter Imprimante1> UUID urn:uuid:ea6f22ce-ee8f-3447-4e09-f8659ccfe929 Info Imprimante1 MakeModel HP Color LaserJet Series PCL 6 CUPS DeviceURI parallel:/dev/lp0 State Idle StateTime 1622744583 ConfigTime 1622744245 Type 8400972 Accepting Yes Shared Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy stop-printer </DefaultPrinter> <Printer Imprimante2> UUID urn:uuid:1f7e7401-6bc4-306a-50ef-b07f2c78bf65 Info Imprimante2 MakeModel HP Color LaserJet Series PCL 6 CUPS DeviceURI parallel:/dev/lp1 State Idle StateTime 1622744626 ConfigTime 1622744626 Type 8400972 Accepting Yes Shared Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy stop-printer </Printer>
Le fichier /etc/cups/classes.conf
La configuration globale des classes se trouve dans le fichier /etc/cups/classes.conf :
[root@centos8 ~]# cat /etc/cups/classes.conf # Class configuration file for CUPS v2.2.6 # Written by cupsd on 2021-06-03 14:24 # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING <Class classe1> UUID urn:uuid:989a4f91-8d00-30f1-7322-63fbacfefb7f Info classe1 State Stopped StateTime 1622744665 Accepting No Shared Yes JobSheets none none Printer Imprimante1 Printer Imprimante2 QuotaPeriod 0 PageLimit 0 KLimit 0 OpPolicy default ErrorPolicy retry-current-job </Class>
La Commande cancel
Pour annuler l'impression il convient d'utiliser la commande cancel:
[root@centos8 ~]# lpstat Imprimante1-1 root 1024 Thu 03 Jun 2021 02:23:03 PM EDT [root@centos8 ~]# cancel imprimante1-1 [root@centos8 ~]# lpstat [root@centos8 ~]#
La Commande lpmove
La commande lpmove permet de déplacer tous les jobs d'une file à une autre.
Déclarez l'imprimante imp1 comme étant l'imprimante par défault :
[root@centos8 ~]# lpadmin -d imp1
Créez ensuite une nouvelle impression :
[root@centos8 ~]# lp /tmp/test.print request id is imp1-2 (1 file(s)) [root@centos8 ~]# lpstat imp1-2 root 1024 Thu 03 Jun 2021 02:29:29 PM EDT
Déplacer ce job vers la classe1 :
[root@centos8 ~]# lpmove imp1 classe1 [root@centos8 ~]# lpstat classe1-2 root 1024 Thu 03 Jun 2021 02:29:29 PM EDT
Pour retirer une file d'une classe, il convient d'utiliser la commande lpadmin :
[root@centos8 ~]# lpadmin -p Imprimante1 -r classe1 [root@centos8 ~]# lpadmin -p Imprimante2 -r classe1 [root@centos8 ~]# lpstat -t scheduler is running system default destination: imp1 device for imp1: socket://localhost:12000 device for Imprimante1: parallel:/dev/lp0 device for Imprimante2: parallel:/dev/lp1 imp1 accepting requests since Thu 03 Jun 2021 02:30:23 PM EDT Imprimante1 accepting requests since Thu 03 Jun 2021 02:28:33 PM EDT Imprimante2 accepting requests since Thu 03 Jun 2021 02:23:46 PM EDT printer imp1 is idle. enabled since Thu 03 Jun 2021 02:30:23 PM EDT printer Imprimante1 is idle. enabled since Thu 03 Jun 2021 02:28:33 PM EDT printer Imprimante2 is idle. enabled since Thu 03 Jun 2021 02:23:46 PM EDT
Important : Notez que la classe est automatiquement supprimée quand elle est vide.
Pour supprimer les files créées il convient de nouveau à utiliser la commande lpadmin :
[root@centos8 ~]# lpadmin -x Imprimante1 [root@centos8 ~]# lpadmin -x Imprimante2 [root@centos8 ~]# lpadmin -x Imp1 [root@centos8 ~]# lpstat -t scheduler is running no system default destination lpstat: No destinations added. lpstat: No destinations added. lpstat: No destinations added. lpstat: No destinations added.
L'interface Web
CUPS peut également être administré en utilisant l'interface Web sur le port 631/tcp. </WRAP>
<html> <div align=“center”> Copyright © 2021 Hugh Norris. </html>