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

Shell et commandes GNU Discussion :

Problème Commande [ nohup ]


Sujet :

Shell et commandes GNU

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 8
    Par défaut Problème Commande [ nohup ]
    Bonjour ^^, j'ai un probléme dans la commande nohup
    comme vous le savez , nohup permet de maintenir l'execution de la commande associé même aprés sortir du systeme ...
    et pour bien observé sont fonctionnement, on m'a demandé d'executer une commande find en arriére plan :
    1) find / -size +20000c -exec ls -l {} \; &
    et une autre commande find avec nohup
    2) nohup find / -mtime -5 -exec file {} \; &



    le probléme, c'est lorsque je sort du systéme et je connecte avec mon compte
    les deux commande sont encore en execution !!! et le pire c'est que :



    la premiére commande est encore en Run et celui que j'ai donne nohup il est en sleep !

    Merci =)

  2. #2
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 288
    Par défaut
    Tu utilises une commande qui permet de continuer malgré la déconnexion et tu t'étonnes qu'elle continue après la déconnexion?



    Où est le problème?

  3. #3
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 347
    Par défaut
    Bonjour,

    Dans ta première commande (sans le nohup), on voit un nice -n 19.
    Or, c'est justement le principe du nohup, il renice le job sur une priorité plus haute que son père afin que quand le père meurt, lui ne meurt pas et se rattach au père de tous les processus qui est en général le 1 (init)

    Cordialement.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 8
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Tu utilises une commande qui permet de continuer malgré la déconnexion et tu t'étonnes qu'elle continue après la déconnexion?



    Où est le problème?
    la commande nohup j'ai appliqué juste pour la deuxiéme commande ! et pas la premiére ... et quand je me connecte la premiére aussi subit l'effet de nohup !

    Citation Envoyé par disedorgue Voir le message
    Bonjour,

    Dans ta première commande (sans le nohup), on voit un nice -n 19.
    Or, c'est justement le principe du nohup, il renice le job sur une priorité plus haute que son père afin que quand le père meurt, lui ne meurt pas et se rattach au père de tous les processus qui est en général le 1 (init)

    Cordialement.
    le nice juste pour les ressources et la rapidité d'execution, il a un rapport avec les résultats
    je l'ai executé sans le nice , et voila la résultat



    normalement le deuxiéme processus devrait être mort ? et le premiére en R ? n'est ce pas ?

    un autre petit question ... pourquoi avant la deconnection les processus peuvent être observé par ps -f (il affiche les processus actif ) aussi pour la commande jobs, et aprés la deco , ps -f ne donne pas la même résultat :

    la commande find de nohup n'est plus la ? ou c'est normal pourquoi ?

    MERCI ^^

  5. #5
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 347
    Par défaut
    normalement le deuxiéme processus devrait être mort ? et le premiére en R ? n'est ce pas ?
    C'est un peu plus complexe que ça, un processus, selon son activité, peut se retrouver "nicer" par le système et donc celui-ci peut très bien continuer à exister malgré la mort de son père.
    Il y a d'autres possibilités, tels que le processus fils est accroché sur une ressource en mode noyaux et que tant que cette ressource n'est pas libérée, le process ne meurt pas (mais bon, là en général, c'est ce que l'on appelle un zombie).
    un autre petit question ... pourquoi avant la deconnection les processus peuvent être observé par ps -f (il affiche les processus actif ) aussi pour la commande jobs, et aprés la deco , ps -f ne donne pas la même résultat :

    la commande find de nohup n'est plus la ? ou c'est normal pourquoi ?
    La commande ps n'affiche par défaut que l'arborescence du processus père qui lance la commande ps, donc en gros, tous les processus rattachés à ta phase login.
    Si tu veux en voir plus, il faut le spécifier à la commande ps.

    man ps ou info ps pour plus d'informations.

    Cordialement.

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 122
    Billets dans le blog
    148
    Par défaut
    Citation Envoyé par disedorgue Voir le message
    Bonjour,

    Dans ta première commande (sans le nohup), on voit un nice -n 19.
    Or, c'est justement le principe du nohup, il renice le job sur une priorité plus haute que son père afin que quand le père meurt, lui ne meurt pas et se rattach au père de tous les processus qui est en général le 1 (init)

    Cordialement.
    Euh, sincèrement, je doute de cette explication. Il n'y a pas de lien entre nice et nohup.
    -> http://en.wikipedia.org/wiki/Nohup

    Si vous lancez un processus avec un "niceness" avec une priorité plus haute (il est moins gentil par rapport aux autres) et que vous fermez le programme parent, le programme enfant meurt, peu importe son nice.

    Nohup fait en sorte qu'il ne dépende pas d'un terminal (connexion par SSH, ou connexion directe sur la machine).

    Dans le source : http://src.gnu-darwin.org/src/usr.bi...p/nohup.c.html il n'y a rien par rapport à nice.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 347
    Par défaut
    Dans une page de man:

    nohup exécute la commande désirée en ignorant les signaux
    HANGUP (déconnexion), avec une priorité d'ordonnancement
    incrémentée de 5, afin que cette commande continue à
    s'exécuter en arrière-plan après la déconnexion de l'util*
    isateur.

    http://www.linux-france.org/article/...1/nohup-1.html

    Personnellement, il m'arrivait de nicer des process que j'ai pas lancé en nohup et ceux-ci continuait après ma deconnection.

    Mais je reconnais que dans le source on ne voit pas ce cheminement.
    La méthode à peut-être changé depuis 4 ou 5 ans

    Cordialement.

  8. #8
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 122
    Billets dans le blog
    148
    Par défaut
    Ouep, bah cette page de man doit être obsolète. Lorsque je lis les informations de
    info coreutils 'nohup invocation'
    j'y lis :
    `nohup' does not automatically put the command it runs in the
    background; you must do that explicitly, by ending the command line
    with an `&'. Also, `nohup' does not alter the niceness of COMMAND; use
    `nice' for that, e.g., `nohup nice COMMAND'.
    Donc, j'imagine que c'est un changement depuis le temps.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  9. #9
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 347
    Par défaut
    La morale de l'histoire:
    Il ne faut pas s'endormir sur ses lauriers
    (Et là, je parle pour moi )

    Cordialement.

Discussions similaires

  1. Problème avec la commande nohup
    Par bluefish63 dans le forum Administration système
    Réponses: 3
    Dernier message: 13/03/2009, 13h45
  2. Problème commandes MS DOS
    Par djalouk dans le forum Windows
    Réponses: 7
    Dernier message: 19/09/2007, 15h31
  3. problème commande ping
    Par Purple Haze dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 22/03/2007, 19h50
  4. problème commande shell compilation auto
    Par ludovic85 dans le forum C#
    Réponses: 1
    Dernier message: 07/02/2007, 12h28
  5. Problème commandes shell-trop d'arguments
    Par SuperCed dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 22/12/2006, 12h57

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