Serveur d'impression

RaspberryPI: serveur d'impression «Hackviking – Serveur d’impression

Le 23 novembre 2019 - 6 minutes de lecture

L'objectif de cette version était de créer un serveur d'impression pour mon Brother HL-110 et mon Dymo LabelWriter 450 pouvant être utilisé à la fois par Mac et Windows. Il s'est avéré être plus compliqué que ce à quoi je m'attendais! Après des recherches, des tests et des réinstallations, j'ai trouvé une solution qui fonctionnait bien. Cela implique la compilation des pilotes, la configuration de CUPS et de samba pour que toutes les parties fonctionnent correctement.

Installation de base

Comme d'habitude, j'ai utilisé Win32DiskImager pour obtenir Raspbian sur une carte SD. Après cela, j’ai ajouté un fichier vierge nommé ssh sur le volume de démarrage. Cela permettra immédiatement à SSH et d’éviter de connecter un moniteur et un clavier juste pour l’activer. Ensuite, démarrez le Raspberry Pi et vérifiez sur votre serveur / routeur DHCP l'adresse IP qui lui a été attribuée et l'adresse SSH qu'il contient. Tout d'abord, nous voulons nous assurer que tout est à jour …

sudo apt-get update
sudo apt-get upgrade

Installer CUPS

CUPS est un système d'impression open source développé par Apple pour MacOS et d'autres systèmes basés sur Linux. Il prend entièrement en charge ARM, mais la disponibilité des pilotes d’imprimante peut être délicate d’un fabricant à l’autre. Si le code source est fourni, vous pouvez compiler les pilotes vous-même, mais si vous n'en avez pas, vous pourriez utiliser le même truc que moi. Installons et configurons CUPS.

sudo apt-get installer des tasses tasses-pdf

Ajouter le compte pi au lpadmin groupe.

sudo usermod -a -G lpadmin pi

Ensuite, nous devons éditer le fichier de configuration CUPS /etc/cups/cupsd.conf et supprimez la limitation selon laquelle l'interface d'administration est uniquement accessible à partir de localhost. Ouvrez le fichier de configuration:

sudo nano /etc/cups/cupsd.conf

Remplacez la ligne:

Écouter localhost: 631

Avec:

Port 631

Ceci indique à CUPS d'écouter tout contact sur n'importe quelle interface réseau tant qu'il est dirigé vers le port 631.

Faites défiler plus bas dans le fichier de configuration jusqu'à ce que vous voyiez les sections “location”. Configurez-le pour autoriser les connexions à partir du réseau local.

< Location / >



# Restreindre l'accès au serveur ...
Ordre permettre, refuser
Autoriser @local
< /Location >

< Location /admin >



# Restreindre l'accès aux pages d'administration ...
Ordre permettre, refuser
Autoriser @local
< /Location >

< Location /admin/conf >



AuthType par défaut
Requiert l'utilisateur @SYSTEM

# Restreindre l'accès aux fichiers de configuration ...
Ordre permettre, refuser
Autoriser @local
< /Location >

Maintenant, vous pouvez redémarrer le service de tasses et naviguer jusqu'à : 631 et vous devriez voir l'interface CUPS. La prochaine étape consiste à ajouter nos imprimantes. Lors de l'écriture, aucun pilote Linux pré-compilé n'est disponible pour mon Dymo LabelWriter 450 ou mon Brother HL-1110 et je ne m'attends pas à ce que ce soit le cas.

Compilez les pilotes Dymo LabelWriter 450

Dans l'interface cups, vous pouvez ajouter immédiatement le Dymo avec un pilote générique intégré. Cela ne fonctionnera pour rien d'autre que les machines Windows. Puisque Windows installe ses propres pilotes localement, le pilote installé ou non sur le serveur CUPS n'a pas vraiment d'importance. Ce n'est qu'un mécanisme de communication avec l'imprimante elle-même. Puisque je veux utiliser les imprimantes de mes ordinateurs Windows et Mac, j'ai besoin des pilotes appropriés, le cas échéant. Nous devons d’abord installer des dépendances pour la compilation du pilote:

sudo apt-get installez libcups2-dev libcupsimage2-dev g ++

Ensuite, nous pouvons télécharger le code source des pilotes Dymo CUPS, le décompresser et le compiler:

wget 'download.dymo.com/dymo/Software/Download Drivers / Linux / Téléchargement / dymo-cups-drivers-1.4.0.tar.gz'
tar xvf dymo-cups-drivers-1.4.0.tar.gz
cd dymo-cups-drivers-1.4.0.5 /
sudo ./configure
sudo faire
sudo faire installer

Maintenant, lorsque nous allons ajouter le pilote via l'interface Web de CUPS, le pilote approprié doit apparaître. Cela vous permettra d'utiliser l'imprimante à la fois depuis Mac, qui la découvrira via Bonjour, et sous Windows. Pour l'ajouter dans Windows, il suffit de naviguer vers l'imprimante dans l'interface Web et de copier l'URL. le Ajouter une imprimante L’assistant de Windows répondra à cette question et il vous suffit de fournir les pilotes Windows appropriés pour l’imprimante que vous avez téléchargée.

Solution de contournement pour le Brother HL-1110

Comme indiqué précédemment, le Brother HL-1110 fonctionne correctement, partagé à partir de CUPS sur une machine Windows car il installe ses propres pilotes. J'ai essayé un peu avec différents pilotes fournis avec CUPS pour différentes imprimantes Brother avec des spécifications similaires sans succès. J'ai trouvé un fichier profondément caché à télécharger de brother avec la source, mais il n'a pas pu être compilé directement et m'a posé beaucoup de problèmes, même lorsque je pensais l'avoir construit correctement.

Les pilotes de cette imprimante sont disponibles pour Linux mais pas pour l’architecture ARM. Cela ne devrait donc pas poser de problème de se connecter à cette imprimante à partir d'une autre machine Linux à l'aide de pilotes locaux. Lorsque j'écris ceci, je ne l'ai pas encore essayé.

Le Mac ne vous permet pas d'ajouter d'autres pilotes lorsque vous vous connectez à l'imprimante via le partage d'impression annoncé par Bonjour. Alors j'ai installé samba sur le pi et ajouté l’imprimante de cette façon. Installation simple:

sudo apt-get install samba

J'ai laissé tous les paramètres tels quels, puis j'ai recherché une imprimante Windows sur mon Mac. Trouvé la groupe de travail et alors imprimante (Je pensais que c'était un nom correct pour cela) et ensuite ajouté l'imprimante. De cette façon, j'ai pu spécifier les pilotes Mac que je voulais utiliser.

Conclusion

Pas la solution parfaite que je voulais. Je voulais juste une imprimante bon marché pour un projet qui nécessitait l'impression A4 et d'étiquettes, alors je viens de commander les imprimantes les moins chères en stock. Après cela, je vous recommanderais de rechercher une imprimante avec les pilotes appropriés ou le code source approprié disponible pour Linux et l’architecture ARM. Il est un peu ironique de constater que la solution open source développée par Apple fonctionne sans problème pour mes machines Windows, tandis que Samba ou SMB, qui est beaucoup plus courant dans le monde de Windows, résout mon problème Mac.

Commentaires

Laisser un commentaire

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