Serveur d'impression

Configurer le serveur d'impression avec CUPS et AirPrint – Bien choisir son serveur d impression

Par Titanfall , le 9 janvier 2020 - 13 minutes de lecture

Testé avec Raspbian Stretch.

CUPS (Common Unix Printing System) est un système d'impression open source basé sur plusieurs normes, développé pour les systèmes d'exploitation de type Unix et utilisé par Apple pour le système d'exploitation macOS.
Avec CUPS, vous pouvez faire fonctionner un serveur d'impression (serveur d'impression) sur le réseau auquel une ou plusieurs imprimantes USB sont connectées puis accessibles sur le réseau. Un Raspberry Pi à économie d'énergie convient particulièrement comme matériel pour le serveur d'impression.

Depuis la version 2.2, CUPS permet l'impression sans pilote sur des imprimantes qui utilisent IPP Everywhere ou Apple Airprint. Vous pouvez imprimer sur une telle imprimante immédiatement sans avoir à vous soucier de l'installation du pilote sur le client. CUPS prend également en compte les particularités des réseaux Windows et Apple. Apple AirPrint est intégré à CUPS et fonctionne automatiquement. Cela signifie que les iPhones et iPads peuvent également imprimer sur le réseau. Un client Samba est utilisé pour les clients Windows.

CUPS devient vraiment intéressant lorsqu'une imprimante ne prend PAS en charge Airprint. Ensuite, vous pouvez connecter l'imprimante à CUPS localement ou via le réseau. «Via le réseau» signifie que les imprimantes respectives n'ont pas à être connectées directement au Raspberry Pi. CUPS peut également se connecter aux imprimantes via le réseau. Ainsi, vous pouvez facilement moderniser le support Airprint en suspendant le Raspberry Pi configuré avec CUPS dans le réseau.
CUPS maintient une file d'attente d'imprimantes pour les imprimantes configurées et propose l'imprimante via airprint dans le réseau. Cela présente l'avantage que les imprimantes réseau sans Apple Airplay peuvent ensuite être rendues accessibles via CUPS dans le réseau.
Si vous souhaitez effectuer un travail supplémentaire, vous pouvez également rendre l'imprimante accessible via Google Cloud Printing (GCP) sur Internet et imprimer à partir des applications Google.

Presque toutes les imprimantes sont prises en charge par CUPS. Les imprimantes HP en particulier sont prises en charge de manière optimale. Mais il n'y a généralement aucun problème avec les imprimantes Samsung, Epson et Brother. Pour les modèles qui ne sont pas pris en charge, il existe des pilotes génériques qui fournissent des fonctions de base. Seules les fonctions spéciales nécessitent un pilote du fabricant.

Tâches

  1. Installez CUPS, puis configurez-le.
  2. Installez le pilote d'imprimante si nécessaire.
  3. Configurez l'imprimante sous CUPS.
  4. Imprimez un fichier sur la ligne de commande.

Solution: installation et configuration de CUPS

Nous mettons d'abord à jour les listes de paquets et mettons à niveau le système.

mise à jour sudo apt-get
sudo apt-get upgrade

Ensuite, nous installons CUPS.

sudo apt-get install cups

Selon le système, le processus d'installation peut inclure plusieurs packages de plus de 150 Mo. En plus de CUPS, des parties de Samba, Avahi, Perl et diverses bibliothèques sont également installées. Cela peut prendre un certain temps avant que tout soit téléchargé puis installé.

Une fois que tout est installé, certaines modifications doivent être apportées au fichier de configuration CUPS.

sudo nano /etc/cups/cupsd.conf

CUPS écoute par défaut sur le port 631, mais uniquement sur l'hôte local. Si vous souhaitez y accéder via le réseau, vous devez d'abord le libérer.

La ligne:

Écouter localhost: 631

changer:

Port 631

Ensuite, le serveur d'impression doit faire connaître toutes les imprimantes connectées au réseau. Nous ajoutons la ligne suivante:

BrowseAddress @LOCAL

La valeur "BrowseAddress" indique à quels hôtes les informations de l'imprimante sont "diffusées". Dans ce cas, "@LOCAL" représente "tous" les hôtes du réseau connecté localement.

Recherchez ensuite les lignes suivantes et insérez un "Allow @Local".

# Restreindre l'accès au serveur ...

Ordonnance autoriser, refuser
Autoriser @LOCAL

# Restreindre l'accès aux pages d'administration ... Ordonnance autoriser, refuser Autoriser @LOCAL
# Restreindre l'accès aux fichiers de configuration ... AuthType par défaut Obliger l'utilisateur @SYSTEM Ordonnance autoriser, refuser Autoriser @LOCAL

"@LOCAL" représente tous les réseaux connectés localement au serveur d'impression. Cela ne s'applique pas aux connexions d'accès à distance.

Après les modifications, vous devez enregistrer et fermer le fichier: Ctrl + O, Retour, Ctrl + X.

Ensuite, nous devons ajouter un utilisateur au groupe d'utilisateurs "lpadmin". Il peut s'agir de l'utilisateur standard "pi". Vous pouvez également créer un nouvel utilisateur si vous le souhaitez. Cependant, ce n'est pas absolument nécessaire.

