Welcome to Linux Forums! With a comprehensive Linux Forum, information on various types of Linux software and many Linux Reviews articles, we have all the knowledge you need a click away, or accessible via our knowledgeable members.
Find the answer to your Linux question:
Site Navigation
Linux Forums
Linux Articles
Product Showcase
Linux Downloads
Linux Hosting
Free Magazines
Job Board
IRC Chat
RSS Feeds
Free Publications


This article discusses System Studio, an open source application and framework for creating custom operating systems based on CentOS and Red Hat Enterprise Linux. System Studio gives IT Professionals greater control over system deployment. It allows software and configuration to be integrated directly with the operating system, ensuring consistent results. It also allows unwanted or conflicting software to be permanently removed- preventing accidental installation and subsequent issues.



This article discusses System Studio, an open source application and framework for creating custom operating systems based on CentOS

and Red Hat Enterprise Linux. Using System Studio, IT Professionals can start with an operating system, add and remove software, modify default configuration, and generate a custom version.





System Studio gives IT Professionals greater control over system deployment. It allows software and configuration to be integrated
directly within the operating system, ensuring consistent results without requiring additional management systems.  It also allows unwanted or conflicting software to be permanently removed- preventing accidental installation and subsequent issues.



Installing System Studio

System Studio is available for download from www.systemstudio.org.  It requires a system installed with CentOS or RHEL 6 x86_64.  A machine capable of KVM virtualization is recommended. 



Complete installation instructions are available from the web site.



In addition to installing System Studio, the standard installation configures web and virtualization services. The latter two assist
with a number of System Studio features - more on this in future articles.

System Studio is a command line application. It can be used to create custom versions of CentOS and RHEL, versions 5 and 6.



Defining a Custom Operating System

System Studio works by reading a user-provided definition, and creating the specified operating system.  

Definitions are in XML format.  The format is well documented -  a complete reference manual is available from wthe website in both HTML and PDF formats. In addition, System Studio includes a number of templates to assist with the definition creation process.



A basic definition looks as follows.  This definition specifies the name, version, and architecture for the operating system. It also specifies the base operating system, and software packages to be include from the base.



<repo
xmlns:xi="http://www.w3.org/2001/XInclude">



 



<macro
id="version">6</macro>



<macro
id="arch">x86_64</macro>



 



<main>



<fullname>Example Custom Operating System</fullname>



<name>exampleos</name>



<version>%{version}</version>



<arch>%{arch}</arch>



</main>



 

<repos>

<xi:include xpointer="xpointer(/*/repo[@id='base'])" href="repos.xml"/>

<xi:include xpointer="xpointer(/*/repo[@id='updates'])" href="repos.xml"/>

</repos>

 



<packages>



<group
repoid="base">core</group>



</packages>



 



</repo>




This definition will create a simple custom operating system based on CentOS version 6.

Building an Operating System



To create the custom operating system, you execute the following command. Note that you must execute System Studio as the root user.



# systemstudio
<path/to/definition>



The first time you create an operating system, it can take a few minutes.  Files from the original operating system must be downloaded and cached.  Thereafter, the process is much quicker typically a just a few seconds.



When the operating system is complete, you can find it in a folder located at /var/www/html/repos/system. 



System Studio creates the custom version in the same format as the original, complete with installation images and a package repository. As a result, you can install it just as you would install the original operating system.  And you can update installed clients using YUM. 



Doing more with System Studio

The previous example showed creating a basic operating system.  System Studio can also be used to -



        
Add software from external package repositories.



        
Remove packages.



        
Add configuration.



        
Create new software packages.



        
Test the new operating system using virtual
machines.



Each of these is described in detail in the System Studio User Manual.  They will also be described in future articles.









Rate This Article: poorexcellent
 
Comments about this article

Comment title: * please do not put your response text here