এটি কন্ট্রোল মাস্টারের জন্য সকেট ফাইলটি ব্যবহার করে আমার জন্য কাজ করে:
$ ssh -o ControlPath=~/.ssh/<controlfile> -O check <bogus arg>
উদাহরণ
এখানে একটি উদাহরণ যেখানে আমি ইতিমধ্যে একটি দূরবর্তী সার্ভারের সাথে সংযোগ স্থাপন করেছি:
$ ssh -o ControlPath=~/.ssh/master-57db26a0499dfd881986e23a2e4dd5c5c63e26c2 -O check blah
Master running (pid=89228)
$
এবং এটির সাথে সংযোগ বিচ্ছিন্ন:
$ ssh -o ControlPath=~/.ssh/master-66496a62823573e4760469df70e57ce4c15afd74 -O check blah
Control socket connect(/Users/user1/.ssh/master-66496a62823573e4760469df70e57ce4c15afd74): No such file or directory
$
যদি এটি এখনও সংযুক্ত থাকে, এটি এটি অবিলম্বে প্রস্থান করতে বাধ্য করবে:
$ ssh -o ControlPath=~/.ssh/master-66496a62823573e4760469df70e57ce4c15afd74 -O exit blah
Exit request sent.
$
এটি আমার কাছে অস্পষ্ট, তবে এটি সম্ভবত একটি বাগ হতে পারে ssh
যা এটির জন্য শেষে অতিরিক্ত যুক্তি প্রয়োজন, যদিও blah
আমি যে সুইচগুলি ব্যবহার করছি তা প্রসঙ্গে অর্থহীন।
এটি ছাড়া এটি আমাকে দেয়:
$ ssh -o ControlPath=~/.ssh/master-57db26a0499dfd881986e23a2e4dd5c5c63e26c2 -O check
usage: ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-E log_file] [-e escape_char]
[-F configfile] [-I pkcs11] [-i identity_file]
[-L [bind_address:]port:host:hostport] [-l login_name] [-m mac_spec]
[-O ctl_cmd] [-o option] [-p port]
[-Q cipher | cipher-auth | mac | kex | key]
[-R [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port]
[-w local_tun[:remote_tun]] [user@]hostname [command]
ভার্সন সম্পর্কিত তথ্য
ওএসএক্স
$ ssh -V
OpenSSH_6.9p1, LibreSSL 2.1.8
CentOS 7.x
$ ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
আমি নিশ্চিত করেছি যে এই দুটি সংস্করণেই অতিরিক্ত বোগাস যুক্তির প্রয়োজন হয়েছিল।
তথ্যসূত্র
ssh -S none
(সম্ভবত এটি আপনাকে ইতিমধ্যে সহায়তা করে)।