LINUX.ORG.RU
ФорумTalks

Телепаты в отпуске

 , , ,


0

1

Я фигею с этого systemd. Написал сервис файл под mongodb и он не запустился, потому что видите ли не хватало прав для записи pid-файла! Собственно код, в котором есть магическая опция NoNewPrivileges=yes. О ней в мануале ни слова, что зачем и почему, только известно, что она меняет поведение программы и ее потомков. Фантастично, а как, шит, тогда работает systemd по дефолту, когда указаны User/Group опции и не указана эта магическая переменная ?!

NoNewPrivileges=

Takes a boolean argument. If true, ensures that the service process and all its children can never gain new privileges. This option is more powerful than the respective secure bits flags (see above), as it also prohibits UID changes of any kind. This is the simplest, most effective way to ensure that a process and its children can never elevate privileges again.


Убитые нервные клетки никто не восстановит.

UPDATE: Проблема и решение. Симптомы в /var/log/mongo/mongod.log:

Sat Jul 6 09:37:27.326 [initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /var/lib/mongo/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating

или

Sat Jul 6 09:35:34.924 [initandlisten] exception in initAndListen std::exception: boost::filesystem::status: Permission denied: «/var/lib/mongo/mongod.lock», terminating

★★★★★

Последнее исправление: gh0stwizard (всего исправлений: 1)

очевидно же, что systemd нужен для всяких десктопов-убунточек, где все запилено «под ключ» и юзер в жизни не полезет в rootfs.

Spoofing ★★★★★
()
Ответ на: комментарий от cuki

ты линуксоид или ты тряпка?

Сначала надо выяснить чей это баг: systemd или mongod ? Честно говоря, мне надо свой код писать, а не разгребать за другими. Я просто поделился впечатлением и опытом, ничего взамен не жду и не прошу. Может кому пригодится.

gh0stwizard ★★★★★
() автор топика
Ответ на: комментарий от darkenshvein

Месье просто не разбирается в сортах говна, в отличие от.

yaspol
()
Ответ на: комментарий от i_gnatenko_brain

Походу ты установил из реп самой федоры, наверняка там есть какие-то патчи... Я же ставил с реп mongodb.org по той причине, что федорка не успевает обновлять релизы.

gh0stwizard ★★★★★
() автор топика
Ответ на: комментарий от i_gnatenko_brain

Обновил тему, проблема в boost...

почему тебе бы не стать мэинтейнером mongodb ?

У меня и так хватает дел :) Спасибо за предложение.

gh0stwizard ★★★★★
() автор топика
Ответ на: комментарий от i_gnatenko_brain

Будешь сразу же обновлять mongodb

Ребята в mongo и так делают всю основную работу. Просто у них есть такой косяк, который тянется годами: патчат они не все и не всегда. Баги могут висеть годами =\

gh0stwizard ★★★★★
() автор топика
Ответ на: комментарий от i_gnatenko_brain

патч отослал в апстрим ?

:) https://jira.mongodb.org/browse/SERVER-9210

Resolution: Won't Fix

Eliot Horowitz added a comment - Jun 04 2013 09:43:24 PM UTC

We tried supporting old and new boost libraries, but the drift is incredibly hard for us to maintain. We are working on removing some of the dependency on boost in the driver to alleviate this.

gh0stwizard ★★★★★
() автор топика
Ответ на: комментарий от i_gnatenko_brain

Возникает вопрос, почему мифическая опция в systemd позволяет mongod работать как надо, хотя кажется что это баг mongod...

gh0stwizard ★★★★★
() автор топика

У systemd есть параметр --user и директория ~/.config/systemd/user/

IIIypuk ★★★★
()

та же фигня, если что-то отлаживать с dbus. ИМХО, самые человеконенавистные подсистемы в современном линуксе.

demidrol ★★★★★
()

Нормальной документации нет.

Собственно код, в котором есть магическая опция NoNewPrivileges=yes. О ней в мануале ни слова, что зачем и почему, только известно, что она меняет поведение программы и ее потомков.

Кто там говорил мне, что с systemd всё просто и понятно, что документация хорошая?

Camel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.