Libvirt / qemu-kvm এ আমি কীভাবে অযাচিত iPXE বুট প্রচেষ্টা অক্ষম করব?


12

কোনওভাবে 12.04 এ আপগ্রেড করার পরে, আমার ভার্চুয়াল মেশিনগুলি সর্বদা প্রথমে নেটওয়ার্ক থেকে বুট করার চেষ্টা করে বুট করে। এটা দেখ:

গুণ-পরিচালক স্ক্রিনশট

যদিও আমার কাছে কোনও PXE কনফিগারেশন সেট নেই:

PXE বুট কনফিগারেশন

আমি চেষ্টা করেছিলাম:

  • এক্সএমএল সম্পাদনা করে স্পেসটি নিষ্ক্রিয় emulatorকরতে, /usr/bin/kvmথেকে পরিবর্তন করে /usr/bin/kvm-spice
  • Ctrl+ Bআইপিএক্সই কনফিগার করতে, তবে এটি বুট বিকল্প হিসাবে এটি অক্ষম করতে দেয় না।
  • অন্য ধরণের NIC সেট করা - কোনও বিকল্প নয়, আমার virtioপারফরম্যান্সের কারণে প্রয়োজন reasons তবে, e1000eকাজ করে না।
  • এনআইসিকে অপসারণ: কাজ করে। তবে আমার নেটওয়ার্ক দরকার।
  • চারপাশে গুগলিং। হার্ড। প্রচুর ফলাফল কনফিগার করা PXE বুট ব্যর্থ সম্পর্কে।

কোনও বড় সমস্যা নয়, তবে এটি এখানে 50-100% (এসএসডি থেকে বুট করা) দ্বারা বুটের বার বৃদ্ধি করে, তাই এটি তুলনামূলকভাবে দীর্ঘ এবং আমাকে বিরক্ত করে।

আমি কীভাবে এটি অক্ষম করব এবং সরাসরি ভার্চুয়াল হার্ড ডিস্ক থেকে বুট করব?

উত্তর:


6

সংক্ষিপ্ত উত্তর

Libvirt 0.9.10+ (Quantal এ উপলব্ধ) এ আপগ্রেড করুন <rom bar='off'/>এবং মেশিনের এক্সএমএল সংজ্ঞাটির ইন্টারফেস কনফিগারেশনে বিকল্প যুক্ত করুন ।

দীর্ঘ উত্তর

এখন যেহেতু আমি আসলে আইপিএক্সই বুট বিকল্পটি ব্যবহার করছি আমি দেখতে পাচ্ছি যে সিবিআইওএস স্ক্রিনে যে বিলম্ব হচ্ছে তা কোনও আসল বুট প্রচেষ্টা নয়। এটি কেবল ভিরিটিও নেটওয়ার্ক অপশন রমটি লোড করছে এবং এটি কয়েক বিরক্তিকর সেকেন্ড নেয়, অর্থাত্ এটি এখনও কোনও আইপিএক্সই বুট চেষ্টা করছে না । এটি আমাকে আবার লিবারভিট ডকুমেন্টেশন পড়তে পরিচালিত করে এবং আমি একটি আকর্ষণীয় আবিষ্কার করেছি।

আমি যতদূর খুঁজে পেলাম, যেহেতু লাইবভার্ট 0.9.7 থেকে আচরণটি ডিফল্টরূপে ইন্টারফেসের বিকল্প রমগুলি লোড করতে পরিবর্তিত হয়েছে। উবুন্টু ১১.১০ সহ ০.৯.২ পাঠানো হয়েছে, উবুন্টু ১২.০৪ 0.9.8 নিয়ে আসে। 12.04 এ আপগ্রেড হওয়ার পরে আমি কেন এটি ঘটছে তা নিশ্চিতভাবেই বোঝা যায়।

তদুপরি, <rom bar='off'/>এটি এক্সএমএল বিকল্প সহ 0.9.10 লিবিভার্ট সংস্করণে কনফিগারযোগ্য হয়ে উঠেছে ! ( এখানে দেখুন ) তবে, উবুন্টু 12.04-এ লিবিভার্টের সংস্করণটি উপলভ্য নয় এবং আমাকে 12.10 এ আপগ্রেড করতে হবে বা এটি ব্যাকপোর্ট করতে হবে। এটি উবুন্টুকে 12.04 দুটি স্টুলের মধ্যে পড়েছে।

