Стандарт Иерархии Файловой системы дает эти определения:
/opt
: Дополнительные пакеты прикладного программного обеспечения /usr/local
: Локальная иерархия (для использования системным администратором при установке программного обеспечения локально)Путем я считал что:
/bin
и /usr/bin
(подразумеваемый)/opt
/usr/local
если системный администратор хочет это кСледовательно, если системный администратор устанавливает что-то использование dpkg
или rpm
, это не должно входить /usr/local
по умолчанию.
Таким образом, это возможно делает правильную вещь.
Во-первых, в стороне: хранить Ваши данные монго в /usr/local/mongodb_data
кажется немного странным; большая часть закулисного устройства хранения данных находится в /var/
, или, для самоустановленных приложений, /var/local/
. Посмотрите hier(7)
или Стандарт Иерархии Файловой системы для получения дополнительной информации. (FHS неверно называется: потому что это является описательным, не предписывающим, это не стандарт. Но это стоит считать.)
Ваш mongodb.lock
файл принадлежит root
потому что Вы выполнились:
sudo mongod --dbpath=/usr/local/mongodb_data
sudo(8)
выполняет программы с другим эффективным идентификатором пользователя (см. seteuid(2)
, setreuid(2)
для деталей). Поскольку Вы не указывали никакого другого пользователя с a -u
опция, sudo(8)
принявший значение по умолчанию к root
учетная запись. Таким образом Ваш файл блокировки был создан с root
владелец и группа. (Сравните sudo id
с id
видеть что изменения.)
Что является странным, хотя, то, что файл блокировки должен был быть удален, когда Вы останавливаетесь mongod
база данных. Убедитесь, что Вы останавливаете его правильно - не только, таким образом, файлы блокировки удалены - но также и таким образом, Вы знаете, что данные были правильно сохранены на диск.
Сделайте ls -l /usr/local/mongodb_data/mongod.lock
Я держал пари что, так как Вы работали сначала как пользователь "корень", что файл уже существует, и принадлежавший корню. Удалите его, и я держал пари, что это работает пользователем "markdsievers".
mongodb.lock
принадлежал root
. Один вопрос, хотя - я не понимаю Ваше использование "mongodb пользователь". Я думал, выполняя двоичный файл, он обработает файлы как пользователя, который породил его, т.е. markdsievers
?
– markdsievers
11.07.2011, 01:50
×
это появляется справа.
– Gilles 'SO- stop being evil'
15.07.2011, 21:26