Difference between revisions of "esesen"

From Cliquesoft
Jump to: navigation, search
Line 67: Line 67:
 
:: * Add support for newer GPT bootdisks (see gldr project)
 
:: * Add support for newer GPT bootdisks (see gldr project)
 
:: * Expand the number of file systems that can be processed natively including: exFat, HPFS (Apple), etc; this may require using partclone
 
:: * Expand the number of file systems that can be processed natively including: exFat, HPFS (Apple), etc; this may require using partclone
 +
:: * Update the backend software to more recent versions
 +
:: * Add archivemount, curlftpfs, and dd_rescue
 
:: * Add analytics
 
:: * Add analytics
 
:: * Configurable option to have Esesen to automatically install the OS updates post-restore
 
:: * Configurable option to have Esesen to automatically install the OS updates post-restore
Line 74: Line 76:
 
:: * Add more bootloaders to work with
 
:: * Add more bootloaders to work with
 
:: * Add the ability to use Linux and Windows shares (NFS and CIFS)
 
:: * Add the ability to use Linux and Windows shares (NFS and CIFS)
 +
:: * Resolve the non-100% completion output with 'pv' when interacting with ext/fat partitions
 
:: * We welcome any contributions from our users and the community
 
:: * We welcome any contributions from our users and the community
  

Revision as of 15:12, 31 December 2018

With all the daily activities that users have their computers go through, one could expect that over time the software on these devices usually becomes cluttered with unused and/or unwanted files, settings, and data as well as some kind of problem just waiting for the opportunity to halt your progress when you have to get something done yesterday! And what is the normal fix? Call your support staff and wait for them to work you into their schedule for the repairs. What if there was a way for you to fix the problem easily? Introducing Esesen. This software can return the device to an out-of-the-box state so that your productivity is as high as it was on the first day it was unpackaged! Not to be confused with the Windows restore feature, this software replaces your entire system with one that you choose to restore instead of a couple of files that Windows restore will replace (but often times does not actually resolve the problem and occasionally creates new problems).

Administrators will enjoy the variety of configuration options that pertain to this software including local and/or remote storage of images, optional WAN connectivity, and the ability to schedule automated restores in order to keep your home or business network in a constantly pristine state. And for those admins that are familiar with ssh, this software provides a way to remotely gain access into a workable system to perform any detailed modifications to the device that may be required.


License

This project's codebase is licensed under the CPLv2 unless a valid CPLv1 license has been purchased. More information about both of these licenses can be found under the "Our Licenses" link of our homepage.



Overview

Esesen was designed to keep a device working at its optimal performance at all times by periodically re-imaging it back to a fresh state as defined by the manufacturer, your administrator, or support staff containing little or no "contamination". With the use of this software on all the computers in your home or office, along with implementing the automated scheduling aspect, the result should end up becoming a self sustaining network (SSN aka Esesen)!

Of course problems can arise between the scheduled re-imaging, such as accidental deletion or updates that cause unintended consequences. Pick up some malware or get hit with Ransomware where your computers' contents are completely encrypted by a malicious attacker? How about a hardware failure? All of these would cause serious downtime for a home or business, but devices utilizing Esesen do not have to worry about a thing! The user has the ability to go into Esesen at any time in order to restore back to a known working state. For situations such as a drive failure or ransomware, booting off of an Esesen live CD or flash drive (after a hard drive replacement if applicable) will quickly get you back up and running - in some instances, within minutes!

So who would benefit from using this software? As mentioned above, home users and business owners would definitely benefit from having this software installed on their networked computers. Additionally, labs, schools, or any other organizations that may need to have equipment restored to an unmodified state after testing or usage by unknown users or third parties.

Lastly, there are several points to mention that distinguish Esesen from other imaging software:

* Imaging can be scheduled to perform automatic restores per device
* Instead of just a single image available for restore, there can be up to nine manually created images as alternatives per device
* The software can be configured to retain any saved user data (under /home or C:\Users)
* Works with Linux and Microsoft Windows file systems natively: ext2/3/4, Fat16/32, NTFS; uses 'dd' for all other formats

Caveats

