Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Права пользователя на завершение работы системы  (Прочитано 1634 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн project_21

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Всем доброго дня.
Задача: удаленно, скриптом завершить работу системы (Ubuntu server 18.04)

Примерно вот так:
 \PyTTY\PLINK.EXE user@ip_server -pw password sutdown -h now
как такое реализовать?
чтоб дополнительно пароль sudo не запрашивался.
и и прав sudo у него тоже не должно быть - исключительно право на выключение/перезагрузку.

Оффлайн andytux

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6902
    • Просмотр профиля
Цитировать
sudo у него тоже не должно быть - исключительно право на выключение/перезагрузку.
Совсем недавно было, вот.

Оффлайн РыжийПёс

  • Активист
  • *
  • Сообщений: 786
  • 好红狼
    • Просмотр профиля
чтоб дополнительно пароль sudo не запрашивался.
Как вариант, прописать соответствующие правила в sudoers, для этого в консоли пишем:
sudo visudo(откроется редактор)

Вариант №1, создать группу команд (например, "SHUTDOWN_CMDS")  для управления питанием.
Для этого в конец добавить строки:

Cmnd_Alias SHUTDOWN_CMDS = /sbin/shutdown, /sbin/halt, /sbin/reboot, /sbin/poweroff, /usr/bin/prime-select
%sudo ALL=NOPASSWD: SHUTDOWN_CMDS

Альтернативный вариант: для конкретного пользователя, конкретная команда.
Для этого в конец добавить строки:
ИмяВашегоПользователя ALL=NOPASSWD: /usr/sbin/pm-suspend
ИмяВашегоПользователя ALL=NOPASSWD: /sbin/shutdown
В любом случае, конце файла обязательно должна остаться пустая строка!
« Последнее редактирование: 15 Февраля 2019, 10:17:38 от РыжийПёс »
Каждый отдельно взятый человек, перешедший на GNU Linux, приближает всё остальное человечество к Светлому Будущему.

Оффлайн mazut

  • Забанен
  • Активист
  • *
  • Сообщений: 703
  • да, не заходи ты сюда!
    • Просмотр профиля
Скрипт,вощето начинается с # /bin/bash. Перепеши. погугли.
Патрикеич.
Под наблюдением.

Оффлайн project_21

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля

Альтернативный вариант: для конкретного пользователя, конкретная команда.
Для этого в конец добавить строки:
Код: [Выделить]

ИмяВашегоПользователя ALL=NOPASSWD: /usr/sbin/pm-suspend
ИмяВашегоПользователя ALL=NOPASSWD: /sbin/shutdown

В любом случае, конце файла обязательно должна остаться пустая строка!

Благодарствую! Настроил по этому варианту.

Оффлайн garek

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
чтоб дополнительно пароль sudo не запрашивался.
Может быть автоматический ввод пароля sudo подойдёт
echo "password" | sudo -S <команда>
« Последнее редактирование: 15 Февраля 2019, 12:01:19 от garek »
недостаточно дружелюбен к старичкам

Оффлайн project_21

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Скрипт,вощето начинается с # /bin/bash. Перепеши. погугли.

Спасибо. Я в курсе с чего скрипт начинается. :)


Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
тоже вариант.
echo -e '#!'"/bin/bash\nshutdown -h 0" | sudo tee /usr/bin/my_script.sh
sudo chmod +x /usr/bin/my_script.sh
echo "$USER ALL=(ALL) NOPASSWD:/usr/bin/my_script.sh" | sudo tee /etc/sudoers.d/90-cloudimg-$USER
sudo -K
bash
sudo my_script.sh
sudo my_script.sh без ввод пароль, как сих пор.
« Последнее редактирование: 15 Февраля 2019, 12:13:09 от victor00000 »
Wars ~.o

Оффлайн project_21

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
тоже вариант.
echo -e '#!'"/bin/bash\nshutdown -h 0" | sudo tee /usr/bin/my_script.sh
sudo chmod +x /usr/bin/my_script.sh
echo "$USER ALL=(ALL) NOPASSWD:/usr/bin/my_script.sh" | sudo tee /etc/sudoers.d/90-cloudimg-$USER
sudo -K
bash
sudo my_script.sh
sudo my_script.sh без ввод пароль, как сих пор.

Спасибо, тоже вариант.
Но у меня скрипт для удаленного завершения работы по SSH из под винды.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Скрипт,вощето начинается с # /bin/bash. Перепеши. погугли.
Если шебанга нет, по умолчанию используется /bin/sh

Пользователь добавил сообщение 15 Февраля 2019, 13:19:36:
тоже вариант.
echo -e '#!'"/bin/bash\nshutdown -h 0" | sudo tee /usr/bin/my_script.sh
sudo chmod +x /usr/bin/my_script.sh
echo "$USER ALL=(ALL) NOPASSWD:/usr/bin/my_script.sh" | sudo tee /etc/sudoers.d/90-cloudimg-$USER
sudo -K
bash
sudo my_script.sh
sudo my_script.sh без ввод пароль, как сих пор.


Никогда так не делайте!
Всегда используйте visudo для редактирования sudoers!
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
AnrDaemon,
вообще мОдеры улыбаться.

Пользователь добавил сообщение 15 Февраля 2019, 15:13:00:
project_21,
nc -l 12345 ; my_script.sh
и Windows браузера сайт h++p://ИП_АДРЕС:12345/
« Последнее редактирование: 15 Февраля 2019, 15:13:00 от victor00000 »
Wars ~.o

Оффлайн DimanBG

  • Старожил
  • *
  • Сообщений: 1316
    • Просмотр профиля
systemctl работает от юзера. poweroff, reboot
Какие исключительные права? Чего вы редактируйте?
чтоб дополнительно пароль sudo не запрашивался.
и и прав sudo у него тоже не должно быть - исключительно право на выключение/перезагрузку.
systemctl poweroff
systemctl reboot
В #1 же ответ.

Оффлайн agtrif

  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
systemctl poweroff
могу ошибаться, но кажется на сервере, при наличии других залогиненых пользователей эти комманды все же запросят пароль для sudo

zse

  • Гость
при наличии других залогиненых пользователей
             Скорее всего да, на обычном компьютере если пользователи не отключают себя а переходят просто на свой account нужно либо заходить и всех выключать по очереди  либо sudo sutdown -h now
             2019 Feb 15; 02:11 PM

 

Страница сгенерирована за 0.058 секунд. Запросов: 25.