[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: logind and seat0



Artem Chuprina <ran@ran.pp.ru> writes:

> Dmitrii Kashin -> debian-russian@lists.debian.org  @ Tue, 08 Jul 2014 15:19:28 +0400:
>
>  >>> Простите, куда-куда?! logind? А почему отправлением в суспенд занимается
>  >>> logind? Это как-то... Удивляет.
>  >>
>  >> logind управляет пользовательскими сессиями.
>
>  DK> Ну и назывался бы, скажем, usessiond? Почему именно logind? Ведь
>  DK> регистрация в системе - процедура не такая уж и сложная: сравнил хеш
>  DK> пароля с имеющимся, запустил терминал с нужными привелегиями, внёс
>  DK> запись в журнал. Почему logind делает что-то большее?
>
> У нас уже довольно давно логинные скрипты в разных позах делают что-то
> большее.  То же автоматическое добавление прав на работу с флешкой,
> воткнутой в тот ноутбук, на клавиатуре которого ты вводил пароль,
> делается через динамическое добавление твоего сессионного лидера в ряд
> групп, дающих права на оборудование.

У нас - это у кого? У меня вот lightdm запускает xsession, а оттуда
загружается i3wm. И в общем-то ничего больше. А про вышеописанные схемы
я ничего не знаю. Где такое делается?

Что касается суспенда, то я в него отправляюсь так:
-------------------- ~/.i3/config --------------------
exec dm-tool switch-to-greeter, exec sudo /usr/sbin/pm-suspend, mode "default"
------------------------------------------------------

Вторая команда в sudo мне делегирована на выполнение без пароля.

> Добавить в группу процесс после его старта невозможно, поэтому
> приходится это делать при логине.

Хм... А зачем вообще добавлять именно при старте? Меня вот удивляет,
почему у pm-action владелец:группа - root:root.

Почему бы не задать ему группу, например power, а на pm-action не
поставить suid-бит? Результат - все, кто в группе power, получат
возможность погружать комп в суспенд.

>  DK> Но вообще говоря, мне абсолютно не ясно, как место связано с
>  DK> возможностью отправлять систему в сон. Переключить систему в спящий
>  DK> режим должен вроде иметь возможность _пользователь_, у которого есть на
>  DK> то привилегии, вне зависимости от места, на котором он уселся.
>
>  DK> Вообще, концепцию мест я не уловил как-то. Какая системе вообще
>      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>  DK> разница откуда и как я с ней работаю, если у меня нужные права есть?
>
> Вот подчеркнутое - ключевые слова.  Лучше начать с того, чтобы ее
> уловить, а то вон тот вопрос выше звучит как-то по-дурацки.  Она вообще
> сама по себе толковая.  Предлагать тебе положить следующий лист в сканер
> и нажать на нем кнопку имеет смысл только тогда, когда этот сканер
> находится с тобой более-менее в одном месте.

>  >> P.S. Для управления сессиями logind есть утилита loginctl
>  >> Для примера можно зайти в систему через (1) *DM, (2) консоль, (3) ssh
>  >> и использовать loginctl для контроля. 
>
>  DK> А что понимается под контролем "пользовательских сессий"? Да и что
>  DK> вообще такое "пользовательская сессия"? 
>
> Вообще сессия - это группа процессов-потомков одного - лидера сессии.
> Под пользовательской сессией на программном уровне понимается такая
> сессия, лидер которой появился в результате входа пользователя в
> систему.

Хорошо. Я так понимаю, что это какая-то устоявшаяся терминология, о
которой я сейчас слышу впервые. Где она вводится, что бы мне почитать?

>  DK> Иван, Вы безусловно говорите что-то очень крутое, но я ожидал ответ в
>  DK> виде "logind управляет отправлением в suspend потому что это нужно для
>  DK> того-то и того-то". При чём тут вообще рабочие места? 
>
> Правильный ответ: "потому что это принятое в других ОС поведение, если
> твое рабочее место - ноутбук".  Все еще непонятно, при чем тут рабочие
> места?

Окей, я кажется абсолютно не понимаю, что такое "рабочее место". Опять
же, где эта терминология находится?

Attachment: pgpYX6ZUKdQHl.pgp
Description: PGP signature


Reply to: