VirtualBox install failed in a clean OSX 10.13 - macos

I did a clean install of High Sierra, Mac OS X 10.13 on my mac.
I've installed a few apps, some browsers, webStorm, vagrant, skype and slack.
When trying to install virtualBox I get an error message saying:
"The installation failed.
The installer encountered an error that caused the installation to fail. Contact the software manufacturer for assistance."
When checking the installers log file I get the following error mesage:
Oct 19 16:22:42 newens-mbp installd[519]: PackageKit: Install Failed: Error Domain=PKInstallErrorDomain Code=112 "An error occurred while running scripts from the package “VirtualBox.pkg”." UserInfo={NSFilePath=./postflight, NSURL=file://localhost/Volumes/VirtualBox/VirtualBox.pkg#VBoxKEXTs.pkg, PKInstallPackageIdentifier=org.virtualbox.pkg.vboxkexts, NSLocalizedDescription=An error occurred while running scripts from the package “VirtualBox.pkg”.} {
NSFilePath = "./postflight";
NSLocalizedDescription = "An error occurred while running scripts from the package \U201cVirtualBox.pkg\U201d.";
NSURL = "file://localhost/Volumes/VirtualBox/VirtualBox.pkg#VBoxKEXTs.pkg";
PKInstallPackageIdentifier = "org.virtualbox.pkg.vboxkexts";
}
I've googled this, and found a few threads here and there that solve different problems. But so far none has worked for me.
Some of the posts I've found:
https://www.virtualbox.org/ticket/15832
Error installing Virtualbox 5.1.10 on macOS Sierra, "The installation failed"
https://apple.stackexchange.com/questions/177868/virtualbox-4-3-26-on-osx-10-10-2-fails-to-install
Can't unload kext while installing VirtualBox 4.3.6
None of these solutions worked for me.
I don't have vmware installed, and have tried searching for the .match_kernel file to delete, but can't find it anywhere. I don't have the option of selecting a partition on disk utilities so can't do a repair disk permissions on it.
I've installed and uninstalled different versions and cold booted in between to try to see if that would help.
Thanks for any help!

after hours of hacking at this issue my coworker and i came to a workable solution. the issue (for me at least) was that when i went to install the package it was getting blocked. you can check to see if this is the case by attempting to install, and when it says 'install failed' go to your security & privacy (in system preferences) and go to the 'general' tab and near the bottom it will say that an oracle application was blocked.
here are the steps we came up with **NOTE: if you tried downloading or installing this a few times like i did you will want to first uninstall virtualbox using the virtualbox uninstall tool which you can find in the downloaded .dmg file. you will also want to eject virtualbox from your devices (in the left panel of finder). after that go ahead and follow these instructions:
Download VirtualBox 5.2 installer
Run the DMG, this creates a device
Attempt to install from .pkg file, it will fail at the validation step
Close installer and run the uninstaller.tool file. DO NOT DELETE THE INSTALLER DEVICE
Go to System Preferences -> Security and Privacy -> General and approve the blocked software from ‘Oracle America’
Run the install from the same .pkg file, it should now complete successfully