sudo usermod -aG lpadmin pi

Un redémarrage du serveur CUPS est alors nécessaire.

redémarrage des coupes de service sudo

Ceci est toujours nécessaire si le fichier de configuration a été modifié par CUPS.

Prise en charge des imprimantes Linux

Selon le fabricant et le modèle d'imprimante, l'installation des pilotes d'imprimante est plus ou moins facile. Pour les modèles courants, CUPS est déjà fourni avec des pilotes d'imprimante. Mais pas pour tout le monde. Il fonctionne toujours mieux avec les imprimantes HP. La prise en charge des imprimantes pour les systèmes d'exploitation Linux est également disponible pour Samsung et Epson. Les autres fabricants ne sont pas aussi généreux ici, c'est pourquoi vous avez plus d'efforts ici. D'autres approches sont nécessaires ici, qui diffèrent d'un modèle à l'autre. Il est conseillé de rechercher le bon chemin pour le modèle d'imprimante correspondant.

Solution: installez le pilote d'imprimante

HP fournit des pilotes open source pour ses imprimantes faciles à installer. Cela signifie que vous pouvez généralement obtenir une imprimante HP avec CUPS opérationnel.

Certaines imprimantes HP nécessitent un package supplémentaire. Vous pouvez obtenir l'indication correspondante dans CUPS si vous affichez l'imprimante: "nécessite un plug-in propriétaire".

Le logiciel d'imagerie et d'impression HP Linux (HPLIP) peut être installé via apt-get:

sudo apt-get install hplip

L'extension appropriée pour l'imprimante peut alors être installée. Il est recommandé de configurer au préalable l'imprimante dans CUPS.

sudo hp-setup -i

Pour certains modèles Samsung, il existe des pilotes d'imprimante ouverts qui sont combinés dans un seul package.

sudo apt-get install imprimante-pilote-splix

Les imprimantes Epson sont également prises en charge.

sudo apt-get install imprimante-pilote-escpr

Remarque: le téléchargement et l'installation des packages peuvent prendre un peu plus de temps. Faites donc preuve de patience ici. Après l'installation des packages ou des pilotes d'imprimante, un redémarrage de CUPS est recommandé.

redémarrage des coupes de service sudo

Parfois, un redémarrage du système est également requis.

Solution: configurer et gérer des imprimantes sous CUPS

Remarque: Il est plus facile de configurer des imprimantes sous CUPS si les pilotes d'imprimante nécessaires sont installés.

Il s'agit désormais de configurer des imprimantes sous CUPS. Pour cela, vous devez connecter l'imprimante ou les imprimantes à l'USB du Raspberry Pi.
Ensuite, nous configurons CUPS. À cet effet, CUPS est livré avec son propre serveur Web et peut être facilement configuré via une interface Web. Pour cela, nous avons besoin de l'adresse IP du Raspberry Pi, qui doit être entrée dans la ligne d'adresse du navigateur avec le numéro de port "631".

https://192.168.1.2:631

L'interface web vous attend. Procédez comme suit pour configurer une imprimante:

Sous l'élément de menu "Administration", cliquez sur le bouton "Ajouter une imprimante". Habituellement, on vous demandera un nom d'utilisateur et un mot de passe. De l'utilisateur qui a été ajouté au groupe "lpadmin".

Ajouter une imprimante (étape 1/5)

Ensuite, les imprimantes connectées et reconnues sont répertoriées (imprimantes locales) à partir desquelles vous pouvez sélectionner l'imprimante que vous souhaitez configurer.
Attention, toutes les imprimantes reconnues sont répertoriées ici, y compris celles qui ont déjà été configurées.

Ajouter une imprimante (étape 3/5)

Ici, vous pouvez adapter le nom et la description de l'imprimante à vos propres besoins. Mais ce n'est pas nécessaire. En principe, vous pouvez laisser la valeur par défaut car ce nom est généralement correct et sera également utilisé plus tard sur les systèmes clients.
Il est seulement important ici de mettre une coche sous "Release". C'est le seul moyen de rendre cette imprimante disponible sur le réseau. Si la case n'est pas cochée, l'imprimante ne peut être utilisée que localement.

Ajouter une imprimante (étape 5/5)

Ici, vous devez sélectionner le fabricant ou la marque, puis le nom du modèle aussi précisément que possible.
À ce stade, il est utile que le pilote d'imprimante ait été installé au préalable. Sinon, vous pouvez le faire maintenant, redémarrez CUPS et sélectionnez à nouveau le fabricant. Ensuite, la liste avec les noms des modèles est mise à jour.

Après avoir sélectionné le bon modèle, les paramètres standard doivent encore être définis. Habituellement, vous n'avez rien à changer. Les spécifications sont déjà présélectionnées pour correspondre au modèle d'imprimante.

Une fois l'imprimante configurée, vous pouvez imprimer une page de test. Pour ce faire, sélectionnez simplement "Imprimer la page de test" dans le champ "Maintenance". L'impression test démarre alors automatiquement.