As of the 2018.12.x.x version of the software, there are a couple of caveats that should be brought to your attention. As future versions are released, most of these will be resolved:
* If the device uses legacy MBR for its boot media and a local storage partition is desired, the total number of partitions beforehand can not exceed 3 primary (no logical); GPT does not have any limitations
* When using .squash files to retain users data, NTFS partitions have a fair amount of post-processing so be patient
* Analytics are not yet available
* The "DATA" partition can only be ext2/3/4 or NTFS currently
* Interaction with Ext/Fat file systems, the progress meter is just an approximate value and may exceed or not reach 100% even though it did process everything correctly
* Esesen has only been tested with traditional, single-disk computers; mileage may vary with different configurations so let us know
* Currently only identifies and works with (patches for other bootloaders are welcome):
Linux: (legacy) grub(2), syslinux
Windows: ntldr (XP and prior), winload (Vista and after)
* All software updates will have to optionally be reinstalled after re-imaging since the device will be completely reverted to its state at the time the image was made
* After a drive failure, the disk must be replaced with the same size or larger since Esesen can not re-image different sized disks currently
* The partition containing the Windows OS must be MBR, not GPT due to limitations of the bootloader; storage disks (e.g. DATA) can be GPT however
* Currently the only network shares that can be used are SSH; future versions will allow for Linux and Windows shares (NFS and CIFS)
* The password to access the network share is the same as the access to the admin and config screens; future versions will separate these two

Best Practices

Below we will outline several best practices to keep in mind when using the software to give you the best experience as possible. Since this software is still in beta, these will be updated as time goes by.
* The quickest method of re-imaging a device is by using a local storage partition (networking is the slowest) and is highly recommended
* If using a local storage partition, it is recommended to sync those images to a secondary device (in the event of drive failure or ransomware attack)
* Do NOT leave the drive known as your DATA plugged into a computer as malware/ransomware could infect that too causing you problems
* If your DATA is a networked drive, configure it as readonly to prevent any alteration of the device image(s)
* Esesen is NOT a backup software for your data! Implement a good backup strategy (see our backup software) to cover that aspect.
* When creating the devices' default image, do NOT include any user data (afterwards is ok) since any files that are in the image can overwrite what exists on the drive
* We welcome any contributions from our users and the community
* Make a backup of the Esesen configuration after completing that step
* It is a good idea to have at least one copy of the 'Esesen OS' handy in the event of drive failure or ransomware attack


History

Prior to version 2018.12.x.x, this software was used exclusively by Digital Pipe Inc (the parent company to Cliquesoft) with its own customers. Its abilities were very basic and lacked most of the feature set brought about in the 2018.12.x.x public release. As a result, the baseline for any information here will start with that release up to the present.
2018.12.x.x The first public release


Roadmap

To address some of the caveats described above and to expand the software as time progresses, we have outlined some items below that we would like to accomplish.
* Add Android and Mac support
* Add support for newer GPT bootdisks (see gldr project)
* Expand the number of file systems that can be processed natively including: exFat, HPFS (Apple), etc; this may require using partclone
* Update the backend software to more recent versions
* Add archivemount, curlftpfs, and dd_rescue
* Add analytics
* Configurable option to have Esesen to automatically install the OS updates post-restore
* Add disk-to-disk imaging
* Add the ability to image different sized disks
* Add a graphical interface and installers
* Add more bootloaders to work with
* Add the ability to use Linux and Windows shares (NFS and CIFS)
* Resolve the non-100% completion output with 'pv' when interacting with ext/fat partitions
* We welcome any contributions from our users and the community



Installation

Just like the rest of our software, we have engineered our installation process to be as simple as possible. After downloading the desired version from our website, you can begin the installation process. Currently this process only has a text-based installer, but we will be adding graphical capabilities in a future version. Below we will cover the steps necessary to get the software installed.

File Types

Before we continue with the individual steps, it is important to define what the various file types are and the intended application for them. Currently there are four different downloads that are available for this software with each containing advantages and disadvantages.
Standalone App
This is the application itself which allows integrators, developers, or hobbyists to do whatever they would like. Since the project is open source, it can be audited, modified, redistributed, etc without any permission or royalties to Cliquesoft. Since this is just the application by itself, the user will need to make sure that it works in whatever environment it is placed - mileage may vary when using the software this way. Patches are welcomed to help make the application work in a broader fashion.
Live OS
As a bootable "live" instance of the software, this can give the user a way to play with the software without making any changes to the device itself - available in iso (CD/DVD) and img (flash/hard drive) formats. This is also the method to use if you need to recover from a drive failure or ransomware attack. The only known disadvantage to this method is that you have extra work to create boot media initially or as updates are released. The main advantages here are:
* You can boot your computer no matter what so it can be re-imaged to get working again
* This can be used as Esesen installation media Esesen for Linux and Windows
* You do not have to worry about updating the Esesen software on the device itself (and then re-imaging to include that update). An update just consists of burning the newer Esesen version to media.
Linux Installer
There are many different distros of Linux covering a wide range of niches. This file will allow you to install Esesen from within a running instance of your flavor of Linux and has minimal prerequisites which include the presence of the /opt and /boot directories and a supported bootloader (currently legacy grub, grub2, and syslinux). There should not be any restrictions on MBR or GPT usage since Esesen just appends to your current configuration. The main advantage here is the ease in which to install Esesen. The main disadvantages to using this method are:
* The possibility of not being able to use a local storage partition (if using MBR and have more than 3 partitions)
* An update to Esesen will require the creation of a new image afterwards since it will be installed on the partition that gets re-imaged
Windows Installer
Just like the "Linux Installer" above, this file contains everything necessary to install Esesen within a running instance of Windows itself. Also like the Linux variant, the same pro's and con's apply here as well with one additional con - Esesen will currently only work with MBR disks that contain the Windows operating system. We are working to expand into the new GPT disks, but this will be after a future version or two.


