通过网络将shell命令发送到Linux服务器

时间:2009-08-28 23:22:22

标签: linux command-line

是否有工具可以让我在没有SSH的情况下通过网络发出命令?

例如,我想创建一个装有DVD刻录机的新linux盒子,并通过网络“growisofs -dvd-compat -Z / dev / dvd -dvd-video dvd”发送带有参数的命令并发送要刻录的文件。系统将是自动化的,因此我需要能够轻松有效地完成这项工作的东西。

2 个答案:

答案 0 :(得分:1)

这是我在详细回答表中的评论。

在本地主机上运行ssh-keygen,最有可能将密钥保存在默认位置而不使用密码短语。接下来,使用ssh copy-id <user@host>将公钥复制到远程主机。

对于您的脚本,请执行以下操作:

scp "$FILE_TO_BURN" $REMOTE_USER@$REMOTE_HOST:"$BURN_DROP_DIR"
ssh $REMOTE_USER@$REMOTE_HOST $BURN_COMMAND
ssh $REMOTE_USER@$REMOTE_HOST rm "$BURN_DROP_DIR/$(basename $FILE_TO_BURN)"

通过捕获ssh命令的退出状态/输出,随意通过错误检测来充实它。您可能还希望在不使用诸如sshfs(由大多数发行版打包)之类的内容复制整个文件的情况下进行此操作,以挂载包含要通过网络刻录的文件的目录。

答案 1 :(得分:0)

您可以将netcat与shell绑定一起使用。如果网络被公开曝光,这当然是非常危险的。

Google search