Filesystem noexec flags
How to handle cases where script execution is disabled on remote systems temporary directories
About
The 'NOEXEC' flag in the mount command for Unix systems does not allow the execution of executable binaries in the mounted file system. If your /tmp directory is mounted with this option, mostly for security reasons, then certain XPipe features like scripting and sudo elevation are not possible on that system by default. You will get a permission denied error even if a file is marked as executable.
Checking for noexec
You can easily list all mountpoints that are configured with the noexec flag with:
If the list it contains /tmp
, for example, with something like this:
then you will need to change the temp director for XPipe to one that is not listed as noexec.
Using another directory
To work around this issue, you can set the variable XPIPE_TEMP
on the remote system to a switch to using another directory. This can, for example, be a directory like ~/.xpipe/scripts
or /var/xpipe
, depending on the noexec limitations for other available directories.
This variable has to be set on login, so usually in the .bashrc
file with export XPIPE_TEMP="<dir>"
. The directory has to exist on the file system, and the user should have access to it for XPipe to be able to use it.
To properly apply the changes, restart XPipe and reconnect to the system.