My Triple-Boot Laptop
If you still need (or want) to run Windows applications—in my case, CorelDRAW and Word—you have a few options. First, you can create a multiple-boot system, as described above. However, if you use only a few Windows applications, you may be able to run them using CodeWeavers' Wine or CrossOver Office. Wine is free, whereas CrossOver Office is a beefed-up commercial product based on Wine; a license for the Standard version will run you $39.95. They work well for several popular Windows applications, such as Microsoft Office 1997–2003, iTunes and Internet Explorer, but don't count on being able to run your favorite programs.
A third and, in my opinion, more fun option is to install your copy of Windows on a virtual machine using virtualization software, allowing you to run it within Linux. An excellent open-source solution, Fabrice Bellard's QEMU, provides full hardware virtualization. Following the tutorial listed in the Resources for this article, it's quite easy to install QEMU, create a hard disk image and install your copy of Windows (or any other operating system). Once you have the guest operating system running, you can transfer files to and from it by passing in a USB device or mounting the disk as a loopback device (although you will not be able to write to it if it uses the NTFS filesystem). Alternatively, you can set up a network connection between the host and guest OS using TUN/TAP networking and transfer files via FTP. This method also gives you the option of allowing the guest OS access to the Internet, although there are obvious advantages to isolating your Windows install. Here's my QEMU startup script as an example:
#!/bin/sh ARGS="-boot c -kernel-kqemu -net nic,vlan=0 -net tap,vlan=0,script=/etc/qemu-ifup -m 512 -localtime -cdrom /dev/hdc -usb -usbdevice host:xxxx:xxxx -std-vga -full-screen xp.img" exec qemu $ARGS
The performance is quite good if you use the kqemu acceleration module, particularly if you have a dual-core processor, but I wouldn't recommend running resource-intensive programs. If you're running on batteries, keep in mind that running a virtual machine consumes a lot of power.
What are the advantages of a Linux laptop? The main advantage of Linux in general is the degree of control it gives you over your computer. This is even more important on a laptop, where you have limited resources—particularly with respect to memory and storage. Linux permits a degree of customization that is impossible in any other environment. For example, you can run a stripped-down Arch Linux with the lightweight Fluxbox window manager for a memory- and power-efficient system. Or, if you're plugged in, you can boot into a full-featured Ubuntu system with GNOME or KDE and a powerful composite window manager, such as Novell's Compiz or Beryl, a Compiz fork developed by Quinnstorm (Figure 4). For those who enjoy a little razzle-dazzle, take a look at what these window managers can do on YouTube. My Ubuntu/Arch/Windows setup gives me the flexibility I need to work (or play!) wherever I am. Arch provides a lightning-fast, stripped-down system with reduced power usage, and Ubuntu provides a full-featured, easy-to-use system with an excellent package manager to reduce bloat.
I would like to thank Anthony Egan, my system administrator at Washington University, without whom I probably would never have dared to install Linux on my laptop. He helped me with many of the issues mentioned here and was always available to talk Linux.
How to Share Firefox and Thunderbird Data between Windows and Linux: ubuntuforums.org/showthread.php?t=203524
Arch Linux User-Community Repository: aur.archlinux.org
GNU's Octave: www.gnu.org/software/octave
How to Install QEMU: https://help.ubuntu.com/community/WindowsXPUnderQemuHowTo
How to Configure QEMU to Share Your Network Connection: ubuntuforums.org/showthread.php?t=179472
P. Surdas Mohit is a postdoctoral fellow at the Institute of Geophysics and Planetary Physics at Scripps Institute of Oceanography and a Visiting Scholar at the University of British Columbia in Vancouver, Canada.
Special Reports: DevOps
Have projects in development that need help? Have a great development operation in place that can ALWAYS be better? Regardless of where you are in your DevOps process, Linux Journal can help!
With deep focus on Collaborative Development, Continuous Testing and Release & Deployment, we offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, advice & help from the experts, plus a host of other books, videos, podcasts and more. All free with a quick, one-time registration. Start browsing now...
- Vigilante Malware
- Non-Linux FOSS: Code Your Way To Victory!
- Disney's Linux Light Bulbs (Not a "Luxo Jr." Reboot)
- Vagrant Simplified
- Libreboot on an X60, Part I: the Setup
- Dealing with Boundary Issues
- Bluetooth Hacks
- System Status as SMS Text Messages
- New Products
- October 2015 Issue of Linux Journal: Raspberry Pi