सामान्य तौर पर मैं दूरस्थ कंप्यूटर पर रियलटाइम ऑडियो सुन सकता था जैसे:
ssh me@gate rec -t mp3 - | play -
उदाहरण के लिए कंप्यूटर पर gate
मैं कमांड rec
(या sox
) को निष्पादित कर सकता हूं और ऑडियो-स्ट्रीम नेटवर्क पर स्थानांतरित किया जाता है, इसलिए मैं इसे play
(या sox
) कमांड के माध्यम से वास्तविक समय में फिर से चला सकता हूं ।
यह ठीक काम करता है, खासकर क्योंकि मेरे पास gate
मेरी नोटबुक से पासवर्ड-कम पहुंच है (उपयोग करते हुए authorized_keys & authorized_keys2
)।
लेकिन मेरी टोपोलॉजी है:
+----+ internet +------+ lan +----------+
| my | ----------> | gate | -----> | internal |
+----+ +------+ +----------+
और मुझे COMP rec
में निष्पादित करने की आवश्यकता है internal
और इसे कंप्यूटर में कमांड पर stdout
पाइप किया जाना चाहिए ।play
my
तो, जब मैं कैस्केडिंग (घोंसला बनाना) कर रहा हूँ ssh
जैसे:
ssh -t me@gate ssh me@internal rec -t mp3 -
(नोट के -t
लिए ssh
)
- इसलिए,
gate
पासवर्ड एक्सेस-कम है - पर
gate
निष्पादित किया जाता है दूसरा (नेस्टेड)ssh
- तो
internal
मुझसे पासवर्ड के लिए पूछता है (-t
) - और जब मैं पासवर्ड दर्ज करता हूं, तो
internal
सही ढंग सेrec
कमांड शुरू होता है - और मैं अपने स्थानीय टर्मिनल पर प्राप्त बाइनरी डेटा-कचरा देख सकता था।
दुर्भाग्य से, यह काम नहीं करता है जब मैं पाइप करने की कोशिश कर रहा हूं play
, जैसे कि यह
ssh -t me@gate ssh me@internal rec -t mp3 - | play -
काम नहीं करता है, क्योंकि Password:
स्ट्रिंग पुनर्निर्देशित हो गया (जैसे मैंने पासवर्ड के लिए संकेत नहीं दिया), और play
भ्रमित हो गया।
me@gate
-> के बीच पासवर्ड-कम पहुंच स्थापित करने से me@internal
शायद समस्या का समाधान हो सकता है, लेकिन मैं यह नहीं चाहता हूं - मैं चाहता हूं कि मैं पासवर्ड को internal
COMP में दर्ज करूं ।
कुछ पता है इसे कैसे हल करना है?
-t
एक पासवर्ड ... नहीं मांगता है " अक्षम छद्म टर्मिनल आवंटन। "