LINUX.ORG.RU

Отключение системы в задданое время на постоянной основе.

 ,


0

1

Добрый день, есть машины на Centos 7 находящиеся в домене, я хочу чтобы они автоматически отключалась каждый день в определенное время. Как этого можно добиться?

Отключение системы в задданое время на постоянной основе.

Это чтобы выключил и больше никогда не включил?


А если серьёзно, то crontab (или systemd.timer, если оно на systemd).

Домен-недомен здесь как бы сбоку вообще.

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 1)
Ответ на: комментарий от flant

хотелось бы чисто для себя узнать как планируется добиться последующего включения выключеных машин в заданное время?

Wake-on-LAN. В десктопах десятилетней давности уже поддерживалось, так что вряд ли это будет какой-то большой проблемой. А серверов без WoL я не встречал.

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 2)
Ответ на: комментарий от ruslan_dzusev

нет, это чтобы в какое время не включил комп, он должен автоматически отключится скажем в 21:00 по московскому времени))

Что нет? Читай документацию по крону. systemd, насколько я помню, тоже может не только с периодичностью работать, но и в определённое время.

mord0d ★★★★★
()
Ответ на: комментарий от ruslan_dzusev

crontab прописывается для конкретных пользователей

Во-первых не обязательно оно пользователям разрешено, во-вторых помимо этого есть ещё общесистемный /etc/crontab (в котором немного отличается синтаксис — перед командой дополнительное поле с именем пользователя).

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Затем, что нужно чтобы это работало автоматически, а не запускать её лапками после каждого включения.

Чтобы не запускать лапками при включении - все уже придумали до нас - /etc/rc.d/rc.local

sigurd ★★★★★
()
Ответ на: комментарий от sigurd

И от этого решение стало элегантнее?

Вот бы мне кто запилил чтобы в промежутке от 22:00 до 08:00 комп не включался вообще, а не просто стриггернул один раз, потому что не проблема его тут же включить.

R_He_Po6oT ★★★★
()
Ответ на: комментарий от R_He_Po6oT

И от этого решение стало элегантнее?

Предложено рабочее проверенное решения для автора вопроса про автоматическое выключение группы компов в заданное время.
Здесь не соревнование в элегантности!

sigurd ★★★★★
()
Ответ на: комментарий от sigurd

Но ты же соревнуешься? До тебя человек предложил, но ты споришь. Не я же? :)

А мне способ никто не придумал? А то мне в голову ничего не приходит. Что крон, что шатдаун - единоразовые штуки, а мне нужно надёжно.

R_He_Po6oT ★★★★
()
Ответ на: комментарий от pfg

утилита shutdown (сколь помню конечно) работает через крон, который работает через системд (если стоит системд). зачем промежуточные прокладки ??

Вы считаете, вместо shutdown 18:30 лучше изучить синтаксис cron & systemd?
«Лучше день потратить, затем быстро долететь»?
Хорошо - приведите ваш вариант команды «заснуть на 12 часов» (пример выше через rtcwake)

sigurd ★★★★★
()
Последнее исправление: sigurd (всего исправлений: 2)

после выключения компутер может запустить только биос. соответственно для запуска компутера по времени смотри настройки биоса в соответствующем разделе. плюс учти какое время в биосе - там может и UTC.
вполне возможно есть какие утилиты которые могут корежить cmos напрямую, но не сталкивался.

выключить через системд так
———- poweroff.service

[Unit]
Description=poweroff

[Service]
Type=oneshot
ExecStart=/bin/systemctl poweroff

[Install]
WantedBy=multi-user.target

——— poweroff.timer

[Unit]
Description=Execute poweroff every day at 21:00

[Timer]
OnCalendar=21:00
Unit=poweroff.service

[Install]
WantedBy=multi-user.target

прописываешь, потом sudo systemctl daemon-reload и systemctl enable poweroff.timer

pfg ★★★★★
()
Ответ на: комментарий от pfg

