Why can't I create links in /bin?
I am using MacOs Mojave, and I figured that the env
binary sits under /usr/bin/env
. Now we have a bunch of shell scripts (written and working under linux) that have /bin/env
hardcoded for the shebang line.
I thought a simple:
cd /bin
sudo ln -s /usr/bin/env env
or maybe
sudo cp /usr/bin/env .
should do the trick, but I get:
ln: env: Operation not permitted
(same for cp
).
Any idea how to fix this?
bash macos shebang macos-mojave
add a comment |
I am using MacOs Mojave, and I figured that the env
binary sits under /usr/bin/env
. Now we have a bunch of shell scripts (written and working under linux) that have /bin/env
hardcoded for the shebang line.
I thought a simple:
cd /bin
sudo ln -s /usr/bin/env env
or maybe
sudo cp /usr/bin/env .
should do the trick, but I get:
ln: env: Operation not permitted
(same for cp
).
Any idea how to fix this?
bash macos shebang macos-mojave
2
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48
add a comment |
I am using MacOs Mojave, and I figured that the env
binary sits under /usr/bin/env
. Now we have a bunch of shell scripts (written and working under linux) that have /bin/env
hardcoded for the shebang line.
I thought a simple:
cd /bin
sudo ln -s /usr/bin/env env
or maybe
sudo cp /usr/bin/env .
should do the trick, but I get:
ln: env: Operation not permitted
(same for cp
).
Any idea how to fix this?
bash macos shebang macos-mojave
I am using MacOs Mojave, and I figured that the env
binary sits under /usr/bin/env
. Now we have a bunch of shell scripts (written and working under linux) that have /bin/env
hardcoded for the shebang line.
I thought a simple:
cd /bin
sudo ln -s /usr/bin/env env
or maybe
sudo cp /usr/bin/env .
should do the trick, but I get:
ln: env: Operation not permitted
(same for cp
).
Any idea how to fix this?
bash macos shebang macos-mojave
bash macos shebang macos-mojave
edited Nov 12 '18 at 13:22
GhostCat
asked Nov 12 '18 at 12:07
GhostCatGhostCat
88.5k1685146
88.5k1685146
2
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48
add a comment |
2
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48
2
2
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48
add a comment |
1 Answer
1
active
oldest
votes
While you could go ahead and disable System Integrity Protection, I do not recommend it.
Instead, change your shebangs to use /usr/bin/env
; that's where env
belongs.
Apparently some Linux distros contain env
both in /bin
and in /usr/bin
, but some (including Debian and probably derivatives) don't. Neither does macOS, and I bet other BSDs don't, either.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53261881%2fwhy-cant-i-create-links-in-bin%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
While you could go ahead and disable System Integrity Protection, I do not recommend it.
Instead, change your shebangs to use /usr/bin/env
; that's where env
belongs.
Apparently some Linux distros contain env
both in /bin
and in /usr/bin
, but some (including Debian and probably derivatives) don't. Neither does macOS, and I bet other BSDs don't, either.
add a comment |
While you could go ahead and disable System Integrity Protection, I do not recommend it.
Instead, change your shebangs to use /usr/bin/env
; that's where env
belongs.
Apparently some Linux distros contain env
both in /bin
and in /usr/bin
, but some (including Debian and probably derivatives) don't. Neither does macOS, and I bet other BSDs don't, either.
add a comment |
While you could go ahead and disable System Integrity Protection, I do not recommend it.
Instead, change your shebangs to use /usr/bin/env
; that's where env
belongs.
Apparently some Linux distros contain env
both in /bin
and in /usr/bin
, but some (including Debian and probably derivatives) don't. Neither does macOS, and I bet other BSDs don't, either.
While you could go ahead and disable System Integrity Protection, I do not recommend it.
Instead, change your shebangs to use /usr/bin/env
; that's where env
belongs.
Apparently some Linux distros contain env
both in /bin
and in /usr/bin
, but some (including Debian and probably derivatives) don't. Neither does macOS, and I bet other BSDs don't, either.
answered Nov 12 '18 at 12:30
L3viathanL3viathan
15.6k12847
15.6k12847
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53261881%2fwhy-cant-i-create-links-in-bin%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
I think you are suffering from System Integrity Protection support.apple.com/en-gb/HT204899 The workaround is here howtogeek.com/230424/…
– Mark Setchell
Nov 12 '18 at 12:11
The lesson here is that shebangs aren't supposed to be portable between machines; they are a convenience for use on one machine.
– chepner
Nov 12 '18 at 14:48