অন্যান্য কাজের ক্ষেত্রগুলি @Ah 'র দ্বারা নির্দেশিত বিকল্প হিসাবে রম ফাইলগুলি অপসারণ করছে এবং @ নাইটএনএফটিস দ্বারা নির্দেশিত হিসাবে সিবিআইওএসের' ফাইল সিস্টেম 'পরিবর্তন করছে। যাইহোক, উভয় উপায়ই মূলত iPXE সম্পূর্ণ অক্ষম করবে এবং এটি কনফিগারযোগ্য নয় (যদি virtioকেবলমাত্র নেটওয়ার্ক ডিভাইসগুলিতে লেগে থাকে )। আমার যেমন আইপিএক্সই মেশিন এবং নন-পিএক্সই মেশিনের মিশ্রিত সেটআপ রয়েছে, তাই এটি কনফিগার করার জন্য সত্যই আমার প্রয়োজন।


মেশিনের এক্সএমএল সংজ্ঞাটি কোথায়?
ব্রাইস গিন্টা

1
@ ব্রাইসগুইন্টা প্রথমে একটি ভিএম তৈরি করুন, তারপরে এক্সএমএল সংজ্ঞা (উন্নত) কমান্ডটি ব্যবহার করুনvirsh edit <domain>
জার্মটভিডিজক

5

একই ইস্যুতে আমার পরীক্ষাগুলি আমাকে কিছু ইঙ্গিত দিয়েছে:

প্যাকেজটি এতে kvm-ipxeবেশ কয়েকটি পিএক্সই বিকল্প রম ইনস্টল করে /usr/share/qemu/:

pxe-e1000.rom
pxe-ne2k_isa.rom
pxe-pcnet32.rom
pxe-rtl8139.rom
pxe-virtio.rom

এই এনআইসির মধ্যে কোনওটির সাথে বুট করার সময় সেগুলি স্বয়ংক্রিয়ভাবে স্যাবিওগুলি দ্বারা পাওয়া যায় এবং ব্যবহৃত হয়। আমি যখন chmod a= pxe*.romএই ফাইলগুলিতে একটি করি এবং ভার্চুয়াল মেশিনটি শুরু করি তখন আমি "ত্রুটি" বার্তাটি পাই

kvm: pci_add_option_rom: failed to find romfile "pxe-rtl8139.rom"

তবে এটি পরিষ্কারভাবে এবং পিএক্সই ছাড়াই বুট হয়।


ধন্যবাদ। এটি আমাকে কিছুটা কার্যকারিতা দেয়: virtioসাধারণ নেটওয়ার্কিং ডিভাইস এবং e1000eভিএমএসের জন্য যা পিএক্সই প্রয়োজন need তবে, আমি এখনও মনে করি এটি একটি বাগ। কোনওভাবে লিবিভার্ট সাফল্যের সাথে সিবিআইওএসে সঠিক বুট প্যারামিটারগুলি পাস করে না।
gertvdijk

কি করে chmod a=?
ব্রাইস গিন্টা

5

কমান্ড-লাইনে qemu-kvm এ নিম্নলিখিত বিকল্পগুলি পাস করার মাধ্যমে আমি উবুন্টু 12.04-এ এটি পেতে পেরেছি (রমফাইলটি ফাঁকাতে সেট করা কৌশলটি):

-netdev user,id=hostnet0 -device virtio-net-pci,romfile=,netdev=hostnet0

দুর্দান্ত, তবে আমি কি এটি আমার লিবিভার্ট এক্সএমএল মেশিন সংজ্ঞায় নির্দিষ্ট করতে পারি?
gertvdijk

