". Their new virtual clock will override the group virtual clock they would normally use. In order to allow users to set their own clock, the utility tmuser_setup must have been run by an administrator. This virtual clock will last until a system reboot or until it is manually removed by the user or an administrator. Why use Time Machine and not just reset the system clock? Productivity is boosted since you are not limited to one clock. Time Machine also avoids single threaded testing, time-bombed programs and expired accounts! Re-setting the hardware clock forward will affect ALL programs trying to see the system’s clock, including the password program and software with expiration dates. Time Machine allows users to see a virtual time while keeping the system clock to the present time. Time Machine addresses time-bombed programs with its exclusion list. Any programs listed on the exclusion list will not see the virtual clock but rather will continue to see the system date and time. Will other users on the same system see "my" virtual date and time and get confused? No. Only the users activated in Time Machine will see the virtual date and time specified for each user. Can I have different users see different virtual dates and times on the same system? Absolutely, for example, multiple clocks can be setup for each user so that they see their respective time zone. Will Time Machine cause file time stamps to be updated to the virtual date and time? I am worried about my backups and system logging. File time stamps are always recorded in Universal Time Coordinated (UTC), a global time standard equivalent to Greenwich Mean Time (GMT). This makes them independent of the system clock and any virtual clock settings. When displayed, file time stamps are rendered in the local time, which can be virtual or real, depending on your settings. When the virtual time rolls over at midnight, does the virtual date also roll over to the next day? Yes, absolutely. Virtual date rollover provides smooth testing when the virtual time rolls over. You can also freeze time with Time Machine. My demo and rental software may expire. How can I run those programs without having them expire? Unlike resetting the system clock and globally impacting all processes, Time Machine allows users to selectively enable just a subset of users to see the virtual date and time. In addition, using the exclusion list feature enables programs to see the current date and time even while Time Machine is being run in the users session. Other than time zone correction, what else can I use Time Machine for? Time Machine can be used for training. For example, you can use Time Machine to simulate the exact environment for month-end or quarter-end processing. It can be used to redo certain date and time-sensitive operations. Let''s say you missed quarter-end processing due to a hardware problem. Now, three days later, you can use Time Machine to regenerate the quarter-end report as if it were running on that exact date and time. Users in Japan can generate reports in their local time with Time Machine on a system located in the United States. The possibilities are endless. UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved31 SECTION 5. TIME MACHINE COMMANDS This section will describe commands installed into the Time Machine Windows Start Menu. EXCLUSION Programs can be excluded from Time Machine when a virtual clock is set for a user or group. This section describes exclusions. PERMANENT EXCLUSION Administrators can permanently exclude programs from Time Machine by setting up the configuration file tmexcl.cf. The file is loaded by Time Machine at startup. If Time Machine cannot access or find tmexcl.cf in the installation directory, it fails to start, showing error 4008575282. Time Machine would also log an explanatory message to the Application Log. To make Time Machine load tmexcl.cf at any time, Administrators run the command tmexb from the Windows Start Menu if they want to replace the memory loaded Programs Exclusion List. By default, only the Administrators have read/write access to tmexcl.cf. The contents in the configuration file will not become effective until tmexb is run or Time Machine is restarted. Example To permanently exclude Microsoft Word and Microsoft PowerPoint, perform the following steps: UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved32 1. Select Edit tmexcl.cf from the Time Machine folder in the Windows Start Menu. This starts a Notepad session opening the tmexcl.cf file for edit. 2. Add the following text to the file # This file contains programs that always need to see the system time. # C:\Program Files\Microsoft Office\Office\WinWord.exe C:\Program Files\Microsoft Office\Office\PowerPnt.exe 3. Run tmexb from the Time Machine folder in the Windows Start Menu to effect the new exclusions immediately. TEMPORARY EXCLUSION Administrators can temporarily exclude programs from Time Machine by using the command tmexcl. The effect of tmexcl is lost when Time Machine is restarted. Example: tmexcl –a “C:\Program Files\Microsoft Office\Office\PowerPnt.exe” VIRTUAL CLOCKS PERMANENT VIRTUAL CLOCKS Time Machine loads the permanent virtual clocks from the configuration file tmuser.cf at startup time, before any logon is accepted by the system. This provides a reliable means for ensuring that certain users receive a virtual clock on logon. Adding virtual clocks to tmuser.cf is quite straightforward and follows a few simple rules. Time Machine reads tmuser.cf only when it starts. Any change to the file will become effective on the next start of Time Machine, unless the file is loaded with the command tm. This command allows you to immediately affect the virtual clocks listed in tmuser.cf by either replacing the current list maintained by Time Machine, or adding the new list to the current one. If an account is listed multiple times, only the last occurrence gets loaded. Similarly, if an account in the file to be added is already present in the current list of virtual clocks maintained by Time Machine, the account from the file replaces the current virtual clock. The name of tmuser.cf is fixed. Its location is determined at installation time but can be changed afterwards if you wish to load a networked copy. When started, Time Machine tries to open tmuser.cf. If it cannot find or access the file, Time Machine logs an error in the Application Log, then it shuts down returning error 4008575282. UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved33 The file tmuser.cf can list as many clocks as the current maximum number supported by Time Machine. Any clocks beyond that number will be discarded. The most frequent use of tmuser.cf is for setting up virtual time zone clocks, clocks with a virtual time zone but current date and time for Terminal Services users scattered in several time zones. After creating one group of users per time zone, the administrator can add the group names and their time zones in tmuser.cf. This guarantees that those groups'' members will get the right time zone setting every time they logon. If allowed by the administrator, they can override the tmuser.cf clock setting and create a "user" temporary virtual clock that is in effect as long as Time Machine is running, and that will be lost when Time Machine is shut down. Time Machine will use instead of the group clock as long as the logon session lasts. This is useful for users that are normally based in a certain time zone, but that occasionally roam across time zones. Example 1 The company XYZ has a Terminal Server farm organized into several domains, two of which are "Accounting", and "HumanResources". The domains are located in Denver, Colorado. Some users work from offices in Boston and San Francisco, connecting to the servers in Denver. To make those users permanently see their own time zones instead of the Central time zone of Colorado, the administrator edits the file tmuser.cf on any of the logon servers used by the users in Boston and San Francisco, then he/she propagates the changes to all other copies of tmuser.cf on the logon servers in the domains of interest. Assuming that the remote users are organized into the groups "Accounting\Boston Group", "Accounting\SanFrancisco Group", "HumanResources\Boston Group", and "HumanResources\SanFrancisco Group", the file tmuser.cf will contain the following lines: # # Time zones for remote offices in Boston and San Francisco. # "accounting\boston group" z=eastern "accounting\sanfrancisco group" z=pacific "humanresources\boston group" z=eastern "HumanResources\SanFrancisco Group" z=pacific Note the account names in quotes due to the presence of a space in them. The group names are preceded by the domain name to avoid confusion, since the same names are used in different domains. Note also that the account names have no "group" or "user" qualifiers, because user and group accounts share the same name space, and must therefore be unique. Example 2 The company XYZ runs a payroll service, and needs to train some new employees on the use of their payroll software. Since the software is run biweekly, the administrator has setup a special user group called "PayrollTrainees", and assigned to it an absolute clock which is a virtual date, time, and or time zone clock independent from the System Clock. The absolute clock is listed in tmuser.cf, as follows: # # Absolute clock for Payroll Software Training Group. # PayrollTrainees 101309002000 # 10/13/2000 09:00 triggers payroll run. UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved34 Members of the PayrollTrainees group will get the date and time "October 13, 2000, 9:00" every time they logon. They can proceed with the simulation of a biweekly payroll run, without interfering with the normal production environment executing on the same system. Example 3 The company XYZ needs to conduct some tests on a new software release with the current time five years in the future. The administrator specified the following relative clock which is a virtual date and/or time expressed relative to the System Clock. The time zone is that of the System Clock. File tmuser.cf for the group "Test Group" in charge of such testing: # # Relative virtual clock for Test Group. # "Test Group" y=5 # Current time 5 years from now. The same company hired John to test certain software using a virtual clock set exactly 3 years, 2 hours and 30 minutes in the past from now. The administrator adds the following line to tmuser.cf: # Relative virtual clock for John. John y=-3,D=-10,h=-2,m=-30 # 3 years, 10 days, 2 hours, 30 min in the past Note that no spaces are allowed in the relative clock descriptor starting with "y=" and ending with "30". Example 4 The company XYZ has a group of users dedicated to testing certain software. The group, called "Big Freeze", needs a clock locked to "Dec. 31, 2001, 23:01". The administrator adds the following line to tmuser.cf: # # Absolute frozen clock for the Big Freeze group. # "Big Freeze" x=123123012017 f # Frozen absolute clock 12/31/2017 23:01. The parameter "f" makes the clock frozen. Note that "x=" can be omitted. Example 5 The QA group always wants the test version of the corporate CRM application to run at 4 times the normal speed whenever it is started. To achieve this all the administrator needs to specify is a relative clock which is a zero minutes offset from the real time and has a clock-speed modifier of “4”. # # Variable Speed clock for QA’s CRM. # "QA-CRM" m=0 -4 # Start with current time and run 4 times slower UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved35 TEMPORARY VIRTUAL CLOCKS Temporary virtual clocks are cleared when the system or Time Machine is restarted. All virtual clocks created with the tmuser command are temporary virtual clocks. The tmuser command is explained in detail in Section 6: Command Reference. ACTIVITY LOGGING Time Machine can log every virtual clock access to the system’s Application Log, according to a policy based on logging levels. When it is installed, Time Machine uses the default logging level 1, at which only errors and warnings are logged. Any change to the logging level is persistent across system reboots, and should be made keeping in mind that it can cause a decrease of the product''s performance. The following levels are supported: 1. Logs informational events, warnings, and critical errors (default). 2. Logs all Time Machine configuration changes. 3. Logs every access to virtual clocks. 4. Logs every access to the system clock. 5. Logs detailed group membership information. Each level includes the functionality provided by the lower ones. To query or change the current logging level, Time Machine provides the console command tmlogl. The tmlogl can be invoked without parameters to show the current logging level, or with the number of the level to be set. Example To read the current logging level, and then set it to 5 if lower, start the tmlogl utility and type the following parameters: UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved36 Now open the Event Viewer. A dialog similar to this will be displayed: Double-click on any Time Machine Event ID 13. A dialog similar to this will pop up: UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved37 It describes a "Clock Read" event triggered by the program "Explorer.exe" ran by the "Administrator" user account. Explorer reads a virtual local time instead of the system''s local time because the administrator has a virtual clock. The administrator''s group memberships are also listed. ALLOWING USERS TO SET VIRTUAL CLOCKS The command tmuser_setup allows for users that are not Administrators to set virtual clocks for themselves. This command is part of the installation process but can be revisited at any time. Allowing users to create their own virtual clocks is required for other products in the Time Machine Suite of Products. Where this is a requirement, it is called out in the Systems Requirements Section in the product documentation. SECTION 6: COMMAND REFERENCE Time Machine comes with the following utilities: NAME EXECUTE PURPOSE PERMISSION tm Administrators Sets the Time Machine virtual clocks from file. tmexb Administrators Sets the Time Machine''s Programs Exclusion List from file. tmexcl Administrators Sets program names to be excluded from Time Machine. tmlogl Administrators Logs Time Machine activities. tmuser Administrators, any Creates, deletes, and lists virtual clocks belonging to any user. user with permission tmuser_setup Administrators Grants all users permission to run TmUserGui and tmuser, if not selected during installation. TmUserGui Administrators, any Creates, deletes, and lists your own virtual clock using a graphical user user with permission interface. This has been obsoleted by the Time Machine Management Console Upgrade Administrators Upgrades the Time Machine software license. License All console commands accept the parameter "?" that causes the displaying of the Time Machine version and the command usage. UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved38 TM The command tm loads a list of virtual clocks from a file into Time Machine. Some options are available: COMMAND SYNTAX EFFECT tm Replaces all virtual clocks with the list from the file tmuser.cf located in the installation directory. tm -r tm -a Adds the virtual clocks from the file tmuser.cf to the current ones. tm
Replaces all virtual clocks with the list from the file
. tm -r
tm -a
Adds the virtual clocks from the file
to the current ones. TMEXB The command tmexb loads the Programs Exclusion List from a file into Time Machine. Some options are available: COMMAND SYNTAX EFFECT tmexb Replaces the Programs Exclusion List with the list from the file tmexcl.cf. The Time Machine-predefined programs on the Programs Exclusion List are not tmexb -r affected. tmexb -a Adds the list from the file tmexcl.cf to the Programs Exclusion List. tmexb
Replaces the Programs Exclusion List with the list from the file
. The Time Machine-predefined programs on the Programs Exclusion List are not tmexb -r
affected. tmexb -a
Adds the list from the file
to the Programs Exclusion List. UG306_20170306_v.1_45 Copyright © 1993-2017 SolutionSoft Systems, Inc. All rights reserved39 TMEXCL The Programs Exclusion can also be managed with the command tmexcl. The full command syntax is as follows: tmexcl [
]
::=