NEWTASK(1)                      User Commands                     NEWTASK(1)
NAME
       newtask - create new task and optionally change project
SYNOPSIS
       newtask [
-p project] [
-v] [
-c pid | [
-Fl] [
command...]]
DESCRIPTION
       The 
newtask command executes the user's default shell or a specified
       command, placing the executed command in a new task owned by the
       specified project. The user's default shell is the one specified in
       the 
passwd database, and is determined using 
getpwnam().
       Alternatively, newtask can be used to cause an already running
       process to enter a newly created task. A project for the new task can
       also be specified in this form of the command. This might be
       desirable for processes that are mission critical and cannot be
       restarted in order to put them into a new project.
       In the case that extended accounting is active, the 
newtask command
       can additionally cause the creation of a task accounting record
       marking the completion of the preceding system task.
OPTIONS
       The following options are supported:       
-c pid                 Cause a running process to enter a newly created task. A
                 project for the new task can also be specified using the 
-p                 option. The invoking user must either own the process or
                 have super-user privileges.
                 If the project is being changed, the process owner must be
                 a member of the specified project, or the invoking user
                 must have super-user privileges. When the project is
                 changed for a running process, its pool binding as well as
                 resource controls are modified to match the configuration
                 of the new project.  Controls not explicitly specified in
                 the project entry is preserved.
                 This option is incompatible with the 
-F and 
-l options.       
-F                 Creates a finalized task, within which further 
newtask or                 
settaskid(2) invocations would fail. Finalized tasks can be
                 useful at some sites for simplifying the attribution of
                 resource consumption.       
-l                 Changes the environment to what would be expected if the
                 user actually logged in again as a member of the new
                 project.       
-p                 Changes the project 
ID of the new task to that associated
                 with the given project name. The invoking user must be a
                 valid member of the requested project, or must have super-
                 user privileges, for the command to succeed. If no project
                 name is specified, the new task is started in the invoking
                 user's current project.       
-v                 Verbose: displays the system task id as the new system task
                 is begun.
OPERANDS
       The following operands are supported:       
project                  The project to which resource usage by the created task
                  should be charged. The requested project must be defined
                  in the project databases defined in 
nsswitch.conf(5).       
command                  The command to be executed as the new task. If no command
                  is given, the user's login shell is invoked. (If the login
                  shell is not available, 
/bin/sh is invoked.)
EXAMPLES
       Example 1: Creating a New Shell
       The following example creates a new shell in the 
canada project,
       displaying the task id:
         example$ 
id -p         uid=565(gh) gid=10(staff) projid=10(default)
         example$ 
newtask -v -p canada         38
         example$ 
id -p         uid=565(gh) gid=10(staff) projid=82(canada)
       Example 2: Running the date Command
       The following example runs the date command in the 
russia project:
         example$ 
newtask -p russia date         Tue Aug 31 11:12:10 PDT 1999
       Example 3: Changing the Project of an Existing Process
       The following example changes the project of the existing process
       with a pid of 
9999 to 
russia:
         example$ 
newtask -c 9999 -p russiaEXIT STATUS
       The following exit values are returned:       
0            Successful execution.       
1            A fatal error occurred during execution.       
2            Invalid command line options were specified.
FILES
       /etc/project                       Local database containing valid project definitions
                       for this machine.       
/proc/pid/*                       Process information and control files.
SEE ALSO
       proc(1), 
execvp(2), 
setrctl(2), 
settaskid(2), 
setproject(3PROJECT),       
nsswitch.conf(5), 
proc(5), 
project(5), 
attributes(7), 
id(8),       
poolbind(8)                              November 17, 2004                   NEWTASK(1)