Bug 9141 - не работает reboot и рядом из консоли при работе по ssh
: не работает reboot и рядом из консоли при работе по ssh
Status: REOPENED
: Sisyphus
(All bugs in Sisyphus/SysVinit-usermode)
: unstable
: all Linux
: P2 enhancement
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2006-02-23 15:15 by
Modified: 2015-02-15 16:14 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-02-23 15:15:22
При логоне по ssh не получается перезагрузить\выключить машинку от простого
пользователя:
[stalker@vm stalker]$ reboot
consolehelper: Project-Id-Version: PACKAGE VERSION
POT-Creation-Date: 2002-03-18 16:08+0300
PO-Revision-Date: 2002-03-18 16:08+0300
Last-Translator: Dmitry V. Levin <ldv@altlinux.org>
Language-Team: <devel@altlinux.ru>
MIME-Version: 1.0
Content-Type: text/plain; charset=koi8-r
Content-Transfer-Encoding: 8bit

consolehelper-0.2.9.1-alt1
Steps to Reproduce:
1. Залогониться по ssh
2. сказать reboot
3. посмотреть на результаты
------- Comment #1 From 2006-02-24 03:13:06 -------
У меня другой результат получается:

$ reboot       
consolehelper: Аутентификация завершилась неудачно
------- Comment #2 From 2006-02-24 12:32:24 -------
(In reply to comment #1)
> У меня другой результат получается:
> 
> $ reboot       
> consolehelper: Аутентификация завершилась неудачно
> 

Может дело вт ом что у меня pam более старый? так как сизиф от 27.11.2005
------- Comment #3 From 2015-02-15 12:34:42 -------
Нельзя использовать функции из пакета SysVinit-usermode, до тех пор, пока
тот-же пользователь не войдёт локально: 

Как-только я локально вошёл тем-же пользователем локально, я смог перезагрузить
комп по сети. Вход локально другим пользователем не помогает.

http://forum.altlinux.org/index.php/topic,31564.msg246990.html
------- Comment #4 From 2015-02-15 12:36:37 -------
То-же поведение и на дистрибутивах p7.
------- Comment #5 From 2015-02-15 13:30:25 -------
Как воспроизвести ?

У меня всё работает - стоят виртуалки с SysVInit и нормально перезагружаются.
Как вы заходите удалённо на пользователя и рута ?

#rpm -q consolehelper 
consolehelper-0.3.1-alt1
------- Comment #6 From 2015-02-15 13:32:39 -------
По ssh захожу. От пользователя.
------- Comment #7 From 2015-02-15 13:33:27 -------
команда reboot даётся от пользователя или от рута?
------- Comment #8 From 2015-02-15 13:35:08 -------
По ssh захожу. От пользователя.
------- Comment #9 From 2015-02-15 13:35:33 -------
команда reboot даётся от пользователя
------- Comment #10 From 2015-02-15 13:35:53 -------
команда reboot даётся от пользователя
------- Comment #11 From 2015-02-15 13:36:44 -------
Антон, я там на форуме всё подробно описал.
------- Comment #12 From 2015-02-15 13:45:58 -------
после установки SysVinit-usermode-1.5-alt2 проблема воспроизводится на текущем
Sisyphus. Всё как описано - если зайти по ssh, то ошибка:

$ reboot 
consolehelper: Неизвестная ошибка.

# control consolehelper
public

Если при этом ещё зайти и локально - то reboot проходит без проблем.
------- Comment #13 From 2015-02-15 13:52:15 -------
Да, если локально войти, то проблем нет.
А вот если локально пользователь не вошёл, то перезагрузка не работает.
Я сейчас проверил на нескольких дистрибутивах. Закрываешь все "сеансы" работы
локально, а потом входишь на такой комп по ssh - при команде reboot, poweroff и
т.п. выскакивает сообщение 
"consolelper неизвестная ошибка"
или, как вариант:
consolehelper: Аутентификация завершилась неудачно
------- Comment #14 From 2015-02-15 13:54:58 -------
Потом входишь на такой комп по ssh - от обычного пользователя.
Помогает даже такой костыль:

Цитата с форума:

"для временного решения проблемы.
1. Установите пакет agetty.
2. Пропишите в /etc/inittab такую, например, строчку:
Код: [Выделить]
user:2345:respawn:/sbin/agetty -a user tty11"
------- Comment #15 From 2015-02-15 14:30:51 -------
(In reply to comment #12)
> после установки SysVinit-usermode-1.5-alt2 проблема воспроизводится на текущем
> Sisyphus. Всё как описано - если зайти по ssh, то ошибка:
> 
> $ reboot 
> consolehelper: Неизвестная ошибка.
> 
> # control consolehelper
> public
> 
> Если при этом ещё зайти и локально - то reboot проходит без проблем.

Так было всегда (только код ошибки был другим) - это же главная фича пакета,
чтобы reboot от пользователя только с консоли работал.
------- Comment #16 From 2015-02-15 14:38:24 -------
Понятно, и никакой возможности отключить эту фичу нет?
------- Comment #17 From 2015-02-15 14:45:38 -------
Или сделать, как в systemctl reboot - запрос пароля пользователя при выполнения
этой команды?

PS Скорее более важно, что-бы другому пользователю, работающему на этой машине
не помешать, а если он один, то зачем ему запрещать выключение/перезагрузку?
Тем более, что установлен пакет SysVinit-usermode
------- Comment #18 From 2015-02-15 14:55:42 -------
(In reply to comment #16)
> Понятно, и никакой возможности отключить эту фичу нет?

Есть, конечно, почему нет?

Если заменить в /etc/pam.d/reboot
auth     required       pam_deny.so
на
auth     required       pam_permit.so
то reboot будут давать всем подряд.

(In reply to comment #17)
> Или сделать, как в systemctl reboot - запрос пароля пользователя при 
> выполнения этой команды?

Попробуйте заменить в /etc/pam.d/reboot
auth     required       pam_deny.so
на
auth     include        system-auth
------- Comment #19 From 2015-02-15 15:18:12 -------
Первый вариант работает, а второй требует пароль root:
$ reboot
Чтобы выполнить "reboot",
необходима дополнительная информация.
Введите пароль системного администратора root:  

А пароль нельзя, что-бы пароль пользователя требовал?
------- Comment #20 From 2015-02-15 15:37:12 -------
По такому случаю, я ставлю баге enhancement, т-к хотелось-бы видеть вариант,
когда для перезагрузки требовался-бы пароль пользовател, ну и какой-нибудь
control не помешал-бы для выбора поведения reboot/poweroff по-сети
------- Comment #21 From 2015-02-15 15:54:23 -------
(In reply to comment #19)
> Первый вариант работает, а второй требует пароль root:
> $ reboot
> Чтобы выполнить "reboot",
> необходима дополнительная информация.
> Введите пароль системного администратора root:  
> 
> А пароль нельзя, что-бы пароль пользователя требовал?

Можно. Насколько я помню, для этого достаточно убрать или закомментировать
строчку USER=root в файле /etc/security/console.apps/reboot.
------- Comment #22 From 2015-02-15 16:14:50 -------
Спасибо, всё правильно помните, всё так и есть.