2013-10-24 4 views
16

इम को QEMU खिड़की उत्पादन अनुप्रेषित qemu के साथ एक लिनक्स कर्नेल के बूट अनुक्रम डिबग करने के लिए कोशिश कर रहा है, आदेश मैं चल रहा हूँ है:टर्मिनल चल qemu

qemu -serial stdio -kernel <path to kernel> -hda <path to rootfs> -append "root=/dev/sda terminal = ttyS0" 

बूट के दौरान सभी गिरी संदेशों को मुद्रित कर रहे हैं क्यूईएमयू खिड़की केवल जब बूट समाप्त हो गया है तो मुझे टर्मिनल पर अपना प्रॉम्प्ट वापस मिल गया। मैं

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

मैं अपने टर्मिनल पर बूट संदेशों सहित सभी संदेशों को कैसे प्राप्त करूं और QEMU विंडो नहीं (क्योंकि मैं उस विंडो में स्क्रॉल नहीं कर सकता ..)?

+1

http://stackoverflow.com/questions/18098455/redirect-qemu-console-to-a-file-or-the-host-terminal/18100781#18100781 –

उत्तर

27
  1. निकालें -serial stdio पैरामीटर
  2. -nographic पैरामीटर
  3. जोड़ सकते हैं और console=ttyS0 को कर्नेल पैरामीटर को बदलने terminal = ttyS0। यह काम कर जाना चाहिए।

qemu -nographic -kernel ./bzImage -hda ./image.hda -append root=/dev/sda console=ttyS0

आप स्क्रिप्ट मैं कर्नेल विकास के लिए उपयोग की जांच करना चाहते हो सकता है: https://github.com/arapov/wrap-qemukvm (यह बहुत "उत्पादन" नहीं है, लेकिन तुम वहाँ उपयोगी qemucli मापदंडों पा सकते हैं)

+2

कुछ नकली मशीनों को 'console = ttyAMA0,115200 की आवश्यकता होगी 'कंसोल = ttyS0' के बजाय'। या आप सिर्फ विनी के जवाब में दोनों ही प्रदान कर सकते हैं। – simonp

+0

बस जांचें कि क्या आप रूट =/dev/sda1 या/dev/sda सेट करना चाहते हैं। मुझे इसे/dev/sda1 –

+0

पर सेट करना था, यह सभी आउटपुट को दबाता है ... – Cerin

2

टर्मिनल पर क्यूमु आउटपुट को पुनर्निर्देशित करने से कुछ समस्या हो सकती है (व्यक्तिगत रूप से मुझे यह पसंद नहीं है)। टर्मिनल पर qemu आउटपुट का अनुभव करने के लिए आप -noframe जैसे विकल्पों का उपयोग कर सकते हैं (यह नई विंडो बनाएगा लेकिन कोई विंडो फ्रेम नहीं होगा) या -curses

8

इस Redirect Qemu console to a file or the host terminal? उल्लेख दोनों qemu पर लॉग और अपने टर्मिनल .use "console=ttyAMA0,115200 console=tty highres=off console=ttyS0"

+0

यह मेरी छोटी समस्या का समाधान नहीं है, दूसरा टीटी कंसोल क्यूमु में गायब हो गया: http://raspberrypi.stackexchange.com/questions/56302/qemu-2-7-0-for-the-raspi2-machine-do- नॉट-शो-द-सेकेंड-टीटी-कंसोल-केवल- – 42n4

+0

@ 42n4 https://learningfromyoublog.wordpress.com/ या https: //learningfromyoublog.wordpress।कॉम/2016/04/05/131/ –

+0

मैंने qemu मशीन raspi2 और cpu arm1176 का उपयोग किया और bvm2709_defconfig के साथ मूल रास्पबेरी कर्नेल स्रोतों के armv7a-hardfloat के साथ संकलित किया, इसलिए सभी बहुत "मूल" थे और यह अलग-अलग है यह काम नहीं कर रहा है एक बार, मेरे प्रश्न मेकफ़ाइल देखें: http://raspberrypi.stackexchange.com/questions/56302/qemu-2-7-0-for-the-raspi2-machine-do-not-show-the-second-tty -console-only- – 42n4

-1

खिड़कियों पर प्राप्त करने के लिए, -nograp साथ qemu शुरू करने हाइक विकल्प काम नहीं करता है! मैं (स्पार्क वास्तुकला) एक डेबियन पर बूटिंग के बाद काली स्क्रीन सांत्वना के साथ एक ही समस्या थी Console [tty0] enabled, bootconsole disabled

समाधान एक VNC Client इंस्टॉल करें और "127.0.0.1:20 -vnc" qemu-प्रणाली के लिए पैरामीटर जोड़ने का है xyz। वर्चुअल मशीन शुरू करने के बाद, VNC क्लाइंट से आप 127.0.0.1:20 से कनेक्ट होते हैं, ctrl-alt-3 दबाएं और लॉगिन संदेश की प्रतीक्षा करें।

+0

यह कोई समाधान नहीं है, ऐसा लगता है कि आपको -ोग्राफिक विकल्प के साथ समस्या थी। यदि आपको क्यूमु के साथ मदद की ज़रूरत है, तो कृपया स्टैक ओवरफ्लो पर एक प्रश्न खोलें। – aliceinwire