Using VB as platform form a general VM
-
johnnytheswede
- Posts: 4
- Joined: 30. Nov 2011, 18:58
- Primary OS: Linux other
- VBox Version: OSE other
- Guest OSses: Win, FreeBSD, Linux
Using VB as platform form a general VM
Hi Forum,
My wish is to use VB to be able to compute a general Linux-system and run it on any platform, Macintosh, Windows machine or whatever. I am currently investigating certain livecd-versions of a Linux-systems and what I want to do is to build a custom version of a Linux-Live-CD and then use VB to be able to run the Live-system on any computer. I work as a teacher at a technical university and we frequently have the need to deploy software to our students and be certain that any computer will be able to run it, the students bring laptops.
I guess that what I basically need some documentation of is what what drivers that VB presents to it's guests, I do not need to include other things in my general virtual machine.
Any thoughts on where I could begin with this?
Best regards
Johnny
My wish is to use VB to be able to compute a general Linux-system and run it on any platform, Macintosh, Windows machine or whatever. I am currently investigating certain livecd-versions of a Linux-systems and what I want to do is to build a custom version of a Linux-Live-CD and then use VB to be able to run the Live-system on any computer. I work as a teacher at a technical university and we frequently have the need to deploy software to our students and be certain that any computer will be able to run it, the students bring laptops.
I guess that what I basically need some documentation of is what what drivers that VB presents to it's guests, I do not need to include other things in my general virtual machine.
Any thoughts on where I could begin with this?
Best regards
Johnny
-
mpack
- Site Moderator
- Posts: 39134
- Joined: 4. Sep 2008, 17:09
- Primary OS: MS Windows 10
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Mostly XP
Re: Using VB as platform form a general VM
If you are thinking that you'll take a self contained boot CD along to any PC and it won't be necessary to install anything - then forget it, VirtualBox doesn't work that way.
Guest drivers are not required. VirtualBox purposesly simulates hardware which guests have native support for. You are however required to install the VBox software on the host first.
Personally I think a live CD is a bad idea. Having a read-only boot drive is rather inflexible, and it makes it hard to incorporate the guest additions. In the scenario you described I would be looking to have a VM on a USB memory stick - eSATA would be better, but your students may not have that.
Guest drivers are not required. VirtualBox purposesly simulates hardware which guests have native support for. You are however required to install the VBox software on the host first.
Personally I think a live CD is a bad idea. Having a read-only boot drive is rather inflexible, and it makes it hard to incorporate the guest additions. In the scenario you described I would be looking to have a VM on a USB memory stick - eSATA would be better, but your students may not have that.
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
johnnytheswede: as mpack pointed out, you will need to install VBox on each of those PCs.
Linux will surely work -- it can be either live CD, or just a HDD image. -- You can copy whole VM folder to your students -or- use Import/Export Appliance.
Linux will surely work -- it can be either live CD, or just a HDD image. -- You can copy whole VM folder to your students -or- use Import/Export Appliance.
-
johnnytheswede
- Posts: 4
- Joined: 30. Nov 2011, 18:58
- Primary OS: Linux other
- VBox Version: OSE other
- Guest OSses: Win, FreeBSD, Linux
Re: Using VB as platform form a general VM
Thank you both for your replies.
I wish to give some feedback and I hope you could also give some feedback on my feedback, mainly to hopefully confirm I'm on the right track.
We will surely require the students to have their own installations of VirtualBox on their hosts, which will be their own laptops, they have to have a laptop to study at our school.
My plan was along the lines of that which Technologov scetched, to deploy the system with all preinstalled software. Currently I have put togeher a Debian-machine with LXDE and KDE:s konsole (the whole KDE takes 1.6 GB, but only konsole takes about 400MB). I will add some software to enable them to program i C and Guest Additions also work fine in Debian. The system will be at about 2GB and I hope, when compressed, to get it in on a CD.
What I am planning to do, like I said above, is to use the export-appliance function, but will the exported machine be able to run on any VirtualBox? I mean at on a Macintosh or a Windows-machine... are there absolutely *no* driver considerations at all? If so - amazing!, then can VirtualBox be considered to really enable true platform-independence, if you accept the (small) hassle of running things virtually? In that case, could you give some words on how that works, it could be *very* interesting to understand as this will also provide an understanding of drivers in general. A reference will do wonderfully.
(I have been teaching a course in introductory operating system technology for a couple of years and last year, when I found VirtualBox, the whole course just benefited enormously! Thank you so much VB-community!)
Best regards
Johnny
I wish to give some feedback and I hope you could also give some feedback on my feedback, mainly to hopefully confirm I'm on the right track.
We will surely require the students to have their own installations of VirtualBox on their hosts, which will be their own laptops, they have to have a laptop to study at our school.
My plan was along the lines of that which Technologov scetched, to deploy the system with all preinstalled software. Currently I have put togeher a Debian-machine with LXDE and KDE:s konsole (the whole KDE takes 1.6 GB, but only konsole takes about 400MB). I will add some software to enable them to program i C and Guest Additions also work fine in Debian. The system will be at about 2GB and I hope, when compressed, to get it in on a CD.
What I am planning to do, like I said above, is to use the export-appliance function, but will the exported machine be able to run on any VirtualBox? I mean at on a Macintosh or a Windows-machine... are there absolutely *no* driver considerations at all? If so - amazing!, then can VirtualBox be considered to really enable true platform-independence, if you accept the (small) hassle of running things virtually? In that case, could you give some words on how that works, it could be *very* interesting to understand as this will also provide an understanding of drivers in general. A reference will do wonderfully.
(I have been teaching a course in introductory operating system technology for a couple of years and last year, when I found VirtualBox, the whole course just benefited enormously! Thank you so much VB-community!)
Best regards
Johnny
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
For fun: You can even teach them virtualization -- this is closely related to operating systems. I wrote a paper here: 
http://violtan.com/ae/virtualization.html
Seriously - there are some limits: 64-bit guests and 3D acceleration. Do not use it.
That is - you must use Linux 32-bit guest OS as VM. 64-bit requires hardware VT and 64-bit CPU, and many cheap computers (esp. Laptops), do not have VT. Netbooks do not have 64-bit CPUs. 3D acceleration in vbox is unstable.
Other than that - 32-bit Linux will run everywhere - on any x86 CPU, starting with Pentium II/Athlon 1. (provided you have enough RAM) - on any OS - Windows/Mac/Linux/Solaris/FreeBSD. So yes, you can just export your VM appliance and instruct how-to import it to people.
I recommend you to disable hardware VT on your PC (in VBox VM settings->system->acceleration) when preparing the image, to test how will it work on generic x86 hardware.
VirtualBox is unique - it uses cross-platform drivers (!) (mainly: 'vboxdrv') - that share source code across operating systems. In the past, it was unheard of to make such drivers, but now they exist.
http://violtan.com/ae/virtualization.html
Seriously - there are some limits: 64-bit guests and 3D acceleration. Do not use it.
That is - you must use Linux 32-bit guest OS as VM. 64-bit requires hardware VT and 64-bit CPU, and many cheap computers (esp. Laptops), do not have VT. Netbooks do not have 64-bit CPUs. 3D acceleration in vbox is unstable.
Other than that - 32-bit Linux will run everywhere - on any x86 CPU, starting with Pentium II/Athlon 1. (provided you have enough RAM) - on any OS - Windows/Mac/Linux/Solaris/FreeBSD. So yes, you can just export your VM appliance and instruct how-to import it to people.
I recommend you to disable hardware VT on your PC (in VBox VM settings->system->acceleration) when preparing the image, to test how will it work on generic x86 hardware.
VirtualBox is unique - it uses cross-platform drivers (!) (mainly: 'vboxdrv') - that share source code across operating systems. In the past, it was unheard of to make such drivers, but now they exist.
-
Perryg
- Site Moderator
- Posts: 34369
- Joined: 6. Sep 2008, 22:55
- Primary OS: Linux other
- VBox Version: OSE self-compiled
- Guest OSses: *NIX
Re: Using VB as platform form a general VM
Other than the obvious 32-bit vs 64-bit you will need to take into account the machine name if these clones are going to be on the same network. Importing should provide a unique MAC for the NIC, if you clone it properly.
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
Unique name and unique MAC addresses are not needed for a desktop VMs. (if they use 'NAT' network mode, which is default)
-
Perryg
- Site Moderator
- Posts: 34369
- Joined: 6. Sep 2008, 22:55
- Primary OS: Linux other
- VBox Version: OSE self-compiled
- Guest OSses: *NIX
Re: Using VB as platform form a general VM
No but if they are going to get into networking and most IT schools do it *IS* going to be a consideration.
Networking using NAT just isn't going to work since the VirtualBox NAT was meant for the home/end user to be able to just get on the Internet.
I believe that the OP needed to be reminded that this could be an issue so it does not happen in a most inopportune time.
Networking using NAT just isn't going to work since the VirtualBox NAT was meant for the home/end user to be able to just get on the Internet.
I believe that the OP needed to be reminded that this could be an issue so it does not happen in a most inopportune time.
-
johnnytheswede
- Posts: 4
- Joined: 30. Nov 2011, 18:58
- Primary OS: Linux other
- VBox Version: OSE other
- Guest OSses: Win, FreeBSD, Linux
Re: Using VB as platform form a general VM
Thank you so much for your discussions here, this is very valuable to me and the students. I do believe that we will not have trouble with the MAC-address issue, although I might look into it if problems occur. It could be that we expand this strategy to include other courses in the future and then I will keep your discussion in mind. (There are of course networking courses but they don't use VB to deploy the software.)
I will also keep in mind the 32-bit issue and the 3d-acceleration thing, however, I am not aware of anyone having a x32 machine, but probably it's safest to go 32-bit anyhow. I might also use a Gentoo-system instead of Debian, I thought of Debian first because it runs anywhere, but if the "runs anywhere"-property already is guaranteed by VB itself, there is no need to bloat the system with Debian, I'll keep the Debian plan as backup though as I have been, in my Gentoo-installation procedure, forced to give a reference to the *host machine's* video card even when compiling for the *guest*... any thoughts on this? The thing is that Gentoo compiles it's own kernel (as you of course probably know) and... might not platform dependence sneak in here?
Again many thanks for your comprehensive feed back. I will definitely include the paper by Technologov in the course material and also quote parts of this discussion in this forum.
Best regards
Johnny
I will also keep in mind the 32-bit issue and the 3d-acceleration thing, however, I am not aware of anyone having a x32 machine, but probably it's safest to go 32-bit anyhow. I might also use a Gentoo-system instead of Debian, I thought of Debian first because it runs anywhere, but if the "runs anywhere"-property already is guaranteed by VB itself, there is no need to bloat the system with Debian, I'll keep the Debian plan as backup though as I have been, in my Gentoo-installation procedure, forced to give a reference to the *host machine's* video card even when compiling for the *guest*... any thoughts on this? The thing is that Gentoo compiles it's own kernel (as you of course probably know) and... might not platform dependence sneak in here?
Again many thanks for your comprehensive feed back. I will definitely include the paper by Technologov in the course material and also quote parts of this discussion in this forum.
Best regards
Johnny
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
>There are of course networking courses but they don't use VB to deploy the software.
They could. But they need some graphical extension for VirtualBox, right?
Try GNS3 Network Simulator:
http://forum.gns3.net/topic3262.html
They could. But they need some graphical extension for VirtualBox, right?
Try GNS3 Network Simulator:
http://forum.gns3.net/topic3262.html
-
Perryg
- Site Moderator
- Posts: 34369
- Joined: 6. Sep 2008, 22:55
- Primary OS: Linux other
- VBox Version: OSE self-compiled
- Guest OSses: *NIX
Re: Using VB as platform form a general VM
IMHO you might want to reconsider this one. Gentoo provides their own customized version that is obtained from them. (portage)I might also use a Gentoo-system instead of Debian,
If you want to stay with the official VirtualBox I would continue with Debian or pick from the list HERE
Note: if you download the net install and select expert mode you can install Debian base in around 300MB. The additional libraries and VirtualBox should still fall within a size that you can compress to a CD. (although I have not personally tried it, others have)
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
Hmm, yes, I would also choose Debian (Stable) as a base, but due to stability concerns. There is no way to make a rolling release truly stable. Also your VBox appliance does not have to be a CD, can be DVD - so you can be a bit more relaxed as to which software goes into the image.I might also use a Gentoo-system instead of Debian,
It is my experience, that old laptops that do not have a DVD drive, do not have enough RAM anyway. (1 GB of RAM is required, Netbooks and cheap modern laptops have it). This requirement is dependent on guest OS of course, but modern applications (LibreOffice) are quite hungry.
VM can eat about 50% of RAM -- 512 MB on 1 GB hosts, else host OS will get starved.
I would target this: 512 MB of RAM (for VM) + 32 bit CPU + no 3D + 4 GB compressed VBox image (DVD or USB disk for offline deployments).
-
DNS
- Posts: 107
- Joined: 2. May 2011, 00:16
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: xp win7
Re: Using VB as platform form a general VM
Hi Technologov, I've read your paper at http://violtan.com/ae/virtualization.html. It's excellent and easy to understand. I had a few questions about emulation. Is it's slow speed a side-effect that's inherent to this type of tech or is it because projects like qemu are not corporately funded ( ex. developers are not as skilled)?
I have a few more questions if it's not much trouble:
-Do/can accelerators exist for all the architecture types emulated by qemu?
-Does qemu support windows?
-Were there any recent substantial improvements to its working speed?
-Can kqemu compare to Virtualbox's speed at any level?
I have a few more questions if it's not much trouble:
-Do/can accelerators exist for all the architecture types emulated by qemu?
-Does qemu support windows?
-Were there any recent substantial improvements to its working speed?
-Can kqemu compare to Virtualbox's speed at any level?
-
Technologov
- Volunteer
- Posts: 3342
- Joined: 10. May 2007, 16:59
- Location: Israel
Re: Using VB as platform form a general VM
> Is it's slow speed a side-effect that's inherent to this type of tech or is it because projects like qemu are not corporately funded ( ex. developers are not as skilled)?
Developers are skilled, so it is limit of the type. (bochs, DOSbox and other emulators are slow too)
It is the other way around: Due to slow emulator speed inherent in this type of technology, there is little corporate demand. Few real-world scenarios. Mostly scientific/educational, and legacy gaming (DOSbox / ePSXe / NES).
>I have a few more questions if it's not much trouble:
>-Do/can accelerators exist for all the architecture types emulated by qemu?
x86, x64 for sure. There were experimental ports for IA64 (Itanium) -- using acceleration driver (KVM) is virtualization, which means Itanium-on-Itanium only (impossible to execute x86 code on non-x86 arch via this way)
>-Does qemu support windows?
Yes. Both host and guest. Note that Qemu on Windows performs slow, much slower than on Linux. (most of Qemu developers are Linux people, so Qemu lacks any optimizations on Windows). VirtualBox is optimized for both platforms.
>-Were there any recent substantial improvements to its working speed?
Hmmm, AFAIK not really.
>-Can kqemu compare to Virtualbox's speed at any level?
kqemu project is long since abandoned. No longer maintained. Use either pure qemu or VirtualBox.
I think few years back it was a bit slower (than VBox), and more importantly, unstable. On both Windows and Linux hosts. Although It was much faster than pure Qemu.
Now KQemu is history.
Developers are skilled, so it is limit of the type. (bochs, DOSbox and other emulators are slow too)
It is the other way around: Due to slow emulator speed inherent in this type of technology, there is little corporate demand. Few real-world scenarios. Mostly scientific/educational, and legacy gaming (DOSbox / ePSXe / NES).
>I have a few more questions if it's not much trouble:
>-Do/can accelerators exist for all the architecture types emulated by qemu?
x86, x64 for sure. There were experimental ports for IA64 (Itanium) -- using acceleration driver (KVM) is virtualization, which means Itanium-on-Itanium only (impossible to execute x86 code on non-x86 arch via this way)
>-Does qemu support windows?
Yes. Both host and guest. Note that Qemu on Windows performs slow, much slower than on Linux. (most of Qemu developers are Linux people, so Qemu lacks any optimizations on Windows). VirtualBox is optimized for both platforms.
>-Were there any recent substantial improvements to its working speed?
Hmmm, AFAIK not really.
>-Can kqemu compare to Virtualbox's speed at any level?
kqemu project is long since abandoned. No longer maintained. Use either pure qemu or VirtualBox.
I think few years back it was a bit slower (than VBox), and more importantly, unstable. On both Windows and Linux hosts. Although It was much faster than pure Qemu.
Now KQemu is history.
-
DNS
- Posts: 107
- Joined: 2. May 2011, 00:16
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: xp win7
Re: Using VB as platform form a general VM
Ok thanks. Just so that I exclude it from my mind: emulators are really not worth it, besides their theoretical security advantages as compared to Full virtualization like vbox?
So in Virtualbox, the real cpu is used but other aspects like hdd, soundcard and graphics are emulated right? Tech like VT-d is supposed to allow VGA passthrough so the graphics card of the host can be safely used
So in Virtualbox, the real cpu is used but other aspects like hdd, soundcard and graphics are emulated right? Tech like VT-d is supposed to allow VGA passthrough so the graphics card of the host can be safely used