温馨提示×

如何用nohup在CentOS中实现远程命令执行

小樊
44
2026-01-08 03:43:35
栏目: 智能运维

nohup(no hang-up)是一个在Linux和Unix系统中用于在后台运行命令的实用程序,即使关闭终端或断开连接,它也会继续运行

  1. 首先,确保你有SSH访问权限。你需要知道远程服务器的IP地址、用户名和密码。

  2. 使用SSH连接到远程服务器。在终端中输入以下命令:

ssh 用户名@远程服务器IP

例如:

ssh john@example.com
  1. 输入密码后,你将连接到远程服务器。

  2. 在远程服务器上,使用nohup命令运行你想要执行的命令。例如,如果你想在后台运行一个名为my_script.sh的脚本,可以使用以下命令:

nohup ./my_script.sh &

&符号表示将命令放入后台运行。

  1. nohup命令会将输出重定向到一个名为nohup.out的文件中。如果你想将输出重定向到其他文件,可以使用以下命令:
nohup ./my_script.sh > output.log &
  1. 现在,即使你关闭终端或断开连接,命令也会在远程服务器上继续运行。

  2. 如果你想检查命令的输出,可以使用tail命令查看nohup.out文件的内容:

tail -f nohup.out
  1. 当你完成任务并准备终止后台进程时,可以使用ps命令找到进程ID(PID),然后使用kill命令终止进程:
ps aux | grep my_script.sh
kill 进程ID

例如:

ps aux | grep my_script.sh
kill 12345

这就是如何在CentOS中使用nohup实现远程命令执行的方法。请注意,如果你使用的是SSH密钥而不是密码进行身份验证,你可以在SSH命令中省略密码部分。

0