Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
wiki:services:imprimante_cups_server [2017/04/05 16:29] no_pseudo |
wiki:services:imprimante_cups_server [2017/08/07 21:46] no_pseudo |
||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
--- // | --- // | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | Merci de n' | ||
+ | La commande pour imprimer en Grayscale: | ||
+ | < | ||
+ | </ | ||
+ | |||
===== Services proposés par cups-server ===== | ===== Services proposés par cups-server ===== | ||
* L' | * L' | ||
- | L' | + | L' |
Les pilotes Brother sont déjà installés, pas besoin de les installer sur votre PC. | Les pilotes Brother sont déjà installés, pas besoin de les installer sur votre PC. | ||
Pas besoin d' | Pas besoin d' | ||
Ligne 33: | Ligne 40: | ||
< | < | ||
- | < | + | < |
< | < | ||
Ligne 47: | Ligne 54: | ||
Pour récupérer le document: | Pour récupérer le document: | ||
- | * Go sur [[ftp://192.168.102.100: | + | * Sur nextcloud dans **/MiNET/Scanner** |
- | * Le login: scanner_minet | ||
- | |||
- | * Le mdp: le fameux mot de passe qui permet de se connecter en SSH sur les switchs | ||
- | |||
- | ou | ||
- | |||
- | * loggez-vous en SSH sur cups-server et récupérez votre document (situé dans / | ||
- | |||
- | <color # | ||
- | * ajouter plus d' | ||
- | * interfacer cups-server et owncloud pour déplacer directement les documents scannés sur owncloud | ||
===== Comment c'est fait ===== | ===== Comment c'est fait ===== | ||
Ligne 69: | Ligne 65: | ||
on installe les drivers Brother dispo sur [[http:// | on installe les drivers Brother dispo sur [[http:// | ||
+ | |||
+ | Sinon les drivers se trouvent sur le CD fourni avec l' | ||
On s' | On s' | ||
Ligne 75: | Ligne 73: | ||
(à noter que par défaut cups autorise la connexion que depuis 127.0.0.1, pour se connecter sur l' | (à noter que par défaut cups autorise la connexion que depuis 127.0.0.1, pour se connecter sur l' | ||
soit en ligne de commande (cf la doc de cups). | soit en ligne de commande (cf la doc de cups). | ||
+ | |||
+ | <wrap hi>TODO: interface web pour imprimer quand on est vraiment mauvais avec la ligne de commande </ | ||
==== Scanner ==== | ==== Scanner ==== | ||
Ligne 81: | Ligne 81: | ||
On installe un serveur ftp: | On installe un serveur ftp: | ||
- | < | + | < |
+ | <WRAP center round important 100%> | ||
+ | **Obsolète: | ||
J'ai choisi pure-ftpd car sa configuration initiale fait tout ce dont on a besoin: pas de ftp anonyme, les home directories des utilisateurs standard sont disponible en ftp (avec authetification PAM), pas de ftp pour le compte root. | J'ai choisi pure-ftpd car sa configuration initiale fait tout ce dont on a besoin: pas de ftp anonyme, les home directories des utilisateurs standard sont disponible en ftp (avec authetification PAM), pas de ftp pour le compte root. | ||
Il nous reste donc à créer un utilisateur et définir son home directory (qui va être l' | Il nous reste donc à créer un utilisateur et définir son home directory (qui va être l' | ||
+ | |||
< | < | ||
+ | </ | ||
+ | |||
+ | <WRAP center round info 100%> | ||
+ | pure-ftpd est maintenant configuré avec un utilisateur virtuel chrooté (il n'est plus possible de se logger avec PAM et de voir le contenu des dossiers autre que la racine du serveur ftp). | ||
+ | De plus un script transfère automatiquement les fichiers uploadés sur le ftp sur Nextcloud (dans / | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Configuration de pure-ftpd avec {next, | ||
+ | |||
+ | |||
+ | Configuration de pure-ftpd: | ||
+ | < | ||
+ | # Creation de la DB pour les utilisateurs virtuels | ||
+ | echo '/ | ||
+ | cd / | ||
+ | ln -s / | ||
+ | |||
+ | # Desactivation du login UNIX et PAM | ||
+ | echo ' | ||
+ | echo ' | ||
+ | |||
+ | # Creation de notre utilisateur virtuel | ||
+ | groupadd ftpgroup | ||
+ | useradd -g ftpgroup -d /dev/null -s /etc ftpuser | ||
+ | pure-pw useradd scanner_minet -u ftpuser -g ftpgroup -d / | ||
+ | pure-pw mkdb | ||
+ | |||
+ | # On met a jour les UID et GID de l' | ||
+ | MYUID=$(id -u ftpuser); sed -i -e " | ||
+ | MYGID=$(id -g ftpuser); sed -i -e " | ||
+ | |||
+ | # On active le lancement de script custom à la fin de l' | ||
+ | echo ' | ||
+ | |||
+ | # On s' | ||
+ | echo ' | ||
+ | |||
+ | # Pas d' | ||
+ | echo ' | ||
+ | |||
+ | # On s' | ||
+ | echo ' | ||
+ | |||
+ | </ | ||
+ | |||
+ | On crée le script qui va transférer les fichiers uploadé sur le ftp sur le {own, | ||
+ | < | ||
+ | #!/bin/bash | ||
+ | |||
+ | # Lorsque pure-ftpd appelle un script il passe le chemin absolu du fichier uploadé en $1 | ||
+ | |||
+ | |||
+ | PROXY=" | ||
+ | OC_USER=" | ||
+ | OC_PASS=" | ||
+ | OC_WEBDAV_URL=" | ||
+ | OC_UPLOAD_DIR=" | ||
+ | FILENAME=$(basename " | ||
+ | |||
+ | |||
+ | # upload_exit_code vaut 0 si la commande n'a pas retournée d' | ||
+ | # cependant ça ne veut pas dire que le fichier a bien été uploadé sur | ||
+ | # nextcloud | ||
+ | curl -s -x $PROXY -u $OC_USER: | ||
+ | upload_exit_code=$? | ||
+ | |||
+ | |||
+ | # Verifie que le fichier se trouve bien sur nextcloud | ||
+ | # si dans le XML renvoyé par la requête on trouve | ||
+ | # un élément " | ||
+ | # check_exit_code vaut 0 -> en d' | ||
+ | curl -s -x $PROXY -u $OC_USER: | ||
+ | check_exit_code=$? | ||
+ | |||
+ | |||
+ | # On supprime le fichier de cups-server seulement si le fichier a | ||
+ | # bien été envoyé sur nextcloud | ||
+ | if [ $upload_exit_code -eq 0 ] && [ $check_exit_code -ne 0 ]; then | ||
+ | rm -r " | ||
+ | fi | ||
+ | |||
+ | </ | ||
+ | |||
+ | Ensuite: | ||
+ | < | ||
+ | chmod +x / | ||
+ | </ | ||
+ | |||
+ | On s' | ||
+ | < | ||
+ | STANDALONE_OR_INETD=standalone | ||
+ | |||
+ | VIRTUALCHROOT=true | ||
+ | |||
+ | UPLOADSCRIPT=/ | ||
+ | |||
+ | UPLOADUID=1008 #uid de l' | ||
+ | UPLOADGID=1008 #gid de l' | ||
+ | </ | ||
Ensuite aller sur l' | Ensuite aller sur l' | ||
http:// | http:// | ||
- | Cliquez sur un profile | + | Cliquez sur un profil |
- | Profile Name, Host Address (l' | + | Profile Name |
+ | |||
+ | Host Address (l' | ||
+ | |||
+ | Username (le nom d' | ||
+ | |||
+ | Password (le mot de passe de cet utilisateur) | ||
+ | Store Directory (le dossier dans lequel les documents seront stockés, mettre ' | ||
Les autres champs peuvent être laissés à leur valeur par défaut. | Les autres champs peuvent être laissés à leur valeur par défaut. | ||
- | Validez le formulaire et normalement le profile devrait apparaitre dans le menu 'Scan to FTP' de l' | + | Validez le formulaire et normalement le profile devrait apparaitre dans le menu 'Scan to FTP' de l' |
+ | |||
+ | |||
+ | ==== Commandes utiles ==== | ||
+ | |||
+ | Lister les imprimantes disponibles: | ||
+ | < | ||
+ | |||
+ | Sélectionner une imprimante: | ||
+ | < | ||
+ | |||
+ | Imprimer avec un bandeau topsecret: | ||
+ | < | ||
+ | |||
+ | Spécifier un range de page à imprimer: | ||
+ | < |