I finally managed to solve it with a suggestion from here: https://github.com/caskroom/homebrew-cask/issues/39369#issuecomment-339118861
Run this script:
#!/bin/bash
unload() {
if [ `ps -ef | grep -c VirtualBox$` -ne 0 ]
then
echo "VirtualBox still seems to be running. Please investigate!!"
exit 1;
elif [ `ps -ef | grep -c [V]ir` -gt 0 ]
then
echo "Stopping running processes before unloading Kernel Extensions"
ps -ef | grep [V]ir | awk '{print $2}' | xargs kill
fi
echo "Unloading Kernel Extensions"
kextstat | grep "org.virtualbox.kext.VBoxUSB" > /dev/null 2>&1 && sudo kextunload -b org.virtualbox.kext.VBoxUSB
kextstat | grep "org.virtualbox.kext.VBoxNetFlt" > /dev/null 2>&1 && sudo kextunload -b org.virtualbox.kext.VBoxNetFlt
kextstat | grep "org.virtualbox.kext.VBoxNetAdp" > /dev/null 2>&1 && sudo kextunload -b org.virtualbox.kext.VBoxNetAdp
kextstat | grep "org.virtualbox.kext.VBoxDrv" > /dev/null 2>&1 && sudo kextunload -b org.virtualbox.kext.VBoxDrv
}
load() {
echo "Loading Kernel Extentions"
sudo kextload "/Library/Application Support/VirtualBox/VBoxDrv.kext" -r "/Library/Application Support/VirtualBox/"
sudo kextload "/Library/Application Support/VirtualBox/VBoxNetAdp.kext" -r "/Library/Application Support/VirtualBox/"
sudo kextload "/Library/Application Support/VirtualBox/VBoxNetFlt.kext" -r "/Library/Application Support/VirtualBox/"
sudo kextload "/Library/Application Support/VirtualBox/VBoxUSB.kext" -r "/Library/Application Support/VirtualBox/"
}
case "$1" in
unload|remove)
unload
;;
load)
load
;;
*|reload)
unload
load
;;
esac
Run this script after you attempt to install virtualbox. Keep approving the kexts until the script runs cleanly:
Run brew cask reinstall --force virtualbox
Kudos to Dan Stroot for the solution.

Solution so far:
Ok, this is a bit of a hassle but we did manage to make it kind of work.
The issue is related to the system not deleting all files from the virtual box installation.
Using the terminal to search for files with virtualbox in the name of the file, we found (non vagrant related) files that were still in the system.
Problem is these files cannot be deleted even using sudo. So we had to reboot the system pressing cmd + r so you go into a troubleshooting system and not the normal OS environment. In there, you can open the terminal and run "csrutil disable", then reboot the system.
This turns off System Integrity Protection for your system so it is NOT RECOMMENDED, but we had to do this in order to delete these files that we couldn't delete before.
So after deleting these files, we ran the install again and now it worked! Immediately afterwards I tried running vagrant and now it worked as expected.
My final problem now: after making sure that vagrant is working, I went back to starting the computer again pressing cmd + r, open the terminal and run "csrutil enable" and reboot.
Back in the normal OS X I try to run vagrant and get an error again. So at the moment I had to go back again, to disable the csrutil, which is NOT RECOMMENDED, but it's as of this moment the only thing that works for me.
I have not tried running all these steps again.

The answer from llene works perfect for me. The key is that, when you already tried to install and not succeed, you have to do exactly this steps:
Run VirtualBox installer
Run install from .pkg file, it will fail at the validation step, it's ok
close installer and run it again, but now choose uninstaller.tool file, inside (DO NOT DELETE THE INSTALLER DEVICE yet)
eject virtualbox from your devices (in the left panel of finder)
After, go to System Preferences -> Security and Privacy -> General and approve the blocked software from ‘Oracle America’, that will appear there
6) Run install again from the same .pkg file. Now it should complete successfully

Managed to solve it.
Eject the VirtualBox image from: Finder > Devices
Remove VirtualBox device
Now allow the exception in: System Preferences > Security & Privacy
Then try to install from the .dmg again so that it remounts the device.
Now its working fine for me.

For those using homebrew, run 'brew install caskroom/cask/virtualbox', which will fail the first time. Then go to System Preferences>Security & Privacy>General as described above, where, at the bottom, there should be a message about the software install being blocked. Click the 'Allow' button next to this message, then go back to your terminal. Run the homebrew command again and this time it will work.