আপনি যদি কমান্ডলাইন থেকে অ্যাড-হক পুনরাবৃত্তি রিবুট করছেন তবে এটি যাওয়ার উপায়। এটি কিছুটা আওয়াজ যোগ করে, তবে আপনাকে এক্সএমএল ফাইলগুলি সম্পাদনা করতে, সমস্ত নেটওয়ার্কিং বা অনুরূপের অনুরূপ না করে তাত্ক্ষণিকভাবে আইপিএক্সইটিকে হত্যা করে।
i336_

0

আপনার ছবিগুলি থেকে, আমি দেখতে পাচ্ছি যে সম্ভবত এটির ভিএম বিআইওএসের সাথে সম্পর্ক রয়েছে। ভিএম কনফিগারেশনে অবশ্যই SeaBIOSসেটিংস ওভাররাইট করা উচিত নয় , এমন কিছু যা PXEপ্রথমে ভিএমকে বুট করার কারণ হতে পারে ।

প্রথম সম্ভাব্য সমাধানের জন্য, আপনি ভার্চুয়াল মেশিনের বিআইওএস প্রবেশ করতে এবং সেখানে প্রচলিত বিকল্পগুলি সম্পাদনা করতে পারবেন কিনা তা দেখার চেষ্টা করুন।

দ্রষ্টব্য: আমার গবেষণা আরও সম্ভাব্য সমাধান বা কারণগুলি উন্মোচন করার সময় উত্তর আপডেট করতে থাকবে।

[সম্পাদনা # 1]: আপনি এখানে সিবিআইওএসে বুট অর্ডার কীভাবে সেট আপ করবেন তার তথ্য পেতে পারেন । যে সমস্যার সমাধান করা উচিত।


আমি কীভাবে ভিএম এর বায়োস এ প্রবেশ করতে পারি? সিবিআইওএস সম্পর্কে উইকিপিডিয়া আমাকে বলেছে যে বুট করার সময় আমার এফ 12 চেষ্টা করা উচিত, তবে এটি কেবল একবারে আইপিএক্সই প্রচেষ্টাটি এড়িয়ে চলে।
gertvdijk

@gertvdijk আমি বর্তমানে এটি সন্ধান করছি। আমি জানতে পারলেই আপনার কাছে ফিরে আসব।
NlightNFotis

@gertvdijk এটি কোনওভাবে সম্পর্কিত বলে মনে হচ্ছে: seabios.org/pipermail/seabios/2012- মার্চ
003526.

ধন্যবাদ, নতুন জিনিস আজ শিখেছি। যাইহোক, এটি সিস্টেম-ব্যাপী প্রয়োগ করে এবং একটি নতুন সিবিএফএস (কোর বুট ফাইল সিস্টেম) তৈরি করার বিষয়ে বলে মনে হচ্ছে। আমি যতদূর দেখতে পাচ্ছি, এটি সম্পূর্ণরূপে PXE বুটিং নিষ্ক্রিয় করে। আমি এই পদ্ধতিকে পছন্দ করি না এবং আমি মনে করি আইপিএক্সই বুট করার প্রচেষ্টা রানটাইমকে যথাসম্ভব যথাযথভাবে নিষ্ক্রিয় করা উচিত - যা ম্যাচিউ-ম্যানেজার জিইআইতে সম্ভব।
gertvdijk

@gertvdijk আপনি কীভাবে জানেন যে এটি এটি অক্ষম করে? আমি যা দেখতে পাচ্ছি তা হ'ল বুট অর্ডার সেট আপ করা, যার অর্থ অন্য কোনও কিছুর আগে বুট হয়ে যায়
NlightNFotis

-1

আমি "-নেট না" ব্যবহার করে এটি প্রতিরোধ করতে সক্ষম হয়েছি:

# qemu-system-i386 -net none

তবে তখন আপনার কোনও নেটওয়ার্কিং নেই! আমি এটিকে সত্যই উত্তর হিসাবে বিবেচনা করি না।
gertvdijk

দুঃখিত, ওপিতে এখনও নেটওয়ার্কিংয়ের প্রয়োজনের বিষয়টি আমি মিস করেছি। আমার ক্ষেত্রে কোনও নেটওয়ার্ক ছাড়াই চলমান গ্রহণযোগ্য ছিল।
ক্যাটালিন পি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.