virsh सांत्वना और छोटे आकार


11

मेरे पास एक वर्चुअलाइजेशन सर्वर है जिससे मैं ssh से जुड़ता हूं। अगर मैं अब विंडो का आकार बदलूंगा तो यह अपने आप सर्वर में फैल जाएगा। यह सबसे आसानी stty -aसे कॉलम और पंक्ति मानों की जांच करते हुए देखा जाता है।

मैं तब virsh consoleKVM आधारित वर्चुअल मशीन पर सीरियल इंटरफ़ेस से कनेक्ट करने के लिए उपयोग करता हूं । जब मैं अब विंडो का आकार बदलता हूं तो यह वर्चुअल सर्वर पर नहीं फैलता है। यह सबसे आसानी से जाँच के द्वारा देखा जाता है stty -a, जो कि वर्चुअल मशीन पर अपडेट नहीं किया जाता है जब मैं विंडो का आकार बदलता हूं। इसका मतलब यह है कि टर्मिनल में लाइन ब्रेक सही तरीके से काम नहीं करता है और कोई भी एप्लिकेशन जो स्वरूपण के लिए विंडो आकार पर निर्भर करता है (emacs, man, etc) गड़बड़ हो जाता है जब तक कि क्लाइंट पर विंडो का आकार सर्वर पर डिफ़ॉल्ट आकार से मेल नहीं खाता।

एक वर्कअराउंड मैन्युअल रूप से स्टेंट का उपयोग करके क्लाइंट विंडो से मिलान करने के लिए विंडो का आकार सेट करना है, लेकिन मुझे आश्चर्य है कि वर्चुअल मशीन में विंडो के आकार को स्वचालित रूप से प्रचारित करने और सेट करने के लिए इस जानकारी को प्राप्त करने का कोई तरीका है।

जवाबों:


7

आप ज्यादातर शेल में इस समस्या के आसपास काम कर सकते हैं।

आदेश:

eval `/usr/bin/resize`

COLUMNS और LINES शेल चरों को उचित रूप से सेट करेगा और फिर उन्हें निर्यात करेगा। तो bash में, आप अपने .bash_profile (या .profile) पर निम्न जोड़ सकते हैं, जिसके आधार पर आप उपयोग करते हैं)

PROMPT_COMMAND="eval `/usr/bin/resize`"

या zsh में:

function precmd {
    eval `/usr/bin/resize`
}

ताकि प्रत्येक संकेत प्रदर्शित होने से ठीक पहले एक आकार बदला जा सके। प्रभाव ssh या टेलनेट की तरह नहीं होगा जहाँ खिड़की के बदलाव को तुरंत परिणाम के रूप में संभाला जाएगा, हालांकि मुझे लगता है कि यह संभवतः आपको मिलेगा सबसे अच्छा है।


थोड़ा हैकी, लेकिन फिर भी एक अच्छा समाधान। धन्यवाद!
पीहर

यह उत्तर भी देखें कि इसे बिना xterm की resizeआज्ञा के करें: unix.stackexchange.com/a/283206
rsaw

2

टेलनेट और एसएसएच में इन सेटिंग्स को कॉन्फ़िगर करने के लिए एक बैंड चैनल है। सीरियल इंटरफेस नहीं। देखें: http://tools.ietf.org/html/rfc1073 और http://tools.ietf.org/html/rfc4254#page-14


2
मुझे पता चला कि इसमें एक नियंत्रण चैनल शामिल था। लेकिन सवाल यह है कि क्या केवीएम आधारित वर्चुअल मशीनों के कंसोल के लिए बेहतर समाधान है? (मैं मशीनों को फिर से
संगठित

0

बस मार्क के जवाब को जोड़ते हुए, बोक्सॉज सर्वरफॉल्ट मुझे टिप्पणी करने की अनुमति नहीं देता है।

जब लक्ष्य डोमेन OpenBSD 6.6 है , तो आकार कहीं और स्थित है और कम से कम xbase66 सेट की आवश्यकता है।

इसके अतिरिक्त, यदि आप डिफ़ॉल्ट ksh का उपयोग कर रहे हैं, तो यह चलाने के लिए पर्याप्त है:

eval `/usr/X11R6/bin/resize`

यह शर्म की बात है कि यह Red Hat के KVM एडमिन गाइड में नहीं है।

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