Difference between revisions of "Installing ReactOS"

From ReactOS Wiki
Jump to: navigation, search
m (update)
m (Installation strategy)
 
(167 intermediate revisions by 35 users not shown)
Line 1: Line 1:
== ReactOS Hardware Requirements ==
+
{{Warning|Please bear in mind that ReactOS is still in '''alpha stage''', meaning it is not stable or feature-complete and is not recommended for everyday use. Operating system bugs can and do result in corrupted file systems, overwritten partitions, and more. Do not install ReactOS on any computer containing important data without '''using a virtual machine''' or '''making full backups first'''.}}
  
'''Please bear in mind that ReactOS 0.3.8 is still in alpha stage, meaning it is not feature-complete and is not recommended for everyday use.'''
+
= Before installing =
 +
There are several things to be made aware of before installing ReactOS, or even obtaining the installation media. These include how ReactOS will be installed, limitations of the installation, and backing up existing data.
  
 +
== Limitations ==
 +
ReactOS is '''[https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha alpha]''' level (or alpha phase) software. It is not yet [https://en.wikipedia.org/wiki/Feature_complete feature complete]. <br>
 +
Some major bugs remain to be corrected.  For the details see [[Known Issues]].
 +
Bear in mind that this is not a complete list of known issues. See also [[Missing ReactOS Functionality]].<br>
 +
 +
 +
The ReactOS itself, setup utility, and [[FreeLoader|boot loader]] have a number of limitations. The most prominent are:
 +
 +
* the setup utility does not prevent users from performing dangerous and potentially destructive operations.
 +
* UEFI system firmware is not supported by ReactOS yet, you have to use legacy BIOS mode.
 +
* some SATA controllers may not work with ReactOS.
 +
* the boot partition is highly recommended to be the first partition on the first (or even better - single) disk in the system.
 +
* the setup utility can check the integrity of ONLY FAT16 and FAT32 file systems.
 +
* HD Audio or use of multiple audio cards at the same time are not yet supported, ReactOS versions and builds prior to 0.4.12 will not boot after setup with this configuration.
  
Whether installing ReactOS on real hardware or on an emulator, it is important to know the minimum requirements to install and use ReactOS:
+
= System requirements =
  
* 32MB [[RAM]] (NOTE: Debug builds may require 72MB of RAM, please use a release build on low memory systems)
+
== Hardware support ==
* [[IDE]] [[harddisk]] (not SATA)
+
ReactOS has '''limited''' hardware support. Lists of particular hardware that have been tested can be found on the page '''[[Supported Hardware]]'''.
* [[FAT16]]/[[FAT32]] primary boot partition (NOTE: boot partition must be the first partition on the disk)
 
* VGA compatible video card (VESA BIOS version v2.0 and higher)
 
* Standard ([[PS/2]]) [[keyboard]]
 
* PS/2 compatible [[mouse]] or Microsoft Mouse compatible serial mouse
 
  
Furthermore, if you want to try [[TCP/IP]] networking, one of the following [[ethernet card]]s may work:
+
== Minimum hardware requirements ==
 +
The minimum requirements to install ReactOS are:
  
* NE2000 clones (Such as Realtek 8139)
+
* '''RAM:''' at least 64&nbsp;MB, recommended 256&nbsp;MB, and even 2048&nbsp;MB if you want to test  large software suites or bundles.
* AMD PCnet32 LANCE
+
* '''Processor:''' x86 or x64 architecture, Pentium or later and compatibles; for more information see [[ReactOS ports]].
 +
* '''HDD:''' IDE/SATA with minimum 450&nbsp;MB of free space on the primary partition (please note that some SATA controllers may not work with ReactOS):
 +
** FAT16/FAT32 primary boot partition.
 +
* '''Video:''' VGA compatible video card (VESA BIOS version 2.0 or later).
  
Other cards might also work, if you provide the appropriate driver.
+
= Getting ReactOS =
 +
Due to the current state of the project, the ReactOS Foundation does not offer official installation media for distribution. Installation CD-ROMs must be created by the user by writing an available image file to a CD-ROM.
  
== Choosing an installation strategy ==
+
== Downloading the image file ==
Before installing ReactOS &mdash; or indeed, before obtaining ReactOS installation media &mdash; it is necessary to decide how ReactOS should be installed on your computer system.  Although ReactOS support for IDE disk drives and the FAT16 and FAT32 filesystems is stable as of the [[0.2.5]] release, ReactOS is still undergoing rapid and fundamental development, with no guarantee that damage will not occur to any hardware or software on which it is run.
+
Official ISO image files can be downloaded at one of the following locations:
 +
* The official [https://reactos.org/download Download] page.
 +
* ReactOS [https://reactos.org/getbuilds daily builds]
 +
* ReactOS at [https://sourceforge.net/projects/reactos/files/ReactOS SourceForge] (ReactOS-{{ReactOS-Curr-Version}}-REL-iso.zip)
  
Accordingly, the first consideration to make is whether to install ReactOS on a dedicated testing or development machine, or in a contained environment such as running on an emulator without direct disk access.  Such options are preferable if the machine on which you will run ReactOS is your primary computer, and/or if you have important data on the computer which you cannot afford to lose (as may well occur if ReactOS experiences a catastrophic error, for example).
+
WARNING: Some anti-malware programs will detect false positives in ReactOS files.
  
If you decide nonetheless to install ReactOS on a disk drive that contains an existing operating system (such as Microsoft Windows XP), you should ensure that the drive is formatted with a filesystem ReactOS can access and write to (which are limited to FAT16 or FAT32, as of the 0.3.3 release), and that there is sufficient free space on the drive such that ReactOS can be installed, which can be somewhere around 250 MB.
+
== Creating the Installation CD ==
 +
The downloaded file is a compressed archive in ZIP format, containing a single file named "ReactOS.iso". The ISO image contains everything needed to create the CD.
 +
* Extract the image file from the archive into a temporary directory.
 +
* Burn the ISO image to a CD-R or CD-RW using any software of your choice.
  
Furthermore, the current hardware limitations to which ReactOS is constrained must be identified and compared to the target computer system (''e.g.'', the limitation that only IDE disk drives may be accessed, and that ReactOS has ''extremely'' limited [[USB_Stack|USB]] support as of the 0.3.3 release).
+
When burning the ISO to disc, be sure it is written as an image file. Writing to the disc as another type of data will not work and render the Installation CD unbootable. Look for an option similar to "Burn from ISO" or "Write disk image".
  
Once the available hardware and software situation is determined, the installation media can be selected &mdash; for example, if your computer includes an ATA CD-ROM and an IDE hard disk that does not contain irreplaceable data, a good installation option may be to write an ISO image of the ReactOS installation media to a CD-RW and proceed to install ReactOS on the IDE hard disk via the CD-ROM.
+
= Installing ReactOS =
 +
Please consider '''making full backups''' of any sensitive data before you start any experiments with ReactOS in the production environment!
  
== Getting ReactOS ==
+
== Installation strategy ==
Currently, ReactOS setup [http://en.wikipedia.org/wiki/CD-ROM CD-ROMs] cannot be bought in stores nor ordered. If you want to install ReactOS on a computer, you will have to create a ReactOS setup [http://en.wikipedia.org/wiki/CD-ROM CD-ROM] by yourself, downloading an image file and writing it to [http://en.wikipedia.org/wiki/CD-R CD-R] or [http://en.wikipedia.org/wiki/CD-RW CD-RW] media with a CD writer. Downloading the image of the ReactOS Setup CD-ROM
+
The first consideration to make is whether to install ReactOS on a dedicated testing machine or in a contained environment, such as running on an emulator without direct disk access. The use of an emulator is preferable if the machine on which you will run ReactOS is your primary computer or if you have important data on the computer which you cannot afford to lose.
  
=== Where to download from ===
+
If you decide to install ReactOS on a disk drive that contains an existing operating system (such as Microsoft Windows XP), you should ensure that the drive is formatted with a file system ReactOS can access and write to (now, primary FAT32/FAT16 partition) and that there is sufficient free space on the drive such that ReactOS can be installed (now, >=450&nbsp;MB).
Images of the ReactOS setup [http://en.wikipedia.org/wiki/CD-ROM CD-ROM] are physically stored on the ReactOS project page on [http://sourceforge.net/projects/reactos/ SourceForge]. You can download images directly from the [http://sourceforge.net/projects/reactos/ SourceForge] site, but some users may prefer the [http://reactos.org/ ReactOS.org] portal. Both have the exact same downloads though, so there's no real advantage to choosing one over the other.
+
Furthermore, the current hardware limitations to which ReactOS is constrained must be identified and compared to the target computer system (e.g. that ReactOS has only basic audio support as of [[0.4.13]] release).
  
==== ReactOS site ====
+
Once the available hardware and software situation is determined the installation media can be selected. In most cases, USB-RAM boot should be enough (or CD-ROM boot for virtual machines). But sometimes it may either not work or be not available for the particular system. Then you can use other available options as well.
* Visit [http://reactos.org/ ReactOS.org], the ReactOS portal site. This site will always point to the latest release.
 
* Click on the [http://www.reactos.org/en/download.html "Download"] link. A page opens with links to packages of the latest release of ReactOS.
 
* Click on the [http://en.wikipedia.org/wiki/ISO_Image "ISO Image"] link. You will be redirected to one of the [http://sourceforge.net/projects/reactos/ SourceForge] download servers, and the download will shortly begin.
 
  
'''or'''
+
ReactOS goes through three stages during setup. The first two stages deal with the installation of the system, while the third stage is the first usable boot by the user.
 +
* First stage – Text mode setup, started when booting from a ReactOS CD-ROM.
 +
* Second stage – Booting to GUI installer. The input of user information and registering of files.
 +
* Third stage – Booting to desktop, user configurations.
  
* Visit the [http://reactos.org/wiki/ ReactOS Wiki].
+
If you '''encounter problems''', it is recommended to disable all secondary or unnecessary devices, especially '''USB'''-cameras and '''sound cards''' of any type.
* Click on the [http://www.reactos.org/en/download.html Download ReactOS] link. This will always contain the latest offical release.
 
* Select the "ISO image" link.
 
  
==== SourceForge ====
+
== Virtual Machines ==
* Visit the [http://sourceforge.net/projects/reactos/ ReactOS project page on SourceForge].
+
A Virtual Machine is a software program that provides a virtual hardware platform. Software instructions that would be run on hardware are now interpreted by the emulator software. This allows you to "run" a different kind of computer hardware and its software in a window on your computer.
* Scroll down to "Latest File Releases".
 
* Click on the [http://sourceforge.net/project/showfiles.php?group_id=6553 Download] link for the "reactos" package. A page opens with links to packages of the latest release of ReactOS. The files of the "reactos" package should appear highlighted in a different color.
 
* Click on the "reactos-version-iso.zip" link, where version is the version number. You will be redirected to one of the SourceForge download servers, and the download will shortly begin.
 
  
== Creating the ReactOS Setup CD-ROM ==
+
See [[Virtualization software]] for well-known configurations for popular VM software.
* The file you downloaded is a compressed archive in ZIP format, containing a single file named "reactos.iso". This file is the image file of the ReactOS setup CD-ROM in ISO format.
+
 
* Extract the image file from the archive into a temporary directory.
+
== Hardware ==
* Write the image file onto CD-R or CD-RW media. Refer [[HOWTO/burn_ReactOS_ISO | HOWTO Burn ISO image]] for more info.
+
 
 +
Generally speaking, PCs from Windows 2000-XP era should work with ReactOS, the details depend on your particular hardware configuration. Check our [[Supported_Hardware|supported hardware]] and [[PC ROS Rigs|notebook models]] pages for more info.
 +
 
 +
{{Warning|ReactOS does not support UEFI booting yet, you need to enable legacy BIOS mode on UEFI systems}}
  
== Installing ReactOS on a real machine ==
+
== Install from a CD-ROM ==
  
=== From a Setup CD-ROM ===
+
* Make sure your BIOS is configured to boot from the CD-ROM first.
* Make sure your BIOS is configured to boot from the CD-ROM first
 
 
* Insert the ReactOS setup CD-ROM into a CD-ROM drive and reboot your computer. On the next boot, the ReactOS setup utility will start.
 
* Insert the ReactOS setup CD-ROM into a CD-ROM drive and reboot your computer. On the next boot, the ReactOS setup utility will start.
 
* Follow the instructions on the screen to install ReactOS on your computer.
 
* Follow the instructions on the screen to install ReactOS on your computer.
* After the installation has finished, remove the setup CD-ROM from the CD-ROM drive and press "Return" to reboot your computer. Now, you can start ReactOS by selecting it from the boot menu.
+
* After the installation has finished, remove the setup CD-ROM from the CD-ROM drive and press ''Enter'' to reboot your computer. You can now start ReactOS by selecting it from the boot menu.
* And that's all.
 
  
=== Technical Notes ===
+
== Install from a USB media ==
 +
Since version '''0.4.15''' there are two options for booting from a USB media. Try another one if the first doesn't work
  
Modifications performed to the Hard Disk to boot ReactOS
+
'''Note:''' due to instabilities in the USB stack, it makes sense to try the boot a couple of times (2-3) before moving to a next method
  
==== FreeLoader ====
+
=== Bootable USB from an iso ===
[[FreeLoader]], the ReactOS boot loader, is composed of two files: an executable (FREELDR.SYS) and a configuration file in Windows INI format (FREELDR.INI). The two files are copied to the root directory of the active partition.
+
This is an ordinary way to prepare USB, feel free to take any manual made for Windows.
 +
* On Windows [https://rufus.ie/ Rufus] tool can be used for that
 +
* On Linux [https://unetbootin.github.io/ UNetBootin] can be used
 +
* '''ReactOS feature:''' the iso will work even if written in a raw <code>dd</code> mode
  
The FreeLoader boot code, that is the small program that loads FREELDR.SYS, can be installed in many ways, depending on the pre-existing operating system. The setup logic tries the following steps in order:
+
=== Ramdisk (aka USB-RAM) boot ===
 +
The basic idea of this method is to dump the whole unchanged iso file into memory first (make a ramdisk) and then boot from it without touching the original media.
  
 +
For this method, you should prepare a flash drive first. It should have a FAT32 filesystem and the [https://en.wikipedia.org/wiki/Multiboot_specification Multiboot specification]-capable bootloader should be installed on it.
 +
For example, you can use [https://wiki.syslinux.org/wiki/index.php?title=Install syslinux]. Here is how to install it (for syslinux version 6.x):
  
* If the Windows NT/2000/XP boot manager is found on the active partition, the existing boot manager is configured to boot ReactOS. The FreeLoader boot code is written to a file named BOOTSECT.ROS in the root of the active partition, and an entry named "ReactOS" is added to BOOT.INI pointing to BOOTSECT.ROS.
+
==== On Linux ====
** The Windows NT/2000/XP boot manager is detected by the presence of the files NTLDR and BOOT.INI in the root directory of the active partition.
 
** To uninstall FreeLoader, delete the file BOOTSECT.ROS and remove the "ReactOS" entry from the hidden BOOT.INI file.
 
* If MS-DOS or Windows 95/98/ME is found on the active partition, the original boot sector is saved to a file named BOOTSECT.DOS in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes your primary boot manager, and from its boot menu you will be able to boot both ReactOS and your pre-existing operating system
 
** MS-DOS and Windows 95/98/ME are detected by the presence of the files MSDOS.SYS and IO.SYS in the root directory of the active partition.
 
** To uninstall FreeLoader, boot from a MS-DOS or Windows Restore floppy disk, and run the command "SYS C:". After this, the BOOTSECT.DOS file can be safely deleted.
 
* If none of the known operating systems are found on the active partition, the original boot sector is saved to the file BOOTSECT.OLD in the root directory of the active partition. The FreeLoader boot code is then written to the boot sector of the active partition. FreeLoader thus becomes the primary boot manager. Note that you will have to edit the FREELDR.INI configuration file by yourself to boot the pre-existing operating system, because FreeLoader has no knowledge of how to do it.
 
** To uninstall FreeLoader, restore the boot sector of the active partition from the BOOTSECT.OLD file. The details on how to do so are dependent on the operating system you are running.
 
  
Note: If the active partition uses a FAT32 filesystem, the boot code does not fit into a single sector. Microsoft uses sectors number 0 and 12, while FreeLoader uses sectors number 0 and 14, so there should not be any conflicts with existing boot loaders.
+
Plug in the flash drive and leave it unmounted.
 +
Then run these commands:
 +
<pre>
 +
sudo mkfs.vfat /dev/sdb1
 +
sudo syslinux --install /dev/sdb1
 +
</pre>
 +
Note: here, <code>/dev/sdb1</code> is a partition on a flash drive
  
Note: The support for other operating systems will be improved in the future.
+
==== On Windows ====
  
== Installing ReactOS on an emulator ==
+
Use [https://rufus.ie/ Rufus] tool:
=== Emulators ===
 
An emulator is a software program that provides a virtual hardware platform. Software instructions that would be run on hardware are now interpreted by the emulator software. This allows you to "run" a different kind of computer hardware and its software in a window on your computer. Although the performance of the software run on a virtual computer will be much slower than on real hardware, it provides several advantages:
 
  
*You can try out a completely different operating system without tinkering with your real system.
+
* Select your flash drive
*You can run potentially unstable software without the fear of damaging your real system.
+
* Click "Show advanced drive properties"
*For operating system developers, it provides a way to debug the system without constant reboots.
+
* Boot selection: <code>Syslinux 6.x</code>
 +
* Partition scheme: <code>MBR</code>, File system: <code>FAT32</code>
 +
* Format the drive using selected options above
  
[http://www.reactos.org?page=newbies_install We also have a guide to install ReactOS in a virtual machine:]
+
==== Next common steps for both platforms ====
  
== Limitations ==
+
At this point, you should have a bootloader installed onto the drive. Now it's time to copy some files onto it.
=== Hardware Support ===
+
 
Currently, ReactOS has limited hardware support. A list of the most important limitations follows:
+
'''Notice''': you may [https://svn.reactos.org/packages/usbramboot.zip download] all the required files, except iso images, in a zip-archive. It uses freeldr.sys from the [https://git.reactos.org/?p=reactos.git;a=commit;h=fb4591c48c568d138d9d7aeaa90db4bd5885c6aa fb4591c] commit.
 +
 
 +
* Now you need to copy <code>mboot.c32</code> and <code>libcom32.c32</code> syslinux libraries to the root
 +
* Then copy a freeldr.sys bootloader from ReactOS [[0.4.13]] or higher
 +
* Now you need to write some configuration files. First, <code>syslinux.cfg</code>:
 +
 
 +
<pre>
 +
DEFAULT ReactOS
 +
LABEL ReactOS
 +
  KERNEL mboot.c32
 +
  APPEND /freeldr.sys
 +
</pre>
 +
* Then <code>freeldr.ini</code>:
 +
<pre>
 +
[FREELOADER]
 +
DefaultOS=BootCD_Debug
 +
TimeOut=5
 +
 
 +
[Display]
 +
TitleText=ReactOS LiveUSB
 +
StatusBarColor=Cyan
 +
StatusBarTextColor=Black
 +
BackdropTextColor=White
 +
BackdropColor=Blue
 +
BackdropFillStyle=Medium
 +
TitleBoxTextColor=White
 +
TitleBoxColor=Red
 +
MessageBoxTextColor=White
 +
MessageBoxColor=Blue
 +
MenuTextColor=Gray
 +
MenuColor=Black
 +
TextColor=Gray
 +
SelectedTextColor=Black
 +
SelectedColor=Gray
 +
ShowTime=No
 +
MenuBox=No
 +
CenterMenu=No
 +
MinimalUI=Yes
 +
TimeText=Seconds until highlighted choice will be started automatically:
 +
 
 +
[Operating Systems]
 +
LiveCD="LiveCD"
 +
LiveCD_Debug="LiveCD (Debug)"
 +
LiveCD_Screen="LiveCD (Screen)"
 +
BootCD="BootCD"
 +
BootCD_Debug="BootCD (Debug)"
 +
BootCD_Screen="BootCD (Screen)"
 +
 
 +
[LiveCD]
 +
BootType=Windows2003
 +
SystemPath=ramdisk(0)\reactos
 +
Options=/MININT /RDPATH=livecd.iso /RDEXPORTASCD
 +
 
 +
[LiveCD_Debug]
 +
BootType=Windows2003
 +
SystemPath=ramdisk(0)\reactos
 +
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=livecd.iso /RDEXPORTASCD
 +
 
 +
[LiveCD_Screen]
 +
BootType=Windows2003
 +
SystemPath=ramdisk(0)\reactos
 +
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=livecd.iso /RDEXPORTASCD
 +
 
 +
[BootCD]
 +
BootType=ReactOSSetup
 +
SystemPath=ramdisk(0)\
 +
Options=/MININT /RDPATH=bootcd.iso /RDEXPORTASCD
 +
 
 +
[BootCD_Debug]
 +
BootType=ReactOSSetup
 +
SystemPath=ramdisk(0)\
 +
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=bootcd.iso /RDEXPORTASCD
 +
 
 +
[BootCD_Screen]
 +
BootType=ReactOSSetup
 +
SystemPath=ramdisk(0)\
 +
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=bootcd.iso /RDEXPORTASCD
 +
</pre>
 +
'''Note:''' for detailed explanation, see [[Boot options]]
 +
* Now place <code>bootcd.iso</code> and/or <code>livecd.iso</code> in the root of the disk (or whatever path configured in <code>freeldr.ini</code>)
 +
* Ready to boot
  
* ReactOS needs at least 32 MBs of RAM to boot, it can be run on 24MB although that's not recommended.
+
== Using virtual machine ==
* ReactOS can only be booted from IDE CD-ROMs and hard disks.
+
* Create a virtual machine but without the hard disk
 +
* Create a virtual hard disk for VirtualBox which points to the real one
 +
** on Linux: <code>VBoxManage internalcommands createrawvmdk -filename "~/VirtualBox VMs/reactos/disk.vmdk" -rawdisk PathToHarddisk</code>
 +
** important: <code>PathToHarddisk</code> must be the whole disk, not a partition: /dev/sdb
 +
* Add <code>disk.vmdk</code> to virtual machine via Storage => Add Harddisk
 +
* Install ReactOS as usual
  
[http://www.reactos.org/wiki/index.php/Supported_Hardware Also see here for more information]
+
== Network boot or installation via PXE ==
  
Note that booting from CD-ROM is supported only for running the setup program unless you're using the LiveCD option, which is meant to be booted of the CD-ROM continuously. Otherwise booting from CD-ROM for normal use is not recommended. Although it is generally possible, the default configuration will prevent ReactOS from creating a swap file when booted from a CD-ROM. If no swap file is available, ReactOS will stop as soon as it runs out of RAM. In practice, this prevents the use of any non-trivial program.
+
See article [[Building PXE-ready ReactOS]].
  
=== Setup and Boot ===
+
== Installing from internal drive ==
Currently, the ReactOS setup utility and boot loader have a number of limitations you should be aware of:
+
See article [[User:Minecraftchest1/installing/installing-from-harddrive]]
  
* ReactOS can only be installed on FAT16 or FAT32 partitions.
+
= Installing drivers =
* The boot partition must be the first FAT16 or FAT32 partition on the disk.
+
You may be also interested to know how to install a driver for a device in ReactOS. If so, see [[Install a driver]] article.
* The setup utility can't check the integrity of filesystems.
 
* The setup utility will not prevent users from performing dangerous and potentially destructive operations. Be very careful when using it and do not take any warnings lightly.
 
  
== ReactOS boot options ==
+
= Unattended Installation =
=== Kernel command line ===
+
You may be also interested to know how to install ReactOS in the automatic (non-interactive) mode. If so, see [[Create an unattended Installation CD]] article.
The [[kernel]] command line is a text string that is passed to ReactOS by the boot loader (usually [[FreeLoader]]). It consists of several switches, each of which has a special meaning to ReactOS. A switch is a forward slash (<code>/</code>) followed by a text string (the name of the switch), and optionally an equal sign (<code>=</code>) and a text string (the value). If the equal sign is present, then at least one value is required to follow.
 
  
The syntax, variables and device strings used by FreeLoader conform to the [http://en.wikipedia.org/wiki/Advanced_RISC_Computing ARC] firmware and boot specification, similarly to the boot system used in all Windows NT implementations (such as the Windows NT bootloader on the x86 architecture, or the ARC console used to boot Windows NT 4.0 on the [http://en.wikipedia.org/wiki/Jazz_(computer) MIPS], Alpha AXP and PowerPC architectures).  Because of this, boot disks and other firmware- or BIOS-accessible devices are specified by each of the bus, disk, slice, and partition values associated with the device.
+
= See also =
 +
* [https://www.virtualbox.org/ VirtualBox] – a free virtualization software for Windows, Linux and Mac ([[VirtualBox|HOWTO]])
 +
* [https://wiki.qemu.org/Main_Page QEMU] – an open source machine emulator
  
In FreeLoader the kernel command line is specified in an <code>Options</code> setting in <code>freeldr.ini</code>. The following text is an example of the contents of <code>freeldr.ini</code>, which boots ReactOS from the first partition of the first IDE drive of the computer system:
+
* [[Boot options]] for FreeLoader
<code>
+
* [[Boot FreeLoader from GRUB]] – How to boot ReactOS from GRUB
[ReactOS]
+
* [[Install a driver]] in ReactOS
BootType=ReactOS
 
SystemPath=multi(0)disk(0)rdisk(0)partition(1)\reactos
 
Options=/DEBUGPORT=SCREEN
 
</code>
 
As used in the above sample file, <code>DEBUGPORT</code> is a boot option. By adding the boot option <code>/DEBUGREPORT=SCREEN</code>, ReactOS will print debugging information to the screen.
 
  
===Boot options===
+
[[Category:Tutorial]]
The following boot options may be used:
 
<br>
 
; <code>DEBUGPORT</code> : Specifying <code>DEBUGPORT</code> as a boot option will enable certain debugging features.
 
* Format: <code>DEBUGPORT=[SCREEN|BOCHS|GDB|PICE|COM1|COM2|COM3|COM4|FILE|MDA]</code><br>Any one of the following values may set:
 
** <code>SCREEN</code>: Send debug output to the screen.
 
** <code>BOCHS</code>: Send debug output to bochs.
 
** <code>GDB</code>: Enable the GNU debugger (GDB) stub so remote debugging using GDB is possible.
 
** <code>PICE</code>: Enable the Private ICE driver so debugging using Private ICE is possible.
 
** <code>COM1</code>: Send debug output to COM1.
 
** <code>COM2</code>: Send debug output to COM2.
 
** <code>COM3</code>: Send debug output to COM3.
 
** <code>COM4</code>: Send debug output to COM4.
 
** <code>FILE</code>: Send debug output to a file %systemroot%/reactos/debug.log
 
** <code>MDA</code>: Send debug output to MDA ''(The old text-graphiccard from IBM)''.
 
<br>
 
; <code>BAUDRATE</code> : Specifies baudrate of the serial port to be <code>[baudrate]</code> bps. Used in conjunction with <code>COM1-4</code> or <code>GDB</code>.
 
* Format: <code>BAUDRATE=[baudrate]</code>
 
<br>
 
; <code>IRQ</code> : Specifies the IRQ number of the serial port to be <code>[irq-number]</code>. Used in conjunction with <code>COM1-4</code> or <code>GDB</code>.
 
* Format: <code>IRQ=[irq-number]</code>
 
<br>
 
; <code>PROFILE</code> : Enables profiling. Profiling information will be written in <code>%windir%\profiler.log</code>. This will slow down the system quite a bit.
 
* Format: <code>PROFILE</code>
 
<br>
 
; <code>MAXMEM</code> : Will restrict ReactOS to use only the first <code>[maxmem]</code> MB of physical memory.
 
* Format: <code>MAXMEM=[maxmem]</code>
 

Latest revision as of 23:06, 14 February 2021

Icon speedy deletion.png Warning: Please bear in mind that ReactOS is still in alpha stage, meaning it is not stable or feature-complete and is not recommended for everyday use. Operating system bugs can and do result in corrupted file systems, overwritten partitions, and more. Do not install ReactOS on any computer containing important data without using a virtual machine or making full backups first.


Before installing

There are several things to be made aware of before installing ReactOS, or even obtaining the installation media. These include how ReactOS will be installed, limitations of the installation, and backing up existing data.

Limitations

ReactOS is alpha level (or alpha phase) software. It is not yet feature complete.
Some major bugs remain to be corrected. For the details see Known Issues. Bear in mind that this is not a complete list of known issues. See also Missing ReactOS Functionality.


The ReactOS itself, setup utility, and boot loader have a number of limitations. The most prominent are:

  • the setup utility does not prevent users from performing dangerous and potentially destructive operations.
  • UEFI system firmware is not supported by ReactOS yet, you have to use legacy BIOS mode.
  • some SATA controllers may not work with ReactOS.
  • the boot partition is highly recommended to be the first partition on the first (or even better - single) disk in the system.
  • the setup utility can check the integrity of ONLY FAT16 and FAT32 file systems.
  • HD Audio or use of multiple audio cards at the same time are not yet supported, ReactOS versions and builds prior to 0.4.12 will not boot after setup with this configuration.

System requirements

Hardware support

ReactOS has limited hardware support. Lists of particular hardware that have been tested can be found on the page Supported Hardware.

Minimum hardware requirements

The minimum requirements to install ReactOS are:

  • RAM: at least 64 MB, recommended 256 MB, and even 2048 MB if you want to test large software suites or bundles.
  • Processor: x86 or x64 architecture, Pentium or later and compatibles; for more information see ReactOS ports.
  • HDD: IDE/SATA with minimum 450 MB of free space on the primary partition (please note that some SATA controllers may not work with ReactOS):
    • FAT16/FAT32 primary boot partition.
  • Video: VGA compatible video card (VESA BIOS version 2.0 or later).

Getting ReactOS

Due to the current state of the project, the ReactOS Foundation does not offer official installation media for distribution. Installation CD-ROMs must be created by the user by writing an available image file to a CD-ROM.

Downloading the image file

Official ISO image files can be downloaded at one of the following locations:

WARNING: Some anti-malware programs will detect false positives in ReactOS files.

Creating the Installation CD

The downloaded file is a compressed archive in ZIP format, containing a single file named "ReactOS.iso". The ISO image contains everything needed to create the CD.

  • Extract the image file from the archive into a temporary directory.
  • Burn the ISO image to a CD-R or CD-RW using any software of your choice.

When burning the ISO to disc, be sure it is written as an image file. Writing to the disc as another type of data will not work and render the Installation CD unbootable. Look for an option similar to "Burn from ISO" or "Write disk image".

Installing ReactOS

Please consider making full backups of any sensitive data before you start any experiments with ReactOS in the production environment!

Installation strategy

The first consideration to make is whether to install ReactOS on a dedicated testing machine or in a contained environment, such as running on an emulator without direct disk access. The use of an emulator is preferable if the machine on which you will run ReactOS is your primary computer or if you have important data on the computer which you cannot afford to lose.

If you decide to install ReactOS on a disk drive that contains an existing operating system (such as Microsoft Windows XP), you should ensure that the drive is formatted with a file system ReactOS can access and write to (now, primary FAT32/FAT16 partition) and that there is sufficient free space on the drive such that ReactOS can be installed (now, >=450 MB). Furthermore, the current hardware limitations to which ReactOS is constrained must be identified and compared to the target computer system (e.g. that ReactOS has only basic audio support as of 0.4.13 release).

Once the available hardware and software situation is determined the installation media can be selected. In most cases, USB-RAM boot should be enough (or CD-ROM boot for virtual machines). But sometimes it may either not work or be not available for the particular system. Then you can use other available options as well.

ReactOS goes through three stages during setup. The first two stages deal with the installation of the system, while the third stage is the first usable boot by the user.

  • First stage – Text mode setup, started when booting from a ReactOS CD-ROM.
  • Second stage – Booting to GUI installer. The input of user information and registering of files.
  • Third stage – Booting to desktop, user configurations.

If you encounter problems, it is recommended to disable all secondary or unnecessary devices, especially USB-cameras and sound cards of any type.

Virtual Machines

A Virtual Machine is a software program that provides a virtual hardware platform. Software instructions that would be run on hardware are now interpreted by the emulator software. This allows you to "run" a different kind of computer hardware and its software in a window on your computer.

See Virtualization software for well-known configurations for popular VM software.

Hardware

Generally speaking, PCs from Windows 2000-XP era should work with ReactOS, the details depend on your particular hardware configuration. Check our supported hardware and notebook models pages for more info.

Icon speedy deletion.png Warning: ReactOS does not support UEFI booting yet, you need to enable legacy BIOS mode on UEFI systems


Install from a CD-ROM

  • Make sure your BIOS is configured to boot from the CD-ROM first.
  • Insert the ReactOS setup CD-ROM into a CD-ROM drive and reboot your computer. On the next boot, the ReactOS setup utility will start.
  • Follow the instructions on the screen to install ReactOS on your computer.
  • After the installation has finished, remove the setup CD-ROM from the CD-ROM drive and press Enter to reboot your computer. You can now start ReactOS by selecting it from the boot menu.

Install from a USB media

Since version 0.4.15 there are two options for booting from a USB media. Try another one if the first doesn't work

Note: due to instabilities in the USB stack, it makes sense to try the boot a couple of times (2-3) before moving to a next method

Bootable USB from an iso

This is an ordinary way to prepare USB, feel free to take any manual made for Windows.

  • On Windows Rufus tool can be used for that
  • On Linux UNetBootin can be used
  • ReactOS feature: the iso will work even if written in a raw dd mode

Ramdisk (aka USB-RAM) boot

The basic idea of this method is to dump the whole unchanged iso file into memory first (make a ramdisk) and then boot from it without touching the original media.

For this method, you should prepare a flash drive first. It should have a FAT32 filesystem and the Multiboot specification-capable bootloader should be installed on it. For example, you can use syslinux. Here is how to install it (for syslinux version 6.x):

On Linux

Plug in the flash drive and leave it unmounted. Then run these commands:

sudo mkfs.vfat /dev/sdb1
sudo syslinux --install /dev/sdb1

Note: here, /dev/sdb1 is a partition on a flash drive

On Windows

Use Rufus tool:

  • Select your flash drive
  • Click "Show advanced drive properties"
  • Boot selection: Syslinux 6.x
  • Partition scheme: MBR, File system: FAT32
  • Format the drive using selected options above

Next common steps for both platforms

At this point, you should have a bootloader installed onto the drive. Now it's time to copy some files onto it.

Notice: you may download all the required files, except iso images, in a zip-archive. It uses freeldr.sys from the fb4591c commit.

  • Now you need to copy mboot.c32 and libcom32.c32 syslinux libraries to the root
  • Then copy a freeldr.sys bootloader from ReactOS 0.4.13 or higher
  • Now you need to write some configuration files. First, syslinux.cfg:
DEFAULT ReactOS
LABEL ReactOS
  KERNEL mboot.c32
  APPEND /freeldr.sys
  • Then freeldr.ini:
[FREELOADER]
DefaultOS=BootCD_Debug
TimeOut=5

[Display]
TitleText=ReactOS LiveUSB
StatusBarColor=Cyan
StatusBarTextColor=Black
BackdropTextColor=White
BackdropColor=Blue
BackdropFillStyle=Medium
TitleBoxTextColor=White
TitleBoxColor=Red
MessageBoxTextColor=White
MessageBoxColor=Blue
MenuTextColor=Gray
MenuColor=Black
TextColor=Gray
SelectedTextColor=Black
SelectedColor=Gray
ShowTime=No
MenuBox=No
CenterMenu=No
MinimalUI=Yes
TimeText=Seconds until highlighted choice will be started automatically:

[Operating Systems]
LiveCD="LiveCD"
LiveCD_Debug="LiveCD (Debug)"
LiveCD_Screen="LiveCD (Screen)"
BootCD="BootCD"
BootCD_Debug="BootCD (Debug)"
BootCD_Screen="BootCD (Screen)"

[LiveCD]
BootType=Windows2003
SystemPath=ramdisk(0)\reactos
Options=/MININT /RDPATH=livecd.iso /RDEXPORTASCD

[LiveCD_Debug]
BootType=Windows2003
SystemPath=ramdisk(0)\reactos
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=livecd.iso /RDEXPORTASCD

[LiveCD_Screen]
BootType=Windows2003
SystemPath=ramdisk(0)\reactos
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=livecd.iso /RDEXPORTASCD

[BootCD]
BootType=ReactOSSetup
SystemPath=ramdisk(0)\
Options=/MININT /RDPATH=bootcd.iso /RDEXPORTASCD

[BootCD_Debug]
BootType=ReactOSSetup
SystemPath=ramdisk(0)\
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=bootcd.iso /RDEXPORTASCD

[BootCD_Screen]
BootType=ReactOSSetup
SystemPath=ramdisk(0)\
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=bootcd.iso /RDEXPORTASCD

Note: for detailed explanation, see Boot options

  • Now place bootcd.iso and/or livecd.iso in the root of the disk (or whatever path configured in freeldr.ini)
  • Ready to boot

Using virtual machine

  • Create a virtual machine but without the hard disk
  • Create a virtual hard disk for VirtualBox which points to the real one
    • on Linux: VBoxManage internalcommands createrawvmdk -filename "~/VirtualBox VMs/reactos/disk.vmdk" -rawdisk PathToHarddisk
    • important: PathToHarddisk must be the whole disk, not a partition: /dev/sdb
  • Add disk.vmdk to virtual machine via Storage => Add Harddisk
  • Install ReactOS as usual

Network boot or installation via PXE

See article Building PXE-ready ReactOS.

Installing from internal drive

See article User:Minecraftchest1/installing/installing-from-harddrive

Installing drivers

You may be also interested to know how to install a driver for a device in ReactOS. If so, see Install a driver article.

Unattended Installation

You may be also interested to know how to install ReactOS in the automatic (non-interactive) mode. If so, see Create an unattended Installation CD article.

See also

  • VirtualBox – a free virtualization software for Windows, Linux and Mac (HOWTO)
  • QEMU – an open source machine emulator