IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Web Perl Discussion :

probleme suppression utilisateur


Sujet :

Web Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Par défaut probleme suppression utilisateur
    Bonjour,
    j'essais dans mon script cgi écrit en perl, de supprimer un utilisateur avec la commande: userdel -r user
    mais ça ne marche pas
    et je rappelle que les scripts s'executent en tant que root
    pourquoi ça ne marche pas? >.<

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Parce que ça ne marche pas ? Ma boule de cristal étant en panne, je préfèrerais voir le code.

    --
    Jedaï

  3. #3
    Membre averti
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
            my @users = getSystemUsers();
            foreach(@users) {
                    if($champs->{$_} eq "on") {
                            print "Suppression de $_...";
                            `userdel -r $_`;
                            print "OK<br />";
                    }
            }
    getSystemUsers() renvoi la liste des utilisateurs contenus dans /etc/passwd
    le $champs->{$_} renvoi si le checkbox a été sélectionné pour etre supprimé

    j'espère que ta boule marche ainsi

  4. #4
    Membre Expert
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Par défaut
    Bonjour,

    Tu devrais vérifier ce que retourne ta commande... Essaye ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    my @users = getSystemUsers();
    foreach(@users) 
    {
       if($champs->{$_} eq "on") 
       {
            print "Suppression de $_...";
            my $rep = `userdel -r $_`;
            print "$rep";
       }
    }
    Et dis nous ce que tu obtiens

  5. #5
    Membre averti
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Par défaut
    j'ai déjà essayé d'afficher ce qui est retourné, et rien n'est affiché
    par contre si je fais un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    `userdel -r $_` || die('erreur suppression');
    il sort du script avec le message d'erreur spécifié

  6. #6
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Je préfèrerais que tu fasses appel à system(), je ne sais pas si userdel est censé renvoyer quoi que ce soit, et si elle envoie ses erreurs sur STDOUT et non STDERR, tu ne les récupèreras pas avec ``...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    system("userdel -r $user") == 0
      or die "Userdel error : $!\n";
    --
    Jedaï

  7. #7
    Membre averti
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Par défaut
    toujours même scénario...l'appel die est executé -.-

Discussions similaires

  1. probleme suppression du compte root
    Par moulefrite dans le forum Installation
    Réponses: 14
    Dernier message: 05/06/2009, 17h39
  2. Problème environnement utilisateur avec Samba
    Par Le gogole dans le forum Réseau
    Réponses: 1
    Dernier message: 13/04/2006, 13h03
  3. probleme suppression de fichier
    Par chico_du_33 dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 23/03/2006, 18h25
  4. [JTable] probleme suppression ligne
    Par lilou77 dans le forum Composants
    Réponses: 1
    Dernier message: 01/11/2005, 10h34
  5. probleme des utilisateurs
    Par frome dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 24/03/2004, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo