packet_write_wait टूटी हुई पाइप भी शीर्ष चल रहा है?


26

यह खूनी त्रुटि मेरे सिरदर्द को हर रोज बड़ा और बड़ा करती है। मैं इस समय जैसी स्थिति से कभी नहीं मिला।

ठीक है, मैं सफलतापूर्वक SSH में प्रमाणित करने के बाद, कुछ सामान कर रहा था तो मेरा SSH कनेक्शन अचानक गिरा दिया गया !!?

यहाँ मेरा त्रुटि संदेश है: packet_write_wait: Connection to XXX.XX.XX.XXX: Broken pipe

मैं अपने त्रुटि संदेश को इस तरह देखना चाहता था: Write Failed: broken pipeबहुत, मेरा विश्वास करो!

मैंने इंटरनेट पर एक जोड़ा रेजोल्यूशन का प्रयास किया जैसे कि ServerAliveInterval, ServerAliveCountMax, Client.live…।

किसी ने कहा: अपने TCPKeepAlive को ना में जोड़े, ServerAlive bllah blah बेवकूफ। मैंने वह भी किया लेकिन अभी भी वही त्रुटि है।

इस क्षण तक मेरे लिए कोई भाग्य नहीं है।

किसी भी मदद की सराहना की जाएगी।


2
यदि आप एक कॉर्पोरेट वातावरण में हैं, तो अपने फ़ायरवॉल प्रवेशों के साथ जांचें और देखें कि क्या वे नियमों को अद्यतन कर रहे थे और / या फ़ायरवॉल को फिर से शुरू कर रहे थे जब ऐसा होता है। यदि यह आपके व्यक्तिगत सर्वर पर हो रहा है, तो आपको sdd सर्वर साइड पर क्या कर रहे थे, जब आप ऐसा करते हैं, तो आपको अधिक जानकारी प्रदान करने की आवश्यकता है। Broken pipeआम तौर पर इसका मतलब है कि किसी कारण से एक नेटवर्क डिस्कनेक्ट था।
मेलबर्सलान

मैं बस चला गया और यह मेरे नए कनेक्शन के साथ लगातार हो रहा है। कॉक्स केबल मेरा आईएसपी है, और मुझे एक नेटगियर C6300BD केबल मॉडेम स्थापित से डिफ़ॉल्ट सेटिंग्स पर चल रहा है। यह मेरे पुराने स्थान पर हुआ करता था और मैं इसे कभी हल नहीं कर सका। यह महीनों तक चला और आखिरकार ऐसा होना बंद हो गया। मैं भूल गया था कि यह आज तक कितना दुस्साहसी और असहनीय है।
टी। ब्रायन जोन्स

मै तुम्हारा दर्द समझ सकता हू। मैं एक अंतिम उपाय के रूप में यहाँ आया था इससे पहले कि मैं अपने सभी हार्डवेयर को छोटे छोटे टुकड़ों में थप्पड़ मारने जा रहा हूं। क्या यह एक काफी सरल प्रोटोकॉल नहीं माना जाता है?
DerpyNerd

वर्चुअलाइज्ड लिनक्स पर मेरे पास एक ही त्रुटि थी, समस्या ने ईथरनेट एडेप्टर को ब्रिजिंग में बदल दिया
एबेल बैरियोस

जवाबों:


8

प्रिय २०१ readers और बाद के पाठकों,

मैं आपको मेलबर्सलान की एक टिप्पणी दिखाता हूं,

यदि आप एक कॉर्पोरेट वातावरण में हैं, तो अपने फ़ायरवॉल प्रवेशों के साथ जांचें और देखें कि क्या वे नियमों को अद्यतन कर रहे थे और / या फ़ायरवॉल को फिर से शुरू कर रहे थे जब ऐसा होता है। यदि यह आपके व्यक्तिगत सर्वर पर हो रहा है, तो आपको sdd सर्वर साइड पर क्या कर रहे थे, जब आप ऐसा करते हैं, तो आपको अधिक जानकारी प्रदान करने की आवश्यकता है। आमतौर पर टूटे हुए पाइप का मतलब है कि किसी कारण से नेटवर्क डिस्कनेक्ट हो गया था।

तो मूल रूप से, यदि आप ssh username@0.0.0.0एक वीपीएन (कॉर्पोरेट वातावरण) का उपयोग करने की कोशिश कर रहे हैं । तब यह त्रुटि आपके साथ होनी चाहिए।

अब तक का एकमात्र समाधान मुझे मोबाइल-शेल है । धन्यवाद जिसने इसे बनाया।

