Recherche sur le site Web

N'achetez pas de serveur d'impression, construisez-en un sous Linux. Voici comment


Points clés à retenir

  • Réutilisez un ancien PC avec Linux comme serveur d'impression pour une configuration économique et indépendante de la plate-forme.
  • CUPS permet à votre ancien matériel PC d'agir comme un serveur d'impression Linux sur diverses plates-formes.
  • Configurez CUPS et Samba pour l'impression réseau, puis connectez facilement des appareils à votre imprimante partagée.

Le partage d'une imprimante peut être délicat en raison de configurations complexes ou de problèmes de compatibilité logicielle. Cependant, avec un ancien ordinateur, vous pouvez le transformer en serveur d'impression Linux, simplifiant ainsi le partage d'imprimantes réseau en une solution rentable.

J'ai commandé sur mesure un vieux PC en 2015, qui m'a servi de bureau Windows pour la productivité et les jeux légers. Depuis 2020, je suis passé aux Mac et le PC est devenu un serveur Plex/impression sans tête. Même si son administration à l'aide d'un bureau à distance rendait cela réalisable, il me semblait que je me heurtais toujours à d'étranges bizarreries en matière d'autorisations réseau et à des mises à jour fréquentes nécessitant des redémarrages.

Fatigué de tout cela et de la nature lourde de Windows, j'ai décidé de transformer ce vieux PC en un serveur de fichiers stable et fiable, que je pourrais également utiliser non seulement pour Plex et le partage de fichiers, mais aussi pour y imprimer, depuis n’importe quel ordinateur ou appareil, quelle que soit la plate-forme.

Qu’est-ce que CUPS ?

CUPS (Common UNIX Printing System) est le système d'impression standard pour les systèmes d'exploitation de type Unix, permettant à un ordinateur d'agir comme un serveur d'impression qui traite les travaux d'impression pour diverses imprimantes. CUPS prend en charge une large gamme de modèles d'imprimantes et est compatible avec le protocole d'impression Internet (IPP), permettant des fonctionnalités sur Windows, macOS, Android et iOS.

Installer et configurer CUPS

Après avoir installé une distribution Linux, installez CUPS en suivant les étapes de votre distribution, puis démarrez-la, activez-la et ajoutez votre utilisateur au groupe lpadmin, par exemple : sudo usermod -aG lpadmin matt<.

Ubuntu

sudo apt update
sudo apt install cups
sudo systemctl start cups
sudo systemctl enable cups
sudo usermod -aG lpadmin $USER 

Les membres du groupe lpadmin ont l'autorisation de gérer les imprimantes et les travaux d'impression, ce qui inclut l'ajout et la configuration d'imprimantes via l'interface Web CUPS.

Feutre

sudo dnf install cups
sudo systemctl start cups
sudo systemctl enable cups
sudo usermod -aG lpadmin $USER 

Arch Linux

sudo pacman -S cups
sudo systemctl start org.cups.cupsd.service
sudo systemctl enable org.cups.cupsd.service
sudo gpasswd -a $USER lpadmin

Configurer les tasses

Une fois que vous avez installé CUPS, vous devez le configurer pour, entre autres, activer le partage d'imprimante et l'interface Web de CUPS. Sauvegardez la configuration par défaut existante.

sudo mv /etc/cups/cupsd.conf /etc/cups/cupsd.conf.bak

Ensuite, démarrez un nouveau fichier de configuration.

sudo vim /etc/cups/cupsd.conf

Ensuite, ajoutez ou modifiez les lignes suivantes dans le fichier de configuration.

# Basic server settings
LogLevel warn
PageLogFormat
Listen *:631
interfaces
Listen /run/cups/cups.sock
MaxLogSize 0
ErrorPolicy retry-job # Automatically retry failed print jobs
IdleExitTimeout 60
# Printer browsing and discovery
Browsing On # Enable printer sharing
BrowseLocalProtocols dnssd # Advertise printers using Bonjour
# Authentication and web interface
DefaultAuthType Basic # Basic = username/password
WebInterface Yes # CUPS web interface
# Global access settings
<Location />
  Order allow,deny # Allow access to everyone
  Allow all
</Location>
# Admin access settings
<Location /admin>
  Order allow,deny # Require authentication
  Allow all
  AuthType Basic
  Require user @SYSTEM # Restrict to system adminis
</Location>
# Access to configuration files
<Location /admin/conf>
  Order allow,deny
  Allow all
  AuthType Basic
  Require user @SYSTEM
</Location>
# Job management settings
<Location /jobs>
  AuthType Basic
  Require user @SYSTEM
  Order allow,deny
  Allow all
</Location>
# Printer access settings
<Location /printers>
  Order allow,deny # All clients can print
  Allow all
</Location>
<Location /admin/log>
 Order allow,deny
 Allow all
 AuthType Basicaccess
 Require user @SYSTEM
</Location>

Redémarrez CUPS pour appliquer les modifications.

sudo systemctl restart cups

Enfin, vérifiez que CUPS est opérationnel correctement.

sudo systemctl status cups

Configurer Samba pour le partage d'imprimantes réseau

Ensuite, nous devons configurer Samba pour qu'il agisse comme une sorte d'intermédiaire entre le serveur CUPS et les périphériques clients. Modifiez votre fichier smb.conf :

sudo vim /etc/samba/smb.conf

Ajoutez les lignes suivantes à la section [global].

 load printers = yes
 printing = cups
 printcap name = cups

Ajoutez la section [imprimantes] suivante et la section pilotes d'imprimante [print$].

[printers]
 comment = All Printers
 path = /var/spool/samba
 printable = yes
 guest ok = yes
 browseable = no
