|Home||Switchboard||Unix Administration||Red Hat||TCP/IP Networks||Neoliberalism||Toxic Managers|
May the source be with you, but remember the KISS principle ;-)
Skepticism and critical thinking is not panacea, but can help to understand the world better
|News||NTP -- Network Time Protocol||Recommended Links||Chrony||Linux Networking Configuration||Troubleshooting NTP on Red Hat Linux|
|RHEL handling of DST change||Troubleshooting NTP on Solaris||ILO 3 NTP configuration||date command||Humor||RHEL 6 NTP configuration|
Most client-server applications depends on synchronization of time on all servers with central time services provider. Unsynchronized server is a source of very difficult to troubleshoot errors, so the correctness of NTP configuration should be changed first in any such troubleshooting. So it is very important that this daemon is configured correctly and NTP works as expected. That main difficulties happen if you you are behind firewall or proxy.
RHEL7 introduced a new chrony daemon and new utilities for managing NTP.
RHEL 7 changes default provide of NTP to chrony, which create the need to learn this new daemon. The idea behind chrony is that most sever do not need full fledged NTP daemon as they are consumer of those servers and never the providers.
While on RHEL 7, chrony is the default solution to manage network time. NTP can still be implemented through the old ntpd, daemon. If you have services that need ntpd, you are free to use it, but you should realize that in that case you cannot use the timedatectl command.
Each server contains a hardware clock. Typically, it is an integrated circuit on the system board that is completely independent of the current state of the operating system and keeps running even when the computer is shut down. From the hardware clock, the system gets its initial time setting during the boot.
The time on the hardware clock on Linux servers is usually set to universal time coordinated (UTC). UTC is a time that is the same everywhere on the planet, and based on UTC, the current local time is calculated. To do this we need to provide offset called the time zone.
System time is a time maintained by the operating system. Once the system has booted, the system clock became independent of the hardware clock. The system also can synchronize hardware c lock with the external source of precise time -- the time server. Time server can be external or internal. For large corporation it is typically internal.
System time is a time that is maintained by the operating system and it is kept in UTC. Applications running on the server are converting system time into local time. Local time is the actual time in the current time zone. Moreover there are twice a year changes (to and from winter time), which are called daylight savings time (DST) which moves the local time one hour and creates a lot of difficulties.
Network Time Protocol (NTP). NTP is a method of maintaining system time that is provided through NTP servers on the Internet. It is an easy solution to provide an accurate time to servers, because most servers are connected to the Internet anyway.
NTP was developed by David Mills and others at the University of Delaware as a means for solving the problem of time synchronization between different servers connected to the Internet. Detailed information about NTP, version of the protocol and corresponding RFCs can be found at www.ntp.org
NTP runs on UDP port 123. The NTP servers advertise every 64 seconds, by means of a multicast address (126.96.36.199), that they are NTP servers. Any NTP client that is not configured with the unicast address of an NTP server multicasts . The NTP client sends request packets to all the NTP servers that it knows using their unicast addresses. Included in the request packet is the client’s local time. The NTP server replies by inserting UTC time into the return packet. The client compares its original request time with its own time when it receives the response from the server. This allows the client to determine how long the packet was in transit on the network.
Despite trivial semantic NTP is a rather complex protocol. Servers are organized into hierarchical levels called stratum that act in a hierarchy.
Several additional terms are used when describing NTP-related topics:
NTP client software is essentially nothing more then an intelligent corrector of the latency errors due to transmission via IP. All modern OSes provide daemons for NTP protocol but the devil in in details. RHEL 6 used different daemon then RHEL 7.
Setting up a server to use NTP time on RHEL 7 means that you need to put into the file /etc/chrony.conf the list of NTP servers that should be used.
You can switch on NTP and provided initial set of NTP servers in Anaconda during the installation and this is preferable way to doing this task. If you made a mistake or the situation changed you need manually switch on NTP, by using timedatectl set-ntp 1 and correct the set proper NTP servers. This is especially important if the server is behind firewall or proxy, because in this case default server do not work -- they are not assessable.
RHEL 7 introduced a new set of command for managing NTP. Old books describing RHEL6 techniques of managing NTP for the most part are no longer valid
On a Linux system, time is calculated as an offset of epoch time. Epoch time is the number of seconds since January 1, 1970, in UTC. In some logs (such as /var/log/audit/audit.log), you’ll find time stamps in epoch time and not in human time. To convert such an epoch time stamp to human time, you can use the --date option, followed by the epoch string that is starting with an @:
date --date '@1420987251'
The use of epoch time is also creating a potential timing problem on Linux. On a 32-bit system, the number of seconds that can be counted in the field that is reserved for time notation is finished in 2037. But at this point hardware that uses 32 bit presentation will long be obsolete so this is not a problem.
Date command is a lone survivor from older version on Linux and UNIX. While most sysadmin know about the date command existence, they often do not suspect what additional capabilities it has.
Like most Linux commands it can do more than a typical sysadmin expects. For example, you can also use it to show the current time in different formats. Some useful examples of date are listed here:
date # Shows the current system time date +%d-%m-%y # Shows the current system day of month, month, and year date -s 16:03 # Sets the current time to 3 minutes past 4 p.m.
The date command enables you to set and show the current system time. Using the date command will not change the hardware time that is used on your system.
To synchronize hardware clock with system clock , you can use the hwclock command. The hwclock command has many options. Among most useful:
hwclock -c # shows the difference between hardware time and system time. The output refreshed every 10 seconds hwclock --systohc # synchronizes current system time to the hardware clock. hwclock --hctosys # synchronizes current hardware time to the system clock.
[root@server1 ~]# hwclock -c hw-time system-time freq-offset-ppm tick 1428584002 1428584002.011018 1428584012 1428584012.033019 2200 22 1428584022 1428584022.054953 2197 22 1428584032 1428584032.083572 2418 24 1428584042 1428584042.111683 2517 25
This is new command introduced in RHEL 7. It enables you to manage many aspects of time is When used without any arguments, timedatectl shows detailed information about the current time and date. It also displays the time zone your system is in, in addition to information about the use of NTP network time and information about the use of DST.
Click here to view code image
[root@localhost ~]# timedatectl Local time: Sun 2015-01-11 10:02:41 EST Universal time: Sun 2015-01-11 15:02:41 UTC RTC time: Sun 2015-01-11 15:02:51 Timezone: America/New_York (EST, -0500) NTP enabled: n/a NTP synchronized: no RTC in local TZ: no DST active: no Last DST change: DST ended at Sun 2014-11-02 01:59:59 EDT Sun 2014-11-02 01:00:00 EST Next DST change: DST begins (the clock jumps one hour forward) at Sun 2015-03-08 01:59:59 EST Sun 2015-03-08 03:00:00 EDT
The timedatectl command works with commands to perform time operations.
The timedatectl command was developed as a generic solution to manage time on RHEL 7. It has some functions that are offered through other commands, but the purpose of the command is that eventually it will replace other commands used for managing time and date settings.
When timedatectl is used to switch on NTP time, it talks to the chronyd process.
Click here to view code image
[root@localhost system]# systemctl status -l chronyd chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled) Active: active (running) since Sun 2015-01-11 10:20:15 EST; 2min 14s ago Process: 13938 ExecStartPost=/usr/libexec/chrony-helper add-dhclient- servers (code=exited, status=0/SUCCESS) Process: 13935 ExecStart=/usr/sbin/chronyd -u chrony $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 13937 (chronyd) CGroup: /system.slice/chronyd.service 13937 /usr/sbin/chronyd -u chrony Jan 11 10:20:15 localhost.localdomain chronyd: chronyd version 1.29.1 starting Jan 11 10:20:15 localhost.localdomain chronyd: Linux kernel major=3 minor=10 patch=0 Jan 11 10:20:15 localhost.localdomain chronyd: hz=100 shift_hz=7 freq_scale=1.00000000 nominal_tick=10000 slew_delta_tick=833 max_tick_ bias=1000 shift_pll=2 Jan 11 10:20:15 localhost.localdomain chronyd: Generated key 1 Jan 11 10:20:15 localhost.localdomain systemd: Started NTP client/ server. Jan 11 10:20:20 localhost.localdomain chronyd: Selected source 188.8.131.52 Jan 11 10:20:20 localhost.localdomain chronyd: System clock wrong by 11.256802 seconds, adjustment started Jan 11 10:20:31 localhost.localdomain chronyd: System clock was stepped by 11.257 seconds Jan 11 10:20:33 localhost.localdomain chronyd: Selected source 184.108.40.206
Between Linux servers, time is normally communicated in UTC. This allows servers across different time zones to all use the same time settings, which makes managing time in large organizations a lot easier. To make it easier for end users, though, the local time must also be set. To do this, the appropriate time zone needs to be selected.
On Red Hat Enterprise Linux 7, you have four approaches to setting the correct local time zone:
Use the system-config-date utility as discussed in the next section of this chapter.
Go to the directory /usr/share/zoneinfo. In this directory, you’ll find different subdirectories containing files for each of the time zones that has been defined. To set the local time zone on a server, you can create a symbolic link with the name /etc/localtime to the time zone file that is involved. If you want to set local time to Los Angeles time, for instance, use ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime.
Use the tzselect utility. This tool starts the interface , from which the appropriate region and locale can be selected.
Use timedatectl to set the time zone information.
If your server is configured with a graphical interface, you can use the graphical tool to manage time. To do so, follow these steps:
Alternatively, you can start the graphical utility to manage time by using the system-config-date command. The interface of this utility is similar to what you see in Anaconda during the initial installation of Red Hat.
[root@server1 ~]# tzselect Please identify a location so that time zone rules can be set correctly. Please select a continent or ocean. 1) Africa 2) Americas 3) Antarctica 4) Arctic Ocean 5) Asia 6) Atlantic Ocean 7) Australia 8) Europe 9) Indian Ocean 10) Pacific Ocean 11) none - I want to specify the time zone using the Posix TZ format. #? 2 Please select a country. 1) Anguilla 28) Haiti 2) Antigua & Barbuda 29) Honduras 3) Argentina 30) Jamaica 4) Aruba 31) Martinique 5) Bahamas 32) Mexico 6) Barbados 33) Montserrat 7) Belize 34) Nicaragua 8) Bolivia 35) Panama 9) Brazil 36) Paraguay 10) Canada 37) Peru 11) Caribbean Netherlands 38) Puerto Rico 12) Cayman Islands 39) St Barthelemy 13) Chile 40) St Kitts & Nevis 14) Colombia 41) St Lucia 15) Costa Rica 42) St Maarten (Dutch part) 16) Cuba 43) St Martin (French part) 17) Curacao 44) St Pierre & Miquelon 18) Dominica 45) St Vincent 19) Dominican Republic 46) Suriname 20) Ecuador 47) Trinidad & Tobago 21) El Salvador 48) Turks & Caicos Is 22) French Guiana 49) United States 23) Greenland 50) Uruguay 24) Grenada 51) Venezuela 25) Guadeloupe 52) Virgin Islands (UK) 26) Guatemala 53) Virgin Islands (US) 27) Guyana #?
Feb 09, 2020 | www.2daygeek.com
It can synchronize the system clock faster with better time accuracy and it can be very much useful for the systems which are not online all the time.
Chronyd is smaller in size, it uses less system memory and it wakes up the CPU only when necessary, which is better for power saving.
It can perform well even when the network is congested for longer periods of time.
You can use any of the below commands to check Chrony status.
To check chrony tracking status.# chronyc tracking Reference ID : C0A80105 (CentOS7.2daygeek.com) Stratum : 3 Ref time (UTC) : Thu Mar 28 05:57:27 2019 System time : 0.000002545 seconds slow of NTP time Last offset : +0.001194361 seconds RMS offset : 0.001194361 seconds Frequency : 1.650 ppm fast Residual freq : +184.101 ppm Skew : 2.962 ppm Root delay : 0.107966967 seconds Root dispersion : 1.060455322 seconds Update interval : 2.0 seconds Leap status : Normal
Run the sources command to displays information about the current time sources.# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* CentOS7.2daygeek.com 2 6 17 62 +36us[+1230us] +/- 1111ms
Dec 12, 2019 | www.maketecheasier.com
Mastering the Command Line: Use timedatectl to Control System Time and Date in Linux By Himanshu Arora – Posted on Nov 11, 2014 Nov 9, 2014 in Linux
timedatectlcommand in Linux allows you to query and change the system clock and its settings. It comes as part of systemd, a replacement for the sysvinit daemon used in the GNU/Linux and Unix systems.
In this article, we will discuss this command and the features it provides using relevant examples.Timedatectl examples
Note – All examples described in this article are tested on GNU bash, version 4.3.11(1).Display system date/time information
Simply run the command without any command line options or flags, and it gives you information on the system's current date and time, as well as time-related settings. For example, here is the output when I executed the command on my system:$ timedatectl Local time: Sat 2014-11-08 05:46:40 IST Universal time: Sat 2014-11-08 00:16:40 UTC Timezone: Asia/Kolkata (IST, +0530) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a
So you can see that the output contains information on LTC, UTC, and time zone, as well as settings related to NTP, RTC and DST for the localhost.Update the system date or time using the set-time option
To set the system clock to a specified date or time, use the
set-timeoption followed by a string containing the new date/time information. For example, to change the system time to 6:40 am, I used the following command:$ sudo timedatectl set-time "2014-11-08 06:40:00"
and here is the output:$ timedatectl Local time: Sat 2014-11-08 06:40:02 IST Universal time: Sat 2014-11-08 01:10:02 UTC Timezone: Asia/Kolkata (IST, +0530) NTP enabled: yes NTP synchronized: no RTC in local TZ: no DST active: n/a
Observe that the Local time field now shows the updated time. Similarly, you can update the system date, too.Update the system time zone using the set-timezone option
To set the system time zone to the specified value, you can use the
set-timezoneoption followed by the time zone value. To help you with the task, the
timedatectlcommand also provides another useful option.
list-timezonesprovides you with a list of available time zones to choose from.
For example, here is the scrollable list of time zones the
timedatectlcommand produced on my system:
To change the system's current time zone from Asia/Kolkata to Asia/Kathmandu, here is the command I used:$ timedatectl set-timezone Asia/Kathmandu
and to verify the change, here is the output of the
timedatectlcommand:$ timedatectl Local time: Sat 2014-11-08 07:11:23 NPT Universal time: Sat 2014-11-08 01:26:23 UTC Timezone: Asia/Kathmandu (NPT, +0545) NTP enabled: yes NTP synchronized: no RTC in local TZ: no DST active: n/a
You can see that the time zone was changed to the new value.Configure RTC
You can also use the
timedatectlcommand to configure RTC (real-time clock). For those who are unaware, RTC is a battery-powered computer clock that keeps track of the time even when the system is turned off. The
timedatectlcommand offers a
set-local-rtcoption which can be used to maintain the RTC in either local time or universal time.
This option requires a boolean argument. If 0 is supplied, the system is configured to maintain the RTC in universal time:$ timedatectl set-local-rtc 0
but in case 1 is supplied, it will maintain the RTC in local time instead.$ timedatectl set-local-rtc 1
A word of caution : Maintaining the RTC in the local time zone is not fully supported and will create various problems with time zone changes and daylight saving adjustments. If at all possible, use RTC in UTC.
Another point worth noting is that ifConfigure NTP-based network time synchronization
set-local-rtcis invoked and the
--adjust-system-clockoption is passed, the system clock is synchronized from the RTC again, taking the new setting into account. Otherwise the RTC is synchronized from the system clock.
NTP, or Network Time Protocol, is a networking protocol for clock synchronization between computer systems over packet-switched, variable-latency data networks. It is intended to synchronize all participating computers to within a few milliseconds of UTC.
timedatectlcommand provides a
set-ntpoption that controls whether NTP based network time synchronization is enabled. This option expects a boolean argument. To enable NTP-based time synchronization, run the following command:$ timedatectl set-ntp true
To disable, run:$ timedatectl set-ntp falseConclusion
As evident from the examples described above, the
timedatectlcommand is a handy tool for system administrators who can use it to to adjust various system clocks and RTC configurations as well as poll remote servers for time information. To learn more about the command, head over to its man page .
Dec 12, 2019 | linoxide.com
Set Time/Date/Timezone in Ubuntu Linux February 5, 2019 Updated September 27, 2019 By Pungki Arianto LINUX COMMANDS , LINUX HOWTO
Time is an important aspect in Linux systems especially in critical services such as cron jobs. Having the correct time on the server ensures that the server operates in a healthy environment that consists of distributed systems and maintains accuracy in the workplace.
In this tutorial, we will focus on how to set time/date/time zone and to synchronize the server clock with your Ubuntu Linux machine.Check Current Time
You can verify the current time and date using theUsing the date command
timedatectlcommands. These linux commands can be executed straight from the terminal as a regular user or as a superuser. The commands are handy usefulness of the two commands is seen when you want to correct a wrong time from the command line.
Log in as a root user and use the command as follows$ date
You can also use the same command to check a date 2 days ago$ date --date="2 days ago"
Using timedatectl command
Checking on the status of the time on your system as well as the present time settings, use the command timedatectl as shown# timedatectl
or# timedatectl status
We use the
timedatectlto change system time using the format HH:MM: SS. HH stands for the hour in 24-hour format, MM stands for minutes and SS for seconds.
Setting the time to 09:08:07 use the command as follows (using the timedatectl)# timedatectl set-time 09:08:07using date command
Changing time means all the system processes are running on the same clock putting the desktop and server at the same time. From the command line, use date command as follows# date +%T -s "10:13:13"
• 10: Hour (hh)
• 13: Minute (mm)
• 13: Second (ss)
To change the locale to either AM or PM use the %p in the following format.# date +%T%p -s "6:10:30AM"# date +%T%p -s "12:10:30PM"Change Date
Generally, you want your system date and time is set automatically. If for some reason you have to change it manually using date command, we can use this command :
# date --set="20140125 09:17:00"
It will set your current date and time of your system into 'January 25, 2014' and '09:17:00 AM'. Please note, that you must have root privilege to do this.
You can use timedatectl to set the time and the date respectively. The accepted format is YYYY-MM-DD, YYYY represents the year, MM the month in two digits and DD for the day in two digits. Changing the date to 15 January 2019, you should use the following command# timedatectl set-time 20190115Create custom date format
To create custom date format, use a plus sign (+)
$ date +"Day : %d Month : %m Year : %Y"
Day: 05 Month: 12 Year: 2013
$ date +%D
%D format follows Year/Month/Day format .
You can also put the day name if you want. Here are some examples :
$ date +"%a %b %d %y"
Fri 06 Dec 2013
$ date +"%A %B %d %Y"
Friday December 06 2013
$ date +"%A %B %d %Y %T"
Friday December 06 2013 00:30:37List/Change time zone
$ date +"%A %B-%d-%Y %c"
Friday December-06-2013 12:30:37 AM WIB
Changing the time zone is crucial when you want to ensure that everything synchronizes with the Network Time Protocol. The first thing to do is to list all the region's time zones using the list-time zones option or grep to make the command easy to understand# timedatectl list-timezones
The above command will present a scrollable format.
Recommended timezone for servers is UTC as it doesn't have daylight savings. If you know, the specific time zones set it using the name using the following command# timedatectl set-timezone America/Los_Angeles
To display timezone execute# timedatectl | grep "Time"
Set the Local-rtc
The Real-time clock (RTC) which is also referred to as the hardware clock is independent of the operating system and continues to run even when the server is shut down.
Use the following command# timedatectl set-local-rtc 0
In addition, the following command for the local time# timedatectl set-local-rtc 1Check/Change CMOS Time
The computer CMOS battery will automatically synchronize time with system clock as long as the CMOS is working correctly.
hwclockcommand to check the CMOS date as follows# hwclock
To synchronize the CMOS date with system date use the following format# hwclock –systohc
To have the correct time for your Linux environment is critical because many operations depend on it. Such operations include logging events and corn jobs as well. we hope you found this article useful.Read Also:
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
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 quotes : Somerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose Bierce : Bernard Shaw : Mark Twain Quotes
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
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 DOS : Programming Languages History : PL/1 : Simula 67 : C : History of GCC development : Scripting 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
The Peter Principle : Parkinson Law : 1984 : The Mythical Man-Month : How 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-2020 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|
Last modified: February 10, 2020