Выплеска эмоций пост
Nov. 20th, 2019 10:47 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
$current status: working...
$current mode:
(это продолжение темы моей новой работы, начало здесь и здесь)
Суть, кратко: у меня есть четыре десятка разнокалиберных машин под разными версиями убунты. Надо привести их всех к одному (выбранному) стандарту, установить требуемый для работы софт (Хром, Телеграмм и звонилку), включить в мониторинг (и проверить, что этот мониторинг мониторит) и - напоследок - проверить, чтобы везде была самонаписанная скриптина, которая выключает комп после определенного периода неактивности.
Последние полторы недели я этим неспешно занимаюсь.
А теперь эмоции
(с техническими подробностями, но их можно читать как "ля-ля-ля", суть не изменится)
В общем-то, всё просто. Современные *nix-системы для простого пользователя от винды отличаются уже мало. Вот честно, между Win7 и Win8 внешних отличий больше! И даже мониторинг, который пугал меня больше всего, оказался вполне понятным после первого же замученного пациента.
Внезапно трудности возникли с последним пунктом - скриптом на выключение. И вот уже полторы недели в свободное время (часик утром, до работы, и часа два вечером) я пытаюсь заставить его работать так, как мне нужно.

Я с нуля (никогда не писала скрипты до этого) разобралась в чужом коде - что за странные символы и комбинации там стояли. Я разобралась с xprintidle. Синтаксис, опять же: то, что работало в линуксе версии 14.04 дает ошибки в 18.04-ой версии
. А в выбранной корпоративным стандартом версии 19.1 вообще всё не так, поэтому мне, вдобавок, пришлось второй раз переустановить систему дома 
Спустя три дня скрипт заработал в консоли. Победа!
- подумала я, осталась сущая фигня: прописать его в автозапуск!
Ага, щазззз.
НЕДЕЛЮ.
Неделю (плюс/минус домашние дела) я пыталась разобраться, как запускать скрипт при загрузке системы
.
Я разобралась с cron-ом. (В crontab нужно обязательно оставлять пустую последнюю строку!!!
)
Не помогло.
Я пошла к Щщассью и поплакалась ему. Он сказал, что в новейших версиях линуксов cron-а вообще может не быть, и там всё работает совсем-совсем по-другому.
Я скрипнула зубами
и переустановила систему на последнюю версию, поддержка которой будет осуществляться до 2023 года.
Я разобралась с rc.local.
Отдельное спасибо тем людям, которые пишут пошаговые инструкции и не ленятся делать это для каждой вновь выходящей версии ОСи!
Вы мои спасители! 
Вчера, как мне казалось, мне оставалась самая малость: вписать правильно работающий(!) скрипт в настроенный rc.local. Ну что, что могло пойти не так?
Всё, как оказалось.
Скрипт на выключение компьютера, напомню. Собственно, когда загрузка системы доходила до rc.local, скрипт это выключение отрабатывал. Правда, без 5-минутной задержки. Но главная проблема в том, что в этот момент загрузка ещё не доходила до того момента, когда я могла в неё вмешаться.
Ладно, загрузочная флешка у меня под рукой, стартовать систему я могу, отредактировать сценарий и вынести скрипт из загрузки тоже. Загрузилась, но что-то надо делать со скриптом.
Пошла опять поплакалась Щщассью. Он предложил после каждого шага делать echo и записывать результаты в лог, чтобы знать, в каком месте всё идет криво. Поправила нужный скрипт, чтобы тесты были не такими разрушительными (убрала shutdown), написала дополнительный, чтобы легче было искать нужный момент в логах. Прописала в rc.local, перезагрузилась.
И ВСЁ РАБОТАЕТ!!!!
и по логам видно, что все скрипты отрабатываются корректно!! 
Полезла искать, почему работающий скрипт и работающий сценарий запуска друг с другом не дружат.
Я третий день забиваю одно и тоже в поисковую строку. Спасибо Google за то, что результаты выдачи отличаются (и я даже не буду думать, почему сегодня я не могу найти выдававшуюся вчера страничкув первую очередь потому, что она мне не помогла), хотя на разных сайтах с разной степенью подробности написано, в общем-то, одно и то же. То, что я уже попробовала. Сегодня - аллилуйя! - я вычитала новый способ.
Совсем простой и не тру-админский.
Никаких консолей (черных экранов с текстом), никаких дополнительных установок пакетов. В прекрасном графическом интерфейсе а-ля винда надо просто выбрать "Автоматически запускаемые программы" и добавить свою скриптину.
ВСЁ.

