J'ai besoin d'exécuter un script, qui prend beaucoup de temps à exécuter, ou je veux juste qu'il s'exécute pour toujours. Je ne peux pas simplement SSH sur ma machine, car lorsque je me déconnecte, elle cesse de fonctionner.
Existe-t-il un moyen d'exécuter un script qui ne dépend pas du shell qui l'a démarré?
J'utilise Ubuntu 9.04.
J'utilise toujours juste nohup. Si je me soucie de la sortie, je la redirige vers un fichier journal, sinon je l'envoie à / dev / null.
Exemple:
Cela le met en arrière-plan, avec une sortie allant à / dev / null, et il est immunisé contre le signal HUP si vous vous déconnectez. Vous pouvez également "renier" le travail avec certains shells (comme bash) afin qu'il ne soit pas connecté à votre session.
la source
Pour installer l'écran:
apt-get install screen
Lancez ensuite en utilisant simplement:
screen
Et
man screen
pour obtenir la liaison de clé.la source
Pendant que vous êtes connecté à un serveur, vous pouvez exécuter un script en mode détaché par la commande suivante:
Plus tard, lorsque vous vous reconnecterez, vous pourrez vérifier script.out pour toute sortie et script.err pour tout message d'erreur. Si vous souhaitez que les messages de sortie et d'erreur soient dans le même fichier, procédez comme suit:
la source