хз, запрос %тс% на выключение.

Согласен, но потом началась «а как потом включать автоматом в заданное время».

И как готовый пример реализации таймера выключения твоя реализация хороша! Но сколько прочитать надо, чтобы самому это написать?
А %ТС% послали именно маны читать на cron & systemd

sigurd ★★★★★
()
Ответ на: комментарий от sigurd

кто что умеет/привык :)

через крон выключение тоже делается
даже в глубоком сне ядро операционки и куча систем компутера (то же питание процессора) работает.

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 2)
Ответ на: комментарий от pfg

rtcwake -m disk

Suspend to disk (aka hibernate) The S4 sleeping state as defined by ACPI. Saves the machine’s state into swap space and completely powers off the machine. When the machine is powered on, the state is restored. Until then, there is zero power consumption.

Питание компа полностью отключается! Стартует комп RTC, которое имеет свою батарейку.

sigurd ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

Вот бы мне кто запилил чтобы в промежутке от 22:00 до 08:00 комп не включался вообще

А мне способ никто не придумал?

Нет, не придумал, потому что его не существует. Только ардуинку с реле в разрыв питания ставить.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Не, всё проще. Включил, ядро загрузилось, проверило, что время не подходяшшэе и всё выключилось. Этого достаточно.

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

R_He_Po6oT ★★★★
()
Ответ на: комментарий от R_He_Po6oT

Не, всё проще. Включил, ядро загрузилось, проверило, что время не подходяшшэе и всё выключилось. Этого достаточно.

Ваше предложение полностью противоречит исходному ТЗ «чтобы в промежутке от 22:00 до 08:00 комп не включался вообще»

sigurd ★★★★★
()

Если локально на самих машинах, то как правильно тут писали выше, в cron внести и всё. Если же глобально (то есть по команде с сервера), то есть варианты от примитивных оркестраторов, что тупо ходят по ssh и дают команды, до Ansible и Salt. В какой именно домен?

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

Вот бы мне кто запилил чтобы в промежутке от 22:00 до 08:00 комп не включался вообще

APC Smart UPS поставить в недоступное место, провод от него приварить/приклепать к б/п. :-)

AS ★★★★★
()
Ответ на: комментарий от intelfx

Нет, не придумал, потому что его не существует. Только ардуинку с реле в разрыв питания ставить.

Есть, но дома его не используют. Давно придуманы всякие штуки для этого, но и стоят не два рубля )) Я, например, для банковского оборудования в ТЗ требования такие видел, к куче дизельных генераторов, UPS и так далее.

Roy-Batty
()
Последнее исправление: Roy-Batty (всего исправлений: 1)
Ответ на: комментарий от beastie

Wake-on-LAN. В десктопах десятилетней давности уже поддерживалось

Работало раз-через-раз все те же десятилетия.

Ну да, не без проблем. А когда десктопы были вот прям идеальными?

mord0d ★★★★★
()
Ответ на: комментарий от sigurd

мысль правильная и эффективная.
но !! мне только одно неясно - каким образом rtcwake настраивает время пробуждения в аппаратных rtc.

ACPI не дает интерфейса к управлению времени пробуждения. биос имеет совершенно разную структуру cmos-записей. дампнуть cmos можно, да и залить обратно, но и фсё … :( в свое время искал програмулинку для изменения настроек биоса. попадаются только для редких случаев, так понял личных компутеров особо упертых гиков, реверснувших cmos-записи :), и то либо под дос, либо древних и все такое.
вопрос лишь в этой тонкой субстанции ??
все остальное отработанно и привычно.

может кто прояснить вот этот момент - управление настройками биоса из-под операционки ??

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от Gennadevich

вот именно что

pfg@srv16:~$ poweroff
Failed to set wall message, ignoring: Interactive authentication required.
Failed to power off system via logind: Interactive authentication required.
Failed to open initctl fifo: Отказано в доступе
Failed to talk to init daemon.
pfg ★★★★★
()