Только к Гуглу у меня есть вопрос, небольшой: что ж ты, скотина, не показал мне эту страничку неделю назад????
И картинка для истории. Вот как я живу последние несколько дней:

Upd.: а на работе, кстати, скрипт так и не заработал...
И найденная написанная настоящими программерами утилита тоже...
Видимо, расхождение у этой версии линукса с неактивностью пользователя идет уже на идеологическом уровне....
$current mode:

(это продолжение темы моей новой работы, начало здесь и здесь)
Суть, кратко: у меня есть четыре десятка разнокалиберных машин под разными версиями убунты. Надо привести их всех к одному (выбранному) стандарту, установить требуемый для работы софт (Хром, Телеграмм и звонилку), включить в мониторинг (и проверить, что этот мониторинг мониторит) и - напоследок - проверить, чтобы везде была самонаписанная скриптина, которая выключает комп после определенного периода неактивности.
Последние полторы недели я этим неспешно занимаюсь.
А теперь эмоции

В общем-то, всё просто. Современные *nix-системы для простого пользователя от винды отличаются уже мало. Вот честно, между Win7 и Win8 внешних отличий больше! И даже мониторинг, который пугал меня больше всего, оказался вполне понятным после первого же замученного пациента.
Внезапно трудности возникли с последним пунктом - скриптом на выключение. И вот уже полторы недели в свободное время (часик утром, до работы, и часа два вечером) я пытаюсь заставить его работать так, как мне нужно.


Я с нуля (никогда не писала скрипты до этого) разобралась в чужом коде - что за странные символы и комбинации там стояли. Я разобралась с xprintidle. Синтаксис, опять же: то, что работало в линуксе версии 14.04 дает ошибки в 18.04-ой версии


Спустя три дня скрипт заработал в консоли. Победа!

Ага, щазззз.
НЕДЕЛЮ.
Неделю (плюс/минус домашние дела) я пыталась разобраться, как запускать скрипт при загрузке системы

Я разобралась с cron-ом. (В crontab нужно обязательно оставлять пустую последнюю строку!!!

Не помогло.
Я пошла к Щщассью и поплакалась ему. Он сказал, что в новейших версиях линуксов cron-а вообще может не быть, и там всё работает совсем-совсем по-другому.
Я скрипнула зубами

Я разобралась с rc.local.
Отдельное спасибо тем людям, которые пишут пошаговые инструкции и не ленятся делать это для каждой вновь выходящей версии ОСи!


Вчера, как мне казалось, мне оставалась самая малость: вписать правильно работающий(!) скрипт в настроенный rc.local. Ну что, что могло пойти не так?

Всё, как оказалось.
Скрипт на выключение компьютера, напомню. Собственно, когда загрузка системы доходила до rc.local, скрипт это выключение отрабатывал. Правда, без 5-минутной задержки. Но главная проблема в том, что в этот момент загрузка ещё не доходила до того момента, когда я могла в неё вмешаться.

Ладно, загрузочная флешка у меня под рукой, стартовать систему я могу, отредактировать сценарий и вынести скрипт из загрузки тоже. Загрузилась, но что-то надо делать со скриптом.
Пошла опять поплакалась Щщассью. Он предложил после каждого шага делать echo и записывать результаты в лог, чтобы знать, в каком месте всё идет криво. Поправила нужный скрипт, чтобы тесты были не такими разрушительными (убрала shutdown), написала дополнительный, чтобы легче было искать нужный момент в логах. Прописала в rc.local, перезагрузилась.
И ВСЁ РАБОТАЕТ!!!!


Полезла искать, почему работающий скрипт и работающий сценарий запуска друг с другом не дружат.
Я третий день забиваю одно и тоже в поисковую строку. Спасибо Google за то, что результаты выдачи отличаются (и я даже не буду думать, почему сегодня я не могу найти выдававшуюся вчера страничку
Совсем простой и не тру-админский.
Никаких консолей (черных экранов с текстом), никаких дополнительных установок пакетов. В прекрасном графическом интерфейсе а-ля винда надо просто выбрать "Автоматически запускаемые программы" и добавить свою скриптину.
ВСЁ.


Только к Гуглу у меня есть вопрос, небольшой: что ж ты, скотина, не показал мне эту страничку неделю назад????

И картинка для истории. Вот как я живу последние несколько дней:

Upd.: а на работе, кстати, скрипт так и не заработал...

