Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

cannot exec linux-ssh-wrapper.sh in /tmp when noexec flag is set in fstab #1365

Open
spixx opened this issue Mar 27, 2018 · 5 comments
Open

Comments

@spixx
Copy link

spixx commented Mar 27, 2018

Description

If the flag "noexec" set on the temporary folder Atom fails with error when pushing to github functionality is used:

fatal: cannot exec '/tmp/github-118227-39413-<random>/linux-ssh-wrapper.sh': Permission denied
fatal: unable to fork

Since neither a direct usage of /bin/(ba)sh <script> nor /bin/env (ba)sh <script> is used to execute the script the push fails.

Steps to Reproduce

  1. Have noexec on /tmp mount
  2. Use push function

Expected behavior:

Script to be run in a folder specific to Atom (.atom/tmp chmod 700) or a simple way to set the tmp folder in the interface (?).

Actual behavior:

Fails with error described.

Reproduces how often:

100%

Versions

apm 1.18.12
npm 3.10.10
node 6.9.5 x64
atom 1.23.2
python 2.7.5
git 1.8.3.1
3.10.0-693.21.1.el7.x86_64 #1 SMP Wed Mar 7 19:03:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Additional Information

I know this might be a bit out-of-scope but this seems to be a common usage of /tmp /var/tmp and /usr/tmp that is not really workable if one does not allow execute. Also if this fails information is left in the temporary folder.

I removed the prereq part since this is not really a direct atom issue (it will fail even in safe-mode).

@cinhtau
Copy link

cinhtau commented Aug 22, 2018

👍

any workaround recommended?

@michaelkir
Copy link

use a configuration variable - if set - instead of /tmp on Unix systems in github/lib/git-temp-dir.js .

@schonfsj
Copy link

I would like to bump this issue. I have exactly the problem described by @spixx, with the additional complication that I am also unable to fetch/pull with the same errors.

As setting noexec on /tmp is a standard practice for improved system security, it seems like Atom should have a built-in workaround that fixes this broken core functionality.

@spixx
Copy link
Author

spixx commented Feb 17, 2021

A good workaround would be to aim for the /home/$USER/.local/tmp (or similar) directory but that is also common to have a "noexec" on.

@schonfsj
Copy link

Yeah, something like that would absolutely work. Unfortunately, I don't have control of the Atom installation on the system I'm using, so I can't implement a manual fix like this. Hence my wish that this was something that could be set within Atom's own settings.

I appreciate the suggestion, though.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants