LINUX.ORG.RU

sudo в /etc/profile.d выполняется только при первом входе пользователя

 ,


0

1

Привет всем! В дебиан потребовалось выполнение некоторых инструкций, которые должны выполняться при входе пользователя в свой профиль (на рабочий стол или по ssh). Выяснилось, что инструкции, которым требуются повышенные привилегии (выполнение от sudo), исполняются только в случае, если профиля еще пока не создано и это первый вход данного пользователя в систему. Непривилегированные команды выполняются успешно всегда.

Для меня все это неожиданное. Это раз!

В принципе, от sudo требуется монтирование шары и отмонтирование поле ряда инструкций (в fstab это делать нежелательно, так как шара не должна быть видна пользователям), а также выполнение помещения юзера в дополнительную группу (пользователь идентифицируется переменной $USER). Шара - на винде. Управлять опциями монтирования удаленной директории в дебиан не получается так, чтобы скрыть файлы от просмотра, но читать и исполнять - ставь любые опции, все равно либо файлы становятся недоступны, либо остаются видны. У пользователя виндовс права на расшаренную папку - только чтение и выполнение, только ему. Установка «.» перед именем файла не скрывает его. Тем более в наутилусе есть возможность "показать скрытые файлы).

Как объяснить первый момент про sudo и как все это преодолеть? Есть дельные мысли?



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

исполняются только в случае, если профиля еще пока не создано и это первый вход данного пользователя в систему

Если «профиля не создано» то никакой вход в систему произойти не может. Научись нормально формулировать свои мысли с правильной терминологией.

Выяснилось, что инструкции, которым требуются повышенные привилегии (выполнение от sudo), исполняются только в случае,

Инструкции исполняются ровно те, которые ты написал. В случае, если у них не получилось исполниться, об этом пишется ошибка в stderr, тебе осталось только прочитать её.

firkax ★★★★★
()

Я решал так вопрос с запуском сервисов от пользователя до его логина

# ReadWritePaths=/etc /run /var/lib/systemd/linger
nano /usr/lib/systemd/system/systemd-logind.service

loginctl enable-linger $USER
IIIypuk ★★★
()