parrot_namespace(1)

πŸ“¦
version 9.9 Β· 3 versions
, in debian bookworm, ubuntu jammy, ubuntu noble

πŸ’– parrot_namespace(1) πŸ’–

okay bestie, welcome to the Cooperative Computing Tools manual, and specifically to parrot_namespace β€” the little tool that's lowkey a genius. let's get into it. πŸ¦‹


✨ NAME ✨

parrot_namespace β€” run a command in a modified namespace.


🌸 SYNOPSIS 🌸

parrot_cp [options] <command>

(yes, that's literally what it says up there, we don't make the rules πŸ’…)


πŸŽ€ DESCRIPTION πŸŽ€

so here's the tea, bestie. parrot_namespace is smart β€” the first thing it does is vibe-check itself to figure out whether it's already chillin' inside a Parrot session.

  • if it is already running under Parrot? it forks a brand new mount namespace inside the Parrot session you're already in. slay.
  • if it isn't? it just goes ahead and executes parrot_run. simple as that.

and here's the part that makes it iconic: if your app only needs to make mount-related changes, then parrot_namespace is a straight-up drop-in replacement for parrot_run β€” because it handles nested invocations all by itself, no extra brainpower required from you. periodt. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • -M, --mount /foo=/bar β€” mount (a.k.a. redirect) /foo to /bar. this one rides with the PARROT_MOUNT_STRING env var. 🫢
  • -m, --ftab-file <path> β€” use <file> as a mountlist. hangs out with PARROT_MOUNT_FILE.
  • -l, --ld-path=<path> β€” path to the ld.so you wanna use.
  • --parrot-path β€” path to parrot_run. (PARROT_PATH, bestie ✨)
  • -v, --version β€” show the version number. classic.
  • -h, --help β€” help: show these very options. hi. πŸŽ€

πŸ¦‹ EXIT STATUS πŸ¦‹

  • success? you get zero. πŸ’–
  • failure? you get non-zero. 😭 that's it, that's the whole thing.

πŸ”₯ EXAMPLES πŸ”₯

so you wanna run Parrot under Parrot, but with a modified mount environment? say less. use parrot_namespace:

% parrot_namespace -M /tmp=/tmp/job01 sh
% parrot_mount --unmount /tmp    # not allowed
okay so that second line? not allowed. the mount is locked in, bestie, no takebacks. πŸ™ˆ

now, in that same shell, we can call parrot_namespace regardless of whether we're already running under Parrot or not. it literally does not care. main character energy:

% parrot_namespace -m mountfile foo

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


🌈 SEE ALSO 🌈


and that's the whole page, bestie!! 🧚 this one's from CCTools 8.0.0 DEVELOPMENT, and yeah the footer says parrot_namespace(1) again because it's obsessed with itself. go forth and namespace responsibly. πŸ’œβœ¨

πŸ“¦ where this page comes from