Solution: configurer une imprimante réseau sur un client

Fondamentalement, les imprimantes configurées sont disponibles via AirPrint, par exemple pour macOS, sur iPhone et iPad. Sous Linux et Windows, vous devez configurer l'imprimante en tant qu'imprimante réseau. Les boîtes de dialogue de configuration sont principalement explicites ici.

Solution: impression à partir de la console

En principe, vous pouvez également envoyer un travail d'impression directement à partir de la console. Vous avez besoin du nom de l'imprimante pour cela. Si vous ne le savez pas par cœur, vous pouvez le rechercher dans la liste des imprimantes.

lpstat -a

Là, nous sélectionnons le nom de l'imprimante pour la commande suivante et entrons le chemin d'un fichier texte à imprimer.

lp - d  

L'état du travail d'impression en cours, si le document n'a pas encore été imprimé, peut être obtenu comme suit:

lpstat -p

Dépannage

La configuration d'une imprimante ne pose généralement aucun problème. Mais parfois, selon le fabricant et le modèle d'imprimante, il reste bloqué. Pour résoudre le problème, une procédure étape par étape est recommandée, même si le problème se situe quelque part entre les deux.

Parfois, l'interface Web CUPS donne également un indice. Certaines imprimantes HP nécessitent un pilote propriétaire qui peut être installé à l'aide du package hplix.

Tout d'abord, nous clarifions si l'imprimante ou les imprimantes sont reconnues du tout par l'USB. Pour cela, nous avons besoin des "usbutils", qui devront peut-être être installés ultérieurement.

sudo apt-get install usbutils

Si le package "usbutils" est installé, nous vérifions si l'imprimante ou les imprimantes ont été reconnues sur l'USB.

lsusb

Cette commande est parfois plus, parfois moins informative. En règle générale, les imprimantes sont identifiées par le nom du fabricant, peut-être même par le nom du modèle.
C'est un bon signe si les imprimantes sont reconnues sur l'USB. Sinon, il y a d'autres problèmes systémiques. Un regard sur "dmesg" peut aider.

dmesg

Les messages d'erreur répertoriés ici indiquent des problèmes qui sont des cas isolés. Malheureusement, nous ne pouvons pas les résoudre ici. La recherche peut aider avec le message d'erreur dans le moteur de recherche préféré.

Dépannage: après une longue période, l'imprimante n'imprime plus via CUPS

CUPS arrête l'imprimante à un moment donné lorsqu'elle ne peut pas rester en contact avec elle. Par exemple, parce que l'imprimante est éteinte depuis longtemps, parce que le câble USB a été débranché ou qu'il y a autre chose avec l'USB.
Pour résoudre le problème, accédez à l'interface Web CUPS. Ici, vous cliquez sur le modèle d'imprimante correspondant dans la zone "Imprimante" et sélectionnez l'entrée "Démarrer l'imprimante" dans le champ de sélection "Maintenance". Pour que cela fonctionne, l'imprimante doit être allumée et connectée au Raspberry Pi.

L'état de l'imprimante peut également être affiché sur la ligne de commande.

lpstat -p -d

Afficher l'état de toutes les imprimantes:

lpstat -p

Afficher les travaux d'impression:

lpstat -o

Dépannage: plusieurs imprimantes n'impriment plus

Après la connexion et la configuration des imprimantes, il y a des échecs. Cela signifie que les imprimantes configurées n'impriment plus. Si les imprimantes individuelles ont déjà imprimé via CUPS et fonctionnent également en local, cela a probablement à voir avec le Raspberry Pi. D'un point de vue électrique, son USB est malheureusement tricoté avec l'aiguille chaude. Si plusieurs périphériques USB sont chacun connectés au Raspberry Pi via une longue ligne, des pannes sporadiques se produisent, l'USB semblant fonctionner. Seuls les appareils connectés via un câble USB plus long semblent avoir des problèmes. À titre de test, vous pouvez essayer de faire fonctionner les différentes imprimantes seules.

En pratique, aucune résolution de problème n'est connue. Des câbles blindés plus courts et meilleurs peuvent résoudre le problème. Mais il ne doit pas en être ainsi.

Extension: installez Google Cloud Print

L'imprimante de Google Apps et des applications cloud n'est pas possible avec les moyens habituels. En principe, il est utile que vous disposiez d'une imprimante réseau capable de prendre en charge Google Cloud Print (GCP). Mais que faites-vous avec les anciennes imprimantes? Sur un Raspberry Pi avec CUPS installé, vous pouvez également installer Cloud Print Connector de Google pour que les imprimantes configurées soient également accessibles à partir du navigateur de Google et des applications pour smartphone.

Rubriques connexes:

recommandations de produits

Tout ce que vous devez savoir sur les réseaux.

Présentation technique du réseau

Le Network Technology Primer est un livre sur les bases de la technologie de réseau, la technologie de transmission, TCP / IP, les services, les applications et la sécurité du réseau.

Je veux cela!

Click to rate this post!
[Total: 0 Average: 0]

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.