nodejsでtmuxコマンドを実行する方法

nodejsでtmuxコマンドを実行する方法

tmux cmdをこのように実行する方法はありますか?tmux キルサーバーtmuxinatorアドオンnodejsなどを介してオンラインで検索しましたが、エラーを取り除くのに役立つ有用な情報が見つかりませんでした。

頑張っていますshelljsnpmモジュールが機能しません。

このエラーが発生します。 -

Pseudo-terminal will not be allocated because stdin is not a terminal.
Permission denied (publickey).

次のコード行を使用してnodejsでtmux cmdを実行するとき: -

shell.exec('ssh -t myremotemachineaddress tmux kill-server');
shell.exec('ssh -t myremotemachineaddress tmuxinator start rails_servers');

ここで Shell は変数です。shelljsnpmモジュール。

答え1

まず、リモートホストに公開鍵認証が設定されていないようです。そうしないと、パスワードなしでログインできません。コンピュータでキーペアを作成し、~/.ssh/authorized_keysユーザーディレクトリのファイルに公開キーを追加する必要があります。

キーペアを生成するには、次を使用します。ssh_keygen(パスワードを求めるときにEnterを2回押すと、パスワードなしでキーが生成されます。)

ssh-keygen -t rsa -b 8192 -f ~/.ssh/id_yourmachine
ssh-add ~/.ssh/id_yourmachine

~/.ssh/id_yourmachine.pub~/.ssh/authorized_keysリモートホストのファイルに追加する必要がある公開鍵です。その後、ログインを使用できますssh user@yourmachine

第二に、そのオプションを使用する理由はわかりませんが、おそらく-t必要ではなく、最初の警告を出すようです。

これに加えて、node組み込みの方法があります。コマンドを実行してプロセスを開始します。

関連情報