RCPU(1)                                                   RCPU(1)

     NAME
          rcpu, rimport, rexport, rconnect - connection to CPU server

     SYNOPSIS
          rcpu [ -u user ] [ -k keypattern ] [ -P patternfile ] [ -p ]
          [ -h host ] [ -c cmd arg ... ]

          rimport [ -abcCnq ] [ -s name ] [ -u user ] [ -k keypattern
          ] [ -p ] host tree [ mountpoint ]

          rexport [ -abcCnq ] [ -s remotename ] [ -m remotemtpt ] [ -u
          user ] [ -k keypattern ] [ -P patternfile ] [ -p ] tree host
          [ remotecmd arg ... ]

          rconnect [ -u user ] [ -k keypattern ] [ -p ] host
          remotescript localcommand arg ...

     DESCRIPTION
          Rcpu runs commands from rc(1) on a cpu server with the local
          namespace exported to the remote side under /mnt/term.  The
          current directory, interrupt notes, standard file descrip-
          tors 0,1,2 and /dev/cons are passed to the remote side. The
          command to run can be passed with -c cmd arg ..., otherwise
          an interactive shell is started. The user's profile is run
          before the command with $service set to cpu to allow further
          customization of the environment (see rc(1) for more infor-
          mation).  The cpu server can be specified with -h host, oth-
          erwise it defaults to the environment variable $cpu or is
          looked up from ndb(6).

          Rimport mounts a remote directory tree from a cpu server
          host into the local namespace at mountpoint. When mountpoint
          is omitted, it is set the same as tree. When the -s name
          option is present, the service is also posted to /srv/name
          allowing it to be mounted in other namespaces.

          Rexport is the reverse of rimport, exporting a local direc-
          tory tree to the server host and optionally executing
          remotecmd arg on the server side after posting the service
          to /srv/remotename or mounting it at remotemtpt.

          Rconnect is a helper program handling client side connection
          setup for the commands listed above. The rcpu protocol
          starts by setting up a mutual authenticated and encrypted
          TLS connection using tlssrv(8) followed by the client send-
          ing an rc(1) remotescript file to the server which gets exe-
          cuted under the authenticated user with file descriptors
          0,1,2 cross connected to file descriptors 0,1 of the client
          side running localcommand over the encrypted connection.

     Page 1                       Plan 9             (printed 3/29/24)

     RCPU(1)                                                   RCPU(1)

          The common options are:

          -a -b -c -C -n -q
               Specifies the mount options (see bind(1)) for rimport
               and rexport.

          -P patternfile
               Restricts the set of exported files (see exportfs(4))
               for rcpu and rexport.

          -u user
               Remote user id to authenticate as.

          -k keypattern
               Use keypattern to select a key to authenticate to the
               remote side (see auth(2)).

          -p   Protect the connection against connection resets by
               establishing aan(8) tunnel.

     FILES
          /rc/bin/service/tcp17019

     SOURCE
          /rc/bin/rcpu
          /rc/bin/rimport
          /rc/bin/rexport
          /rc/bin/rconnect

     SEE ALSO
          rc(1), cpu(1), con(1), import(4), exportfs(4), tlssrv(8),
          aan(8)

     Page 2                       Plan 9             (printed 3/29/24)