Mạng của chúng tôi bao gồm các máy Windows 7 SP1. Chúng tôi đã cài đặt Cygwin trên các máy này, bao gồm cả máy chủ SSH Cyshwin sshd.
Một máy cụ thể (gọi nó là máy chủ H) được nhiều người sử dụng. Hầu hết những gì chúng ta cần làm có thể được thực hiện thông qua dòng lệnh. Vì vậy, một người làm việc tại máy và được sử dụng giao diện GUI Windows bình thường. Phần còn lại của chúng tôi chỉ ssh in vì Windows 7 sẽ chỉ cho phép một phiên GUI (ngăn không cho bất kỳ ai RDPing vào).
sshd thỉnh thoảng chết và do đó cần phải được khởi động lại. RDPing để làm như vậy không phải là một lựa chọn vì làm như vậy sẽ khởi động người làm việc trực tiếp tại máy trạm tắt. Những người trong chúng tôi làm việc thông qua SSH đang làm việc từ xa, vì vậy chúng tôi không thể đơn giản bước tới và yêu cầu người ở máy trạm thực hiện "net start sshd" cho chúng tôi.
Vì vậy, đây là điểm mấu chốt của tất cả ...
Có cách nào để bắt đầu từ xa sshd (thông qua "net start sshd") mà không cần RDPing vào hệ thống để làm như vậy không ???
while : ; do ; pgrep sshd && echo yes || echo no ; sleep 2s; done
. Thay đổi thời gian 2s
trong những gì bạn cần và echo no
với lệnh để khởi động lại sshd
. Lưu ý: có thể cần phải chạy nó trong Cygwin bởi người dùng RDP và anh ta không phải đóng Cygwin.