انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: kamaalix در 03 آبان 1400، 03:30 بظ
-
سلام دوستان
من روی virtualbox یه ویندوز ۱۰ تعریف کردم و همهٔ مراحل هم ظاهرا درست پیش میره اما موقع استارت کردن ویندوز این ارور رو دریافت میکنم.
کسی میدونه راه حلش چیه؟
تصویر پیوست شد.
-
شاید virtualization پردازنده فعال نیست. اون رو از طریق منوی بایوس فعال کنید
-
سلام دوستان
من روی virtualbox یه ویندوز ۱۰ تعریف کردم و همهٔ مراحل هم ظاهرا درست پیش میره اما موقع استارت کردن ویندوز این ارور رو دریافت میکنم.
کسی میدونه راه حلش چیه؟
تصویر پیوست شد.
خودش گفته که چکار کنی!
بسته virtualbox-dkms رو باید نصب کنی برای توزیع های بر پایه دبیان:
sudo apt install virtualbox-dkms
-
ممنون از پاسختون.
من گوگل کردم برای فعال سازی virtualization از طریق بایوس. اما بایوس من چنین چیزی توش پیدا نمیشه و تنظیمات پیشرفته رو هم نمی تونم پیدا کنم. نسل intel لپتاپ acer
اون کد رو هم توی ترمینال زدم و این ارور رو میده:
E: Unable to locate package virtalbox-dkms
-
ببخشید اسم بسته رو غلط نوشته بودم الآن درستش کردم
-
دستور اجرا شد.
اما همون ارور رو مجدد دارم.
نتیجه دستور رو پیوست کردم.
-
secure boot روشنه؟ اگه نمیدونید خروجی دستور زیر رو بذارید.
sudo dmesg | grep -i secure
سعی کنید به طور دستی ماژول vboxdrv رو بارگذاری کنید.
sudo modprobe vboxdrv
نتیجه رو اینجا بگید.
خروجی دستور زیر رو هم بذارید
sudo modinfo vboxdrv
مطمئن نیستم دستور بالا نیاز داشته باشه با دسترسی روت اجرا بشه ولی الان فرقی نداره.، اون دستور فقط اطلاعات مربوط به ماژول vboxdrv رو نشون میده.
-
به ترتیب کدها تصاویر رو پیوست کردم.
-
secure boot فعال هست. ماژول vboxdrv هم امضا شده، احتمالا موقع نصب بسته virtualbox-dkms. احتمالا بقیه ماژولها هم که با بسته virtualbox-dkms، کامپایل و نصب شدن هم امضا دیجیتال دارند.
سعی کردید دستی با modprobe اون ماژول رو بارگذاری کنید؟ نتیجه چی شد؟
sudo modprobe vboxdrv
وقتی دستور apt install virtualbox-dkms رو وارد کردید، بسته virtualbox-dkms به صورت manual install علامت گذاری شده. بهتره اون رو به حالت automatic برگردونید تا در آینده اگه خواستید ویرچوالباکس رو پاک کنید، همه چیزهای مرتبط با اون، توسط apt autoremove پاک بشن.
این دستور رو وارد کنید.
sudo apt-mark auto virtualbox-dkms
کاری که بالا گفتم زیاد ربطی به مشکل الان شما نداره اما از ایجاد مشکل توی آینده جلوگیری میکنه.
برای اینکه ببینید یه بسته نصب هست یا نه، بهتره از apt list استفاده کنید تا چیزی رو تغییر نده، به دسترسی روت هم نیاز نداره. مثلا اینجوری:
apt list virtualbox-dkms
اگه بسته نصب باشه، جلوش مینویسه [installed] یا [installed,automatic]
-
کدهایی که گفتید رو به ترتیب اجرا کردم و نتیجه داخل تصویره.
-
Failed to open a session for the virtual machine 10.
The virtual machine '10' has terminated unexpectedly during startup with exit code 1 (0x1).
Result Code: NS_ERROR_FAILURE (0x80004005)
Component: MachineWrap
Interface: IMachine {85632c68-b5bb-4316-a900-5eb28d3413df}
این کپی ارور virtualbox هست.
-
عجیبه، با اینکه ماژول امضا شده، ولی کرنل اون رو بارگذاری نمیکنه. شاید گواهی که نشون میده اون ماژولها امضا شدن لود نشده. خروجی دستورات زیر رو قرار بدید.
sudo dmesg | grep -i cert
mokutil -l
خروجی دستور دوم میتونه یکم طولانی باشه.
میتونید متن رو با فشردن کلیدهای ctrl + shift + c از ترمینال کپی کنید. با ctrl + shift + v هم میتونید متن رو داخل ترمینال کپی کنید.
-
خروجی کد توی تصویر پیسوت شدهست.
خروجی کد دوم:
mohammad@mohammad-Aspire-V5-561G:~$ mokutil -l
[key 1]
SHA1 Fingerprint: 76:a0:92:06:58:00:bf:37:69:01:c3:72:cd:55:a9:0e:1f:de:d2:e0
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
b9:41:24:a0:18:2c:92:67
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=GB, ST=Isle of Man, L=Douglas, O=Canonical Ltd., CN=Canonical Ltd. Master Certificate Authority
Validity
Not Before: Apr 12 11:12:51 2012 GMT
Not After : Apr 11 11:12:51 2042 GMT
Subject: C=GB, ST=Isle of Man, L=Douglas, O=Canonical Ltd., CN=Canonical Ltd. Master Certificate Authority
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (2048 bit)
Modulus:
00:bf:5b:3a:16:74:ee:21:5d:ae:61:ed:9d:56:ac:
bd:de:de:72:f3:dd:7e:2d:4c:62:0f:ac:c0:6d:48:
08:11:cf:8d:8b:fb:61:1f:27:cc:11:6e:d9:55:3d:
39:54:eb:40:3b:b1:bb:e2:85:34:79:ca:f7:7b:bf:
ba:7a:c8:10:2d:19:7d:ad:59:cf:a6:d4:e9:4e:0f:
da:ae:52:ea:4c:9e:90:ce:c6:99:0d:4e:67:65:78:
5d:f9:d1:d5:38:4a:4a:7a:8f:93:9c:7f:1a:a3:85:
db:ce:fa:8b:f7:c2:a2:21:2d:9b:54:41:35:10:57:
13:8d:6c:bc:29:06:50:4a:7e:ea:99:a9:68:a7:3b:
c7:07:1b:32:9e:a0:19:87:0e:79:bb:68:99:2d:7e:
93:52:e5:f6:eb:c9:9b:f9:2b:ed:b8:68:49:bc:d9:
95:50:40:5b:c5:b2:71:aa:eb:5c:57:de:71:f9:40:
0a:dd:5b:ac:1e:84:2d:50:1a:52:d6:e1:f3:6b:6e:
90:64:4f:5b:b4:eb:20:e4:61:10:da:5a:f0:ea:e4:
42:d7:01:c4:fe:21:1f:d9:b9:c0:54:95:42:81:52:
72:1f:49:64:7a:c8:6c:24:f1:08:70:0b:4d:a5:a0:
32:d1:a0:1c:57:a8:4d:e3:af:a5:8e:05:05:3e:10:
43:a1
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
AD:91:99:0B:C2:2A:B1:F5:17:04:8C:23:B6:65:5A:26:8E:34:5A:63
X509v3 Authority Key Identifier:
keyid:AD:91:99:0B:C2:2A:B1:F5:17:04:8C:23:B6:65:5A:26:8E:34:5A:63
X509v3 Basic Constraints: critical
CA:TRUE
X509v3 Key Usage:
Digital Signature, Certificate Sign, CRL Sign
X509v3 CRL Distribution Points:
Full Name:
URI:http://www.canonical.com/secure-boot-master-ca.crl
Signature Algorithm: sha256WithRSAEncryption
3f:7d:f6:76:a5:b3:83:b4:2b:7a:d0:6d:52:1a:03:83:c4:12:
a7:50:9c:47:92:cc:c0:94:77:82:d2:ae:57:b3:99:04:f5:32:
3a:c6:55:1d:07:db:12:a9:56:fa:d8:d4:76:20:eb:e4:c3:51:
db:9a:5c:9c:92:3f:18:73:da:94:6a:a1:99:38:8c:a4:88:6d:
c1:fc:39:71:d0:74:76:16:03:3e:56:23:35:d5:55:47:5b:1a:
1d:41:c2:d3:12:4c:dc:ff:ae:0a:92:9c:62:0a:17:01:9c:73:
e0:5e:b1:fd:bc:d6:b5:19:11:7a:7e:cd:3e:03:7e:66:db:5b:
a8:c9:39:48:51:ff:53:e1:9c:31:53:91:1b:3b:10:75:03:17:
ba:e6:81:02:80:94:70:4c:46:b7:94:b0:3d:15:cd:1f:8e:02:
e0:68:02:8f:fb:f9:47:1d:7d:a2:01:c6:07:51:c4:9a:cc:ed:
dd:cf:a3:5d:ed:92:bb:be:d1:fd:e6:ec:1f:33:51:73:04:be:
3c:72:b0:7d:08:f8:01:ff:98:7d:cb:9c:e0:69:39:77:25:47:
71:88:b1:8d:27:a5:2e:a8:f7:3f:5f:80:69:97:3e:a9:f4:99:
14:db:ce:03:0e:0b:66:c4:1c:6d:bd:b8:27:77:c1:42:94:bd:
fc:6a:0a:bc
-
گواهی که کرنل بتونه امضا ماژولها رو تشخیص بده، وجود نداره به خاطر همین کرنل اون ماژولها رو بارگذاری نمیکنه.
بسته virtaulbox-dkms رو دوباره نصب کنید، اینجوری شاید ماژولها دوباره امضا بشن و گواهی هم وارد mok بشه تا کرنل اونها رو بارگذاری کنه.
اینجوری بسته رو دوباره نصب کنید:
sudo apt install --reinstall virtualbox-dkms
اگه وسطهای نصب از شما خواست تا یه رمز وارد کنید، یه رمز ساده مثل 12345678 بزنید، این رمز موقتی هست.
الان کامپیوتر رو راهاندازی مجدد کنید، اگه کار درست پیش رفته باشه، باید وارد یه صفحه آبی بشید که وسطش چیزهایی نوشته. شما کلید enter رو بزنید، بعد از اون برید روی Enroll MOK، برید روی continue و اینتر رو بزنید، قبول کنید که اون گواهی به mok اضافه بشه و رمزی که قبلا نوشته بودید رو وارد کنید. توی منوی بعدی reboot رو انتخاب کنید.
اگه کارهای بالا انجام بشه، باید موقع بوت ماژولها بارگذاری بشن و ویرچوالباکس بدون مشکل کار کنه.
جایی مشکل پیش اومد بگید.
اگه کارهای بالا انجام نشد، باید خودتون دستی یه کلید خصوصی و گواهی درست کنید، کلید رو توی جای امن قرار بدید تا هر کسی به اون دسترسی نداشته باشه، گواهی رو به mok اضافه کنید و بعد ماژولها رو با اون کلید و گواهی امضا کنید.
اگه راه اول نشد، این راه هست.
راه دیگه هم اینه که کلا secure boot رو غیرفعال کنید که کرنل به امضای ماژولها کاری نداشته باشه، ولی اینجوری بدافزارها میتونند قبل از بوت شدن سیستمعامل، اجرا بشن و تمام مکانیزمهای امنیتی سیستمعامل رو دور بزنند، هرچند این بعیده که برای کامپیوترهای شخصی اتفاق بیوفته.
برای اینکه secure boot رو غیرفعال کنید، تا جایی که من میدونم دو راه دارید، یا اینکه از توی تنظیمات uefi غیرفعالش کنید که اینجوری کلا غیرفعال میشه و اتفاق بالا میتونه بیوفته. این راه بسته به اینکه مادربرد شما چیه، فرق داره. (تنظیمات uefi یهجورایی معادل تنظیمات بایوس هست، اگه موقع بوت دید که میگه کلید خاصی رو بزنید تا وارد بایوس بشید، منظورش همون uefi هست.)
معمولا میتونید تنظیمات مربوط به secure boot رو توی منوهای boot یا advanced یا security پیدا کنید. بسته به مادربرد فرق داره.
میتونید اون رو توی shim غیرفعال کنید، در این حالت اتفاق بالا نمیتونه به همین راحتی بیوفته ولی همچنان نسبت به حالتی که secure boot فعال هست، امنیت کمتری داره.
برای اینکار توی ترمینال دستور زیر رو بزنید:
sudo mokutil --disable-validation
بعدش یه رمز ساده وارد کنید، این رمز موقتیه.
حالا کامپیوتر رو راهاندازی مجدد کنید، باید وارد یه صفحه آبی بشید. توی اون صفحه اینتر رو بزنید، change secure boot state رو انتخاب کنید، الان رمز رو باید وارد کنید ولی حواستون باشه که کل رمز نیست، یه عدد اون کنار نوشته شده که میگه کاراکتر چندم رمز رو بنویسید. بعدش yes رو انتخاب کنید و توی منو بعدی بزنید روی reboot.
اگه درست انجام داده باشید، کرنل ماژولها رو بدون توجه به امضای اونها بارگذاری میکنه.