Отказано в доступе для mkdir на Mac

12

Хорошо, я не знаю ни одной команды Linux и просто пытаюсь следовать инструкциям здесь: http://www.bigspaceship.com/2011/02/install-mongodb-on-mac/

Я открыл терминал и набрал

mkdir -p /data/db

но он сказал, что разрешение отказано.

Что я должен делать?

Блейк
источник

Ответы:

21

Попробуйте эту команду:

sudo mkdir -p /data/db

sudo выполняет команду с более высокими привилегиями и запрашивает ваш пароль, прежде чем разрешить выполнение команды.

Дэнни
источник
Хорошо, круто, теперь, если я наберу "db" в Spotlight, он найдет его ... но как насчет командной строки? как перейти к этой папке в терминале? в DOS, например, мы могли бы сказать, CD \ DB
Блейк
В Linux это все еще cd, поэтому cd / data / db Чтобы показать содержимое каталога, вы хотите использовать ls вместо dir, поэтому ls / data / db
Danny
1
что если мы не хотим использовать sudo? Будут ли ошибки разрешения в будущем с mongodb?
Коннор Лич
11

У вас нет прав для создания каталога. Поскольку вы пытаетесь запустить это как свой собственный пользователь, и, как я подозреваю, /data/dbгде-то жестко задан, вы должны быть в состоянии сделать это

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

Это позволит использовать привилегии суперпользователя ( sudo) для создания двух каталогов ( /dataи /data/db). /data/dbбудет принадлежать пользователю, указанному -o- you ( $USER), и у него будут 0755права доступа - владелец с полными правами доступа и доступ только для чтения. Если родительские каталоги отсутствуют, они будут созданы и принадлежат пользователю root (не могут найти документы по этому поводу, но эксперименты подтверждают это).

Я предлагаю вам сделать это таким образом, потому что остальные инструкции вы все равно будете делать от своего собственного пользователя.

chutz
источник
объяснение 0755 бита support.hostgator.com/articles/cpanel/…
Мика Стаббс
4

Попробуй это:

mkdir -p data/db

Без косой черты перед data

Янек
источник
Это адрес для меня. Создает / data / db в текущей рабочей директории.
Меруему
0

Была такая же проблема на Mac OS X. Я решил эту проблему путем выполнения sudo -p mkdir data, cd dataи после этого sudo -p mkdir db. Удачи.

бел
источник