Wubi (software)

{{Short description|Ubuntu Linux installer for Windows}}

{{Infobox software

| name = Wubi

| logo = File:Wubi-logo-text.svg

| screenshot = File:Ubuntu Wubi 11.10.PNG

| caption = Wubi, installing Ubuntu 11.10 on Windows 8 Developer Preview

| collapsible =

| author =

| developer = Agostino Russo, Geza Kovacs, Oliver Mattos, Ecology2007, hakuna-m

| released = {{Start date and age|2008|04|24}}

| latest release version = 9.04.129{{?}}

| latest release date = {{Start date and age|2009|04|22}}

| latest preview version =

| latest preview date =

| frequently updated =

| programming language = NSIS script, C++, Python

| operating system = Microsoft Windows

| platform =

| size = 4.7 MB

| language = Over 50 languages

| genre = Ubuntu system installer

| license = GNU GPL v.2 or later{{cite web | url=https://wiki.ubuntu.com/WubiGuide | title=Wubi - FAQ | publisher=Ubuntu | access-date=2010-11-27}}

}}

Wubi ("Windows-based Ubuntu Installer") is a free software Ubuntu installer, that was the official Windows-based software, from 2008 until 2013, to install Ubuntu from within Windows, to a single file within an existing Windows partition.

After installation, it added a new "Ubuntu" option to the existing Windows boot menu which allowed the user to choose between running Linux or Windows, and avoided the need to re-partition the disk.

History

Wubi was born as an independent project and as such versions 7.04 and 7.10 were unofficial releases.{{cite web|url=http://lifehacker.com/software/featured-windows-download/take-ubuntu-for-a-non+invasive-test-drive-with-wubi-258936.php |title=Take Ubuntu for a non-invasive test drive with Wubi |access-date=2008-05-30 |last=Broida |first=Rick |date=2007-05-09 |publisher=Lifehacker }}

For Ubuntu 8.04 the code was merged into Ubuntu and for 8.04 alpha 5, Wubi was also on the Ubuntu Live CD.

The project's aim was to enable existing Windows users, unacquainted with Linux, to try Ubuntu without risking any data loss (due to disk formatting or partitioning mistakes). It could also safely uninstall Ubuntu from within Windows.

It is not a virtual machine, but creates a stand-alone installation within a loopmounted device, also known as a disk image, like Topologilinux does. It is not a Linux distribution of its own, but rather an installer for Ubuntu.

While Wubi does not install Ubuntu directly to its own partition this can also be accomplished by using LVPM, the Loopmounted Virtual Partition Manager, to transfer the Wubi-generated Ubuntu installation to a dedicated real partition, including a bootable USB keydrive. The advantage of this setup is that users can test the operating system and install the drivers before they install it to a dedicated partition (and avoid booting and functioning risks).

File:Windows Boot Manager.png

Wubi adds an entry to the Windows boot menu which allows the user to run Linux. Ubuntu is installed within a file in the Windows file system (c:\ubuntu\disks\root.disk), as opposed to being installed within its own partition. This file is seen by Linux as a real hard disk. Wubi also creates a swap file in the Windows file system (c:\ubuntu\disks\swap.disk), in addition to the memory of the host machine. This file is seen by Ubuntu as a swap partition.

A related project, Lubi, used Linux as the host system instead of Windows. However, this project has not been worked on since 2007 and only works on Ubuntu 7.04.{{cite web|url=http://sourceforge.net/projects/lubi/ |title=Lubi at SourceForge |publisher=sourceforge.net |date=2007-08-06 |access-date=2013-11-11}}

Wubi was removed as an installation option in the official download page from Ubuntu 13.04 onward.{{cite web|url=http://www.omgubuntu.co.uk/2013/04/wubi-advice |title=Ubuntu Website Warns Windows Users: Don't Use WUBI |publisher=omgubuntu.co.uk |date=2013-04-11 |access-date=2013-11-11}} However, Wubi installers were still provided for versions up to and including Ubuntu 14.10.{{cite web|url=http://old-releases.ubuntu.com/releases/ |title=Old Ubuntu Releases}}

An unofficial fork of Wubi, called [https://github.com/hakuna-m/wubiuefi/ wubiuefi], supports UEFI and legacy BIOS as well as newer versions of Ubuntu (as of 2022-04-03, version 20.04.4).

Desktops

Users can select the desktop environment within Wubi. But, because each desktop environment is also available as an application package, it is recommended that users install Ubuntu (default option) and from there install the other desktop environments. When users log in, they can choose the desktop environment to use.

Limitations

Compared with a regular installation, a Wubi installation faces some limitations. Hibernation is not supported and the filesystem is more vulnerable to hard reboots. Also, if the Windows drive is unmounted uncleanly (Windows crash, power failure, etc.), Ubuntu will not be able to repair, re-mount, and boot from the Windows NTFS drive until Microsoft Windows has successfully booted, repaired the drive, and then shut down cleanly. If the Windows system could not be booted after the corruption to repair the filesystem, the user would also not be able to boot Ubuntu.

Performance related to hard-disk access is also slightly slower on a Wubi install, more so if the underlying disk image file is fragmented, as the disk image file in the Windows filesystem contains a Linux filesystem whereas without Wubi only the Linux filesystem is used that has direct hardware access.

Wubi creates the root.disk file using Microsoft's proprietary NTFS file system while running under the MS Windows OS and then while the Ubuntu OS is running it accesses that file using an alternative file system driver. The differences between the Microsoft and Linux implementations of NTFS could technically result in corruption of the root.disk file that affects the NTFS filesystem in such a way that it could even prevent Windows from booting. Running chkdsk /r from MS Windows to fix the damaged NTFS file system and then shutting down Windows cleanly may fix any corruptions (this may take a significant amount of time to run as root.disk is a large file).{{cite web |url=https://wiki.ubuntu.com/WubiGuide#Cannot_boot_into_Ubuntu |title=WubiGuide - Ubuntu Wiki |access-date=5 December 2012}}

Influences

Wubi relies on other open source projects: Debian installer, Migration Assistant, Grub4Dos, NTFS-3G, NSIS, Metalink and Ubiquity.{{cite web|author=~ubuntu-installer/wubi/trunk |url=http://bazaar.launchpad.net/~ubuntu-installer/wubi/trunk/files/head%3A/src/ |title=~ubuntu-installer/wubi/trunk : files for revision 279 |publisher=Bazaar.launchpad.net |access-date=2013-06-16}}

Development

The lead developers are Agostino Russo, Geza Kovacs, Oliver Mattos and Ecology2007. The main development occurs at Launchpad and is led by the Lupin Team (Lupin is the loop-installer, handles everything that happens after reboot){{cite web | url=https://launchpad.net/~lupin-team| title=The Lupin Team in Launchpad | publisher=Launchpad | access-date=2007-06-23}} through the original Ubuntu blueprint page{{cite web | url=https://blueprints.launchpad.net/ubuntu/+spec/windows-installer | title=Windows installer for ubuntu using loopmounted EXT3 filesystem on NTFS | publisher=Launchpad | access-date=2007-06-23}} and the new Wubi,{{cite web | url=https://launchpad.net/wubi | title=Wubi, Windows Ubuntu Installer in Launchpad | publisher=Launchpad | access-date=2007-06-23}} Lubi,{{cite web | url=https://launchpad.net/lubi | title=Linux-based Ubuntu Installer in Launchpad | publisher=Launchpad | access-date=2007-06-23}} Lupin,{{cite web | url=https://launchpad.net/lupin | title=Lupin, the loop installer in Launchpad | publisher=Launchpad | access-date=2007-06-23}} and LVPM{{cite web | url=https://launchpad.net/lvpm | title=Loopmounted Virtual Partition Manager in Launchpad | publisher=Launchpad | access-date=2007-06-23}} project pages.

Hardware support

Both the i386 (32-bit x86) and x86-64 releases of Ubuntu are supported by Wubi and Lubi. In versions before 8.04, only the x86 release of Ubuntu was supported. Wubi UEFI works with UEFI boot loaders.

Origins

A number of Linux distributions, including Red Hat Linux and Slackware's ZipSlack, provided a similar tool in the mid-1990s, using syslinux and the UMSDOS filesystem driver. Later, SuSE provided something similar using syslinux and loop-mounted disk images on FAT filesystems. During the late '90s BeOS used a similar system to install the OS in a folder in Windows.

The idea for Wubi was drafted by Agostino Russo taking inspiration from Topologilinux, which provided a loopmounted installation, and Instlux, that provided a simple Windows frontend. The idea{{cite web | url=https://launchpad.net/ubuntu/+spec/ubuntu-setup.exe | title=Ubuntu setup executable for windows users | author=Agostino Russo (ago) | publisher=Launchpad | access-date=2007-09-02}} was to merge the two concepts having a Windows installer that would loopmount an image of Ubuntu. Geza Kovacs later refined the specification{{cite web | url=https://blueprints.launchpad.net/ubuntu/+spec/windows-installer | title=Windows installer for ubuntu using loopmounted EXT3 filesystem on NTFS | author=Geza Kovacs (tuxcantfly) | publisher=Launchpad | access-date=2007-09-02}} and provided the first prototypes{{cite web | url=http://ubuntuforums.org/showthread.php?t=305109 | publisher=Ubuntuforums | author=Geza Kovacs (tuxcantfly) | title=Idea: Install via windows on loopmounted ntfs? | access-date=2007-08-02}} to show that the concept was sound. Oliver Mattos wrote the original user interface in NSIS.

Agostino Russo then refined the loop-installation concept, moving from a simple loopmounted pre-made image file to an image created on the fly using a dynamically patched version of the Debian installer, thus providing an experience which was closer to a real installation while addressing several other issues of the early prototypes. Lupin project was thus born and Agostino Russo wrote and implemented most of its code with some contributions from Geza Kovacs.

Agostino Russo and Ecology2007 later redesigned and rewrote the current Windows front-end. Hampus Wessman contributed the new downloader and the translation scripts. Bean123 and Tinybit also helped to debug and fix bootloader issues. Lubi and LVPM were subsequently created by Geza Kovacs.{{cite web | url=http://wubi.sourceforge.net/faq.php#development | title=Wubi - Ubuntu Installer for Windows | publisher=Wubi | access-date=2011-12-06}}

The project has inspired the creation of other Windows-based Linux installers, such as Win32-loader.

See also

{{Portal|Free and open-source software}}

References

{{Reflist|30em}}