Forum Linux.général Problème avec su

Posté par  (site web personnel) .
Étiquettes :
2
25
mai
2012

Bonjour, j'avais écrit le backend cups suivant il du temps de Debian Lenny:

#!/bin/bash
sed -i 's/AuthInfoRequired.*//g' /etc/cups/printers.conf
FILENAME=/tmp/krbprint_$$
cat - > $FILENAME
chown $2 $FILENAME
if [ "$#" != "0" ];
then
        export DEVICE_URI=$(echo $DEVICE_URI|sed -e 's/?k=true//g')
        KRB5_UID=$(id -u $2)
        export KRB5CCNAME="FILE:$(ls --sort=time /tmp/krb5cc_$KRB5_UID_*|head -n 1)"
        su -c "/usr/bin/smbspool $1 $2 \"$3\" $4 \"$5\" $FILENAME" $2
        rm -f $FILENAME
        exit 0
else
        echo "network krb \"Unknown\" \"Windows Printer Kerberos\""
        exit 0
fi

Cela fonctionnait très bien mais sous Debian squeeze, ca me répond:
su must be run from a terminal

Le su en question permet de lancer smbspool avec l'id de l'utilisateur qui lancé l'impression… Note, la machine est intégrée dans un domaine active directory avec Winbind + idmap config AD: backend = rid

Je ne vois pas comment m'en sortir…

  • # Ok, facile en fait

    Posté par  (site web personnel) . Évalué à -1.

    Il faut maintenant utiliser sudo … Tout con

    • [^] # Re: Ok, facile en fait

      Posté par  . Évalué à 2.

      ou faire
      > su - $user -c $commande

      mais il faut peut-etre toujours le terminal pour que cela fonctionne.

      sinon il me semble que samba peut partager les imprimantes Windows/AD/Kerberos (faut peut-etre samba4 par contre)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.