PhpVirtualBox

From Amahi Wiki
Revision as of 02:16, 5 August 2014 by Bigfoot65 (talk | contribs)
Jump to: navigation, search
Msgbox.update.png Update Needed
The contents of this page have become outdated or irrelevant. Please consider updating it.

phpVirtualBox has been packaged for Amahi and is currently in ALPHA testing.

NOTE: This tutorial has not been adapted for Amahi 7.

How to Install Manually:

  • Ensure Advanced Settings is be enabled on your HDA. This can be done via the Settings tab in the Amahi Dashboard.
  • Navigate to the Amahi Applications tab, create a web app called phpvb.
  • Become root user:
bash code
​su -​
  • Install dependency:
bash code
​yum -y install php-soap​
  • Download and extract the source file:
bash code
​cd /var/hda/web-apps/phpvb wget http://phpvirtualbox.googlecode.com/files/phpvirtualbox-4.1-3.zip unzip phpvirtualbox-4.1-3.zip mv phpvirtualbox-4.1-3/* html chown -R apache:users html​
  • Copy the example config file.
bash code
​cd /var/hda/web-apps/phpvb/html cp config.php-example config.php​
  • Edit the copied config.php and change the values below to your user name and password (must be the same user name as added to the vboxusers group during VirtualBox install):
Text
​var $username = 'vbox'; var $password = 'pass';​
  • Start Web Service:
bash code
​/usr/bin/vboxwebsrv -b --logfile /dev/null >/dev/null​


  • Enable Web Service start on boot:

Exit root user and edit crontab for your user (whoami will display the current user name and must match the one in the previous step):

bash code
​whoami crontab -e​

and add the following line. (to save, enter : followed by wq):

Text
​@reboot /usr/bin/vboxwebsrv -b --logfile /dev/null >/dev/null​
  • Create Web Service daemon (this will allow start/stop for updating VirutalBox versions):

As root user, create the file /etc/init.d/vboxwebsrv and add the following (ensure you replace username on line 6 with the same user name as added to the vboxusers group during VirtualBox install):

#! /bin/sh
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="VirtualBox Web Service"
NAME=vboxwebsrv
SCRIPTNAME=/etc/init.d/$NAME
USER=username
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /etc/rc.d/init.d/functions
VBPID=`ps -U ${USER} --no-heading -o pid,cmd | grep vboxwebsrv | grep -v ${SCRIPTNAME} | grep -v  grep | tail -1 | awk '{ print $1 }'`
do_start()
{
  if [ "$VBPID" != "" ] && [ "$VBPID" -gt 0 ]; then
     echo $NAME already running with PID $VBPID
  else
     su ${USER} -c 'vboxwebsrv -b --logfile /dev/null >/dev/null'
  fi
}
do_stop()
{
  if [ "$VBPID" != "" ] && [ "$VBPID" -gt 0 ]; then
       echo Stopping $NAME ...
       kill $VBPID
  else 
       echo $NAME not running
  fi
}
do_status()
{
  if [ "$VBPID" != "" ] && [ "$VBPID" -gt 0 ]; then
       echo Running with pid $VBPID
  else
       echo $NAME not running
  fi
}
case "$1" in
 start)
   [ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME"
   do_start
   ;;
 stop)
   [ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME"
   do_stop
   ;;
 restart|force-reload)
   echo "Restarting $DESC" "$NAME"
   do_stop
   sleep 1
   VBPID=0
   echo Starting $NAME ...
   do_start
   ;;
 status)
   do_status
   ;;
 *)
   echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
   exit 3
   ;;
esac

Set permissions:

bash code
​chmod 755 /etc/init.d/vboxwebsrv​

To use the service, do the following as root user (option: start, stop, restart, force-reload, status):

bash code
​service vboxwebsrv option​
  • That's it. You should now be able to access VirtualBox from your browser at http://phpvb. It will restart automatically on reboot as well. Be aware moving the mouse pointer in this app is quirky and often difficult to navigate.
  • Refer to phpVirtualBox Installation for additional guidance.


NOTE: See Amahi on VirtualBox for detailed guidance on installing Amahi on a virtual machine (VM).