Softpanorama

May the source be with you, but remember the KISS principle ;-)
Home Switchboard Unix Administration Red Hat TCP/IP Networks Neoliberalism Toxic Managers
(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and  bastardization of classic Unix

Linux Baseliners

News

Unix Configuration Management

 Recommended Links Bare metal recovery of Linux systems Troubleshooting Perl Backup Scripts and Systems
supportconfig
(shell, Suse)
RHEL sos Siga
(shell, Linux)
Red Hat Sysreport
(RHEL Abandonware)
etckeeper M-Backup
(shell )
confstore
(perl, linux)
SCC
(perl, Linux)
dconf
(Python)
SPM
(AIX)
Classic Unix Tools  
diff Tools for detecting changes in sources dirdiff Meld Configuration Generation sysinfo-dc
(shell, HP-UX, alpha version)
Integrity Checkers Software Distribution   Sysadmin Horror Stories

Humor

Etc

If you install a system in enterprise environment it's foolish to think you'll be the only person ever working on it. That means that you need to be aware of what other people doing with the system. Also you probably will not remember details of your own actions in three months or so.  Also after the crash you sometimes can't locate a realible back and need to reinstall system from scratch. Without knowing all the setting that can be problematic, especially if this is a non-standard installation with Infiniband, multipath, etc.

Unfortunately baseliners are not the type of software that is actively maintained. So you are essentially stack with those provided by vendors, or need to maintain your own.  For example

  1. Red Hat sosreport. It can generate HTML report using option --report which enable html report writing.   see also RHEL sos

    Once completed, sosreport will generate a compressed a file under /tmp (for RHEL6 and earlier) or under /var/tmp (for RHEL7 and later). Different versions use different compression schemes (gz, bz2, or xz). The file should be provided to your support representative (normally as an attachment to an open support case).

  2. supportconfig -- this is a huge shell script maintained by Suse. It collects important system information for troubleshooting Suse systems and integrates it into a report. Used in mainly in SLES for troubleshooting server problems.  While it is a Suse tuned solution, the coding is pretty transparent and can be modified extended to other flavors of Linux. My experience with SLES had shown that it is a very effective troubleshooting tool.

That does not mean that you can't write a script to postprocess the result, making them more suitable for your needs. 

The value of baselines is much greater that one can imagine from thier role in troubleshooting problems with vendor support. Sometimes system administrators tend to do stupid things about which they instantly forget in the flow of events. Troubleshooting consequences of such actions can take enormous amount of time that can better be spent on other things.

NOTE:

Suse YaST contains a backup applet that uses tar for creating baseline of the system. It contains all the critical files that can help to restore you system after you reinstalled the OS. You can use this tool to create several backup profiles, depending on your strategy. The System Backup and Restore System tools are both located in the YaST System page. The first time you start System Backup, you will get a blank page. You must first create a backup profile.

Enterprise servers are typically in a constant state of change as the result of patches and changes in environment, installed software and libraries as well as possible hardware changes. So baseline configuration changes with time and we should shore a series of snapshots into a state of the system over time. Which now can be done using  FIT USB flash drives  Creation of a baseline is an important step toward establishing Configuration Management (CM) infrastructure, which is a collection of activities focused on establishing and maintaining the integrity of products and systems via control of the processes for changing, and monitoring the those changes. Existence of a set of baseline configurations (even in most primitive form of tar files or /etc and several other directories) is the cornerstone of configuration management.

Most existing baseliners for Linux are simple scripts written iether in shell or Perl that save "the current server configuration" (ad hic set of key configuration files) in a form of an easy to analyze report: The key here "easy to analyze"

Baseliners are simple scripts that save the current server configuration (key configuration files) in a form of an easy to analyze report. Baseline providers some additional forms of organization of this information with the report format, including content, cross references, etc.

Informally baseliner reports can be viewed as a special, new type of system log. Periodic (once a day, a week or a month) generation of such baselines is especially important for business critical servers.

If you have a snapshot of the system configuration file in a form of well organized report it is easier to understand what was changed since the state in which the server worked normally (and sometimes, why ;-).

there are two time of baselines: provider by vendor of the falvour of Linux you use (SOS for RHEL supportconfig for SUse, etc) and third party open source packages. The latter are usually badly maintained and are not accepted by helpdesk or iether Red Hat or Suse.

At the same time using some open source code as a base you can create you own baseliner, which might be more helpful then standard. Also you can postporocess the standrd creating you own report. The latter is probably a better way. 

Typical information included into the baseline

Typical the following information is included into baseline:

Best open source baselines for Linux

If you know Perl, Python or other scripting language the baseliner written in this language is preferable. You can maintain it with minimum of efforts.  Otherwise baseline written in shell is the best.

Among best tools that can create baseline of the system we can mention the following:

Scripting languages:

  1. SLACK (Sysadmins' Lazy Auto-Configuration Kit) is a configuration management system designed to appeal to lazy system administrators. It's an evolution from the fairly common practice of putting files in some central directory. It's descended from an earlier system called "subsets", and uses a multi-stage rsync to fix some of the problems in that system.
  2. SCC is tool written in Perl. Way too complex. It is implemented as client-server solution which generally in not needed, and is more complex then necessary. It is also more complex then confstore.
  3. dconf is a Python script. Might make sense for people who know Python instead of Perl.
  4. confstore is not really a baseliner as it does not produce a report. It is a simple Perl script that creates a tar archive of selected configuration files. GPL license. Code is pretty convoluted and some design decisions are questionable. It was not updated since 2004.

Shell

  1. Red Hat sosreport. It can generate HTML report using option --report which enable html/xml report writing. 

    Once completed, sosreport will generate a compressed a file under /tmp (for RHEL6 and earlier) or under /var/tmp (for RHEL7 and later). Different versions use different compression schemes (gz, bz2, or xz). The file should be provided to your support representative (normally as an attachment to an open support case).

  2. supportconfig -- this is a huge shell script maintained by Suse. It collects important system information for troubleshooting Suse systems and integrates it into a report. Used in mainly in SLES for troubleshooting server problems.  While it is a Suse tuned solution, the coding is pretty transparent and can be modified extended to other flavors of Linux. My experience with SLES had shown that it is a very effective troubleshooting tool.
  3. Red Hat Linux Manuals - Sysreport - This is Abandonware shell script from Red Hat. Used to be supported from RHEL 4.5 to 5.0
  4. System Report Script for Ubuntu 29K script for Ubunty that creates a set of framed Web pages.
  5. Siga is another huge 65K shell script for collecting configuration information. It is competing with supportconfig. Used mainly in OpenSuse.
  6. Automatic System Configuration Documentation  for Debian

    sysdoc - automatic system documentation script

    All of the above can be done in a script that you just run (as root) - within seconds, you'll have collected valuable information about your system in an organized manner.

    sysdoc - a script to create system documentation automatically.

    The result in $TARGET should be :

    • a list of the choices you made during the Debian installation
    • a list of the choices you made during dpkg package installation
    • a list of installed packages
    • a list of configuration files changed since ... and the current content of those files
    • some hardware and system info
    • ...

    ... all of which can be used as input to commands that will help reproduce the system. You will want to copy these files to a server or removable media so they can be used in a automatic reproduction of a customized system ...

  7. M-Backup is a simple shell script that creates a directory in /root and puts tarball of selected config files into it.

Other

  1. For Dell servers useful set of information can be obtained using Dset which is available from the Drivers & Downloads link
    Release Title: Systems Management: Dell Dell System E-support Tool, Utility, Multi OS, English, Multi System, v.1.4.0.8, A00 Release Date:5/10/2007

    Creates "System Configuration Report" that can be used for troubleshooting or inventory collection of a system. Dell System E-Support Tool (DSET) provides the ability to collect hardware, storage, and operating system information from a Dell PowerEdge or PowerVault server.

    DSET is intended to be a small, non-intrusive tool that does not require a reboot of the system to provide most functionality. DSET is intended primarily to be used when instructed by Dell Technical Support.

    Dell Technical Support reviews the report generated by DSET when a support case is opened.

  2. System Report Script for Ubuntu

Comparing two baselines

If baseline is a large text file like is the case, for example, in supportconfig script, you can use diff or other, more sophisticated text file comparison tool. Otherwise you need to compare each file individually.


Top Visited
Switchboard
Latest
Past week
Past month

NEWS CONTENTS

Old News ;-)

[Nov 29, 2013] SLACK

SLACK (Sysadmins' Lazy Auto-Configuration Kit) is a configuration management system designed to appeal to lazy system administrators. It's an evolution from the fairly common practice of putting files in some central directory. It's descended from an earlier system called "subsets", and uses a multi-stage rsync to fix some of the problems in that system.

Tags Software Distribution
Licenses GPL
Operating Systems POSIX
Implementation Perl

[Nov 29, 2013] SPM

SPM (formerly known as SPAM) is a set of tools that help manage change in an AIX environment. It uses a client-server architecture and is focused on five functional areas: collection of configuration, reporting configuration changes, comparing configurations, extracting configuration, and searching for configuration changes. Each of these functional areas also includes reporting and export capabilities. The collection of configuration is achieved by installing a client package on all systems being managed. The SPM Server provides a Web interface for reporting and examining configuration changes.

[Jan 31, 2013] polymeraze

polymeraze manages system configuration files based on modular and hierarchical profiles. It can be used to quickly administrate many Unix boxes and serves as a configuration knowledge database.

Tags: Systems Administration

Licenses: GPLv2

Operating Systems POSIX Linux

Implementation Python

Linux Explorer ( LINUXexplo ) - Linux System Information Gathering Tool

Linux Explorer ( LINUXexplo ) is a script that collects software and hardware information about a linux server for support purposes, similar to the Solaris explorer ( SUNWexplo ) , Redhat's "sysreport" and SuSE's "siga" script.

The script is designed to collect information about a server to help service departments support linux and have a common set of scripts for collecting information about linux no matter what distro users are using.

The information is stored in separated directories, once all the information has been collected it then tar's up those directories into a single gzip tar file which can then be attached to an email for your support organization or copied to a remote server for safe keeping.

This script collects the following information :-

  • release Section
  • hardware configuration
  • process information
  • boot/grub/lilo
  • /etc config information
  • performance/system
  • kernel
  • disk - ( general lun information, volume manager, multipath information, emc powerpath )
  • raid information
  • Software information ( packages installed )
  • sysconfig
  • System Logs
  • networking ( interfaces, bridges, bonding )
  • xinetd
  • DNS
  • clusters - ( veritas, redhat, heartbeat, crm, drdb )
  • crontab
  • printers
  • openldap
  • pam
  • email - ( sendmail, postfix, dovecot )
  • time
  • ppp
  • apache
  • openssh
  • X11
  • [Apr 10, 2012] Sysreport - FedoraProject

    Sysreport is a utility that gathers information about a system's hardware and configuration. The information can then be used for diagnostic purposes and debugging. Sysreport is commonly used to help support technicians and developers by providing a "snapshot" of a system's current layout.

    It is part of Fedora Core. A new version is under active development at https://sos.108.redhat.com/

    [Apr 10, 2012] System Report Script for Ubuntu

    System Report script is a script I have written to collect information about a Ubuntu computer system and generate a system report in the form of a framed set of web pages.

    Early versions of this script would load into the Firefox web browser by default, but I have learned how and implemented a change which now loads the System Report into your default browser on your system.

    Here is a Sample System Report output set from my system that you can examine to see what the output of the SystemReport.sh file looks like.

    Here is the source code to the System Report Script.

    This script takes advantage of built in commands and the Ubuntu file system and configuration files to gather together information about your Ubuntu system and generate the web page report. It does have one dependency so far, and that is you will need to install apt-show-versions to get one small part of the available output from this script.

    To install apt-show-versions, run the command

    To use the script download it to your computer first. It's in a tar.gz file so you will have to unzip it to a folder on your system. The SystemReport.sh file in the archive should already have the permissions set to execute. Just click, or double click the .gz file, and your archive manager will open so you can extract the script.

    Now you will be able to run the script. It is best if you run this script in a user account which has sudo permission. You can run it in an account that does not have sudo permission but you won't get all of the output possible.

    If you saved the SystemReport.sh file to your desktop, open Terminal and copy and paste the following command into it -

    Hit enter and this will run the script, when it completes your web browser will open with the System Report web pages loaded.

    As I learn more about Linux and Ubuntu I will be updating this script and providing the latest version of it here at any link on this page to SystemReport.sh

    Since I am releasing SystemReport.sh as open source you may change it to your liking as long as you keep my name in as author on the pages I have taught it to generate. If you add sections or whole pages to the output of SystemReport.sh please email me your changes or additions. Please do not send me the entire script to search through for your changes.

    [Oct 28, 2011] survey

    freshmeat.net

    Survey is a nearly complete list of your system's configuration files. It also lists installed packages, hardware info, dmesg output, etc.

    The resulting printout is 25-50 pages in size, fully documenting your system. Survey is invaluable after a blown install or upgrade when it is too late to get this information.

    Large organizations could use survey to document every Linux system.

    [Oct 28, 2011] etcsvn

    Python
    Etcsvn is a command line program for managing system configurations in subversion. It doesn't make a working copy out of your /etc, but uses a temporary workspace. It will preserve ownership/permissions of the files being tracked.

    [Oct 28, 2011] iBackup

    freshmeat.net

    iBackup simplifies the task of backing up the system configuration files (those under /etc) for Solaris, *BSD, and Linux systems. You can run it from any directory and it will, by default, save the (maybe compressed) tarball to /root. It is possible to encrypt the tarball, to upload the tarball to another host, and to run the backup automated in a cron job. You can also create a nice HTML summary of a system using the included sysconf.

    PMSVN freshmeat.net

    Bash shell
    PMSVN is a server configuration management and monitoring tool. It helps keep track of administrative actions for many servers with many administrators. It allows administrators to put specific configuration files under revision control and eases the burden of having to remember to commit changes. It can synchronize and monitor the consistency of small bits of configuration that are the same or mostly the same across many servers.

    Debian Packages of System Configurations

    Dpsyco is an automated system to distribute system configurations to several computers. It is written mainly for the Debian distribution but should be portable (without too much difficulties) to other distributions or Unixes as well. It consists of a number of shell scripts to perform the desired actions. With it you can handle users, add ssh-public-keys, patch the system, update things using cfengine, install files (overriding other package files), and more.

    bakonf

    freshmeat.net

    Written in Python

    bakonf is a tool for making backups of configuration files on GNU/Linux or Unix-like systems. It uses various methods to reduce the size of the backups it creates, and is designed to be useful for unattended remote servers.

    [Jun 20, 2011] Siga (System Information GAthering) Project forked

    07/09/2010 | Linux Developer Network

    It is very handy as an information source during installation support phone calls. You are experiencing an issue with your installation of openSuSE and to help technical support analyse the cause of the problem as fast as possible, you want to assist them by providing information specific to your system. Through siga you can find the needed Informations very quick.

    Around siga

    Sadly the original Developers (ML and others) don't work on this project anymore. So i've forked siga. Siga is an Open Source Software, so you can make copies, branches, you can help developing and all this things you need. At the Moment we have the Version 11-000. If you want to help, then we can release a higher Number soon. A short Documentation you can find there.

    And i would like to say a big "Thanks" to the previous Developers.

    Repositories:

    [May 18, 2010] etckeeper

    Jacob Kaplan-Moss sysadmin

    etckeeper is a collection of tools to let /etc be stored in a git, mercurial, or bzr repository." Neat.

    (bzr, etc, git, hg, linux, sysadmin, tools, vcs)

    [May 16, 2010] Project details for Dconf

    Python-based
    freshmeat.net

    Dconf is a tool to collect a system's hardware and software configuration. It allows you to take your system configuration with you and compare systems (like nodes in a cluster) to troubleshoot hardware or software problems.

    It can also be configured to send out configuration changes at given intervals to a group of people, or store a new snapshot when system changes happen.

    [May 15, 2010] Project details for Sysinfo

    freshmeat.net

    Sysinfo is a script-based utility to retrieve, display, and save various system information like hardware, system configuration information, user information, and network information. In a Linux system, the various system information is scattered in different parts of the system without any single command line tool to display all the information. Sysinfo is a single tool to display this information. The displayed information can be easily interpreted even by a novice.

    All this little script does is automatically generate some specs on a system. Unfortunately it's a little too specific for RedHat, but it could easily be modified to work under Debian or SuSE. My hunch is that it will work without modification on Caldera or TurboLinux. It's written in bash since the file tests / manipulation tends to make it well suited for the task. The output is in HTML. This script won't and can't do a lot of things. It'll probably never be a "1.0" release since I know I'm not going to work on this much.

    Caldera 1.1 used to ship with a nice tool that analyzed the system and reported information like this. I liked the tool, but I was never able to get it to work properly on new releases. It also had a lot of shortcomings. So I initially wrote this script to give me barebones info on a Red Hat system since I noticed there were over a dozen machines that needed documenting. Real systems administrators spend days writing script rather than actual documents. The current incarnation of the script is my initial hour or so of work (from 1997) and a morning of additions I just did. The information I'm collecting is the bare essentials I want to know about a system. I have another little perl script that will automagically go out and download files like sendmail.cw and bind db.*. With these two tools I can pretty much rebuild a Linux server.

    I have a sample output file. The info you'll get will contain:

    Project details for sysinfo.sh

    freshmeat.net

    sysinfo.sh automatically generates some specs about a Linux system. It's a little too specific to RedHat, but it could easily be modified to work under Debian or SuSE. The output is in HTML. Information gathered includes hardware specs, samba config, inet services, printers, etc.

    [May 14, 2010] Novell SUSE LINUX 10.1 siga

    SIGA stands for System Information GAthering. It collects various system information and outputs it in HTML or ASCII format. Since it needs root permissions, you will be asked for the root password. It is very handy as an information source during installation support phone calls.

    siga-10.101-32.noarch RPM

    [May 12, 2010] Cool Solutions M-Backup

    Written in shell
    Apr 6, 2006

    M-Backup is a tool for making backup of important system files and other important system information. There are many important files that are scattered over the system which needs to be regularly backed up. Keeping track of all these files is quite painful.

    M-Backup is a command line tool that will backup all these files. System administrators can add more files to the list of files that needs to be backed up according to needs.

    M-Backup can even be used for inventory purpose, for keeping record of various configuration information.

    Run by simply issuing the command ./mbackup.sh after logging in as root. It will create a directory MBackup under root's home directory and store the various system information. It will also create a log file that will list all the files and other information that was saved. If mbackup is added in crontab, it can do the jobs automatically.

    [Jun 10, 2009] System Configuration Collector Server

    Both client and server written in shell
    freshmeat.net

    System Configuration Collector (SCC) is yet another configuration collector. It consists of a client and a server part.

    confstore

    A configuration backup utility that makes backups of configuration. Written in Perl.

    Confstore is a configuration backup utility. It scans a system for all recognized configuration files and then stores them in a simple archive. It knows what to scan for by reading a definitions file.

    Confstore can also restore configuration from backup archives it has previously created.

    rsnapshot

    Written in Perl

    rsnapshot is a filesystem snapshot utility based on rsync. It makes it easy to make periodic snapshots of local machines, and remote machines over ssh. It uses hard links whenever possible, to greatly reduce the disk space required.

    Perl Snapshot Is Not Incremental Backup

    Perl Snapshot Is Not Incremental Backup backs up Samba (or Microsoft Windows) shares to central disk space using LinNeighborhood mount scripts as configuration files. The disk space is organized into multiple directories named after the server, share, and date. Each dated directory contains a snapshot of all the files on the exported share on the particular date. Disk usage is reduced by using hardlinks to keep multiple full copies of files available.

    sysreport and sosreport in Red Hat Enterprise Linux

    Server Buddies

    sysreport and sosreport in Red Hat Enterprise Linux

    Before Red Hat Enterprise Linux 4.5, we had "sysreport". The "sosreport" command is a tool that collects information about a Red Hat Enterprise Linux system, such as what kernel is running, what drivers are loaded, and various configuration files for common services. It also does some simple diagnostics against known problematic patterns.

    To run "sosreport", the "sos" package must be installed. The package should be installed by default, but if the package is not installed, follow the steps below:

    Recommended Links

    Google matched content

    Softpanorama Recommended

    Top articles

    Sites



    Etc

    Society

    Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers :   Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism  : The Iron Law of Oligarchy : Libertarian Philosophy

    Quotes

    War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda  : SE quotes : Language Design and Programming Quotes : Random IT-related quotesSomerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose BierceBernard Shaw : Mark Twain Quotes

    Bulletin:

    Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 :  Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method  : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law

    History:

    Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds  : Larry Wall  : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOSProgramming Languages History : PL/1 : Simula 67 : C : History of GCC developmentScripting Languages : Perl history   : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history

    Classic books:

    The Peter Principle : Parkinson Law : 1984 : The Mythical Man-MonthHow to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Hater’s Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite

    Most popular humor pages:

    Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor

    The Last but not Least Technology is dominated by two types of people: those who understand what they do not manage and those who manage what they do not understand ~Archibald Putt. Ph.D


    Copyright © 1996-2021 by Softpanorama Society. www.softpanorama.org was initially created as a service to the (now defunct) UN Sustainable Development Networking Programme (SDNP) without any remuneration. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

    FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

    This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

    You can use PayPal to to buy a cup of coffee for authors of this site

    Disclaimer:

    The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the Softpanorama society. We do not warrant the correctness of the information provided or its fitness for any purpose. The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

    Last modified: March 12, 2019