So.. after struggling a lot about this, and after spend a lot of time in stack overflow.. I combined some answers and finnaly get to install virtualbox in my 10.13 osx.
So:
As I read, Sierra has a new security feature that blocks some external programs. During virtualbox installations you can check Preferences > Security & Privacy > General. You will see that Oracle (virtualbox) is being blocked.
So, what I did was:
Run this command at terminal to disable that new sierra gatekeeper: sudo spctl --master-disable
Open the virtualbox install program, and click unistall to make sure there is no trace of the previous installation attempts.
In the desktop, or in the finder left sidebar (in devices) if there is any virtualbox image, you have to eject them.
Delete the previous virtualbox program and download a new one.
Now, if these steps work for you as they worked for me, you will be able to install virtualbox.
(After this you can re-enable the gatekeeper feature running sudo spctl --master-enable

When running the excellent Disk Arbitrator app, Deactivate it — when active it blocks all mounts and optionally remounts them read-only
which, e.g., prevents Spotlight from trashing USB drives but (d-uh)
gotta remember to turn it off when appropriate.

Related

How to copy intl.so to /usr/lib/php/extensions

I wanted to try Moodle (LMS) on my computer. It requires intl extension.
I used sudo port install php71-intl and successfully installed php71-intl. But it also installed php71 and other dependencies on /opt/local/.
I am using Mac built-in php. Its directories are
/usr/lib/php/extensions/no-debug-non-zts-20160303
/usr/bin/php
I intended to copy the /opt/local/lib/php71/extensions/no-debug-non-zts-20160303/intl.so to /usr/lib/php/extensions/no-debug-non-zts-20160303. But terminal said Operation not permitted.
I tried sudo pecl install intl but failed with make error.
This method sudo port install php71-intl can install the intl.so successfully but in its own direcotry.
So how I can copy the intl.so? Thank you!
You have to disable SIP to do that. First, restart your Mac and before OS starts up, hold down Command-R and keep it held down until you see an Apple icon and a progress bar. Release. This boots you into Recovery. From the Utilities menu, select Terminal and at the prompt type exactly the following and then press Return: csrutil disable
Terminal should display a message that SIP was disabled. From the menu, select Restart. You can re-enable SIP by following the above steps, but using csrutil enable instead.
Find this file "environment.xml" and comment all lines that have "intl" and reload the page. Continue button appears and installation completes without any error. My instance started working like charm, I use it to test out and create courses with SCORM packages, no errors yet.
environment.xml file is located in "admin" folder of moodle directory

Advice on how to delete a software on OSX

I have a software installed on my OSX computer that affects my daily work so I decide to remove it.
The OSX version is 10.14.3.
I have disabled System Integrity Protection (rootless).
It has a continuous running daemon set up in launchctl.
When I try to run the command "sudo launchctl remove "deamon'name"" to disable the running daemon, I got
sudo: unable to execute /bin/launchctl: Operation not permitted
Of course, remove the files for this software using "sudo rm -rf" failed with "Permission denied"
So how can I remove this software without reinstalling OS?

Ubuntu 16 upgrade results incredibly slow wifi

I recently upgraded to Ubuntu16 from 14. Everything went fine, however my wifi connection went to a crawl. I actually experienced this on a previous system that I installed Ubuntu16 on and because of that, stuck with Ubuntu14 for as long as I could until version lag forced me to upgrade.
I came across this solution that was referring to Ubuntu 17
https://askubuntu.com/questions/905288/extremely-slow-connection-after-17-04-update
And it seemed to do the trick!
The only issue is that now after a system suspend or boot-up, I have to run
sudo systemctl restart systemd-resolved
Otherwise I cannot connect to any server.
Its not a huge deal, I've aliased it at this point, but it would be nice get it operating appropriately.
Thanks for the help!
Download this link. If the download by the first link failed, download this file.
Open the Terminal and run these commands on your ubuntu pc.
cd rtlwifi_new-master
make
sudo make install
sudo modprobe -rv rtl8723be
sudo modprobe -v rtl8723be ant_sel=2
sudo ip link set wlp13s0 up
sudo iw dev wlp13s0 scan

Stuck at ".android/repositories.cfg could not be loaded."

brew cask install android-sdk
==> Caveats We will install android-sdk-tools, platform-tools, and build-tools for you. You can control android sdk packages via the
sdkmanager command. You may want to add to your profile: 'export
ANDROID_HOME=/usr/local/share/android-sdk'
This operation may take up to 10 minutes depending on your internet
connection. Please, be patient.
==> Downloading https://dl.google.com/android/repository/tools_r25.2.3-macosx.zip
Already downloaded:
/Users/ishandutta2007/Library/Caches/Homebrew/Cask/android-sdk--25.2.3.zip
==> Verifying checksum for Cask android-sdk
==> Warning: File /Users/ishandutta2007/.android/repositories.cfg could not be loaded.
Create the file! try:
mkdir -p .android && touch ~/.android/repositories.cfg
Actually, after waiting some time it eventually goes beyond that step.
Even with --verbose, you won't have any information that it computes anything, but it does.
Patience is the key :)
PS : For anyone that cancelled at that step, if you try to reinstall the android-sdk package, it will complain that Error: No such file or directory - /usr/local/share/android-sdk.
You can just touch /usr/local/share/android-sdk to get rid of that error and go on with the reinstall.
This happened on Windows 10 as well. I resolved it by creating an empty repositories.cfg file.
For Windows 7 and above go to C:\Users\USERNAME\.android folder and follow below steps:
Right click > create a new txt file with name repositories.txt
Open the file and go to File > Save As.. > select Save as type: All Files
Rename repositories.txt to repositories.cfg
Creating a dummy blank repositories.cfg works on Windows 7 as well. After waiting for a couple of minutes the installation finishes and you get the message on your cmd window -- done
Windows 10 Solution:
For me this issue was due to downloading and creating an AVD using Android Studio and then trying to use that virtual device with the Ionic command line.
I resolved this by deleting all existing emulators and creating a new one from the command line.
(the avdmanager file typically lives in C:\Users\\Android\sdk\tools\bin)
List existing emulators:
avdmanager list avd
Delete an existing emulator:
avdmanager delete avd -n emulator_name
Add system image:
sdkmanager "system-images;android-24;default;x86_64"
Create new emulator:
sdkmanager "system-images;android-27;google_apis_playstore;x86"
I had the same error on OSX Sierra, but in my case the ~/.android folder was owned by root (from a previous install)
I changed the ownership to my User and now it works.
I used mkdir -p /root/.android && touch /root/.android/repositories.cfg to make it works

