SYD-RUN(1)

NAME

syd-run - Run a program inside a container with the given process ID

SYNOPSIS

syd-run [-hvacimnptuU] pid {command [arg...]}

DESCRIPTION

The syd-run(2) utility runs a program inside a syd(1) container with the given process ID. This requires the use of system calls setns(2), and pidfd_open(2) which require Linux-5.8 or newer. Entering pid_namespaces(7) and time_namespaces(7) is a privileged operation, whereas entering cgroup_namespaces(7), ipc_namespaces(7), mount_namespaces(7), network_namespaces(7), and uts_namespaces(7) is unprivileged when combined with user_namespaces(7) provided that unprivileged user_namespaces(7) support is enabled in the Linux kernel.

OPTIONS

-h | Display help.
-v | Be verbose. Print informational messages on standard error.
-a | Auto-detect namespaces to enter. PID and Time namespaces are excluded. This is the default.
-c | Enter into CGroup namespace.
-i | Enter into IPC namespace.
-m | Enter into mount namespace.
-n | Enter into network namespace.
-p | Enter into PID namespace.
-t | Enter into time namespace.
-u | Enter into UTS namespace.
-U | Enter into user namespace.

EXIT STATUS

On clean exit, syd-run(1) exits with the same code as the child process. On unclean termination, exit code is set to 128 plus signal number. In case executing the child process fails syd-run(1) exits with the errno(3) number.

SEE ALSO

syd(1), syd(2), syd(5), setns(2), pidfd_open(2)

syd homepage: https://sydbox.exherbo.org/

AUTHORS

Maintained by Ali Polatel. Up-to-date sources can be found at https://gitlab.exherbo.org/sydbox/sydbox.git and on Radicle at rad:z38HCnbmcDegA2BMxuPaPRPMdp6wF. Bugs/patches can be submitted to https://gitlab.exherbo.org/groups/sydbox/-/issues. Discuss in #sydbox on Libera Chat or in #sydbox:mailstation.de on Matrix.