Using Operating System Scheduling on UNIX Systems

How Operating System Scheduling Works on UNIX Systems

When you schedule a flow using a UNIX operating system scheduling server, Schedule Manager creates the following files:
  • a flow command script called flowname.sh
  • a log for the submitted script, called flowname.log
The files are written to the path outdir/username/flowdefname, where outdir is the value of the Control Directory attribute in the operating system scheduling server definition.
Since the scheduler does not delete either of these files, you must delete them manually when they are no longer needed. Any user that schedules a flow will need read and write permissions to both the outdir directory and the log.

Manually Submitting a Flow for Execution on a UNIX Operating System Scheduling Server

If you need to manually submit a flow that has been scheduled on a UNIX operating system scheduling server, follow these steps:
  1. Change to the directory where the file flowname.sh is located.
  2. Type sh flowname.sh now at the UNIX shell prompt.
The user that scheduled the flow is also permitted to submit the flow manually.

Manually Canceling a Scheduled Flow on a UNIX Operating System Scheduling Server

If you need to manually cancel a flow that has been scheduled on a UNIX operating system scheduling server, follow these steps:
  1. Open the file flowname.log, and find the job identifier for the job that you want to cancel. The log will contain a separate job identifier for each date and time that the flow is scheduled. Here is an example:
    05/04/20 14:57:30 Flow DailyTestFlow starting 
    commands will be executed 
    using /bin/ksh
     job 1114107300.a at Wed Jun 23 17:02:00 2008
  2. At the UNIX shell prompt, type at -l.
    Scheduled jobs will be displayed in the following format:
    1114107300.a Wed Jun 23 17:02:00 2008
  3. Enter the following command at the UNIX shell prompt, where job-id is the identifier of the job that you want to cancel: at -r job-id.
    For example, if the job identifier is 1114107300.a, enter at -r 1114107300.a.

Limitations of UNIX Operating System Scheduling Servers

On UNIX operating system scheduling servers, SAS 9.3 supports the scheduling of flows that have a single time event as a trigger.
UNIX scheduling uses the at command to execute jobs. However this command might not be enabled for use by the scheduling server's user ID. To determine whether the command is enabled, run a test of the at command. The following is an example test:
echo touch /tmp/attest | at now
sleep 5
ls /tmp/attest