chmod unable to change permissions

Rohit picture Rohit · Jun 22, 2013 · Viewed 46.8k times · Source

I'm facing an annoying problem. It's been pretty frustrating. I am using a computer at my school to work on the Coursera Startup class. I am trying to connect to an Amazon EC2 instance. I downloaded the key pair. I check permissions.

mac5-library:startup roh21$ ls -l
total 6
-rw-rw-rw-@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem

So, it's not secure. So I need to change the permissions. I try:

mac5-library:startup roh21$ chmod 400 startup-class-key.pem
mac5-library:startup roh21$ ls -l
total 6
-r--r--r--@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem

Still has read permissions to everyone. Just to demonstrate what happens I do this:

mac5-library:startup roh21$ chmod 600 startup-class-key.pem
mac5-library:startup roh21$ ls -l
total 6
-rw-rw-rw-@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem

Is it impossible to change permissions to the user without root permission? I'd be grateful for any kind of help.

Answer

yurin picture yurin · Nov 13, 2019

Probably not related to initial questions problem, but can be useful. (especially to Unix novices like myself)

Chmod will not work if you are not an owner of resources.

You should run chown first:

$ sudo chown -R $(whoami) .

and then

$ sudo chmod -R +rwX .

First command will change owner of everything in current folder to be logged in user, and second give them read write execute permissions. Just for example, you, probably, should not change ownership and permissions so boldly.