[print$]
 comment = Printer Drivers
 path = /var/lib/samba/printers
 browseable = yes
 read only = no
 guest ok = yes

Votre smb.conf ressemblera quelque peu à ce qui suit :

[global]
 workgroup = DOGHOUSE
 server string = Samba Server %v
 netbios name = SERVER
 security = user
 map to guest = Bad User
 load printers = yes
 printing = cups
 printcap name = cups
[Home]
 path = /home/username
 browseable = yes
 writable = yes
 valid users = user
 create mask = 0700
 directory mask = 0700
[printers]
 comment = All Printers
 path = /var/spool/samba
 printable = yes
 guest ok = yes
 browseable = no
[print$]
 comment = Printer Drivers
 path = /var/lib/samba/printers
 browseable = yes
 read only = no
 guest ok = yes

Vous pouvez entrer la commande testparm pour tester votre configuration.

Si tout se passe bien, redémarrez Samba :

sudo systemctl restart smbd nmbd

Enfin, vérifiez que Samba est opérationnel et fonctionne correctement.

sudo systemctl status smbd nmbd

Partager votre imprimante

Nous avons presque terminé ! Il est temps de vous connecter à votre nouveau serveur CUPS, puis d'ajouter et de partager votre imprimante.

Pointez votre navigateur Web vers l'adresse IP ou le nom d'hôte de votre serveur, tel que 192.168.1.100:631 ou nom d'hôte:631. À l'aide de la configuration CUPS que vous avez ajoutée précédemment, vous devriez être invité à saisir vos informations d'identification pour accéder à l'interface Web.

Sélectionnez l'onglet "Administration" dans la rangée du haut,

Sélectionnez « Ajouter une imprimante », le serveur devrait déjà reconnaître votre matériel et le répertorier comme imprimante locale. Vous pouvez modifier les détails de votre imprimante, mais n'oubliez pas de sélectionner l'option « Partager cette imprimante » avant de passer à l'écran de sélection du pilote. Sélectionnez le fabricant de votre imprimante, le pilote approprié pour votre modèle d'imprimante, puis sélectionnez "Ajouter une imprimante".





Pouvons-nous parler des conducteurs pendant une minute ?

CUPS utilise des fichiers PostScript Printer Description (PPD), qui décrivent les capacités et les fonctionnalités de votre modèle d'imprimante spécifique, mais nous les appellerons simplement pilotes.

Si vous ne trouvez pas votre imprimante représentée, vous pouvez essayer le pilote générique (Generic PostScript). Si vous regardez autour de vous, vous trouverez probablement un fichier PPD sur le site Web du fabricant de votre imprimante, vous pourrez alors utiliser l'option « Fournir un fichier PPD » pour le télécharger sur le serveur CUPS depuis votre ordinateur.

Cela dit, dans le cas des imprimantes Brother, vous n'obtiendrez peut-être pas des résultats optimaux avec les propres pilotes Brother. J'ai trouvé que les pilotes brlaser donnent de bien meilleurs résultats que les propres pilotes Brother. Les pilotes brlaser peuvent être facilement ajoutés à votre système avec le package Printer-Driver-brlaser, par exemple : sudo apt install Printer-Driver-brlaser.

Réussir les choses du premier coup peut être délicat, et vous ne saurez pas si c'est correct avant d'avoir soumis votre premier travail d'impression. Si votre sortie d'impression est mutilée ou charabia, vous pouvez modifier votre imprimante dans l'interface Web et essayer un autre pilote.

Configuration de vos appareils

À ce stade, votre imprimante CUPS devrait être accessible aux clients du réseau, il est temps de connecter vos périphériques réseau à votre imprimante partagée.

Fenêtres

Ouvrez les paramètres et sélectionnez Bluetooth et appareils > Imprimantes et scanners. Pour ajouter l'imprimante, sélectionnez « Ajouter un périphérique » et attendez que Windows analyse pour la trouver, puis « Ajouter un périphérique ».





macOS

Ouvrez les paramètres système, puis sélectionnez « Ajouter une imprimante, un scanner ou un fax ». Sur l'écran Ajouter une imprimante, sélectionnez votre imprimante, puis sélectionnez « Ajouter ».






Androïde

Android fait les choses un peu différemment dans la mesure où vous devrez probablement installer un service d'impression correspondant au fabricant de votre imprimante. Ouvrez les paramètres, puis Plus d'options de connectivité > Impression > Ajouter un service. Cela ouvrira le Play Store et vous permettra de choisir un service d'impression pour le fabricant de votre imprimante (le service d'impression Brother n'a pas fonctionné pour moi, mais le service d'impression Mopria fonctionne parfaitement).

Une fois que le service d'impression a trouvé l'imprimante partagée, je l'ai simplement sélectionnée, puis "Imprimer la page de test" pour m'assurer qu'elle fonctionnait correctement.







iPhone

Sur iPhone et autres appareils iOS, il est très simple d’imprimer avec peu ou pas de configuration. Appuyez simplement sur l'icône de partage dans l'application que vous utilisez, puis sélectionnez « Imprimer » dans le menu. Vous devriez voir votre imprimante, mais sinon, sélectionnez simplement le champ "Imprimante", votre imprimante, puis Imprimer.





Félicitations! Vous avez réussi à transformer votre ancien PC en un serveur d'impression Linux fiable, rendant le partage d'imprimantes sur différentes plates-formes simple et transparent. Cette configuration est rationalisée, efficace et permet de gagner du temps, vous permettant d'imprimer facilement depuis n'importe quel appareil. Profitez de la simplicité et du contrôle que vous avez acquis sur votre environnement d’impression !

Articles connexes: