एलेक्स का समाधान त्रुटियों को दबाता है, और उसे लगभग कारण सही मिला है, लेकिन यह आपको किसी भी प्रश्न का उत्तर देने की अनुमति नहीं देता है (जो कि ठीक है जब आपने उत्तरों की भविष्यवाणी की है और एक स्क्रिप्ट से चल रहे हैं, लेकिन असली कष्टप्रद है जब आप नए पैकेजों की कोशिश कर रहे हैं )। मुख्य मुद्दा ssh और debconf के विभिन्न दृष्टिकोणों द्वारा बनाई गई मान्यताओं के बीच की बातचीत है।
चलो ssh से शुरू करते हैं। ssh मानता है कि जब आप एक दूरस्थ कमांड निर्दिष्ट नहीं करते हैं जिसे आप दूरस्थ छोर पर एक pty चाहते हैं और आप एक दूरस्थ निर्दिष्ट करते हैं जो आप नहीं करते हैं (जो समय के 90% अच्छी तरह से काम करता है, बस यह एक नहीं है)। यह उस -t
विकल्प द्वारा ओवरराइड किया जा सकता है जो किसी पीटीआई को मजबूर करता है या वह -T
विकल्प जो किसी पीटीआई (या संबंधित कॉन्फिगर फाइल विकल्प) को बाध्य करता है। आगे जब पीटीआई का उपयोग किया जाता है तो TERM
पर्यावरण चर की नकल की जाती है (अपवाद पूर्ण विवरण और आधिकारिक स्वीपस्टेक प्रवेश फॉर्म के लिए चेक प्रलेखन लागू कर सकते हैं)। यह भी ध्यान दें कि -x
विकल्प X11 अग्रेषण को अक्षम करता है और -X
इसे सक्षम करता है।
देबॉन्फ़ की खुद की कोई अन्तरक्रियाशीलता आवश्यकताएँ नहीं हैं (डिज़ाइन के अनुसार), लेकिन विभिन्न दृष्टिकोण करते हैं, और हर एक की अलग-अलग आवश्यकताएँ होती हैं।
मेरा मानना है कि सबसे अच्छा दिखने वाला दृश्य सम्मोहन है (एक केड फ्रंट एंड भी है जिसे मुझे काम नहीं मिला)। सूक्ति दृश्य (और kde एक के रूप में अच्छी तरह से) कुछ गैर-डिफ़ॉल्ट पुस्तकालयों और एक X11 सर्वर की आवश्यकता होती है, इसलिए सूक्ति सीमा को लागू करने के लिए कमांड लाइन (एक बार उपयुक्त लाइब्रेरी स्थापित होने के बाद) होगी
ssh -X <remote_srv> "DEBIAN_FRONTEND=gnome apt-get autoremove"
या यदि आप kde पसंद करते हैं
ssh -X <remote_srv> "DEBIAN_FRONTEND=kde apt-get autoremove"
डायलॉग फ्रंटेंड (डिफॉल्ट) को पीटीई और टर्मिनल की आवश्यकता होती है, जिसमें TERM वेरिएबल में निर्दिष्ट न्यूनतम स्तर की कार्यक्षमता होती है (व्यवहार में यह डम्ब को छोड़कर पूर्ण टर्मोफ विवरण के साथ कुछ भी है)।
ssh -t <remote_srv> "TERM=$TERM DEBIAN_FRONTEND=dialog apt-get autoremove"
या
ssh -t <remote_srv> "apt-get autoremove"
रीडलाइन फ्रंटेंड की कम कठोर आवश्यकताएं हैं और यह डंबल टर्मिनलों के साथ काम करेगा, लेकिन इसके लिए एक पैटी की आवश्यकता होगी।
ssh -t <remote_srv> "DEBIAN_FRONTEND=readline apt-get autoremove"
संपादक का दृश्य संपादक पर निर्भर करता है जिसकी संपादक के आधार पर विशिष्ट आवश्यकताएं होंगी।
ssh -t <remote_srv> "DEBIAN_FRONTEND=editor EDITOR=vi apt-get autoremove"
ssh -X <remote_srv> "DEBIAN_FRONTEND=editor EDITOR=gvim\ -f apt-get autoremove"
नॉनटेनेक्टिव फ्रंटेंड की कोई आवश्यकता नहीं है लेकिन यह कोई प्रश्न नहीं पूछता है (जो आप चाहते हैं या नहीं हो सकता है)।
ssh <remote_srv> "DEBIAN_FRONTEND=noninteractive apt-get autoremove"