vboxdrv.sh: ব্যর্থ: modprobe vboxdrv ব্যর্থ হয়েছে। কেন তা জানতে দয়া করে 'dmesg' ব্যবহার করুন


53

আমার উবুন্টু ল্যাপটপে ভার্চুয়ালবক্স চালাতে আমার সমস্যা হচ্ছে। আমার ল্যাপটপটি দ্বৈত বুট, এবং চলমান (উইন্ডোজ 10 - আমি মনে করি, এটি বছরগুলিতে এটি ব্যবহার করেনি) পাশাপাশি উবুন্টু 16.0.4 এলটিএস।

আমি আমার ল্যাপটপের BIOS সেটিংসে সুরক্ষিত বুট সক্ষম করেছি।

আমি সচেতন যে এখানে অনুরূপ প্রশ্নগুলি পোস্ট করা হয়েছে, বিশেষত এই দুটি:

আমি এই দুটি প্রশ্নের উত্তর বিভাগে প্রদত্ত সমস্ত নির্দেশনা অনুসরণ করেছি - তবুও, সমস্যাটি অমীমাংসিত রয়ে গেছে।

ভার্চুয়ালবক্স চালানোর চেষ্টা করার সময় কনসোল আউটপুটটি এখানে:

me@YOURBOX:~$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (4.4.0-47-generic) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /sbin/vboxconfig

         You will not be able to start VMs until this problem is fixed.

আমি /sbin/vboxconfigপ্রস্তাবিত হিসাবে চালানোর সময় কনসোল আউটপুট এখানে রয়েছে :

me@YOURBOX:~$ sudo /sbin/vboxconfig  
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.

There were problems setting up VirtualBox.  To re-start the set-up process, run
  /sbin/vboxconfig
as root.

এখানে আউটপুট এর লেজ শেষ dmesg:

[   44.319682] audit: type=1400 audit(1491313982.374:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince-previewer" pid=705 comm="apparmor_parser"
[   45.041433] cgroup: new mount options do not match the existing superblock, will be ignored
[   59.682936] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[   59.697820] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[   59.702008] IPv6: ADDRCONF(NETDEV_UP): enp2s0f0: link is not ready
[   60.267000] IPv6: ADDRCONF(NETDEV_UP): enp2s0f0: link is not ready
[   62.473044] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[   70.681706] audit_printk_skb: 60 callbacks suppressed
[   70.681709] audit: type=1400 audit(1491314008.734:32): apparmor="STATUS" operation="profile_load" profile="unconfined" name="docker-default" pid=2009 comm="apparmor_parser"
[   70.850936] aufs 4.x-rcN-20160111
[   75.407218] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[   75.408555] Bridge firewalling registered
[   75.427172] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   75.848416] ip_tables: (C) 2000-2006 Netfilter Core Team
[   76.703232] Initializing XFRM netlink socket
[   77.060003] IPv6: ADDRCONF(NETDEV_UP): docker0: link is not ready
[   80.101042] aufs au_opts_verify:1597:dockerd[1402]: dirperm1 breaks the protection by the permission bits on the lower branch
[  113.895236] wlp3s0: authenticate with 84:16:f9:77:e1:54
[  113.910483] wlp3s0: send auth to 84:16:f9:77:e1:54 (try 1/3)
[  113.912712] wlp3s0: authenticated
[  113.915101] wlp3s0: associate with 84:16:f9:77:e1:54 (try 1/3)
[  113.919397] wlp3s0: RX AssocResp from 84:16:f9:77:e1:54 (capab=0x1411 status=0 aid=1)
[  113.919516] wlp3s0: associated
[  113.919559] IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready

এখন, আমি মিথ্যা বলব না - ডেমসগ কী সবেমাত্র বানিয়েছে তা সম্পর্কে আমার কোনও ধারণা নেই - এবং যতদূর আমি বলতে পারি লগ আউটপুটে কোনও ত্রুটির বার্তা নেই - যা পরিস্থিতিকে আরও উত্সাহী করে তোলে।

উবুন্টু 16.0.4 এলটিএস চালিত কোনও ল্যাপটপে কেউ কি কখনও ভার্চুয়ালবক্স 5.x ইনস্টল করেছেন - তবে বিআইওএস-এ সুরক্ষিত বুট সক্ষম করেছে ? - হ্যাঁ, সমাধান কি। ???!

প্রচুর লোকের এই সমস্যা রয়েছে - এমনকি কয়েক বছর আগেও চলছে। এটা খুব আশ্চর্যের বিষয় যে কারও কাছে এর সমাধান নেই বলে মনে হচ্ছে - ???


2
"আমি আমার ল্যাপটপের BIOS সেটিংসে সুরক্ষিত বুট সক্ষম করেছি" " - এটি আপনার সমস্যার অংশ হতে পারে। আমার মনে আছে কিছুক্ষণ আগে শুনলাম যে সুরক্ষিত বুটটি ভিবক্সকে ভেঙে দিয়েছে।
অ্যান্ড্রয়েড দেব

