Як я можу автоматично відключити систему через певний час?


Відповіді:


49

Відкрийте вікно терміналу і введіть:

sudo shutdown -h +60

і просто замініть 60 на будь-яку кількість хвилин, яку ви хочете взяти.

Більше інформації тут:

http://ubuntuforums.org/archive/index.php/t-473173.html http://www.linux.org/lessons/beginner/l5/lesson5a.html


2
-PПараметр (відключення живлення) , здається, хороша ідея теж.
htorque

відключення + m 60 не працює для мене. передає мені повідомлення про помилку і каже, що існує недійсне значення часу.
NES

Я думав, що це дивно ... це не повинно бути "+ m 60", воно повинно бути "+60" (а може бути більше, як "-h +60". Знизу на цій сторінці, здається, відомо, як це працює: linux.org/lessons/beginner/l5/lesson5a.html .
Даніель

"shutdown -P 1" - працює добре і вимикає систему за 1 хвилину, не потрібна одиниця часу.
n3rd

2
насправді його судо ..... бо потрібні кореневі привілеї
Ширіш Ерваде

8
  • Ви можете використовувати gshutdown Встановити gshutdown
  • Після установки його можна знайти у розділі Програми → Аксесуари → GShutdown alt текст
  • Також погляньте на цей метод .

Хтось може сказати мені, чому вони голосують?
karthick87

2
я не проголосував. Але Gshutdown не працює нормально. Коли я вибираю вимкнення, він негайно виходить з користувача?
NES

Я теж
вимикає

2

Оскільки тема Абт вимикаючи комп'ютер після певного періоду бездіяльності буде перенаправлений на цю тему, я поясню це питання тут.

Я витратив багато часу, щоб вирішити цю проблему, тому мені здається корисним поділитися нею, щоб зробити цю проблему простою для інших. Я хотів спробувати різні програми, але вони не працювали для мене, тому я знайшов використання короткого сценарію з cronjob найкращим рішенням.

По-перше, я посилався на пост Timed Shutdown - вимкнення через 30 хвилин

Я скопіюю його нижче, а потім поясню вдосконалення, щоб він працював:

Встановити xprintidle. Цей інструмент дає час очікування користувача.

sudo apt-get install xprintidle

Створіть скрипт autoshutdown.sh, який перевіряє час простою та доручає комп’ютеру вимкнутись у режимі очікування протягом 30 хвилин.

idle=$(xprintidle)

if [ $idle -gt 1800000 ]; then
    shutdown -h now
fi

Зробіть для цього задачу, яка час від часу перевіряє, чи система занадто довго простоює, і якщо вона простоює довше 30 хвилин, вона вимкнеться. Зауважте, що cronjob повинен бути зроблений для кореневого користувача.


Цей сценарій потребує деяких удосконалень для роботи, як-от:

idle=`env DISPLAY=:0 su OUR_USER -c xprintidle 2>&1`

OUR_USER є користувачем, до якого ми звертаємось, щоб перевірити час очікування (не користувач root)

DISPLAY=:0є правильним для одного дисплея робочого столу (запустіть envкоманду для читання DISPLAYу вашій ситуації)

якщо сценарій виконується OUR_USER, рядок вище може бути зменшений:

idle=`env DISPLAY=:0 xprintidle 2>&1`

Ця тема описана http://ubuntuforums.org/showthread.php?t=1069602

якщо сценарій виконується командою OUR_USER, shutdownперед цим повинна передувати командаsudo

sudo shutdown -h now

Мій сценарій запускався з cron за рядком у файлі cron:

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • кожні 5 хвилин
  • OUR_USER слід замінити, як раніше, до користувача, до якого ми посилаємось.

Якщо скрипт не запускається коренем, ми повинні пам'ятати, щоб додати рядок:

ALL ALL=(ALL) NOPASSWD: /sbin/shutdown 

у файлі sudoers , тому команда завершення не потребує виконання пароля.


Я спробував такі кронштейни на 2-х подібних дистрибутивах Lubuntu 12.04.4 RC LXLE 32-розрядний ( http://www.lxle.net/ )

В одній системі він працює лише за допомогою встановленого у файлі кореневого cronjob:

/ var / spool / cron / crontabs / root


КАВАТИ

Ще одна проблема полягає в тому, що xprintidle в моїй системі давав іноді випадкові для мене значення, а іноді логічно додаткові. Кінцевий результат - мою систему зазвичай відключили через 20 хвилин, можливо, якщо я встановив значення максимального холостого ходу на 30 хвилин. Я думаю, що винуватцем є xscreensaver, який не працює, як встановлено введеними параметрами.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.