Je démarre ma candidature en arrière-plan en utilisant nohup
comme mentionné ci-dessous -
root@phx5qa01c:/bezook# nohup java -jar ./exhibitor-1.5.1/lib/exhibitor-1.5.1-jar-with-dependencies.jar -c file --fsconfigdir /opt/exhibitor/conf --hostname phx5qa01c.phx.qa.host.com > exhibitor.out &
[1] 30781
root@phx5qa01c:/bezook# nohup: ignoring input and redirecting stderr to stdout
Mais chaque fois que je vois ce message -
nohup: ignoring input and redirecting stderr to stdout
Y aura-t-il un problème si je vois ce message? Qu'est-ce que cela signifie et comment puis-je l'éviter?
io-redirection
stdin
nohup
stderr
arsenal
la source
la source
nohup java -jar blaa bla >/tmp/test.out 2>&1 &
/tmp/test.out
puis-je utiliserexhibitor.out
. Désolé de poser une question stupide car je suis assez nouveau dans ces choses ..2>&1
?Réponses:
Pour vous assurer que votre application est dissociée de son terminal - afin qu'elle n'interfère pas avec les commandes de premier plan et continue de s'exécuter après votre déconnexion -
nohup
garantit que ni stdin, ni stdout ni stderr ne sont un périphérique de type terminal. La documentation décrit les actions à entreprendre:Vous avez redirigé stdout vers un fichier lorsque vous avez tapé
> exhibitor.out
votre ligne de commande. Si vous êtes d'accord pour que stderr de votre application soit dirigé vers le même fichier que sa sortie standard, vous n'avez rien d'autre à faire. Ou vous pouvez rediriger stderr vers un autre fichier en ajoutant un argument tel que2> exhibitor.err
. (Merci à un utilisateur inconnu - mes notifications n'ont pas montré de nom - pour avoir suggéré l'inclusion de cette alternative.)la source
</dev/null
; Linux le fera automatiquement, mais si cela n'est pas fait manuellement, vous obtiendrez toujours une ligne dans la sortie de nohup qui se lit comme suit:nohup: ignoring input
Vous pouvez vous débarrasser du message si vous redirigez l'erreur std vers la sortie std:
la source
Dans ma situation, je redirige stdout et stderr, mais il affiche également ce qui suit dans le fichier journal:
Pour supprimer cet avertissement, vous devez également rediriger stdin comme suit:
Je sais que cette réponse est définitivement en retard pour vous, mais peut-être que cela aiderait les autres.
la source