Steps

Now that we have covered what the individual files available for download are catering to, grab which one best fits your requirements and lets start to walk through the process of getting the Esesen software installed so it can be used. Each of the steps below are necessary for each file except where noted.
1. Extract: In this example we will assume that the file has been downloaded to your Desktop. Microsoft Windows users just need to double click their installer to have the files extracted, whereas Linux users can double-click the file to open the archive extracting application, select all the archives contents, and then extract to the desktop. Now that there is an "Esesen" folder on your desktop, double-click to open it and proceed to the next step.
2. Install: Depending on which file you downloaded, this step varies. Also this documentation will only cover the "Live OS" and "Installer" files mentioned above with the former being covered in sub-section A and the latter in sub-section B below:
A. Live OS: For users whose computer is running Windows 7 and above can simply insert a blank disc in your drive tray, right-click the "Esesen.iso" file, select "Burn disc image", select your optical drive from the list, and click the "Burn" button to complete this step. Those who are using Windows Vista or below, you will need to install supplemental software to burn the .iso file to disc. If you do not have one installed, one has been included in the archive labeled "Windows Installer".

LEFT OFF - document the steps for the above installer

B. Installers: With the "Esesen" folder contents shown, locate the "install" file (Note: Windows users may see a ".bat" file extension; Linux users will see a ".sh" file extension) and double-click it to start the installation. A series of questions will be asked:
(I) The first question is going to ask you which partition should be used as the "DATA" to store all the images created for the device. This can be an existing partition on the same drive containing the Operating System (OS) itself, a partition of another internal drive, or any attached hard drive via USB, eSATA, firewire, etc. However, it can NOT be the partition containing the OS itself for obvious reasons. If you wish to use a network share, you will need to enter the word "share" (without quotation marks) to bypass any processing for a locally attached "DATA".
(II) The next several questions all pertain to the scheduling of Esesen to perform automated restores of the device. They will be very basic and asks things like the day of the week and the time. it is important to note however, that the time entered must be in 24-hour format, meaning 1pm should be entered as '13:00', 2pm as '14:00', etc.
3. Configure: Now that the Esesen software has been installed, it will need to be configured for the device. Reboot (off the optical media created for "Live OS" installs) and select the "Repair this device" menu option and/or "Text Interface" depending on your bootloader. This will bring you to the main Esesen screen where you will need to go into the configuration of the application by pressing the 'C' button. There are numerous options available on this screen which will be covered below:
Partition containing the OS: this is...
Local storage device: this allows...

...

outline all the config options here mention to backup the config afterwards


NOTES
* Help with a failure of any of the steps above can be found in our forums
* The a default administrators password will be the word 'password' (without quotes)



Uninstallation

Hopefully your choice to uninstall the software isn't a permanent one, but in the event that you do need to perform this function, simply go into your 'Control Panel' and click the "Add/Remove Programs"/"Programs and Features" icon or the "Uninstall a program" link. This will bring up a screen showing all the currently installed software. Scroll through the list until you find the 'Esesen' entry and click it. You should then see an "Uninstall" or "Uninstall/Change" button in the window to which you should click. This will open another popup showing you all the uninstallation tasks taking place. For any final message other than "Esesen has been uninstalled successfully! Press any key to continue . . .", then you should contact your support staff or visit our forums.


Some Examples

(these need to have their own page)... outline some examples of working with Esesen: - a typical process (going through all the options available in the top of the admin menu) - recovering data from a failing drive - backing up and restoring configuration - Using a live CD with an LSB (using on the 'drive prep' option from the configuraiton menu) - restoring a device while keeping the user data intact



Network Designs

If your office consist of a room in your house, or actually is an office but only houses a handful of employees, then most of the time any servers in use are mainly for authentication and file sharing. While it is irrelevant whether the server is configured as a domain controller (DC) or a simple workgroup server, we do recommend having the clients of the network NOT be connected to a domain. Currently there are instances after a restoration where the client will need to be dropped and then re-joined to the DC. Not only will this step be prevented if the clients are never joined to a domain, but in the event that the server has to be replaced, the clients do not have to go through the process of migrating to the new server.



showing/hiding of the boot menu and how to get it to show if you hide it (e.g. grub2 using shift key)