Slashdot Mirror


Good, Portable "Virtual" Linux Distro?

Prof. Nix writes "I have been given the opportunity to redesign the Linux course for the community college I work for. This course will be taking students from the 'What's Lee-nux?' stage to (hopefully) Linux+ Certifiable in about three to four months. However, one issue I haven't solved is finding a semi-stable, highly portable, and readily accessible platform the students may pound on, and have root access, independently of their peers. The powers-that-be have already vetoed any sort of server environment accessible from off campus. We've already tried live USB drives, but we ran into many issues with non-supported hardware on students' home computers. So I'm left with the idea of virtual machines run from flash drives. My ultimate goal is to have some sort of portable system that students can use with equal ease on lab systems and personal laptops — regardless of hardware. Preferably this system would be installable on a 4GB flash drive and run an Ubuntu- or Fedora-derived OS. So I ask the people who have been in the trenches a lot longer than I — what distros should I look at?"

18 of 261 comments (clear)

  1. Slackware by vikingpower · · Score: 3, Informative

    You can fully "undress" it, down to the bare basics, and it is incredibly stable. You'll definitely run it from a 4 Gb USB stick - and your students, most importantly, will LEARN from it.

    --
    Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
    1. Re:Slackware by Daengbo · · Score: 5, Interesting

      Let's be serious about this here: download Portable Virtualbox, install it on a thumb drive, install whatever distro makes sense for the class (given A+, probably CentOS, Fedora, Debian, or Ubuntu) on the drive's VBox, and dd is your friend. Finished. Anyone who hoses the VM can get a fresh load.

  2. Virtual Box by bsDaemon · · Score: 4, Informative

    Can't you put the virtual disk image for as a regular file on a USB stick, then load it into Virtual Box from there? That way, no purchase necessary with regards to software to run the VM, and you can issue a standardized appliance image to start with. Of course, you need to make sure that everyone has a thumb drive of sufficient size.

    1. Re:Virtual Box by Jurily · · Score: 4, Interesting

      Of course, you need to make sure that everyone has a thumb drive of sufficient size.

      You can't even buy drives too small for this anymore.

    2. Re:Virtual Box by hausen · · Score: 5, Informative

      I ran across almost the same problem this week: needed to have a live USB, but also the ability to run inside a virtualized machine in the case the physical machine wouldn't boot it. I second the parent's opinion: VirtualBox is the way to go. It even has a "portable edition," so you don't have to ask users to install any software, neither you need to ask the lab administrator to install any software.

      I seearched a little bit and found this nice gem: http://www.linuxliveusb.com/ (notice: this is not a slashvertizement; I have no links whatsoever with the development group. Just a really satisfied user.) You just have to:

      1) install the live CD iso of the distribution of your choice (I have chosen Ubuntu, since I am familiar with it)
      2) download Linux Live USB Creator - Full Pack (w/ Virtualbox)
      3) run it, point it to the iso file, mark the persistency option (I have setup 2GB for it) and click the "lighning bolt" icon to create your live USB with a portable VirtualBox
      4) profit!

      You can either boot it as a USB hard drive, or you can run your virtualized OS under Windows clicking the "Virtualize this Key" executable! That's it! No messing with settings in grub, no modprobe, no nothing! Just use an easy GUI.

    3. Re:Virtual Box by Ian+Alexander · · Score: 3, Insightful

      Great idea. Make the students waste their time fucking around just getting the thing up and running so they can start studying while every day the quarter slips away more and more. A virtual image is a great idea - hardware incompatibilities can happen at any level of the system (kernel, X.org, HAL/DeviceKit/CUPS/SANE regressions, etc, etc), so I think a good working knowledge of Linux is probably a prerequisite to troubleshooting hardware incompatibilities. Let the students actually understand what the kernel is and how modules work before making them go fetch sources to compile kernel modules.

    4. Re:Virtual Box by jumpingfred · · Score: 3, Insightful

      I don't think community college is what people mean when they talk about the ivroy tower.

    5. Re:Virtual Box by Kjella · · Score: 3, Interesting

      The post is pretty much standard trolling, but have the moderators gone on crack too? That's like say "Let's learn to drive a car. Let's start by assembling the engine..." and this is less of a problem in the workforce than on a collection of random computers. Every serious IT department runs recommended configurations of hardware and software, you don't just throw parts together, slap an OS on it and hope it works. Some hardware works flawlessly under Linux, others is a paperweight with every variation in between. If you want to run Linux you get hardware that runs Linux and it's not that hard to find, it's more that some brands support open source and others don't. Running it on random hardware is only done by people who want Linux to fail so they can mock it or those that really want the pain of dark magic command-fu or a nasty assignment in C. I really would like to see it as one of the assigned tasks though - run Linux natively from a LiveCD and run through basic checks on what works and what doesn't. That could be rather helpful information to someone trying to find a Linux friendly computer and Linux friendly accessories.

      --
      Live today, because you never know what tomorrow brings
    6. Re:Virtual Box by nabsltd · · Score: 3, Informative

      There's actually no need to buy anything to use VMware, as Player is free and allows you to create VMs...it just doesn't have some of the better features (snapshot control, etc.) of VMware Workstation.

      VMware Server is also free, and has a lot of great features. For bare-metal, ESXi is also free.

      With all that plus VirtualBox, Xen, KVM, various Microsoft offerings, etc., there really is no need to pay anything for a hypervisor.

  3. Portable Virtualbox. by sxeraverx · · Score: 4, Informative

    Look at Virtualbox: http://www.virtualbox.org/ and there are portable (current) versions out there. On there, you can install Ubuntu, Fedora, what-have-you.

  4. SUSE Studio? by sznupi · · Score: 4, Informative

    Easy customisation to your needs, has few virtual machines as targets.

    http://susestudio.com/
    http://en.wikipedia.org/wiki/SUSE_Studio

    --
    One that hath name thou can not otter
  5. Virtualbox images... by IANAAC · · Score: 3, Interesting
    can run from a USB stick or SD card.

    I run an instance of XP (Ubuntu host) from an SD card no problem. It shouldn't matter what OS the image is, it should run fine.

    1. Re:Virtualbox images... by IANAAC · · Score: 3, Informative

      Of course, it's a bit slower than running from a disk, but it's not unbearable, at least for my needs. Other than speed, no issues whatsoever. All hardware works, but that's because it's virtualized (sound, network, etc). Recognizes all USB peripherals I attach as well.

  6. Depends on the Course by Ohio+Calvinist · · Score: 5, Insightful

    I teach at the community college myself, and find that installing the OS is a really important part of learning to use it (creating partitions, mount points, swap, etc...) and is one of the first part that makes it very different from most Windows installation processes. Doing the install on a USB stick could result in students killing the Windows partition on the disk if they botch the install and accidentally put it on the hard disk. (I've had it happen).

    Using a VM host on the lab computers (either MS Virtual PC or VMWare; assuming that your lab PCs are Windows) and then allowing them to create the virtual disk on their 4GB (or larger) flash disks will give them the install experience (without risk of damaging the host system), and allow their install to be fairly hardware independent (assuming they have the same VM host on their home PC.)

    This also allows them to use a normal, general purpose distro than a stick-oriented one, that is also likely to have better textbooks available. I know any text should be good enough for derived distributions, but for students having an out-of-the-box or off-the-iso experience can alleviate a lot of first-week frustrations, and gives them a better (vanilla) resource to consult when bad things happen.

    --
    Forgive my spelling from time to time. I'm often posting during short breaks.
    1. Re:Depends on the Course by value_added · · Score: 4, Funny

      I teach at the community college myself, and find that installing the OS is a really important part of learning to use it

      Wholeheartedly agree. And while the rest of your comments have merit, I'd offer the suggestion to build on the "important part of learning" principle.

      Instead of going the VM route, just hand out Slackware CDs. Or if the kids are bright (like the kids were in my day), point them to the Linux From Scratch project and let them loose! For extra credit, you could have them figure out how to integrate their new OS in a Windows domain environment or, if that requires unavailable resources, have them install a complete Cygwin distribution on their Windows PCs to figure out creative ways to make Windows behave more sanely so that things like odd file names, line endings, a useless PATH, a nonsensical hierarchy, reliance on drive letters, security token issues, and reconciling Posix permissions don't present insurmountable challenges.

      By the end of term, they'll have all the experience they need. More importantly, they'll be prepared for the real world.

      The instructor benefits, too, as grading the students is simplified. Anyone that completes the class gets an automatic A, except for those caught cheating who get a B+. Kids that came in with a note from their parents excusing them from class gets an incomplete. Everyone else fails. And those that switched to one of the BSDs in midterm get put on the honour roll.

  7. Here are two. by zero_out · · Score: 5, Informative

    DSL works well. It's 50 MB, can boot off a USB flash stick, and comes with its own virtual environment for running within MS Windows. It's probably missing a few features you will want for teaching a course in Linux, though.

    I also like Puppy Linux. I was able to make an MP3 player out of a small thin client computer and this OS. I just had to modify a few shell scripts, and plug the TC into my home stereo.

  8. Make your own by houghi · · Score: 4, Informative

    http://susestudio.com/ allows you to make your own. This can then be done as USB stick, CD/DVD, VMware and what not. You can decide if you want it to be installable or not, add your own specific software and almost anything else you like.

    How far you go to make things special is up to you.

    However, you will always have non-supported hardware. Happens with any OS, except for the one that was pre-installed and then hope people have not added hardware.

    --
    Don't fight for your country, if your country does not fight for you.
  9. A couple recommendations by CAIMLAS · · Score: 4, Informative

    I'm a strong believer in immersion as the best way to instruct people how to do things.

    Probably the best way to go about it would be a VM disk image file sitting on the flash drive itself. Dealing with the actual flash drive might be problematic due to compatibility.

    For the virtualization, I'd probably just go with the Open Source version of Virtualbox. It can be run as a server for the lab (if need be - though not advised),

    The biggest problems with going with USB flash drives are speed and compatibility, in that order. Flash drives are still very, very slow compared to a hard disk: it will jade their opinion of the operating system due to very sluggish writes (particularly due to the virtual disk allocation on top of the flash). There are also a number of limitations with the flash drive standardization themselves, as many are utter crap. Best to verify the make/model of flash drive you pick works. (Caveat: note that vendors -very frequently- change the underlying chips in the flash drives within a single model. Expect to have to buy them in lots.)

    Honestly, given the cost of external hard disks, the lack of flash drive consistency, and your stated apparent requirements of them being able to use their own systems as well as the school lab, you might want to make a USB hard disk a class requirement instead of a flash drive.

    But: why stop there? Honestly. When I was in school, we had a lab. I had a laptop. I brought my laptop and did almost everything on my laptop in the lab - and this was way before virtualization became commonplace (VMWare existed, but just barely). There were very few classes where I needed to have anything other than what was on the laptop - Debian Linux. Students could come and use the labs at any time (though most did not, as they had their own computers which were better).

    Seriously. This is 2010, not 1998. Assuming you're not offering this as an entry-level course (you shouldn't) and you'll have at least 2nd-semester CS students taking it, there's no reason to coddle them. Just set up a CentOS or Debian system and allow students to connect to it from the campus.

    On top of that, encourage them to install Linux themselves and configure it from scratch. It'll be good for them. Make obscene recommendations, like Gentoo or (god forbid) Slackware. A certification isn't going to mean jack shit in the long run (except for maybe taking a job from someone more qualified who doesn't have the cert) if they're not intimately familiar with the material.

    This, like the virtualization question the other day, is yet another instance of "virtualization is cool so I want to apply it". It's not appropriate for every scenario (and I'd argue this is one of them, due to the added complexity and potential for outside cases).

    --
    ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers