Notifications
向 ssh 客戶端廣播或發送機器可讀程式碼
這是一個有趣的情況。我有:
- 一個 Linux 機器,它是一個運動感測器,可以在接收到運動事件時執行命令行命令(請參閱 Linux 運動應用程序)。
- 另一個(我想)專門用於在檢測到運動時進行額外處理的 Linux 機器。
我不希望第一個 Linux 機器進行額外處理的原因是它的功能嚴重不足,並且不能方便地連接到我想啟動的其他系統。
所以我的問題是,我如何從第一個 Linux 機器廣播或發送機器可讀程式碼到另一個 Linux 機器(或任何 ssh 客戶端)以觸發基於程式碼類型的進一步處理?我嘗試了廣播命令,但由於某種原因,它在客戶端顯示為空而不是特定程式碼。另外,如何使第二個 Linux 機器對程式碼起作用?它應該是一個 cronjob 還是某種監聽器?
第1步
首先確保運動感測器盒上設置了 SSH 私鑰:
ssh-keygen
.第2步
然後確保所述私鑰的公鑰在更強大的電腦上。您需要將其放在具有如下名稱的文件的末尾:
/home/${user}/.ssh/authorized_keys
注意: ${user} 是您在功能更強大的電腦上的使用者名。
另外,請確保在功能強大的電腦上,
/home/${user}/.ssh/
具有 700 (drwx------
) 的權限,並/home/${user}/.ssh/authorized_keys
具有 600 (-rw-------
) 的權限。您可以使用chmod
來設置權限。$ chmod 700 /home/${user}/.ssh/ $ chmod 600 /home/${user}/.ssh/authorized_keys
步驟#3
然後,從遠端感測器電腦,執行類似:
$ ssh user@more-powerful-computer '/usr/local/bin/process_motion_event'