Forum Linux.général Comment lancer un programme pour qu'il soit indépendant du shell ?

Posté par  (site web personnel) .
Étiquettes :
0
18
sept.
2005
Bonjour,
Je souhaiterais lancer, sur une machine avec Slackware, un serveur Neverwinter Nights.
D'après ce que j'ai compris, j'ai deux choix :
- un script dans rc.d, qui lance le serveur au démarrage
- le lancer via SSH - c'est ce que je préférerais, vu que je souhaiterais décider quel module lancer, notamment.
Mais j'ignore comment faire pour que le processus nwnserver demeure quand je ferme ma connexion SSH (et ferme du même coup le shell depuis lequel nwnserver a été lancé). J'ai essayé "./nwnserver -module= &", mais bien que ça le lance en tâche de fond, il semble stoppé lorsque je ferme ma session ssh.
Il y a un moyen simple pour que le processus soit indépendant du shell père ?
Merci d'avance;
Ceacy
  • # nohup

    Posté par  . Évalué à 3.

    La commande nohup sert à ça. Avec:
    nohup ./nwnserver -module= &
    tu pourras te déconnecter sans que la commande soit tuée. "man nohup" pour plus de détails
    • [^] # Re: nohup

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

      Je viens de tester, avec :
      nohup ./nwserver -module Chapter1 &
      Ca se lance, je récupère la main, et le serveur est bien dans la liste des processus. Mais avoir fermé Putty puis l'avoir relancé, lesdits processus ont disparu ... le serveur a été tué, apparemment.
      • [^] # Re: nohup

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

        Ah, de plus, je récupère, après déconnexion/reconnexion SSH, dans le nohup.out :
        Neverwinter Nights Server
        Build:8074
        Copyright BioWare Corp 1998-2004

        Server: Loading...
        Server: Running...

        Server: Loading module "Chapter1"...................................................................................................................
        Server: Module loaded
        Server: Exiting...
  • # screen

    Posté par  . Évalué à 2.

    Avec les sessions à distance que l'on veut quitter et recuperer pourquoi ne pas utiliser screen (http://www.gnu.org/software/screen/)(...)

    Avec Ctrl-A D tu "détaches le screen"
    Quand tu reviens screen -r et ce doit être bon
  • # essaye la commande "screen"

    Posté par  . Évalué à 2.

    C'est beaucoup plus pratique que nohup car tu peux récupérer la main sur le process à tout moment.

Suivre le flux des commentaires

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