Почему sudo -i не устанавливает XDG_RUNTIME_DIR для целевого пользователя?

Мне удалось создать пользователя с помощью pw useradd -n myuser -s / bin / csh -m

  • -n имя пользователя

  • -s оболочка по умолчанию

  • -m создает домашний каталог в / home / USER

(не забудьте установить пароль пользователя)

Мои причины для ответа на вопрос четырехлетней давности :

  • На этот вопрос так и не ответили напрямую

  • Ссылки в принятом ответе больше не работают

  • Я обнаружил, что страница man pw сбита с толку

14
22.02.2017, 16:30
1 ответ

У меня есть воспроизвел эту проблему в моей системе Fedora 25.

Я обнаружил очень подозрительное состояние в исходном коде. https://github.com/systemd/systemd/blob/f97b34a/src/login/pam_systemd.c#L439 Похоже, что он был написан с использованием обычного sudo , но не sudo -u пользователь без полномочий root .

Оболочка machinectl --uid = пользователь без полномочий root работала так, как вы просили.

systemd-run не работает должным образом, несмотря на ссылку на него в документации machinectl.

Некоторые команды machinectl не работают, если вы в данный момент включили SELinux, и эти конкретные команды не работали для меня, пока я не сделал setenforce 0 . Однако я пытаюсь найти обходные пути, чтобы заставить machinectl работать так, как я хочу, чтобы он работал с SELinux, поэтому, возможно, причиной является моя возня, например. shell machinectl истекло время ожидания.

РЕДАКТИРОВАТЬ: Я думаю, этот код был введен после этого обсуждения . И, очевидно, su - / sudo -i можно было заставить работать, но никто не реализовал его (до сих пор).

12
27.01.2020, 19:51

Теги

Похожие вопросы