Software distribution

from Wikipedia, the free encyclopedia

Software Distribution (English software deployment ) are called processes to install software on computers .

Many users do not have the knowledge or authorization to install software themselves. It is therefore common in organizations that qualified employees perform or initiate this task for the user. In larger organizations, software is installed unattended. Examples are the unattended installation on Windows and the unattended installation on Linux .

Software distribution is a critical process because it also involves operating system corrections and the installation of security-relevant applications such as virus scanners , browsers and e-mail programs. Errors in software distribution can lead to malfunctions and failures on a large number of workstation computers.

Goal of the software distribution

The aim of software distribution is the automatic initial installation, configuration and maintenance of a large number of computers with little effort. Furthermore, trouble-free and safe operation must be achieved. Often one also strives to equip the computers with software as uniformly as possible. As a side effect, you often get information about the number of installations of licensed software products.

Software distribution roles

Administrator
Configures and operates the software distribution system
user
Receives required applications installed and configured automatically
Software manufacturer
Provides the applications and the installation program
Product manager
Defines the configuration and type of installation for an application
Packager
Packs the setup program of the application in a package of the software distribution system
Network operator
Operates the computer network on which the software is distributed. In small organizations it is often identical to the administrator. In large organizations, the network is almost always operated independently.
Server operator
Operates the necessary servers . In small organizations it is often identical to the administrator. In large organizations, servers are usually operated independently.
Rollout manager
Distributes new products or releases to the desired end devices according to an existing deployment plan.
Support
Supports the user in the event of malfunctions or problems and uses the software distribution to obtain information and to rectify malfunctions. Works with many other roles via numerous interfaces:
  • receives information from the administrator about the status and configuration of the system
  • receives information from the software manufacturer on product support and forwards (depending on the existing software maintenance contract or service level agreement ) serious faults to the manufacturer after qualification for a solution
  • receives information about the configuration of the deployed software products and the release planning from the product manager
  • receives information from the packager about the technical features of the packets
  • receives information about malfunctions from the network and server operator

Particularly in smaller companies and organizations, several roles can be filled by one person.

Components of software distribution

network
Used to transfer the packets and the configuration data. Is also used to send the actual situation (inventory) back to the server.
Protocols and Standards
Standardized procedures with which computers can exchange data. Important for software distribution include BOOTP , PXE , IP , DHCP , HTTP , FTP , UNC , Multicast and LDAP .
computer
Receives the operating system and applications installed through software distribution.
package
Collection of files that an application automatically installs and configures. A package can contain several applications including the necessary hardware drivers. As a rule, all the necessary files are packed together in a compressed archive.
Packaging software
Special program for creating a package.
Configuration database
Centrally stores all configuration data of the system.
Configuration server
Storage location of the configuration database. Provides services with which the configuration data can be made accessible to the computers.
Configuration software
Software for storing and maintaining the configuration data, i.e. the user and computer directory as well as the directories of the packages, the installed programs and their parameters.
Package server
Makes the packets available over the network. Needs a powerful network connection. The package server and the configuration server might be the same physical computer.

Installation phases

Installation of the operating system

Before applications can be installed, the operating system must first be installed. Either a CD / DVD or a protocol for network booting computers (BOOTP, PXE) can be used for this. In the first case, the computer boots from the CD / DVD on which all necessary files are stored. The program for installing the operating system (also on the data carrier) starts automatically. This can often be preconfigured in such a way that no entries are required by the user.

During network installation, the computer's BIOS first loads the necessary programs from the network (usually using the TFTP protocol) and then executes them. This program then usually loads the operating system installation program from a server on the network.

Procedure for installing the operating system

Two different methods are used to install the operating system:

  • Installation program with special configuration
  • Imaging process

In the first case, the program that the user also uses to install the operating system is called. The program does not receive all the necessary entries from the user, but from a configuration file ( unattended , i.e. unattended installation). The operating system installation program then carries out all the necessary steps in the same way as the manual installation of the operating system, e.g. B. the detection of the existing hardware, setting the system language, setting the time zone, setting up user accounts. In the second case the operating system is installed once on a computer, then it is a memory dump (English image created). This is then stored on the CD / DVD or the network and then simply copied sector by sector to the hard disk.

The first method has the advantage that it is largely independent of the hardware used. Any additional drivers required can be made available to the operating system installation program in a folder. Disadvantages are the long execution time and the fact that all application programs have to be installed later. The second method is extremely fast and allows additional standard applications to be integrated into the actual operating system image. However, the dependency of the installation on the hardware used has a disadvantage. As a result, a separate image must be created, maintained and distributed for each hardware type. Ultimately, this process achieves better performance at the expense of administrative effort and memory requirements.

