-bash : cd : .ssh / : 권한이 거부되었습니다


13

cd .ssh터미널에 입력 하면로 반환됩니다 -bash: cd: .ssh/: Permission denied. 이제 ssh 키를 ssh에 추가 할 수 없습니다.

내가 입력 ssh-add ~/.ssh/idname하면라고 말합니다 /Users/Dan/.ssh/idname: Permission denied.

ls -d터미널에 입력하기 전에 작동했기 때문에 입력과 관련이 있다고 생각 합니까?


출력은 id;ls -ld ~/.ssh무엇입니까?
michas

답변:


24

디렉토리에 "권한 거부"가 있으므로 디렉토리에 실행 권한이 없을 수 있습니다. 마찬가지로 디렉토리 트리를 통과하여 파일을 얻으려면 루트와 파일 사이의 각 디렉토리에 대한 실행 권한이 필요합니다 (따라서 다른 명령의 경우 동일한 오류).

디렉토리에서 실행 권한을 설정하십시오

chmod u+xr,go-rwx ~/.ssh

그런 다음 해당 명령문을 다시 실행할 수 있는지 확인하십시오.


그렇게 쉽고 우아한 명령. 내 Mac에서 바로 작업했습니다!
IgorGanapolsky

단점은 chmod u+xr,go-rwx사용자가 미리 추가하거나 빼야 할 설정을 확인해야하는 방법입니다. 반면에 숫자 코드를 사용하는 것보다 더 포괄적입니다 (예 :) chmod 1755.
noobninja

1

Arcege의 대답 이외에, 당신은 또한 사용할 수 있습니다 (다른 사용자 이름없이) 명령을 사용자가 sudo는 - 어 개시한다, 당신은 슈퍼 유저 (root)로 명령을 실행 할 수 있습니다 (사용자 이름에 올바른 필드) sudo 가능 사용자의 비밀번호를 알고 있어야합니다.
sudo su <enter password> cd .ssh
sudo/etc/sudoers

경고 :
수행중인 작업을 모르면 슈퍼 유저로 작업하는 것이 위험 할 수 있습니다. 필수 파일을 실수로 수정하거나 파기 할 수 있습니다. sudo주의해서 사용하십시오 .


그렇습니다 chmod. 트릭을 수행하지 않을 때 효과적이었습니다.
Pro Q
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.