উত্তর:


64

ভার্চুয়ালবক্স + সুরক্ষিত বুট + উবুন্টু = ব্যর্থ

সমস্যাটি হ'ল প্রয়োজনীয়তা হ'ল সমস্ত কার্নেল মডিউলগুলি অবশ্যই ইউইএফআই সিস্টেমের দ্বারা বিশ্বাসযোগ্য কোনও কী দ্বারা স্বাক্ষর করা উচিত, অন্যথায় লোডিং ব্যর্থ হবে। উবুন্টু তৃতীয় পক্ষের ভিবক্স * কার্নেল মডিউলগুলিতে স্বাক্ষর করে না, বরং ব্যবহারকারীকে ভার্চুয়ালবক্স প্যাকেজ ইনস্টল করার পরে সিকিউর বুট অক্ষম করার বিকল্প দেয়। আমি এটি করতে পারি, তবে তারপরে আমি যখন যন্ত্রটি শুরু করি তখন একটি বিরক্তিকর "নিরাপত্তাহীন মোডে বুট করা" বার্তাটি দেখতে পেতাম, এবং ডুয়াল বুট উইন্ডোজ 10 ইনস্টলেশনটি আমার কাজ করবে না।

BIOS A18 সহ একটি ডেল অক্ষাংশ E7440 তে এবং ডুয়াল বুট উইন্ডোজ 10 ইনস্টলেশন সহ উবুন্টু 16.04।

ক্রেডিট এই সমস্যার সমাধান করতে আমি ব্যবহৃত তথ্যের প্রাথমিক উত্সে যায় যা ফেডোরা / রেডহ্যাটের জন্য বিশেষভাবে প্রযোজ্য: http://gorka.eguileor.com/vbox-vmware-in-secureboot-linux-2016-update/

এবং একটি প্রাসঙ্গিক উবুন্টু প্রশ্ন জিজ্ঞাসা করুন: উবুন্টু 16.04 এ আপগ্রেড করার পরে 'vboxdrv' লোড করা যায়নি (এবং আমি নিরাপদ বুট রাখতে চাই)