For Windows Vista and Windows 7 , Microsoft has developed a file-based imaging process itself. Windows Vista and the required applications are installed on a computer. An image is then created from this using the sysprep program . Certain parts of the operating system (security IDs and driver files) are removed when the image is created. Windows PE (Preinstallation Environment) , a minimal version of Windows Vista that can be started without installation, is booted on the target system . The image is then installed on the target system using the Windows Vista setup program . This is technically a file copying. The setup program then carries out the standard hardware detection and installs the necessary drivers. This procedure is significantly faster than the previous setup, but considerably slower than the real, sector-based procedure.

Installation of applications

After the operating system has been fully installed, the - mostly packaged - application programs can be installed.

For Microsoft Windows , MSI technology ( Windows Installer ) can be used, in which the setup program is already integrated in the operating system. For installation programs that are not available as MSI, there is a separate packaging or a native installation method that uses the original setup. Alternative native installation methods ( AutoIt , WinRobots) can also be used for programs that cannot be repackaged for reasons of support .

Under Linux these are RPM format and Debian packages widespread. The package only contains the necessary files for the application and a control file that informs the operating system which actions are to be carried out for the installation.

The finished packages can then either be planned centrally for the installation by the responsible roles (push mechanism) or selected for installation by the user himself, for example in a so-called "software kiosk" (pull mechanism). License management is particularly important for the pull variant .

Configuration of the operating system and applications

As a rule, users are overwhelmed with performing the configuration of applications. Incorrect configuration of applications is a common cause of malfunctions. In addition, security risks arise if critical components such as the virus scanner are configured incorrectly or even deactivated.

Therefore, the applications are configured by the software distribution after installation. The parameters of the application, such as references to other computers, license keys and directory paths, are defined.

These can be general parameters that have the same value for all users, or parameters that are defined differently for different groups of users.

A distinction must also be made as to whether the settings may be changed by the user, or whether the software distribution should ensure that the settings are not changed by the user or that changes are automatically reversed. Software distribution systems therefore manage these parameters centrally and automatically apply them to the client computers.

With MS Windows this can be achieved through the group guidelines that the client PC calls up from the domain controller of an NT domain or an Active Directory .

Inventory

After installation and configuration, the client computer reports back to the software distribution system and reports on the success or failure of the actions carried out. In this way, the administrator receives the information required to rectify faults, in particular the subsequent installation of failed partial installations.

Finally, the data is forwarded to other systems such as accounting , license management and the asset management system.

Installation techniques

An overview of the topic of installing applications can be found under Installation (Computer) .

Configuration management

Nowadays, a user needs a large number of programs for his work. A list of the packages that are to be installed by the software distribution must therefore be stored for each user or PC. The parameters for configuring the applications must also be stored. It is very useful to group the users or computers together. The administrator then has considerably less effort than if he had to configure individually for each computer or user.

The administrator must be able to quickly determine the current target and actual configuration of a computer at any time to ensure that it works. Since there are often a large number of computers involved, powerful query tools are necessary. These also provide statistical information, for example a list of how many computers a certain software is installed on.

Quality assurance measures such as documentation of the configuration, training of administrators, the dual control principle, operational monitoring and statistical evaluations support the reliability of the software distribution system.

Software distribution systems (selection)

Examples of software distribution systems for mobile devices ( mobile device management ):

Alternatives

Java Web Start enables Java applications to be downloaded and installed automatically on the client computer. Each time such a Java application is called up, Java Web Start checks whether a newer version is available on the server and installs it if necessary. In contrast to the other systems mentioned, however, it is not controlled from a central point, but initiated decentrally by the client. Therefore it is not a software distribution system in the strict sense.

Individual evidence

  1. a b REMOTE BOOTING under the NetWare network operating system from Novell (pdf; 230 kB) In: ZPG messages for commercial schools . State Institute for Education and Teaching (LEU) - Commercial Central Project Group. S. December 11, 1999. Archived from the original on March 29, 2014. Info: The archive link was inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. Retrieved August 1, 2014. @1@ 2Template: Webachiv / IABot / www.ls-bw.de
  2. Self-healing workstation in school - how does it work? (pdf; 41 kB) NCL Network Consulting LEISS. February 2, 2012. Retrieved on August 1, 2014.  ( Page no longer available , search in web archivesInfo: The link was automatically marked as defective. Please check the link according to the instructions and then remove this notice.@1@ 2Template: Toter Link / nc-l.de  

Web links