VirtualBox: Mengatasi vboxdrv yang tidak bisa jalan: Difference between revisions
From OnnoCenterWiki
Jump to navigationJump to search
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) No edit summary |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
sumber: https://askubuntu.com/questions/760671/could-not-load-vboxdrv-after-upgrade-to-ubuntu-16-04-and-i-want-to-keep-secur | sumber: https://askubuntu.com/questions/760671/could-not-load-vboxdrv-after-upgrade-to-ubuntu-16-04-and-i-want-to-keep-secur | ||
==BIOS== | |||
Pastikan | |||
* VT (Virtualization Technology) '''ENABLED''' | |||
* SecureBoot '''DISABLED''' | |||
==MOK== | |||
| Line 31: | Line 41: | ||
==Alternatif Lain== | ==Alternatif Lain== | ||
ls /var/lib/initramfs-tools | Set alias | ||
alias dkms-buildall='sudo ./wherever/your/script/is' | |||
Script | |||
#!/bin/env python | |||
# | |||
# NOTE: This assumes that all modules and versions are built for at | |||
# least one kernel. If that's not the case, adapt parsing as needed. | |||
import os | |||
import subprocess | |||
# Permission check. | |||
if os.geteuid() != 0: | |||
print "You need to be root to run this script." | |||
exit(1) | |||
# Get DKMS status output. | |||
cmd = ['dkms', 'status'] | |||
process = subprocess.Popen(cmd, stdout=subprocess.PIPE) | |||
dkms_status = process.communicate()[0].strip('\n').split('\n') | |||
dkms_status = [x.split(', ') for x in dkms_status] | |||
# Get kernel versions (probably crap). | |||
cmd = ['ls', '/var/lib/initramfs-tools/'] | |||
# Alternative (for use with Arch Linux for example) | |||
# cmd = ['ls', '/usr/lib/modules/'] | |||
process = subprocess.Popen(cmd, stdout=subprocess.PIPE) | |||
kernels = process.communicate()[0].strip('\n').split('\n') | |||
# Parse output, 'modules' will contain all modules pointing to a set | |||
# of versions. | |||
modules = {} | |||
for entry in dkms_status: | |||
module = entry[0] | |||
version = entry[1].split(': ')[0] | |||
try: | |||
modules[module].add(version) | |||
except KeyError: | |||
# We don't have that module, add it. | |||
modules[module] = set([version]) | |||
# For each module, build all versions for all kernels. | |||
for module in modules: | |||
for version in modules[module]: | |||
for kernel in kernels: | |||
cmd = ['dkms', 'build', '-m', module, '-v', version, '-k', kernel] | |||
ret = subprocess.call(cmd) | |||
Cek | |||
dkms status | |||
sudo python dkms.py | |||
==Alternatif== | |||
sudo apt-get install linux-headers-`uname -r` | |||
sudo dpkg-reconfigure virtualbox-dkms | |||
sudo apt-get install linux-headers-generic | |||
sudo dpkg-reconfigure virtualbox-dkms | |||
sudo dpkg-reconfigure virtualbox-dkms | |||
sudo dpkg-reconfigure virtualbox | |||
sudo modprobe vboxdrv | |||
sudo modprobe vboxnetflt | |||
==Referensi== | ==Referensi== | ||
| Line 38: | Line 115: | ||
* https://askubuntu.com/questions/760671/could-not-load-vboxdrv-after-upgrade-to-ubuntu-16-04-and-i-want-to-keep-secur | * https://askubuntu.com/questions/760671/could-not-load-vboxdrv-after-upgrade-to-ubuntu-16-04-and-i-want-to-keep-secur | ||
* https://askubuntu.com/questions/506405/how-do-i-fix-a-vboxdrv-setup-failure-in-virtualbox | * https://askubuntu.com/questions/506405/how-do-i-fix-a-vboxdrv-setup-failure-in-virtualbox | ||
* https://askubuntu.com/questions/53364/command-to-rebuild-all-dkms-modules-for-all-installed-kernels | |||
Latest revision as of 04:17, 28 May 2017
BIOS
Pastikan
- VT (Virtualization Technology) ENABLED
- SecureBoot DISABLED
MOK
On my system I did the following to make it work:
Run mokutil:
sudo mokutil --disable-validation
Then mokutil asked me to set a password for the MOK Manager. After rebooting the PC the BIOS showed a dialog to configure the MOK Manager. I disabled SecureBoot from this dialog, it asked for several characters from the password (ie. enter character (5), etc).
After booting up the vboxdrv modules loaded correctly.
lsmod | grep vboxdrv vboxdrv 454656 3 vboxnetadp,vboxnetflt,vboxpci
Curiously, mokutil still shows SecureBoot is enabled:
sudo mokutil --sb-state SecureBoot enabled
Alternatif Lain
Lakukan
sudo apt-get install build-essential libssl-dev linux-headers-`uname -r` sudo apt-get --reinstall install virtualbox-dkms
Alternatif Lain
Set alias
alias dkms-buildall='sudo ./wherever/your/script/is'
Script
#!/bin/env python
#
# NOTE: This assumes that all modules and versions are built for at
# least one kernel. If that's not the case, adapt parsing as needed.
import os
import subprocess
# Permission check.
if os.geteuid() != 0:
print "You need to be root to run this script."
exit(1)
# Get DKMS status output.
cmd = ['dkms', 'status']
process = subprocess.Popen(cmd, stdout=subprocess.PIPE)
dkms_status = process.communicate()[0].strip('\n').split('\n')
dkms_status = [x.split(', ') for x in dkms_status]
# Get kernel versions (probably crap).
cmd = ['ls', '/var/lib/initramfs-tools/']
# Alternative (for use with Arch Linux for example)
# cmd = ['ls', '/usr/lib/modules/']
process = subprocess.Popen(cmd, stdout=subprocess.PIPE)
kernels = process.communicate()[0].strip('\n').split('\n')
# Parse output, 'modules' will contain all modules pointing to a set
# of versions.
modules = {}
for entry in dkms_status:
module = entry[0]
version = entry[1].split(': ')[0]
try:
modules[module].add(version)
except KeyError:
# We don't have that module, add it.
modules[module] = set([version])
# For each module, build all versions for all kernels.
for module in modules:
for version in modules[module]:
for kernel in kernels:
cmd = ['dkms', 'build', '-m', module, '-v', version, '-k', kernel]
ret = subprocess.call(cmd)
Cek
dkms status sudo python dkms.py
Alternatif
sudo apt-get install linux-headers-`uname -r` sudo dpkg-reconfigure virtualbox-dkms
sudo apt-get install linux-headers-generic sudo dpkg-reconfigure virtualbox-dkms
sudo dpkg-reconfigure virtualbox-dkms sudo dpkg-reconfigure virtualbox sudo modprobe vboxdrv sudo modprobe vboxnetflt
Referensi
- https://askubuntu.com/questions/760671/could-not-load-vboxdrv-after-upgrade-to-ubuntu-16-04-and-i-want-to-keep-secur
- https://askubuntu.com/questions/506405/how-do-i-fix-a-vboxdrv-setup-failure-in-virtualbox
- https://askubuntu.com/questions/53364/command-to-rebuild-all-dkms-modules-for-all-installed-kernels