এটি কার্যকর করার পদক্ষেপগুলি বিশেষত উবুন্টু / ডেবিয়ানদের জন্য

  1. ভার্চুয়ালবক্স প্যাকেজ ইনস্টল করুন। যদি ইনস্টলেশনটি সনাক্ত করে যে সিকিউর বুট সক্ষম হয়েছে, আপনি নিজেই সমস্যাটি উপস্থিত করবেন এবং সিকিউর বুট নিষ্ক্রিয় করার বিকল্পটি দেওয়া হবে। "না" চয়ন করুন।

  2. একটি ব্যক্তিগত পাবলিক / প্রাইভেট আরএসএ কী জুড়ি তৈরি করুন যা কার্নেল মডিউলগুলিতে সাইন ইন করতে ব্যবহৃত হবে। আমি কার্নেল মডিউলগুলিতে স্বাক্ষর সম্পর্কিত সমস্ত জিনিস সংরক্ষণ করতে রুট অ্যাকাউন্ট এবং ডিরেক্টরি / রুট / মডিউল-সাইনিং / ব্যবহার করতে পছন্দ করেছি।

    $ sudo -i
    # mkdir /root/module-signing
    # cd /root/module-signing
    # openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=YOUR_NAME/"
    [...]
    # chmod 600 MOK.priv
    
  3. সার্বজনীন কী আমদানি করতে এমওকে ("মেশিনের মালিক কী") ইউটিলিটিটি ব্যবহার করুন যাতে এটি সিস্টেমের দ্বারা বিশ্বাস করা যায়। এটি একটি দুই ধাপের প্রক্রিয়া যেখানে চাবিটি প্রথমে আমদানি করা হয় এবং তারপরে পরবর্তীতে মেশিনটি বুট করার পরে পরে তালিকাভুক্ত করা আবশ্যক। একটি সাধারণ পাসওয়ার্ড যথেষ্ট ভাল, কারণ এটি কেবল অস্থায়ী ব্যবহারের জন্য।

    # mokutil --import /root/module-signing/MOK.der
    input password:
    input password again:
    
  4. মেশিনটি রিবুট করুন। বুটলোডার শুরু হয়ে গেলে, এমওকে পরিচালক ইএফআই ইউটিলিটি স্বয়ংক্রিয়ভাবে শুরু হওয়া উচিত। এটি ৩ য় ধাপে সরবরাহ করা পাসওয়ার্ডের অংশগুলির জন্য জিজ্ঞাসা করবে “ লিনাক্স কার্নেলটি লোড হওয়া কীগুলি লগ করবে এবং আপনার নিজের কমান্ডটি দিয়ে কীটি দেখতে সক্ষম হবে: dmesg|grep 'EFI: Loaded cert'

  5. একটি সাইন ইন ইউটিলিটি ব্যবহার কার্নেলের সাথে shippped, ফাইল নির্মাণের পদক্ষেপ 2. উত্পন্ন ব্যক্তিগত Mok কী আমি একটা ছোট লিপিতে এই করা ব্যবহার সব VirtualBox মডিউল সাইন /root/module-signing/sign-vbox-modules, তাই এটি হতে সহজে যখন নতুন কার্নেল নিয়মিত আপডেট অংশ হিসেবে ইনস্টল করা চালাতে পারেন :

    #!/bin/bash
    
    for modfile in $(dirname $(modinfo -n vboxdrv))/*.ko; do
      echo "Signing $modfile"
      /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
                                    /root/module-signing/MOK.priv \
                                    /root/module-signing/MOK.der "$modfile"
    done
    

    এবং তারপর:

    # chmod 700 /root/module-signing/sign-vbox-modules
    
  6. স্ক্রিপ্টটি 5 তম থেকে মূল হিসাবে চালান। প্রতিবার নতুন কার্নেল আপডেট ইনস্টল হওয়ার সময় আপনাকে স্বাক্ষরকারী স্ক্রিপ্টটি চালাতে হবে, কারণ এটি তৃতীয় পক্ষের ভার্চুয়ালবক্স মডিউলগুলির পুনর্নির্মাণের কারণ হবে। নতুন কার্নেল বুট হওয়ার পরে স্ক্রিপ্টটি ব্যবহার করুন, কারণ এটি নির্ভর করে modinfo -nএবং uname -rকোন কার্নেল সংস্করণে সাইন ইন করতে হবে তা জানাতে।

  7. Vboxdrv মডিউলটি লোড করুন এবং ভার্চুয়ালবক্স চালু করুন:

    # modprobe vboxdrv
    

প্রক্রিয়াটি অন্য তৃতীয় পক্ষের কার্নেল মডিউলগুলিতে, এনভিডিয়া গ্রাফিক্স ড্রাইভারগুলির মতো, যদি প্রয়োজন হয় সাইন করতেও ব্যবহার করা যেতে পারে। (আমি নিজে এটি পরীক্ষা করিনি।)

দ্রষ্টব্য: উপরের উত্তরটি পুরোপুরি আইভন্ড স্টিগার্ডের ব্লগ পোস্ট, ভার্চুয়ালবক্স + সিকিউর বুট + উবুন্টু = ব্যর্থ থেকে প্রাপ্ত হয়েছিল


1
আমি একটি ত্রুটি পেয়েছি: vboxdrv.sh: failed: modprobe vboxnetflt failed. Please use 'dmesg' to find out why. dmesg:[70567.246789] vboxdrv: Found 2 processor cores [70567.267310] vboxdrv: TSC mode is Invariant, tentative frequency 2166734189 Hz [70567.267315] vboxdrv: Successfully loaded version 5.0.40_Ubuntu (interface 0x00240000)
marshy101

5
18.04+ সম্পর্কে দ্রষ্টব্য: প্রস্তাবিত, grep পড়া উচিত: dmesg|grep 'EFI:'পরিবর্তেdmesg|grep 'EFI: Loaded cert'
gkephorus

3
এটি কী করে তা অবশ্যই জানে না এবং বুঝতে পারে না, তবে এটি কার্যকর হয়েছিল।
ন্যানেরি

1
কিছু প্রয়োজন হলে: আমার ডাব্লু / ও ইউএফআই বা সিকিউর মোড এই সমস্যাটি ছিল। আমার ক্ষেত্রে, 18.04.x ​​এ ভার্চুয়ালবক্স-ডিকিএমএস ইনস্টলেশনটি ভেঙে গেছে। আমার ফিক্স ছিল: কার্যক্ষম রেচক পদার্থ Virtualbox-dkms && কার্যক্ষম Virtualbox-dkms && modprobe vboxdrv ইনস্টল
gorlok

1
যদি আপনি ভার্চুয়ালবক্স 5.2 থেকে 6.0 থেকে আপগ্রেড করেন তবে 6 এবং 7 টি পদক্ষেপ আবার ভুলে যাবেন না।
ভোলগার

12

উপরের উত্তরটি সম্ভবত ভাল কাজ করে, তবে আপনি যদি এর জন্য আরও সহজ সময় চান:

আমি এটি দ্বারা সমাধান করতে সক্ষম হয়েছিল

BIOS এ বুট করা এবং> উন্নত (f7)> বুট> "সুরক্ষিত বুট"> "উইন্ডোজ EUFI মোড" পরিবর্তন করে "অন্যান্য ওএস" এ স্ক্রোল করুন

আমার ভার্চুয়ালবক্স এখন পুরোপুরি কাজ করে।


2
এমন কোনও কারণ আছে যা আপনি এটি করতে চান না?
তাইগস্ট

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