parrot_namespace(1)

NAME

parrot_namespace - run a command in a modified namespace.

SYNOPSIS

parrot_cp [options] <command>

DESCRIPTION

parrot_namespace detects whether it is already running under Parrot and either forks a new mount namespace in the existing Parrot session or simply executes parrot_run. For applications that only need to make mount-related changes, parrot_namespace is a drop-in replacement for parrot_run that automatically handles nested invocations.

OPTIONS

-M,--mount=</foo=/bar>
    Mount (redirect) </foo> to </bar> (PARROT_MOUNT_STRING)

-m,--ftab-file=<path>
    Use <path> as a mountlist (PARROT_MOUNT_FILE)

-l,--ld-path=<path>
    Path to ld.so to use.

--parrot-path
    Path to parrot_run (PARROT_PATH)

-v,--version
    Show version number

-h,--help
    Help: Show these options

EXIT STATUS

On success, returns zero. On failure, returns non-zero.

EXAMPLES

To run Parrot under Parrot with a modified mount environment, use parrot_namespace

    % parrot_namespace -M /tmp=/tmp/job01 sh
    % parrot_mount --unmount /tmp    # not allowed

Now in the same shell, we can call parrot_namespace regardless of whether we're already running under Parrot or not.

    % parrot_namespace -m mountfile foo

COPYRIGHT

The Cooperative Computing Tools are Copyright (C) 2022 The University of Notre Dame. This software is distributed under the GNU General Public License. See the file COPYING for details.

SEE ALSO

•   Cooperative Computing Tools Documentation

•   Parrot User Manual

•   parrot_run(1) parrot_cp(1) parrot_getacl(1) parrot_setacl(1) parrot_mkalloc(1) parrot_lsalloc(1) parrot_locate(1) parrot_timeout(1) parrot_whoami(1) parrot_mount(1) parrot_md5(1) parrot_package_create(1) parrot_package_run(1) chroot_package_run(1)