आपको mosh-serverअपने लक्ष्य (उस सर्वर को जिसे आप ssh'ed करना चाहते हैं) और mosh-clientअपने होस्ट मशीन में स्थापित करना होगा।

मुझे लगता है कि आपके पैकेट खो जाने पर यह ऑटो फिर से कनेक्ट हो जाएगा।

खुश ssh'ing!


3

मुझे पता चला कि यह मेरे VMware अतिथि सेटअप पर एक IPQoS विकल्प मुद्दा था। वीएम पर मैंने "IPQoS af21 cs1" के डिफ़ॉल्ट से IPQoS के लिए ~ / .ssh / config मान सेट किया है, जो कि पहले इंटरएक्टिव के लिए कम विलंबता डेटा और दूसरे के लिए गैर-इंटरैक्टिव के लिए कम प्रयास है। Af21 के लिए एक नया मान सेट करना मेरा समाधान था:

Host *
     IPQoS throughput

मेरे लिए काम किया, नहीं तो हाँ मोश भी काम कर रहा है, लेकिन मोश मेरे प्रॉक्सी सेटअप को सुविधाजनक तरीके से नहीं संभाल रहा है इसलिए मैं ProxyJump कमांड के साथ रहना चाहता हूँ


मज़ा, जो कमांड लाइन में काम करता है (जैसा कि आप ubuntu पर अपनी पोस्ट में समझाते हैं) लेकिन विन्यास फाइल में नहीं 8-D
aurelien

1

पहले, सुनिश्चित करें कि आपका मुद्दा इस से संबंधित नहीं है ।

यदि नहीं और समस्या अभी भी मौजूद है, तो पढ़ें।

मैंने इस समस्या का अनुभव किया और कुछ दिन बिताकर इसे बिगाड़ने की कोशिश की।

निर्दिष्ट की तरह, SSH KeepAlive पैरामीटर या कर्नेल TCP पैरामीटर (TCPKeepAlive on / off) के साथ खेलने से समस्या हल नहीं होती है।

ईथरनेट ड्राइवरों और टीसीपी डंप के लिए यूएसबी के साथ खेलने के बाद, मुझे एहसास हुआ कि कर्नेल 4.8 के कारण समस्या थी। मैंने स्रोत (साइड भेजना) को 4.4 एलटीएस में बदल दिया और समस्या गायब हो गई (rsync, scp फिर से अच्छी तरह से काम कर रहे थे)। गंतव्य पक्ष 4.8 पर रह सकता है यदि आप चाहें, तो मेरे उपयोग के मामले में यह काम कर रहा था (परीक्षण)।

तकनीकी पक्ष पर, हम नीचे दिए गए वायरशार्क डंप के लिए धन्यवाद मुद्दे को थोड़ा कम कर सकते हैं। हम देख सकते हैं कि SSHv2 प्रोटोकॉल का टीसीपी चैनल रीसेट किया जा रहा है (कनेक्शन के लिए टीसीपी का आरएसटी ध्वज 1 पर सेट किया गया है) जिससे कनेक्शन बंद हो गया है। मैं अभी तक RST का कारण नहीं जानता। मुझे उसके लिए 4.8.1 से 4.8.11 तक कुछ द्विभाजित करने की आवश्यकता है।यहाँ छवि विवरण दर्ज करें

मैं यह नहीं कह रहा हूं कि आपकी समस्या विशेष रूप से कर्नेल 4.8 के कारण है, लेकिन wrt। आपके द्वारा अपना प्रश्न / संदेश पोस्ट करने की तिथि, आप कर्नेल संस्करण का उपयोग कर रहे होंगे जो वास्तव में छोटी गाड़ी थी।

शुरू में StackOverflow पर उत्तर दिया गया ।


कर्नेल समस्या नहीं है, क्योंकि मैं हर समय 4.4 एलटीएस का उपयोग कर रहा था। यहां असली समस्या का जवाब @MelBursan ने प्रश्न की टिप्पणी में दिया। वीपीएन का उपयोग करके मेरा इंटरनेट कनेक्शन, यही कारण है। समाधान: mosh.org
गुयेन

@ToanNguyen ठीक है। इस तरह, क्या आप कृपया अपने प्रश्न के उत्तर के रूप में अपनी टिप्पणी डाल सकते हैं और इसे निर्धारित कर सकते हैं? :-) यदि आपको तकनीकी कारण मिल गए हैं, जिनकी आपको आवश्यकता है, तो कृपया उन्हें भी जोड़ दें :-) मेरी ओर से, मेरे पास वीपीएन कनेक्शन हैं और ये बिना किसी दोष के काम कर रहे हैं।
wget

मैं इस पर वापस आ रहा हूं। समस्या छोटी गाड़ी कर्नेल के कारण नहीं थी, बल्कि एक छोटी गाड़ी चालक के लिए, विशेष रूप से हार्डवेयर चेकसम ऑफलोड को समर्पित भाग। अधिक जानकारी के लिए इस धागे को देखें ।
wget

क्या यह आपकी समस्या का समाधान करता है?
तान गुयेन

@ToanNguyen वास्तव में पिछली बार मेरे पास यह मुद्दा था कि मैंने बस कर्नेल को डाउनग्रेड किया था और यह फिर से काम कर रहा था। अब, मैंने बस hw चेकसम ऑफलोड को निष्क्रिय कर दिया, बिना कुछ अपग्रेड किए और इसने इस मुद्दे को हल कर दिया, हाँ।
wget

1

ssh -o IPQoS=throughput user@{ip}


कोई संकेत नहीं है कि उपयोगकर्ता macOS का उपयोग कर रहा है या वे रूट के रूप में लॉग इन करने का प्रयास कर रहे हैं।
Kusalananda

तुम सही हो! हालाँकि, मैंने 'रूट' और विंडोज़ पर अलग-अलग यूज़र के साथ कमांड का परीक्षण किया। अभी भी काम करता है!
विक्की पेन्कोवा

0

नीचे आदेश के साथ लक्ष्य सर्वर पर ssh.config फ़ाइल खोलें:

सुडो नैनो /etc/ssh/ssh.config

उस फ़ाइल के अंत में नीचे की पंक्तियों को जोड़ें

ClientAliveInterval 300

ClientAliveCountMax 2

Ctrl + o दबाएं और दर्ज करें।

सुडो रीबूट

इसने मेरे लिए काम किया। मैं उसी स्थिति में था। इस और उस की कोशिश की, लेकिन बस इन चरणों का पालन करें। केवल यह। मुझे उम्मीद है कि यह आपके लिए भी काम करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.