`dpkg --configure -a` hangs

I'm using Ubuntu 16.04.
When I update, I got the following message
$ sudo apt-get update
....
E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
Following the error message, I try
$ sudo dpkg --configure -a
setting up snapd (2.14.2~16.04) ...
then it hangs forever.
Does anybody know how can I fix this problem?
Thanks.
This is a confirmed bug.
https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1621336
A workaround is listed:
https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1621336/comments/4
Adding the workaround from Axel Kämpfe since the links seems to be broken:
Start a rootshell with "sudo -i"
Run echo "bash -c 'service snapd.boot-ok start'" | at now + 4 min
Then run apt install snapd (if it argues about canceled dpkg processes use the dpkg --configure -a. Then wait for at least 4 minutes. The hanging should gone then.
Good luck! :)
/Patrik
I had a similar problem twice and I have noticed that it happens everytime my system wants to upgrade to a new Kernel. The steps below seem to work for me all the time;
Boot into the recovery mode of your newest kernel versions.
Log-in to the system as root from the drop-down menu.
Edit the /etc/resolv.conf file using a text editor, I normally use vi, i.e.
vi /etc/resolv.conf
and put in the contents below and save file;
nameserver 208.67.222.220
nameserver 208.67.222.222
After the above step, Ctrl+D (exit) back into the recovery mode menu and click on networking to enable network/internet connection.
Next, click on the dpkg item to fix broken packages.
That's it, after the reboot your system should have the right kernel install and broken packages fixed/removed.
Identify the application that is causing the dpkg --configure -a hanging error.
Example: snapd
Execute the following command:
sudo apt-get remove snapd
In my case, I entered the following command:
sudo apt-get remove mysql-server-8.0
Re-install the application if necessary.
I hope this helps you too. Health!

Resources