- Выключение компьютера с помощью кнопки Power в GNU/Linux
- unixforum.org
- Решено: Кнопка выключения компьютера на рабочем столе
- Решено: Кнопка выключения компьютера на рабочем столе
- Re: Решено: Кнопка выключения компьютера на рабочем столе
- Re: Решено: Кнопка выключения компьютера на рабочем столе
- Re: Решено: Кнопка выключения компьютера на рабочем столе
- Re: Решено: Кнопка выключения компьютера на рабочем столе
- Re: Решено: Кнопка выключения компьютера на рабочем столе
- Выключение Linux из командной строки
- Процесс выключения Linux
- Синтаксис и опции shutdown
- Выключение компьютера в Linux
- 1. shutdown
- 2. reboot
- 3. halt
- 4. poweroff
- 5. SysRQ
- 6. Графический интерфейс
- Выводы
- Как выключить вашу систему Linux?
- Синтаксис
- Используя команду выключения
- Трансляция сообщения
- Отмена процесса отключения
- Как использовать команду «перезагрузка» в Linux
- Определение времени перезагрузки системы
- Отображение предупреждающего сообщения
- Как использовать halt с командой shutdown в Linux
- Как создать сочетания клавиш для выключения
- Заключение
Выключение компьютера с помощью кнопки Power в GNU/Linux
Действительно, всё перечисленное ниже можно сделать с помощью acpid. И да, так было бы гораздо лучше. Но мне хотелось размять буйну голову, да соорудить миленький велосипедик. Зато свой. И еще одно уточнение – на моём системном блоке есть только кнопка Power.
Итак, написана была маленькая программка на C, которая делает только одну вещь: выполняет команду при нажатии кнопки Power на системном блоке.
В Unix всё – файл, а поэтому можно читать сообщения с “файлов” устройств. Что и было использовано. Необходимо только определить: какой файл в папке /dev относится к кнопке выключения. Можно даже сузить поиски: какой файл из event в папке /dev/input. Я лично просто перебрал всё что было в этой директории по очереди командой:
$ cat /dev/input/event0
При нажатии кнопки Power должен появляться мусор в консоли (и только тогда). Теперь можно и написать программку:
#include
#include #include #include #include int main (int argc, char **argv)< int file_descriptor; int read_result; struct input_event event; if (argc
Компилируется она просто (если эти строки скопировать в файл с именем button.c):
$ gcc button.c -o powerbuttond
Затем необходимо переместить программку в какую-нибудь root’овскую папку с бинарниками:
# mv powerbuttond /usr/sbin/
Окончательно протестировать работу можно вот так:
# powerbuttond /dev/input/event1 «ls -a -l»
Если всё работает, то осталось только написать скрипт для systemd или SysVinit (мой случай):
case $ in start) powerbuttond /dev/input/event1 «/sbin/halt» & ;; stop) killall powerbuttond ;; *) echo «Usage: $ » exit 1 ;; esac exit 0
Заменив /sbin/halt на команду отключения, которая вам по душе.
Источник
unixforum.org
Форум для пользователей UNIX-подобных систем
- Темы без ответов
- Активные темы
- Поиск
- Статус форума
Решено: Кнопка выключения компьютера на рабочем столе
Решено: Кнопка выключения компьютера на рабочем столе
Как перенести кнопку выключения компьютера из меню „Система” на рабочий стол? При создании кнопки запуска приложения на рабочем столе, какую команду необходимо указать в соответствующей графе меню установки?
Debian GNU/Linux 5.0.2;
Gnome 2.22.3.
Re: Решено: Кнопка выключения компьютера на рабочем столе
Сообщение Uzix » 05.11.2009 10:19
Re: Решено: Кнопка выключения компьютера на рабочем столе
Re: Решено: Кнопка выключения компьютера на рабочем столе
Сообщение Uzix » 05.11.2009 11:28
Re: Решено: Кнопка выключения компьютера на рабочем столе
Сообщение cyxou » 05.11.2009 12:02
Re: Решено: Кнопка выключения компьютера на рабочем столе
Разобрался в данном вопросе.
Для того, чтобы создать на рабочем столе кнопку выключения компьютера с диалоговым окном подтверждения, необходимо указать имя файла с нижеприведенным сценарием в графе „Имя” установочного меню для данной кнопки.
Сценарий для перезагрузки системы будет несколько другим:
Образцы сценариев взяты здесь.
Чтобы сценарии работали, необходимо включить команду shutdown в список /etc/sudoers для текущего пользователя:
= NOPASSWD: /sbin/shutdown # данное правило необходимо для выполнения команды shutdown без запроса на ввод пароля со стороны системы
Вот изображения, которые могут понадобиться при оформлении кнопок запуска:
Источник
Выключение Linux из командной строки
Выключение компьютера — действие, с которым обычные пользователи сталкиваются чуть ли не каждый день. Если выключать сервер приходится довольно редко, то обычные, десктопные компьютеры подвержены этой операции очень даже часто. Большинство пользователей выключают linux в графическом интерфейсе системы. В окружении рабочего стола KDE это делается через главное меню, а в Gnome и Unity даже есть специальная кнопка на панели для решения этой задачи.
Но не всегда есть возможность выключить компьютер linux таким образом. Например, если окружение рабочего стола не работает, то больше ничего не остается, кроме того, чтобы выполнять выключение компьютера из командной строки. К тому же выключение компьютера linux через терминал единственно возможный способ для серверов, где нет графического интерфейса. Как вы увидите, этот способ также намного гибче обычного выключения, поскольку вы можете настроить нужное время отключения, или же выключить компьютер, дождавшись завершения работы определенной программы.
Процесс выключения Linux
Часто для выключения Linux из терминала используется утилита shutdown. Есть также команды poweroff, halt, но они для нестандартных случаев. Также выключить linux из консоли можно с помощью сочетаний клавиш SysRQ. Но сначала давайте рассмотрим синтаксис команды shutdown. Естественно, команда shutdown в Linux или любая другая не самостоятельно завершает работу системы и выключает компьютер. Она всего лишь передает запрос на выключение системе инициализации, а затем ядру. А уже они выполняют ряд сложных операций по подготовке и выключению компьютера. Если кратко, то вот они:
- Завершение процессов пользователя.
- Сигнал SIGTERM всем процессам.
- Сигнал SIGKILL всем процессам.
- Монтирование файловых систем в режиме только для чтения.
- Подготовка внешних устройств к отключению.
- Блокировка пространства пользователя, чтобы гарантировать, что ни один код пользователя больше не будет запущен.
- Завершение работы и отключение питания большинства периферических устройств.
- Отключение питания компьютера.
Теперь вы понимаете суть процесса выключения и то почему нельзя просто выдернуть шнур питания с розетки. Если это сделать, компьютер отключится моментально и не выполнит всех необходимых операций, а это может грозить потерей не сохраненных или даже недавно сохраненных данных, повреждением файловой системы и т д. Поэтому желательно выключать компьютер правильно с помощью shutdown или других специальных утилит.
Синтаксис и опции shutdown
Синтаксис команды очень простой:
$ shutdown [опции] [время] [сообщение]
Опции задают параметры отключения, их мы рассмотрим ниже. Время можно задавать в виде чч:мм в 24 часовом формате. Также можно использовать запись +минуты, указывающую через сколько минут от текущего момента нужно выключить компьютер с Linux. Также доступна константа now, указывающая, что выключать нужно прямо сейчас. Параметр сообщение позволяет задать сообщение, которое будет выведено в терминал перед выключением.
Вот основные опции утилиты:
- —help — вывести справку по программе
- -H, —halt — отключить питание, не завершая процессы и не перемонтируя файловые системы
- -P, —poweroff — нормальное выключение
- -r, —reboot — перезагрузка
- -k — не выполнять реальных действий, а только вывести сообщение
- —no-wall — выключить компьютер, но не выводить сообщение
- -c — отменить запланированное выключение linux из командной строки
Вот в принципе и все опции утилиты, их больше чем достаточно для такого простого действия. Теперь можно переходить к примерам, но сначала давайте рассмотрим, что же происходит во время включения Linux.
Выключение компьютера в Linux
1. shutdown
Самая простая и самая часто используемая команда выключения компьютера linux, отключит компьютер немедленно:
sudo shutdown -h now
Как видите, используется обычное выключение, и константа времени now, тоесть сейчас.
Теперь попробуем запланировать выключение компьютера linux через пять минут:
sudo shutdown -h +5 «Компьютер будет выключен через 5 минут»
Мы запланировали вывод сообщения перед выключением. Чтобы отменить команду shutdown выполните:
sudo shutdown -c
Точно так же мы можем указать точное время выключения, например в девять вечера:
sudo shutdown -h 21:00
Как я уже говорил, не только команда shutdown linux умеет выключать компьютер, есть еще несколько утилит способных на это. Рассмотрим их тоже.
2. reboot
Команда reboot обычно используется для перезагрузки системы, но она также умеет выключать компьютер. Мы не будем ее подробно рассматривать, потому, что она еще проще команды shutdown. Для выключения нужно задать опцию -p:
3. halt
Эта команда тоже выключает компьютер. Только делает она это очень по-своему. Она не выполняет никаких подготовительных действий перед выключением, а просто отключает питание:
Использование halt может повредить систему
4. poweroff
Это аналог halt, делает в точности то же самое:
5. SysRQ
Помните, в начале статьи, я говорил о сочетании клавиш для включения компьютера? Рассмотрим этот вопрос подробнее.
SysRQ — это подсистема, реализованная на уровне ядра. Ядро обрабатывает все нажатия клавиш, а с помощью этой подсистемы, оно может принимать от пользователя команды, даже когда система полностью зависла. Основное предназначение этой подсистемы — работа с компьютером в проблемных ситуациях, например, если вы думаете что ваш компьютер заразил вирус, или компьютер завис и его нужно выключить. Для доступа к SysRq используются сочетания клавиш Alt+PrtScr+номер
Самое интересное, что мы можем выполнить безопасное выключение компьютера linux. Для этого зажмите клавиши Alt + PrtScr и поочередно нажимайте:
- R — разблокировать клавиатуру;
- E — послать всем процессам сигнал SIGTERM;
- I — послать всем процессам сигнал SIGKILL;
- S — перенести все данные из кеша файловых систем на диск;
- U — перемонтировать файловые системы только для чтения;
- B — перезагрузить.
Также вместо всего этого можно воспользоваться сочетанием клавиш Alt+PrtScr+O, в таком случае, вся процедура будет выполнена автоматически, эта команда поддерживается не всеми ядрами.
6. Графический интерфейс
Выключить компьютер в графическом интерфейсе ещё проще. Для этого кликните по иконке выключения в правом верхнем углу, а затем выберите Выключить/Завершить сеанс, затем Выключение.. и снова Выключить:
Выводы
Теперь вы знаете все что нужно, о том, как выключить Linux через терминал. Если вас застигнет врасплох ошибка или зависание компьютера, вы знаете что делать. Если остались вопросы — пишите в комментариях!
Источник
Как выключить вашу систему Linux?
Linux поставляется с различными утилитами, которые позволяют системному администратору перезагружать, останавливать или выключать устройство. Чтобы запускать команды, нужно быть пользователем root или членом группы.
«Завершение работы» используется для выключения и перезапуска нашей системы, в то время как команда Reboot перезапускает только систему. Команда «halt» останавливает все функции оборудования. Он завершает запущенные процессы и выключает ЦП без выключения системы.
В этом посте показано, как использовать терминал для выключения, перезапуска и остановки ваших систем.
Синтаксис
Основной синтаксис команды «выключение» приведен ниже:
Следуйте приведенному ниже синтаксису для широковещательного сообщения перед выключением.
Используя команду выключения
Откройте свой терминал и введите «выключение» без аргументов. Приведенная ниже команда выключит вашу систему через 1 минуту:
Используйте завершение работы с командой «sudo», чтобы предоставить административные привилегии. Выполните показанную ниже команду:
Выполните команду, чтобы немедленно выключить компьютер:
После ввода пароля система немедленно выключится.
В качестве альтернативы мы можем использовать «сейчас» вместо 0:
Используйте параметр выключения питания с командой выключения, как показано ниже:
Определение времени выключения системы :
Вы также можете указать время в часах и минутах, в которое ваша машина должна выключиться, следующим образом.
Используйте следующую команду, чтобы выключить компьютер за 5 минут:
Предположим, вы хотите выключить вашу систему в 19:00; запустите указанную ниже команду:
Трансляция сообщения
Если систему используют несколько пользователей, уведомление будет появляться на всех экранах пользователей, чтобы точно сказать им, что произойдет отключение:
Отмена процесса отключения
Вы можете отменить запланированный процесс выключения, выполнив следующую команду:
Как использовать команду «перезагрузка» в Linux
Команда перезагрузки перезагружает вашу систему после ее выключения.
Используйте команду, показанную ниже, чтобы перезагрузить вашу систему:
Определение времени перезагрузки системы
Определите единицу времени в часах, минутах и секундах. Команда shutdown -r перезагрузит систему через 10 минут:
Он показывает, что система перезагрузится через 10 минут.
Отображение предупреждающего сообщения
Как и при завершении работы, если система работает с несколькими пользователями, на экране каждого пользователя появится предупреждающее сообщение, информирующее их о том, что что-то вот-вот произойдет.
Как использовать halt с командой shutdown в Linux
Параметр «halt» с командой «shutdown» завершает работу операционной системы, но не выключает машину. Это остановит работу процессора:
Используйте одну команду:
Как создать сочетания клавиш для выключения
Вы также можете выключить, перезагрузить и остановить вашу систему с помощью сочетаний клавиш. Эти ключи можно создать в Ubuntu.
Откройте «Настройки», перейдите к «Сочетания клавиш» и в нижней части экрана щелкните символ «+», чтобы создать новый ярлык:
Откроется новое окно:
Присвойте имя и введите команду. Например, если вы хотите создать сочетание клавиш для выключения системы, используйте команду, приведенную ниже:
Щелкните по кнопке » Добавить «.
Чтобы включить сочетание клавиш, нажмите кнопку «Отключить» и назначьте сочетание клавиш, удерживая клавиши по вашему выбору:
После того, как вы нажмете клавиши, появится следующее окно, отображающее нажатые вами кнопки:
Точно так же для перезагрузки и остановки выполните тот же процесс, который описан выше, и используйте следующие команды:
Созданы новые ярлыки. Теперь давайте протестируем назначенные сочетания клавиш. Чтобы перезагрузить систему, нажмите CTRL + SHIFT + R, появится сообщение с просьбой «Перезагрузить» вашу систему, как показано на изображении ниже:
Заключение
«Завершение работы» — это утилита командной строки, используемая для выключения или перезапуска вашей системы. Регулярно выключать систему — это очень хорошая привычка. Когда вы выключаете свою систему, все файлы и процессы закрываются. С помощью команды «выключение» вы также можете установить время и предупреждающие сообщения. Команды перезагрузки и остановки также используются при выключении. Перезагрузка системы — хороший способ очистить оперативную память и устранить ошибки памяти. В этом посте показано, как выключить, перезагрузить и остановить вашу систему Linux с помощью командной строки или сочетаний клавиш.
Источник