This is a modified version of steadier state to provide compatibility with Windows 10. See steadierstate.com for the original work developed by Mark Minasi.
Essentially there are four phases in the SteadierState model and they are as follows:
Note: This phase requires a usb flashdrive. Warning: All data on the usb flashdrive used with this phase will be lost!
- Clone the SteadierState repository or Download and Extract zip file from the github.com repository.
- Open a Command Prompt window as an Administrator.
- Change to the directory where you "Clone or Download and Extract zip file" in step 1.
- Initiate the toolchain build by running the
buildpe.cmd
command. Upon running thebuildpe.cmd
command you will be prompted for input to produce a bootable usb key (and if desired an .iso file). - When the
buildpe.cmd
has completed, if all went well, you will have a bootable usb key (and if requested an .iso file). - Should something go wrong during the
buildpe.cmd
execution, follow the suggestions offered by the error message.
Note: This phase requires an external drive or network drive to hold deployment files.
- Boot the live media created in Phase 1 on a PC running Windows that you wish to use as the base install for your SteadierState deployment.
- Initiate the creation of the SteadierState installable setup with the
cvt2vhd.cmd
command. Upon running thecvt2vhd.cmd
command you will be prompted for input to produce the everything needed for deployment. - Should something go wrong during the
cvt2vhd.cmd
execution, follow the suggestions offered by the error message. - Reboot the computer by typing
exit
.
Note: Warning: This phase will erase all files on disk 0 of the target PC!
- Boot the live media created in Phase 1 on a PC you wish to deploy with SteadierState.
- Initiate the deployment of SteadierState to the PC with the
prepnewpc.cmd
command. Upon running theprepnewpc.cmd
command you will be prompted for input to perform the installation of SteadierState to the PC. - Should something go wrong during the
prepnewpc.cmd
execution, follow the suggestions offered by the error message. - Reboot the computer by typing
exit
.
- Boot the PC which you deployed with SteadierState in Phase 3.
- Customize and make any further desired changes on the PC (see Directives, Hooks, and Operating Modes below).
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., initiate the SteadierState rollback point with the
c:\srs\firstrun.cmd
command. - Should something go wrong during the
C:\srs\firstrun.cmd
execution, follow the suggestions offered by the error message. - Reboot the PC and the next boot should be to WindowsPE which will perform the final configurations of a snapshot.vhd and a corresponding boot entry.
SteadierState target PC's which have completed Phase 4 are essentially deployment ready. There are times which admins will need to perform some type of maintenance or configuration adjustments on these deployment ready PC's. SteadierState utilizes the local install of WindowsPE and what is called Directives to change the default deployment configurations. There are two primary Directives "noauto" and "automerge". To activate Directives simply place a file named appropriately ("noauto.txt" or "automerge.txt") in a directory named \srsdirectives
on the drive containing the image.vhd and snapshot.vhd. Note: The contents of the Directives file does not matter only the name.
The noauto directive tells the WindowsPE install to take no automatic action. To enable the "noauto" directive perform the following steps:
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\noauto.txt
. - Reboot the PC and the next boot should be to WindowsPE with the "noauto" directive.
The automerge directive tells the WindowsPE install to automerge the image.vhd and the snapshot.vhd to a new image.vhd. To enable the "automerge" directive perform the following steps:
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\automerge.txt
. - Reboot the PC and the next boot should be to WindowsPE with the "automerge" directive.
To provide an understanding of how these Directives can be used please examine the following examples.
Example: How can I boot my SteadierState PC to WindowsPE for diagnostics image running "Roll Back Mode"?
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Boot the PC up which will be in the pristine state of deployment.
- Apply the configuration adjustments desired.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\noauto.txt
. - Reboot the PC and the next boot should be to WindowsPE with the "noauto" directive.
Example: How can I boot my SteadierState PC to WindowsPE for diagnostics image running "Delta Mode"?
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Boot the PC up which will be in the pristine state of deployment.
- Apply the configuration adjustments desired.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\noauto.txt
. - In the Command Prompt window opened in step 3., run the following command
C:\srs\bcddefault.cmd
. - Reboot the PC and the next boot should be to WindowsPE with the "noauto" directive.
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Boot the PC up which will be in the pristine state of deployment.
- Apply the configuration adjustments desired.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\automerge.txt
. - Reboot the PC and the next boot should be to WindowsPE with the "automerge" directive.
- Assume that D: is the drive containing the image.vhd, snapshot.vhd, and the \srsdirectives folder.
- Boot the PC up which will be in the pristine state of deployment.
- Apply the configuration adjustments desired.
- Open a Command Prompt window as an Administrator.
- In the Command Prompt window opened in step 3., run the following command
echo > D:\srsdirectives\automerge.txt
. - In the Command Prompt window opened in step 3., run the following command
C:\srs\bcddefault.cmd
. - Reboot the PC and the next boot should be to WindowsPE with the "automerge" directive.
SteadierState now has a new feature called first run hooks. First run hooks provide users a way to apply custom setting and configurations during Phase 4 when the C:\srs\firstrun.cmd
command is ran. Also please remember that the C:\srs\firstrun.cmd
command in Phase 4 is disigned to be ran only once on a target PC.
First run hooks work like this, there is now a folder called "*C:\srs\hooks*", in this folder are commands (i.e.hooks) that are executed when the C:\srs\firstrun.cmd
command is ran. So prior to running the C:\srs\firstrun.cmd
command, you can provide custom instructions to be ran for your deployment environment.
As a starting place take a look at the hooks-samples folder for some ideas on how it works.
Hooks are enabled by placing them in the C:\srs\hooks
folder prior to running the C:\srs\firstrun.cmd
.
SteadierState with the new first run hooks model can now offer two primary "modes" Roll Back Mode (the default) and Delta Mode which are described below.
- The default deployment "mode" of SteadierState with the default set of first run hooks enabled when the
C:\srs\firstrun.cmd
command is ran on a target PC. Essentially this "mode" "Rolls Back" any changes that were made since the last reboot.
- The deployment "mode" of SteadierState with the default hook of
hooks\1000-rollback.cmd
removed from the hooks folder prior to running theC:\srs\firstrun.cmd
command on a target PC. Essentially this "mode" allows the target PC to run on the snapshot.vhd in Delta Mode without rolling back at reboot until instructed otherwise.