Боюсь, что нет, я побежал команды и ничего нового не было установлено. Я пробовал работает ./VBoxLinuxAditions и получаю ту же ошибку. @antiDill Ну, все возможно в принципе. Вы могли бы написать скрипт, который запускает какой-то код, который идет в оперативной памяти и изменяет свой активный сеанс консоли (или что-то подобное - выход из моей глубины), но это не поддерживается используйте-случае. Дай мне секунду и я добавлю пару ссылок. @atripathi я на самом деле не имеют ни малейшего понятия. также в статье наруководят не дают никакой информации о том, что. я не хочу спекулировать либо... В основном анекдотический, но если у вас есть хорошие носики, можно скорее отделить и пересадить. Да и сажать осенью в результате чего луковицы больше летом урожай

Я работаю на перенос, какая-то система в сервисы типа за "реальное" служб systemd на RHEL 7/8. У меня все работает для RedHat 7, ПЛЭС 12 и SLES 15 просто отлично. Но когда я пытаюсь сделать сервис, работающий на RHEL 8, я обнаружил, что система теперь требует моего приложения PID-файл в /запустить папку...или, по крайней мере, он хочет это есть. (Наши приложения обычно писали файла в директории для установки приложения.)

Я смог добиться этого путем изменения приложения автозагрузки скриптов и написание к /запуск каталог. Так Что Успехов! Но теперь есть одна проблема, что я не могу показаться, чтобы получить над. Мне нужно запустить сервис работает в контексте конкретного пользователя (мой логин), а не root. Все мои исследования сказал, что мне просто нужно указать пользователя= в .сервисный файл для того, чтобы достичь этого. Но всякий раз, когда я добавить одну строку в файл, моем запустить службу не удается. Кажется, это не в том месте, где PID-файл записывается в /запустить директорию. PID-файл не может быть записан, процесс завершается.

Мой служебный файл:

Описание={удалено}
После=удаленную ФС.цель
После=сеть-онлайн.цель
Хочет=удаленную ФС.цель
Хочет=сеть-онлайн.цель

[Услуги]
Тип=разветвления
Перезагрузка=нет
Пользователь=myid
TimeoutSec=5мин
IgnoreSIGPIPE=нет
KillMode=нет
GuessMainPID=нет
RemainAfterExit=нет
SuccessExitStatus=5 6 255
Идентификатора=/работа/adidmn.пид
ExecStart=<fullPathToScript> начать
ExecStop=<fullPathToScript> прекратить

[Установите]
WantedBy=Multi-потребителя.цель

Мой скрипт запуска определяет, как демон должен быть запущен на различных платформах, устанавливает переменные окружения и, в свою очередь, вызывает скрипт, который начинает реальный процесс. Вызванный демон скрипт запускаемым непосредственно при вызове с правами судо. Мой идентификатор в списка sudoers, но, конечно, раз хозяина запущенного процесса является корень.

Без "пользователей=" недвижимость в .служебный файл, у меня нет проблемы с запуском службы. Я вообще всегда выполнять команды systemctl как sudo под своим имя пользователя. Моей конечной целью является, чтобы увидеть фактический процесс работает как под мое имя пользователя, а не root. Я думал, что добавление пользователя=<myid> на .обслуживание файл будет достичь этого, но это одна линия делает сервис запустить не получится.

Пользователь существует (мой собственный идентификатор пользователя), а также В списка sudoers. /запустить root и когда файл PID там написано с помощью sudo, владелец пид файл корень. Я попытался с помощью Су <идентификатор_пользователя> для команды, на мой запустить скрипт, но это привело к демону, не начнется вообще.

В принципе, у меня есть различное поведение между компанией SUSE и RedHat. Мой демон (лет) придумали пид файл в каталоге установки программы. Процесс запускается с помощью Су <идентификатор_пользователя> -с командой, которая запускает процесс в контексте пользователя "а". Пид файл находится в пути установки приложения и принадлежащий пользователю "а". ОС SUSE Linux-это не проблема вообще. Однако, в RedHat, пока процесс выполняется, systemd не жалуется с:

Новый главный ПИД 26979 не относится к службе, и пид файл не принадлежит корень. Отказ.

Почему разница? Что я пытаюсь достичь "терпимо?" или это надо, что теперь корень владеет всеми процессами systemd в сервис?