-bash: cd: .ssh /: Izin ditolak

13

Ketika saya mengetik cd .sshdi terminal, ia kembali dengan -bash: cd: .ssh/: Permission denied. Sekarang saya tidak bisa menambahkan kunci ssh saya ke ssh.

Saat saya mengetiknya ssh-add ~/.ssh/idnametertulis /Users/Dan/.ssh/idname: Permission denied.

Saya pikir itu ada hubungannya dengan saya mengetik ls -dkarena berhasil sebelum saya mengetikkan ini ke terminal?

Daniel
sumber
Apa output dari id;ls -ld ~/.ssh?
michas

Jawaban:

24

Karena Anda memiliki "Izin ditolak" pada direktori, ada kemungkinan direktori tersebut tidak memiliki izin eksekusi. Demikian pula, untuk melintasi pohon direktori untuk mendapatkan file, Anda perlu menjalankan izin pada setiap direktori di antara root dan file (karenanya kesalahan yang sama untuk perintah lain).

Cobalah mengatur izin eksekusi pada direktori

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

Kemudian lihat apakah Anda dapat menjalankan pernyataan itu lagi.

Arcege
sumber
Perintah yang mudah dan elegan. Bekerja langsung di Mac saya!
IgorGanapolsky
kelemahannya chmod u+xr,go-rwxadalah bagaimana pengguna perlu mengkonfirmasi pengaturan mana yang perlu ditambahkan atau dikurangi sebelumnya. di sisi lain, ini lebih komprehensif daripada menggunakan kode angka, mis chmod 1755.
noobninja
1

Selain jawaban Arcege, Anda juga dapat menggunakan
sudo su <enter password> cd .ssh
The sudoperintah (tanpa nama pengguna lain) memungkinkan Anda untuk menjalankan perintah sebagai super-user (root), yang tersedia Anda adalah sudo-er (nama pengguna Anda dalam /etc/sudoersdengan bidang yang benar) dan ketahui kata sandi untuk pengguna berkemampuan sudo itu.

Peringatan:
Beroperasi sebagai pengguna super mungkin berbahaya jika Anda tidak tahu apa yang Anda lakukan. Anda dapat secara tidak sengaja memodifikasi atau menghancurkan file-file penting. Gunakan sudodengan hati-hati.

skamazin
sumber
Ya, ini berhasil bila chmodtidak berhasil.
Pro Q