# Permission denied

**URL:** <https://users.rust-lang.org/t/permission-denied/140241>\
**Category:** help\
**Created:** [May 24, 2026, 4:21pm UTC](https://users.rust-lang.org/t/permission-denied/140241 "2026-05-24T16:21:46Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 24, 2026, 4:21pm UTC](https://users.rust-lang.org/t/permission-denied/140241/1 "2026-05-24T16:21:46Z")

</div>

Hi,

I installed Rust on EndeavourOS using the rustup-method (rather than an Arch package). Everything seems to go well but when I later try to run cargo (or rather anything pointing to rustup) I get "Permission denied".

All binaries are installed in ./cargo/bin in my home directory. I am the owner of all files under .cargo and all dotfiles in the my home directory.

Check $PATH I find that /home/me/.cargo/bin is in there.  
Checking the zsh-config files I notice that the line . "$HOME/.cargo/env" is there, e.g. in the file .zshenv.

So to me everything looks fine, what am I missing?

---

<div class="post-metadata">

**Author:** ![ntova](https://avatars.discourse-cdn.com/v4/letter/n/ed8c4c/32.png) [@ntova](https://users.rust-lang.org/u/ntova)\
**Post date:** [May 24, 2026, 4:53pm UTC](https://users.rust-lang.org/t/permission-denied/140241/2 "2026-05-24T16:53:51Z")

</div>

Are you sure you are executing the correct cargo binary? You can check it using `which` or `command -v`. Also check if the binaries have the executable bit set.

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 24, 2026, 5:09pm UTC](https://users.rust-lang.org/t/permission-denied/140241/3 "2026-05-24T17:09:24Z")

</div>

If I do "which cargo" I get an empty reply, while cargo -v also gives "Permission denied".  
And yes they all have the x-bit set.

---

<div class="post-metadata">

**Author:** ![ProgramCrafter](https://sea1.discourse-cdn.com/flex019/user_avatar/users.rust-lang.org/programcrafter/32/45916_2.png) [@ProgramCrafter](https://users.rust-lang.org/u/ProgramCrafter)\
**Post date:** [May 24, 2026, 5:18pm UTC](https://users.rust-lang.org/t/permission-denied/140241/4 "2026-05-24T17:18:08Z")

</div>

Have you installed it with the user's privileges (aka without sudo)? Check also the file's owner.

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 24, 2026, 5:21pm UTC](https://users.rust-lang.org/t/permission-denied/140241/5 "2026-05-24T17:21:14Z")

</div>

Yes, everything is my user.

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 24, 2026, 5:25pm UTC](https://users.rust-lang.org/t/permission-denied/140241/6 "2026-05-24T17:25:12Z")

</div>

Checking again running it under sudo I get

╰─ sudo cargo -v  
[sudo] lösenord för me:  
sudo: cargo: kommandot hittades inte (command not found)

---

<div class="post-metadata">

**Author:** ![ntova](https://avatars.discourse-cdn.com/v4/letter/n/ed8c4c/32.png) [@ntova](https://users.rust-lang.org/u/ntova)\
**Post date:** [May 24, 2026, 5:26pm UTC](https://users.rust-lang.org/t/permission-denied/140241/7 "2026-05-24T17:26:16Z")

</div>

You shouldn't use `sudo` for this. Also, an empty `which cargo` output is weird. Can you show the output of `type -a cargo` ?

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 24, 2026, 5:39pm UTC](https://users.rust-lang.org/t/permission-denied/140241/9 "2026-05-24T17:39:12Z")

</div>

echo $PATH  
/home/me/.atuin/bin:/home/me/.cargo/bin: [etc]

type -a cargo  
cargo not found

type -a .cargo/bin/cargo  
.cargo/bin/cargo not found

type -a .cargo/bin/rustup  
.cargo/bin/rustup not found

Very strange ...

---

<div class="post-metadata">

**Author:** ![jonh](https://avatars.discourse-cdn.com/v4/letter/j/dec6dc/32.png) [@jonh](https://users.rust-lang.org/u/jonh)\
**Post date:** [May 24, 2026, 7:31pm UTC](https://users.rust-lang.org/t/permission-denied/140241/10 "2026-05-24T19:31:28Z")

</div>

I expect you have home mounted noexec or some other security block.

---

<div class="post-metadata">

**Author:** ![MOCKBA](https://sea1.discourse-cdn.com/flex019/user_avatar/users.rust-lang.org/mockba/32/41423_2.png) [@MOCKBA](https://users.rust-lang.org/u/MOCKBA)\
**Post date:** [May 24, 2026, 8:24pm UTC](https://users.rust-lang.org/t/permission-denied/140241/11 "2026-05-24T20:24:57Z")

</div>

Show your console log, otherwise it's difficult to tell.

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [May 25, 2026, 4:53am UTC](https://users.rust-lang.org/t/permission-denied/140241/12 "2026-05-25T04:53:14Z")

</div>

Yes!! That must be it ... It's new-ish. My home directory is noexec, with a few exceptions. I'll make one for .cargo and see if that helps ...

---

<div class="post-metadata">

**Author:** ![chimbis](https://avatars.discourse-cdn.com/v4/letter/c/a183cd/32.png) [@chimbis](https://users.rust-lang.org/u/chimbis)\
**Post date:** [June 8, 2026, 4:37pm UTC](https://users.rust-lang.org/t/permission-denied/140241/13 "2026-06-08T16:37:45Z")

</div>

Well, .cargo **was** set exec. But .rustup wasn't - setting it exec solved the issue.

---

<div class="post-metadata">

**Author:** ![stonerfish](https://avatars.discourse-cdn.com/v4/letter/s/50afbb/32.png) [@stonerfish](https://users.rust-lang.org/u/stonerfish)\
**Post date:** [June 9, 2026, 12:47am UTC](https://users.rust-lang.org/t/permission-denied/140241/14 "2026-06-09T00:47:50Z")

</div>

Thank you for following up.

---

<div class="post-metadata">

**Author:** ![system](https://sea1.discourse-cdn.com/flex019/user_avatar/users.rust-lang.org/system/32/51372_2.png) [@system](https://users.rust-lang.org/u/system)\
**Post date:** [September 7, 2026, 12:48am UTC](https://users.rust-lang.org/t/permission-denied/140241/15 "2026-09-07T00:48:40Z")

</div>

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.
