Izin Ditolak untuk mkdir di Mac

Jawaban:

21

Coba perintah ini:

sudo mkdir -p /data/db

sudo mengeksekusi perintah dengan hak yang lebih tinggi, dan akan meminta kata sandi Anda sebelum memungkinkan perintah dieksekusi.

Danny
sumber
Ok keren, sekarang jika saya mengetik "db" di Spotlight, itu akan menemukannya ... tapi bagaimana dengan command line? bagaimana cara menavigasi ke folder ini di Terminal? dalam DOS misalnya, kita dapat mengatakan CD \ DB
Blake
Masih cd di linux, jadi cd / data / db Untuk menampilkan isi direktori yang ingin Anda gunakan ls alih-alih dir, jadi ls / data / db
Danny
1
bagaimana jika kita tidak ingin menggunakan sudo? Apakah akan ada kesalahan izin di masa depan dengan mongodb?
Connor Leech
11

Anda tidak memiliki izin untuk membuat direktori. Ketika Anda mencoba menjalankan ini sebagai pengguna Anda sendiri, dan seperti yang saya curigai /data/dbadalah hardcoded di suatu tempat, Anda harus dapat melakukan

sudo install -m 0755 -o $USER -d /data/db

Ini akan menggunakan hak pengguna super ( sudo) untuk membuat dua direktori ( /data, dan /data/db). /data/dbakan dimiliki oleh pengguna yang ditentukan oleh -o- Anda ( $USER) dan akan memiliki 0755izin - pemilik dengan izin penuh, dan semua orang akses hanya baca. Jika direktori induk tidak ada, mereka akan dibuat dan dimiliki oleh root (tidak dapat menemukan dokumen tentang ini, tetapi percobaan mengonfirmasinya).

Saya sarankan Anda melakukannya dengan cara ini karena sisa instruksi Anda masih akan dilakukan sebagai pengguna Anda sendiri.

chutz
sumber
penjelasan tentang 0755 bit support.hostgator.com/articles/cpanel/…
Micah Stubbs
4

Coba yang ini:

mkdir -p data/db

Tidak ada garis miring sebelum data

yanek
sumber
Ini kata untuk saya. Ini menciptakan / data / db di bawah direktori kerja saat ini.
Meruemu
0

Punya masalah yang sama pada mac os x. Saya memecahkan ini dengan mengeksekusi sudo -p mkdir data, cd datadan setelah ini sudo -p mkdir db. Semoga berhasil.

bel
sumber