Настройка языка и региональных стандартов в Ubuntu или Debian
Данный вопрос достаточно простой, но очень часто про него забывают, вспоминая только тогда, когда это выходит боком. Поэтому лучше сразу уделить внимание этому вопросу и выполнить такую настройку первым делом после установки системы.
Начнем с правильной установки локали, так как именно от нее могут зависеть настройки по умолчанию устанавливаемого ПО и в некоторых случаях их уже не удастся поменять просто и безболезненно.
Для этого выполните команду:
Перед вами появится большой список локалей – выбираем из них необходимые, обычно достаточно выбрать ru_RU.UTF-8, в некоторых случаях может понадобиться еще en_US.UTF-8, следующим шагом укажите выбранную консоль для использования по умолчанию.
После чего система сгенерирует указанные вами локали и установит выбранную локалью по умолчанию.
Теперь настроим консоль, это необходимо для нормального отображения символов в оболочке:
В Debian пакета console-setup может не оказаться, в таком случае выполните:
И повторите предыдущую команду.
На самом первом экране безальтернативно выбираем UTF-8, затем находим и выбираем набор символов Latin; Slavic Cyrillic; Greek. Остальные настройки можете выбрать на свой вкус (размер символов, шрифт и т.д.)
И в заключение сразу правильно установим часовой пояс:
Ничего сложного там нет, выбираем нужный континент и часовой пояс, применяем настройки.
После всех выполненных действий операционную систему следует перезагрузить.
Данный вопрос достаточно простой, но очень часто про него забывают, вспоминая только тогда, когда это выходит боком. Поэтому лучше сразу уделить внимание этому вопросу и выполнить такую настройку первым делом после установки системы.
Начнем с правильной установки локали, так как именно от нее могут зависеть настройки по умолчанию устанавливаемого ПО и в некоторых случаях их уже не удастся поменять просто и безболезненно.
Для этого выполните команду:
dpkg-reconfigure locales
Перед вами появится большой список локалей – выбираем из них необходимые, обычно достаточно выбрать ru_RU.UTF-8, в некоторых случаях может понадобиться еще en_US.UTF-8, следующим шагом укажите выбранную консоль для использования по умолчанию.
После чего система сгенерирует указанные вами локали и установит выбранную локалью по умолчанию.
Теперь настроим консоль, это необходимо для нормального отображения символов в оболочке:
dpkg-reconfigure console-setup
В Debian пакета console-setup может не оказаться, в таком случае выполните:
apt install console-setup
И повторите предыдущую команду.
На самом первом экране безальтернативно выбираем UTF-8, затем находим и выбираем набор символов Latin; Slavic Cyrillic; Greek. Остальные настройки можете выбрать на свой вкус (размер символов, шрифт и т.д.)
И в заключение сразу правильно установим часовой пояс:
dpkg-reconfigure tzdata
Ничего сложного там нет, выбираем нужный континент и часовой пояс, применяем настройки.
После всех выполненных действий операционную систему следует перезагрузить.
👍37👌5🔥2❤1
Порядок запуска гостевых систем в Proxmox VE
Proxmox, как и любая взрослая система виртуализации предоставляет богатые инструменты для управления работой гостевых систем (виртуальных машин и контейнеров), одним из важных параметров работы узла является порядок запуска гостевых систем.
Пока гостей мало обычно этот вопрос не встает на повестке дня, но как только их количество увеличивается и появляются достаточно тяжелые системы, то вопрос начинает вставать ребром.
Начнем с того, что ваша дисковая подсистема может не выдержать одновременного запуска такого количества гостевых систем и серьезно просядет по производительности, в результате чего вы будете бегать вокруг и ждать, когда же оно наконец загрузится.
Также не будет ничего хорошего, если сервер приложений запустится раньше обсуживающего его сервера БД или сетевого хранилища. В общем таких ситуаций может быть много и ничего хорошего из них не получится.
Поэтому берем управление порядком загрузки в свои руки, а именно разделяем гостевые системы по степени важности и критичности, учитывая зависимости между ними.
Первыми ставим наиболее важные системы, обеспечивающие функционирование все инфраструктуры: роутеры, VPN-сервера, DNS, DHCP и т.д. и т.п.
Далее можем запустить контроллеры домена, за ними СУБД, потом сервера приложений, потом все остальное.
Настроить все это можно прямо в графическом интерфейсе в разделе Options виртуальной машины, прежде всего активируйте опцию Start at boot, которая включает автоматическую загрузку гостевой системы.
Затем откройте настройку Start/Shutdown order, где вы можете указать порядок загрузки/выключения, для этого можете использовать любые целые положительные числа.
При включении узла гипервизор проверяет все гостевые системы, у которых включена автозагрузка и строит очередь согласно указанным значением порядка. Очередь у контейнеров и виртуальных машин общая.
Первыми запускаются гостевые системы с самым низким порядком, последними те, у которых порядок не указан совсем. Гости с одинаковым номером порядка запускаются одновременно.
Но запущенная гостевая система вовсе не означает ее готовность к работе, загрузка нужных служб может занимать время и если это критично для зависящих от них гостевых систем, то мы можем поставить дополнительную задержку, которую указываем в параметре Startup delay в секундах.
Эта опция часто вызывает неверное понимание, многие считают, что она определяет задержку старта гостевой системы, однако это не так, данная задержка влияет только на запуск гостей следующей очереди.
Если задержек установлено несколько, то отработает самая длительная из них. И только после этого начнут загружаться гостевые системы следующей очереди. Без указания порядка очереди эта настройка бессмысленна.
Выключение происходит в обратном порядке, сначала гости без указания порядка, потом от самого большого номера очереди к самому маленькому. Задержки при выключении не используются, как только выключились все гостевые системы одной очереди тут же, выключается другая.
Параметр Shutdown timeout устанавливает тайм-аут на выключение, по умолчанию 60 секунд, если гостевая система не завершила свою работу за указанное время, то в лог пишется ошибка выключения и гостевая система завершается принудительно.
Если у вас есть тяжелые машины, которые долго выключаются, то имеет смысл увеличить данный параметр, чтобы гостевой системе хватало времени корректно завершить процессы, а если это какая-то тестовая лаборатория и вы хотите, чтобы она быстрее выключалась, то таймаут можно уменьшить.
Proxmox, как и любая взрослая система виртуализации предоставляет богатые инструменты для управления работой гостевых систем (виртуальных машин и контейнеров), одним из важных параметров работы узла является порядок запуска гостевых систем.
Пока гостей мало обычно этот вопрос не встает на повестке дня, но как только их количество увеличивается и появляются достаточно тяжелые системы, то вопрос начинает вставать ребром.
Начнем с того, что ваша дисковая подсистема может не выдержать одновременного запуска такого количества гостевых систем и серьезно просядет по производительности, в результате чего вы будете бегать вокруг и ждать, когда же оно наконец загрузится.
Также не будет ничего хорошего, если сервер приложений запустится раньше обсуживающего его сервера БД или сетевого хранилища. В общем таких ситуаций может быть много и ничего хорошего из них не получится.
Поэтому берем управление порядком загрузки в свои руки, а именно разделяем гостевые системы по степени важности и критичности, учитывая зависимости между ними.
Первыми ставим наиболее важные системы, обеспечивающие функционирование все инфраструктуры: роутеры, VPN-сервера, DNS, DHCP и т.д. и т.п.
Далее можем запустить контроллеры домена, за ними СУБД, потом сервера приложений, потом все остальное.
Настроить все это можно прямо в графическом интерфейсе в разделе Options виртуальной машины, прежде всего активируйте опцию Start at boot, которая включает автоматическую загрузку гостевой системы.
Затем откройте настройку Start/Shutdown order, где вы можете указать порядок загрузки/выключения, для этого можете использовать любые целые положительные числа.
При включении узла гипервизор проверяет все гостевые системы, у которых включена автозагрузка и строит очередь согласно указанным значением порядка. Очередь у контейнеров и виртуальных машин общая.
Первыми запускаются гостевые системы с самым низким порядком, последними те, у которых порядок не указан совсем. Гости с одинаковым номером порядка запускаются одновременно.
Но запущенная гостевая система вовсе не означает ее готовность к работе, загрузка нужных служб может занимать время и если это критично для зависящих от них гостевых систем, то мы можем поставить дополнительную задержку, которую указываем в параметре Startup delay в секундах.
Эта опция часто вызывает неверное понимание, многие считают, что она определяет задержку старта гостевой системы, однако это не так, данная задержка влияет только на запуск гостей следующей очереди.
Если задержек установлено несколько, то отработает самая длительная из них. И только после этого начнут загружаться гостевые системы следующей очереди. Без указания порядка очереди эта настройка бессмысленна.
Выключение происходит в обратном порядке, сначала гости без указания порядка, потом от самого большого номера очереди к самому маленькому. Задержки при выключении не используются, как только выключились все гостевые системы одной очереди тут же, выключается другая.
Параметр Shutdown timeout устанавливает тайм-аут на выключение, по умолчанию 60 секунд, если гостевая система не завершила свою работу за указанное время, то в лог пишется ошибка выключения и гостевая система завершается принудительно.
Если у вас есть тяжелые машины, которые долго выключаются, то имеет смысл увеличить данный параметр, чтобы гостевой системе хватало времени корректно завершить процессы, а если это какая-то тестовая лаборатория и вы хотите, чтобы она быстрее выключалась, то таймаут можно уменьшить.
11👍43❤6🥱2
Войти в айти
Был недавно в гостях у знакомых и сразу, чуть ли не с порога первый вопрос – как сейчас лучше войти в айти. Ну да понятно, у них сын этой весной школу будет заканчивать и вопрос выбора будущей профессии стоит остро.
Посидел, попил чая, с будущим коллегой побеседовал и не увидел у него вообще ни желания, ни интереса, ни каких бы там ни было способностей к этому делу.
Спрашиваю, а зачем в айти то, не самая простая отрасль, как никак, да еще и постоянного самообразования требует.
На что услышал, мол ладно тебе, все равно у айтишников самые высокие зарплаты и работают в тепле и уюте, сидя за компьютером, а еще можно удаленно из дома работать.
В целом они в чем-то правы и даже у начинающего айтишника зарплата если не будет самой высокой по рынку, то все равно будет выше, чем у начинающих в других отраслях.
И если с нашей, отраслевой точки зрения, зарплаты отдельных юных падаванов невелики, то с точки зрения широких народных масс – они достаточно высоки, особенно за то, что эти самые айтишники сидят в тепле и ничего не делают.
Поэтому можно говорить, что в обществе давно сложилось понимание айти как некой синекуры, куда надо только попасть, а потом катайся как сыр в масле. На самом деле все конечно сложнее, но мнение уже сложилось.
Масла в огонь подбавляют и всевозможные курсы, и даже государственные программы по переквалификации самых широких народных масс населения в айтишников.
Государство понять можно, с нынешними темпами цифровизации и импортозамещения ему срочно нужны специалисты нижнего звена, в достаточном для их массового использования количестве.
Плюс айти всячески популяризуется у молодого поколения, о чем мы только что писали выше.
Нынешние высокие заработные платы в IT обусловлены двумя вещами: дефицитом специалистов и достаточно высокой добавочной стоимостью, таким специалистом производимой.
Но и трудятся такие специалисты преимущественно в коммерческой сфере, где никто терпеть лентяев и дураков не будет: или ты работаешь и получаешь нормальные деньги или идешь на улицу.
Войти в такое айти просто так сложно, какие бы дипломы и корочки у тебя не были. В коммерции на диплом смотрят в последнюю очередь. Ты или умеешь и делаешь, либо не умеешь и проходишь мимо и неважно кто-то по специальности: программист или ветеринар.
А вот в госсекторе все по-иному, там можно годами ничего не делать, просто имитируя рабочий процесс и красиво отчитываясь наверх, плюс присутствуют достаточно специфичные взаимоотношения, которые лучше всего характеризуются поговоркой: «я начальник – ты дурак, ты начальник – я дурак».
Нормальные специалисты в госсектор не спешат. Частично из-за невысоких по отраслевым меркам зарплат, а частично из-за специфики рабочих отношений (скажем так). А кто и прибивается – так ненадолго, ну или в случае, если больше никуда не берут.
Поэтому именно государству сегодня выгодно выбросить на рынок большое количество начинающих айтишников. Которые, прекрасно понимая сами, что айтишники они «ненастоящие» не будут страдать излишними амбициями и пойдут туда, где тепло, светло и деньги платят, т.е. преимущественно в госсектор.
Хотя кто-то, возможно, и откроет в себе новые способности, но это будут именно штучные случаи. Аналогичный эффект даст и массовый приток молодежи на айти специальности. Появится обширный рынок молодых специалистов, хотя и невысокой квалификации.
А что это значит? А это значит, что уровень зарплаты в этом сегменте резко пойдет вниз, по-другому никак, если по рынку труда бегают стада молодых (и не очень) айтишников, желающих просто найти работу по специальности.
Повлияет ли это на уровень зарплат в отрасли в целом? Нет. Опытные специалисты как были, так и останутся востребованы. А вот существующий сейчас перекос, когда даже молодой и зеленый айтишник получает выше среднего – выправит.
А вообще история повторяется. В начале нулевых модно было быть юристом. И где сейчас все эти стада молодых юристов? А хороших что тогда, что сейчас приходится поискать и получают они более чем достойно.
Был недавно в гостях у знакомых и сразу, чуть ли не с порога первый вопрос – как сейчас лучше войти в айти. Ну да понятно, у них сын этой весной школу будет заканчивать и вопрос выбора будущей профессии стоит остро.
Посидел, попил чая, с будущим коллегой побеседовал и не увидел у него вообще ни желания, ни интереса, ни каких бы там ни было способностей к этому делу.
Спрашиваю, а зачем в айти то, не самая простая отрасль, как никак, да еще и постоянного самообразования требует.
На что услышал, мол ладно тебе, все равно у айтишников самые высокие зарплаты и работают в тепле и уюте, сидя за компьютером, а еще можно удаленно из дома работать.
В целом они в чем-то правы и даже у начинающего айтишника зарплата если не будет самой высокой по рынку, то все равно будет выше, чем у начинающих в других отраслях.
И если с нашей, отраслевой точки зрения, зарплаты отдельных юных падаванов невелики, то с точки зрения широких народных масс – они достаточно высоки, особенно за то, что эти самые айтишники сидят в тепле и ничего не делают.
Поэтому можно говорить, что в обществе давно сложилось понимание айти как некой синекуры, куда надо только попасть, а потом катайся как сыр в масле. На самом деле все конечно сложнее, но мнение уже сложилось.
Масла в огонь подбавляют и всевозможные курсы, и даже государственные программы по переквалификации самых широких народных масс населения в айтишников.
Государство понять можно, с нынешними темпами цифровизации и импортозамещения ему срочно нужны специалисты нижнего звена, в достаточном для их массового использования количестве.
Плюс айти всячески популяризуется у молодого поколения, о чем мы только что писали выше.
Нынешние высокие заработные платы в IT обусловлены двумя вещами: дефицитом специалистов и достаточно высокой добавочной стоимостью, таким специалистом производимой.
Но и трудятся такие специалисты преимущественно в коммерческой сфере, где никто терпеть лентяев и дураков не будет: или ты работаешь и получаешь нормальные деньги или идешь на улицу.
Войти в такое айти просто так сложно, какие бы дипломы и корочки у тебя не были. В коммерции на диплом смотрят в последнюю очередь. Ты или умеешь и делаешь, либо не умеешь и проходишь мимо и неважно кто-то по специальности: программист или ветеринар.
А вот в госсекторе все по-иному, там можно годами ничего не делать, просто имитируя рабочий процесс и красиво отчитываясь наверх, плюс присутствуют достаточно специфичные взаимоотношения, которые лучше всего характеризуются поговоркой: «я начальник – ты дурак, ты начальник – я дурак».
Нормальные специалисты в госсектор не спешат. Частично из-за невысоких по отраслевым меркам зарплат, а частично из-за специфики рабочих отношений (скажем так). А кто и прибивается – так ненадолго, ну или в случае, если больше никуда не берут.
Поэтому именно государству сегодня выгодно выбросить на рынок большое количество начинающих айтишников. Которые, прекрасно понимая сами, что айтишники они «ненастоящие» не будут страдать излишними амбициями и пойдут туда, где тепло, светло и деньги платят, т.е. преимущественно в госсектор.
Хотя кто-то, возможно, и откроет в себе новые способности, но это будут именно штучные случаи. Аналогичный эффект даст и массовый приток молодежи на айти специальности. Появится обширный рынок молодых специалистов, хотя и невысокой квалификации.
А что это значит? А это значит, что уровень зарплаты в этом сегменте резко пойдет вниз, по-другому никак, если по рынку труда бегают стада молодых (и не очень) айтишников, желающих просто найти работу по специальности.
Повлияет ли это на уровень зарплат в отрасли в целом? Нет. Опытные специалисты как были, так и останутся востребованы. А вот существующий сейчас перекос, когда даже молодой и зеленый айтишник получает выше среднего – выправит.
А вообще история повторяется. В начале нулевых модно было быть юристом. И где сейчас все эти стада молодых юристов? А хороших что тогда, что сейчас приходится поискать и получают они более чем достойно.
👍33😁5❤3👌3🤡2
Заменит ли ИИ системных администраторов
Вот уже не один раз за последнее время читатели задают один и тот же вопрос, а заменит ли ИИ системных администраторов? А если и не заменит, то не сократит ли значительно рынок труда.
Вопрос интересный и я тоже думал об этом, сегодня почти весь день провел в разъездах, встречах, разговорах и уже ближе к вечеру разговорился за кофе со знакомой главной бухгалтером одной подшефной конторы.
А разговор как-то неожиданно зашел про ИИ, я ее прямо спросил – пользуешься? Она ответила утвердительно и сказала, что, в общем и целом, довольна полученным результатом.
Что делает? Да точно также спихнула на него всю рутину: проверки, сверки, поиск расхождений и все такое прочее. Иногда заставляет искать что-то новое в сети, разбирать непонятные и редкие ситуации.
Спрашиваю – не фантазирует? Фантазирует – говорит, мол как без этого, но я же не дура, я же вижу, что его куда-то не туда понесло, сразу могу направить правильным путем. И вообще, чем более четко ставишь задачу, тем лучше результат.
И если раньше, чтобы «прокрыжить» месяц надо было либо убить пару часов, либо загрузить на полдня девочку, то сетка сделает это минут за пять. Причем ничего не упустит и точно все найдет, в отличие от девочки.
Получается, говорю, что ИИ все-таки заменяет бухгалтеров, на что она на момент задумалась, а потом сказала – нет. Потому что, если быть честными, то все эти девочки – они не бухгалтера на самом деле, хотя формально ими числятся.
Все что они могут – это вносить первичку, разносить платежи и делать еще множество монотонных и нудных повседневных задач, не требующих ни квалификации, ни глубокого понимания. Самостоятельно вести учет даже какого-нибудь простого ИП они не смогут.
Ничего не напоминает? В нашей отрасли дела обстоят примерно также, кто такой настоящий системны администратор? Это человек обладающий инженерным мышлением, умеющий проводить причинно-следственные связи и строить гипотезы при недостатке информации.
А также принимать решения в условиях цейтнота и психологического давления. Когда все упало и надо все срочно поднимать или когда что-то пошло не так и надо вернуть все, как было до окончания технологического окна.
Одновременно с этим кому-то надо читать логи, смотреть мониторинг, заполнять отчеты, сидеть на первой линии поддержки и все такое прочее. Можно ли этих сотрудников назвать администраторами? Давайте скажем честно – нет. В лучшем случае помощниками администратора.
И вот их ИИ спокойно заменит, потому что он не ленится, не сачкует, а просто быстро, спокойно и качественно делает всю рутину. У него не болит голова после вчерашнего, с ним не ругается жена и он не решает личные вопросы в рабочее время.
И что самое смешное, товарищей, меняющих картриджи и вытаскивающих замятую бумагу ИИ не заменит, просто потому что не умеет. А вот сотрудников первой линии поддержки, помощников и младших сотрудников – запросто.
Но тут давайте снова будем честны, это не администраторы, это младший технический персонал, самостоятельно инфраструктуру, даже простую, они не потянут. А бизнес он не про благотворительность, он про прибыль и лишние дармоеды ему не нужны.
Поэтому мораль сей басни будет очень проста. Либо вы представляете собой самостоятельную профессиональную единицу, либо ИИ скоро займет ваше место. Если вы действительно профессионал – то ИИ станет вашим помощником и заменит нескольких раздолбаев.
Иначе – вам придется конкурировать с ним на рынке труда и шансы будут далеко не в вашу пользу.
Поэтому, если вы решили серьезно работать в сфере IT, то вам придется действительно стать хорошим специалистом, который может и умеет, либо уступить рабочее место ИИ и пойти туда, что ИИ еще не осилил – работу руками.
Вот уже не один раз за последнее время читатели задают один и тот же вопрос, а заменит ли ИИ системных администраторов? А если и не заменит, то не сократит ли значительно рынок труда.
Вопрос интересный и я тоже думал об этом, сегодня почти весь день провел в разъездах, встречах, разговорах и уже ближе к вечеру разговорился за кофе со знакомой главной бухгалтером одной подшефной конторы.
А разговор как-то неожиданно зашел про ИИ, я ее прямо спросил – пользуешься? Она ответила утвердительно и сказала, что, в общем и целом, довольна полученным результатом.
Что делает? Да точно также спихнула на него всю рутину: проверки, сверки, поиск расхождений и все такое прочее. Иногда заставляет искать что-то новое в сети, разбирать непонятные и редкие ситуации.
Спрашиваю – не фантазирует? Фантазирует – говорит, мол как без этого, но я же не дура, я же вижу, что его куда-то не туда понесло, сразу могу направить правильным путем. И вообще, чем более четко ставишь задачу, тем лучше результат.
И если раньше, чтобы «прокрыжить» месяц надо было либо убить пару часов, либо загрузить на полдня девочку, то сетка сделает это минут за пять. Причем ничего не упустит и точно все найдет, в отличие от девочки.
Получается, говорю, что ИИ все-таки заменяет бухгалтеров, на что она на момент задумалась, а потом сказала – нет. Потому что, если быть честными, то все эти девочки – они не бухгалтера на самом деле, хотя формально ими числятся.
Все что они могут – это вносить первичку, разносить платежи и делать еще множество монотонных и нудных повседневных задач, не требующих ни квалификации, ни глубокого понимания. Самостоятельно вести учет даже какого-нибудь простого ИП они не смогут.
Ничего не напоминает? В нашей отрасли дела обстоят примерно также, кто такой настоящий системны администратор? Это человек обладающий инженерным мышлением, умеющий проводить причинно-следственные связи и строить гипотезы при недостатке информации.
А также принимать решения в условиях цейтнота и психологического давления. Когда все упало и надо все срочно поднимать или когда что-то пошло не так и надо вернуть все, как было до окончания технологического окна.
Одновременно с этим кому-то надо читать логи, смотреть мониторинг, заполнять отчеты, сидеть на первой линии поддержки и все такое прочее. Можно ли этих сотрудников назвать администраторами? Давайте скажем честно – нет. В лучшем случае помощниками администратора.
И вот их ИИ спокойно заменит, потому что он не ленится, не сачкует, а просто быстро, спокойно и качественно делает всю рутину. У него не болит голова после вчерашнего, с ним не ругается жена и он не решает личные вопросы в рабочее время.
И что самое смешное, товарищей, меняющих картриджи и вытаскивающих замятую бумагу ИИ не заменит, просто потому что не умеет. А вот сотрудников первой линии поддержки, помощников и младших сотрудников – запросто.
Но тут давайте снова будем честны, это не администраторы, это младший технический персонал, самостоятельно инфраструктуру, даже простую, они не потянут. А бизнес он не про благотворительность, он про прибыль и лишние дармоеды ему не нужны.
Поэтому мораль сей басни будет очень проста. Либо вы представляете собой самостоятельную профессиональную единицу, либо ИИ скоро займет ваше место. Если вы действительно профессионал – то ИИ станет вашим помощником и заменит нескольких раздолбаев.
Иначе – вам придется конкурировать с ним на рынке труда и шансы будут далеко не в вашу пользу.
Поэтому, если вы решили серьезно работать в сфере IT, то вам придется действительно стать хорошим специалистом, который может и умеет, либо уступить рабочее место ИИ и пойти туда, что ИИ еще не осилил – работу руками.
👍40👎9❤6💯3
Анализируем загрузку вашей Linux системы при помощи systemd-analyze
Многие администраторы задаются вопросом – что задерживает загрузку их Linux системы, какие службы и как влияют на этот процесс. Желательно в цифрах и фактах.
Возможно, вы удивитесь, но все это в вашей системе уже есть, с цифрами, фактами и графиками. Достаточно воспользоваться утилитой systemd-analyze.
Если вы просто запустите ее, то получите общее время загрузки системы разделенные на этапы загрузки ядра и пользовательского окружения. Понятно, что такой информации мало, поэтому будем детализировать.
Прежде всего получим список процессов, влияющих на загрузку и отсортированных по времени запуска:
Также можно построить зависимостей и времени запуска критических сервисов:
Для анализа вам может пригодиться график загрузки, для его построения используйте:
А этой командой можно построить граф зависимостей сервисов в формате DOT, но сам по себе он мало интересен, потому как полный граф системы представляет собой сильно запутанное и нечитаемое дерево, куда интереснее получить граф для отдельно взятой службы или таргета.
Для преобразования DOT-файла в график вам потребуется установить пакет
После чего выполните команду:
И в папке запуска скоро появится интересующий вас график, по которому можно изучить все зависимости юнита. Обратите внимание, что имя сервиса нужно писать полностью, с указанием типа юнита.
Многие администраторы задаются вопросом – что задерживает загрузку их Linux системы, какие службы и как влияют на этот процесс. Желательно в цифрах и фактах.
Возможно, вы удивитесь, но все это в вашей системе уже есть, с цифрами, фактами и графиками. Достаточно воспользоваться утилитой systemd-analyze.
Если вы просто запустите ее, то получите общее время загрузки системы разделенные на этапы загрузки ядра и пользовательского окружения. Понятно, что такой информации мало, поэтому будем детализировать.
Прежде всего получим список процессов, влияющих на загрузку и отсортированных по времени запуска:
systemd-analyze blame
Также можно построить зависимостей и времени запуска критических сервисов:
systemd-analyze critical-chain
Для анализа вам может пригодиться график загрузки, для его построения используйте:
systemd-analyze plot > boot.svg
А этой командой можно построить граф зависимостей сервисов в формате DOT, но сам по себе он мало интересен, потому как полный граф системы представляет собой сильно запутанное и нечитаемое дерево, куда интереснее получить граф для отдельно взятой службы или таргета.
Для преобразования DOT-файла в график вам потребуется установить пакет
graphviz:apt install graphviz
После чего выполните команду:
systemd-analyze dot docker.service | dot -Tsvg > docker.svg
И в папке запуска скоро появится интересующий вас график, по которому можно изучить все зависимости юнита. Обратите внимание, что имя сервиса нужно писать полностью, с указанием типа юнита.
1👍33❤2🔥2🤡2
MultiDrive – бесплатная утилита для работы с дисками
Утилиты для работы с дисками в Windows – отдельная категория программ, которые работают с критически важным оборудованием – дисками и пользовательскими данными.
У многих администраторов уже выработался свой набор программ, но чаще всего это коммерческие решения, что не всегда подходит, особенно если речь идет о лицензионной чистоте или заказчик не хочет приобретать дополнительный софт.
Не так давно мы открыли для себя утилиту MultiDrive от компании Atola Technology. На первый взгляд она ничем не выделяется среди аналогов. Простой и понятный интерфейс, необходимый минимум функций.
Программа умеет клонировать, создавать резервные копии дисков и восстанавливать их, а также делать очистку с гарантированным уничтожением данных. Все достаточно просто и наглядно, запутаться решительно негде.
Это делает ее пригодной как для опытных специалистов, так и для обычных пользователей, которым просто надо клонировать старый диск на новый. Или сделать резервную копию системы.
Данное ПО не является открытым, но распространяется бесплатно для личного и коммерческого применения. Компания разработчик может собирать статистику использования, но эту функцию нужно явно включить и спокойно отключить в настройках.
Кроме самой утилиты вы можете скачать загрузочный диск с ней на базе WinPE, что делает ее полноценным и универсальным инструментом.
Но самое интересное – наличие собственного CLI, которое позволяет использовать утилиту в сценариях автоматизации. CLI полностью свой, но достаточно прост и отлично документирован.
При необходимости вы можете вызвать дополнительную справку по любой команде с подробным перечислением всех ключей, примерами использования и расшифровкой применяемых сокращений.
В общем, перед нами добротно сделанный бесплатный продукт, который можно и нужно использовать в повседневной деятельности.
Утилиты для работы с дисками в Windows – отдельная категория программ, которые работают с критически важным оборудованием – дисками и пользовательскими данными.
У многих администраторов уже выработался свой набор программ, но чаще всего это коммерческие решения, что не всегда подходит, особенно если речь идет о лицензионной чистоте или заказчик не хочет приобретать дополнительный софт.
Не так давно мы открыли для себя утилиту MultiDrive от компании Atola Technology. На первый взгляд она ничем не выделяется среди аналогов. Простой и понятный интерфейс, необходимый минимум функций.
Программа умеет клонировать, создавать резервные копии дисков и восстанавливать их, а также делать очистку с гарантированным уничтожением данных. Все достаточно просто и наглядно, запутаться решительно негде.
Это делает ее пригодной как для опытных специалистов, так и для обычных пользователей, которым просто надо клонировать старый диск на новый. Или сделать резервную копию системы.
Данное ПО не является открытым, но распространяется бесплатно для личного и коммерческого применения. Компания разработчик может собирать статистику использования, но эту функцию нужно явно включить и спокойно отключить в настройках.
Кроме самой утилиты вы можете скачать загрузочный диск с ней на базе WinPE, что делает ее полноценным и универсальным инструментом.
Но самое интересное – наличие собственного CLI, которое позволяет использовать утилиту в сценариях автоматизации. CLI полностью свой, но достаточно прост и отлично документирован.
При необходимости вы можете вызвать дополнительную справку по любой команде с подробным перечислением всех ключей, примерами использования и расшифровкой применяемых сокращений.
В общем, перед нами добротно сделанный бесплатный продукт, который можно и нужно использовать в повседневной деятельности.
11👍31🔥9❤2
Выгрузка и загрузка информационных баз 1С при помощи автономного сервера
При работе с информационными базами 1С:Предприятие очень часто возникают задачи выгрузить или загрузить дамп информационной базы или ее конфигурацию.
Обычно для этих целей используют Конфигуратор, но данный способ имеет ряд неудобств. Во-первых, Конфигуратор требует монопольного доступа к базе, т.е. выгнать из нее всех пользователей.
Во-вторых, могут быть сложности с серверами на Linux без графического окружения, а так как Конфигуратор работает в режиме толстого клиента, то все данные в полном объеме гоняются по сети, таким образом удаленная работа на медленном канале становится попросту невозможной.
От всех этих недостатков вас может избавить Автономный сервер, который поставляется вместе с платформой и располагается в папке
В нашем примере будет использована платформа Linux, но все команды будут прекрасно работать и в среде Windows.
Будем считать, что мы находимся в директории с бинарными файлами платформы, а дампы и конфигурации будем располагать в домашнем каталоге текущего пользователя.
Начнем с самого популярного, выгрузки базы в DT-файл:
В целом параметры в комментариях не нуждаются, только уточним что в опции --db-server мы указываем имя или адрес сервера базы данных и указываем учетные данные также от сервера СУБД.
Параметр --dbms указывает тип СУБД, можете использовать
Выгонять пользователей для этого не нужно, но помните, что в возможно нарушение целостности создаваемого файла выгрузки.
Кроме того, следует помнить, что выгрузка информационной базы не является средством резервного копирования!
Загрузить базу можно обратной командой:
Для выгрузки конфигурации используйте:
Для загрузки:
После загрузки конфигурации вам потребуется обновить конфигурацию базы данных:
В данной заметке мы коснулись лишь малой части того, что умеет автономный сервер, показав лишь самые часто используемые операции. Больше информации можно найти в официальной документации.
При работе с информационными базами 1С:Предприятие очень часто возникают задачи выгрузить или загрузить дамп информационной базы или ее конфигурацию.
Обычно для этих целей используют Конфигуратор, но данный способ имеет ряд неудобств. Во-первых, Конфигуратор требует монопольного доступа к базе, т.е. выгнать из нее всех пользователей.
Во-вторых, могут быть сложности с серверами на Linux без графического окружения, а так как Конфигуратор работает в режиме толстого клиента, то все данные в полном объеме гоняются по сети, таким образом удаленная работа на медленном канале становится попросту невозможной.
От всех этих недостатков вас может избавить Автономный сервер, который поставляется вместе с платформой и располагается в папке
bin под именем ibcmd.В нашем примере будет использована платформа Linux, но все команды будут прекрасно работать и в среде Windows.
Будем считать, что мы находимся в директории с бинарными файлами платформы, а дампы и конфигурации будем располагать в домашнем каталоге текущего пользователя.
Начнем с самого популярного, выгрузки базы в DT-файл:
./ibcmd infobase dump --db-server=srv-db --dbms=PostgreSQL --db-name=base-01 --db-user=postgres --db-pwd=Pa$$word_1 ~/1cv8.dt
В целом параметры в комментариях не нуждаются, только уточним что в опции --db-server мы указываем имя или адрес сервера базы данных и указываем учетные данные также от сервера СУБД.
Параметр --dbms указывает тип СУБД, можете использовать
PostgreSQL или MSSQLServer. Выгонять пользователей для этого не нужно, но помните, что в возможно нарушение целостности создаваемого файла выгрузки.
Кроме того, следует помнить, что выгрузка информационной базы не является средством резервного копирования!
Загрузить базу можно обратной командой:
./ibcmd infobase restore --db-server=srv-db --dbms=PostgreSQL --db-name=base-01 --db-user=postgres --db-pwd=Pa$$word_1 ~/1cv8.dt
Для выгрузки конфигурации используйте:
./ibcmd infobase config save --db-server=srv-db --dbms=PostgreSQL --db-name=base-01 --db-user=postgres --db-pwd=Pa$$word_1 ~/1cv8.cf
Для загрузки:
./ibcmd infobase config load --db-server=srv-db --dbms=PostgreSQL --db-name=base-01 --db-user=postgres --db-pwd=Pa$$word_1 ~/1cv8.cf
После загрузки конфигурации вам потребуется обновить конфигурацию базы данных:
./ibcmd infobase config apply --db-server=srv-db --dbms=PostgreSQL --db-name=base-01 --db-user=postgres --db-pwd=Pa$$word_1
В данной заметке мы коснулись лишь малой части того, что умеет автономный сервер, показав лишь самые часто используемые операции. Больше информации можно найти в официальной документации.
👍27🤯4❤3👀1🤝1
Резервное копирование файловых баз 1С:Предприятие в S3 хранилище
Данную заметку мы начнем с описания проблематики, потому как она достаточно специфична и именно ей обусловлены принятые нами при разработке скрипта решения.
Файловые базы – это малый или даже средний бизнес, вполне нормальные и платежеспособные клиенты, но с одной особенностью – 1С:Предприятие нужна только для отчетности и зарплаты, поэтому работают с ней пару-тройку человек, преимущественно удаленно.
Сегодня стандарт де-факто – это публикация файловой базы на веб-сервере, что обеспечивает нормальный уровень производительности и спокойно позволяет организовать удаленный доступ к ней без лишних затрат.
Кроме этого, всегда будет хотя бы одно место, как правило, локальное, к которому база подключена напрямую, это связано с необходимостью устанавливать патчи, обновления, расширения и т.д.
На все это накладывается неопределенный режим работы и отсутствие четкого технологического окна. Градации там могут быть разные, от включен постоянно, до утром включили, вечером выключили.
Поэтому угадать время, когда в базе никого нет сложно, даже глухой ночью может висеть активный сеанс, хорошо если он ничего не делает, а если там групповое перепроведение или еще какая обработка запущена?
И если веб-сеансы мы можем относительно безопасно для базы отключить, то завершить локальный сеанс безопасно невозможно, только завершением процесса 1С. А это может привести к совершенно разным последствиям.
Поэтому нам нужно выгружать копию безопасно и не выгоняя пользователей, такой способ есть – Автономный сервер 1С:Предприятие, он позволяет выгрузить дамп базы – DT, не выгоняя пользователей.
Насколько корректна будет такая выгрузка? С точки зрения физической структуры это будет нормальный, полноценный дамп.
С логической? Целостность дампа сохраняется на момент его создания, если в это время в базе работали или была запущена незавершенная транзакция, то дамп будет неконсистентным.
В обычных СУБД такие вопросы решаются автоматически, в файловой 1С вам поможет проверка логической целостности в конфигураторе. Но в любом случае у вас будет рабочая база, просто без части данных.
Но ровно тоже самое вы получите и при использовании pg_dump или простой модели восстановления MS SQL, так что тут полный паритет. Да и не нужно небольшим базам восстановление на момент времени.
Также стоит помнить, что DT – это сырой дамп, а не резервная копия и сам вендор обращает на это внимание, вы можете спокойно выгрузить DT из поврежденной базе, который потом не сможете загрузить.
Но в нашем сценарии DT – это оптимальный вариант, в том числе и потому, что мы можем назвать файл как нам нравится, а для его загрузки надо запустить нужную базу в конфигураторе.
В то время как сам файл базы зовется исключительно 1Cv8.1CD и ничего не стоит перепутать файлы или заменить не тот файл, а такие случаи на нашем опыте случались не раз и не два.
Теперь почему S3 – сегодня это самый дешевый способ внешнего хранения данных и один из самых безопасных, особенно если хранилище поддерживает версионирование.
В итоге, собрав все эти требования воедино и приведя к единому знаменателю мы совместно с Claude написали и отладили скрипт. Скрипт писали «по-взрослому», все настройки хранятся в отдельных файлах, сам скрипт вам трогать не нужно.
В комплекте у вас будет 4 файла:
▫️Backup-1C-ToS3.ps1 – сам скрипт
▫️Backup-1C-ToS3.bat – файл-стартер для ручного запуска
▫️config.ini – настройки подключения к S3-хранилищу
▫️databases.lst – список файловых баз, пути к ним и учетные данные для входа
Все файлы отлично прокомментированы и содержат краткие инструкции по применению. Единственный момент, так как писалось все это конкретно под S3 Selectel, то в комментах и примерах фигурирует именно он, но скрипт будет работать с любым S3 хранилищем.
Из зависимостей вам потребуется Автономный сервер (устанавливается с компонентой сервера 1С, если сервер не нужен снимите флаг его установки в качестве службы) и AWS CLI.
Данную заметку мы начнем с описания проблематики, потому как она достаточно специфична и именно ей обусловлены принятые нами при разработке скрипта решения.
Файловые базы – это малый или даже средний бизнес, вполне нормальные и платежеспособные клиенты, но с одной особенностью – 1С:Предприятие нужна только для отчетности и зарплаты, поэтому работают с ней пару-тройку человек, преимущественно удаленно.
Сегодня стандарт де-факто – это публикация файловой базы на веб-сервере, что обеспечивает нормальный уровень производительности и спокойно позволяет организовать удаленный доступ к ней без лишних затрат.
Кроме этого, всегда будет хотя бы одно место, как правило, локальное, к которому база подключена напрямую, это связано с необходимостью устанавливать патчи, обновления, расширения и т.д.
На все это накладывается неопределенный режим работы и отсутствие четкого технологического окна. Градации там могут быть разные, от включен постоянно, до утром включили, вечером выключили.
Поэтому угадать время, когда в базе никого нет сложно, даже глухой ночью может висеть активный сеанс, хорошо если он ничего не делает, а если там групповое перепроведение или еще какая обработка запущена?
И если веб-сеансы мы можем относительно безопасно для базы отключить, то завершить локальный сеанс безопасно невозможно, только завершением процесса 1С. А это может привести к совершенно разным последствиям.
Поэтому нам нужно выгружать копию безопасно и не выгоняя пользователей, такой способ есть – Автономный сервер 1С:Предприятие, он позволяет выгрузить дамп базы – DT, не выгоняя пользователей.
Насколько корректна будет такая выгрузка? С точки зрения физической структуры это будет нормальный, полноценный дамп.
С логической? Целостность дампа сохраняется на момент его создания, если в это время в базе работали или была запущена незавершенная транзакция, то дамп будет неконсистентным.
В обычных СУБД такие вопросы решаются автоматически, в файловой 1С вам поможет проверка логической целостности в конфигураторе. Но в любом случае у вас будет рабочая база, просто без части данных.
Но ровно тоже самое вы получите и при использовании pg_dump или простой модели восстановления MS SQL, так что тут полный паритет. Да и не нужно небольшим базам восстановление на момент времени.
Также стоит помнить, что DT – это сырой дамп, а не резервная копия и сам вендор обращает на это внимание, вы можете спокойно выгрузить DT из поврежденной базе, который потом не сможете загрузить.
Но в нашем сценарии DT – это оптимальный вариант, в том числе и потому, что мы можем назвать файл как нам нравится, а для его загрузки надо запустить нужную базу в конфигураторе.
В то время как сам файл базы зовется исключительно 1Cv8.1CD и ничего не стоит перепутать файлы или заменить не тот файл, а такие случаи на нашем опыте случались не раз и не два.
Теперь почему S3 – сегодня это самый дешевый способ внешнего хранения данных и один из самых безопасных, особенно если хранилище поддерживает версионирование.
В итоге, собрав все эти требования воедино и приведя к единому знаменателю мы совместно с Claude написали и отладили скрипт. Скрипт писали «по-взрослому», все настройки хранятся в отдельных файлах, сам скрипт вам трогать не нужно.
В комплекте у вас будет 4 файла:
▫️Backup-1C-ToS3.ps1 – сам скрипт
▫️Backup-1C-ToS3.bat – файл-стартер для ручного запуска
▫️config.ini – настройки подключения к S3-хранилищу
▫️databases.lst – список файловых баз, пути к ним и учетные данные для входа
Все файлы отлично прокомментированы и содержат краткие инструкции по применению. Единственный момент, так как писалось все это конкретно под S3 Selectel, то в комментах и примерах фигурирует именно он, но скрипт будет работать с любым S3 хранилищем.
Из зависимостей вам потребуется Автономный сервер (устанавливается с компонентой сервера 1С, если сервер не нужен снимите флаг его установки в качестве службы) и AWS CLI.
12👍22🔥9❤8🤝1
Сервис лицензирования 1С – плюсы и минусы
В обсуждениях многие упоминали и планировали развертывание сервера лицензирования 1С, поэтому мы решили отдельным материалом осветить все достоинства и недостатки такого решения.
Начнем с того, что правильно такое решение называется именно Сервис лицензирования, а не Сервер лицензирования, но второй вариант давно прижился и его также можно использовать, только следует понимать, что речь идет об одном и том же.
Сервис лицензирования представляет отдельную серверную инсталляцию в кластере серверов, которая содержит только одноименную службу (Назначение функциональности в терминах 1С) и не требует для запуска отдельной серверной лицензии.
Сервис лицензирования может выдавать серверные и клиентские многопользовательские лицензии, последние всегда выдаются только на сеанс, вне зависимости от режима подключения клиента.
Минимальные требования к сервису лицензирования – два ядра и 4 ГБ оперативной памяти, хотя последнее требование на наш взгляд несколько завышено.
Также следует помнить, что сервис лицензирования не работает с HASP-ключами и не может привязать лицензию к такому ключу.
Еще один важный момент – сервис лицензирования не работает с клиентскими подключениями, а выдает лицензии только серверу (серверам), который в свою очередь может выдать ее клиенту.
Версия платформы и разрядность сервиса лицензирования должна совпадать с версией платформы или разрядностью рабочих серверов.
При запуске на одном узле нескольких экземпляров сервера 1С:Предприятие при получении лицензии из сервиса лицензирования вам потребуется отдельная лицензия на каждый запущенный экземпляр.
При этом на сервисе лицензирования также потребуется установить и запустить на разных портах несколько экземпляров сервера 1С.
При работе терминального сервера лицензия будет выдаваться не на терминальный сеанс, допускающий неограниченное число сеансов 1С:Предприятие, а на каждый сеанс 1С.
Как видим, особенностей у сервиса лицензирования хватает и подходить к его развертыванию следует взвешенно, проанализировав все плюсы и минусы относительно собственной ситуации.
Так, например, в однозначные плюсы можно записать возможность изменять параметры компьютера или виртуальной машины сервера 1С без необходимости повторной активации лицензии.
А в столь же однозначные минусы то, что теперь два экземпляра сервера на одном узле потребуют две серверных лицензии вместо одной.
Что касается клиентских лицензий, то здесь ситуация не меняется, за исключением терминального сервера.
Но есть и плюс, при наличии нескольких серверов в кластере они могут использовать для выдачи клиентам общий пул лицензий, что исключает ситуации, когда на сервере А лицензии закончились, а на сервере Б их еще с избытком.
Ну и не забываем о том, что наличие сервиса лицензирования совсем не означает необходимости переноса всех лицензий на него. Вы можете перенести только те лицензии, которые считаете нужным, а другие оставить непосредственно на серверах.
Если сильно упростить ситуацию, то поиск лицензии будет происходить следующим образом: сначала на клиенте, потом на сервере, потом на сервисе лицензирования.
В заключение хочется сказать, что сервис лицензирования достаточно удобная штука, но со своими особенностями и перед его использованием следует хорошо все продумать, чтобы не оказалось, что при эксплуатации минусы вдруг перевесят плюсы.
В обсуждениях многие упоминали и планировали развертывание сервера лицензирования 1С, поэтому мы решили отдельным материалом осветить все достоинства и недостатки такого решения.
Начнем с того, что правильно такое решение называется именно Сервис лицензирования, а не Сервер лицензирования, но второй вариант давно прижился и его также можно использовать, только следует понимать, что речь идет об одном и том же.
Сервис лицензирования представляет отдельную серверную инсталляцию в кластере серверов, которая содержит только одноименную службу (Назначение функциональности в терминах 1С) и не требует для запуска отдельной серверной лицензии.
Сервис лицензирования может выдавать серверные и клиентские многопользовательские лицензии, последние всегда выдаются только на сеанс, вне зависимости от режима подключения клиента.
Минимальные требования к сервису лицензирования – два ядра и 4 ГБ оперативной памяти, хотя последнее требование на наш взгляд несколько завышено.
Также следует помнить, что сервис лицензирования не работает с HASP-ключами и не может привязать лицензию к такому ключу.
Еще один важный момент – сервис лицензирования не работает с клиентскими подключениями, а выдает лицензии только серверу (серверам), который в свою очередь может выдать ее клиенту.
Версия платформы и разрядность сервиса лицензирования должна совпадать с версией платформы или разрядностью рабочих серверов.
При запуске на одном узле нескольких экземпляров сервера 1С:Предприятие при получении лицензии из сервиса лицензирования вам потребуется отдельная лицензия на каждый запущенный экземпляр.
При этом на сервисе лицензирования также потребуется установить и запустить на разных портах несколько экземпляров сервера 1С.
При работе терминального сервера лицензия будет выдаваться не на терминальный сеанс, допускающий неограниченное число сеансов 1С:Предприятие, а на каждый сеанс 1С.
Как видим, особенностей у сервиса лицензирования хватает и подходить к его развертыванию следует взвешенно, проанализировав все плюсы и минусы относительно собственной ситуации.
Так, например, в однозначные плюсы можно записать возможность изменять параметры компьютера или виртуальной машины сервера 1С без необходимости повторной активации лицензии.
А в столь же однозначные минусы то, что теперь два экземпляра сервера на одном узле потребуют две серверных лицензии вместо одной.
Что касается клиентских лицензий, то здесь ситуация не меняется, за исключением терминального сервера.
Но есть и плюс, при наличии нескольких серверов в кластере они могут использовать для выдачи клиентам общий пул лицензий, что исключает ситуации, когда на сервере А лицензии закончились, а на сервере Б их еще с избытком.
Ну и не забываем о том, что наличие сервиса лицензирования совсем не означает необходимости переноса всех лицензий на него. Вы можете перенести только те лицензии, которые считаете нужным, а другие оставить непосредственно на серверах.
Если сильно упростить ситуацию, то поиск лицензии будет происходить следующим образом: сначала на клиенте, потом на сервере, потом на сервисе лицензирования.
В заключение хочется сказать, что сервис лицензирования достаточно удобная штука, но со своими особенностями и перед его использованием следует хорошо все продумать, чтобы не оказалось, что при эксплуатации минусы вдруг перевесят плюсы.
👍20❤2🥱1
Как мы пишем код с ИИ и чем это отличается от написания кода руками
Вопрос привлечения ИИ к выполнению повседневных задач волнует многих коллег, но вместе с тем есть превратное представление, что если специалист использует ИИ, то специалист он так себе, а то. что выдала ИИ – что-то низкопробное, не совсем качественное. То ли дело руками.
Поэтому мы решили рассказать, как писали последний скрипт, который опубликовали вчера, какую роль там сыграла нейросеть и как вообще изменился процесс разработки.
Разработка, несомненно, процесс творческий, но само написание кода – это еще та рутина. Потому как кроме основной логики вам приходится писать обертки, проверки, сервисные функции и т.д. и т.п. что долго, нудно и вообще претит творческому духу.
И это когда вы знаете язык на уровне, что команды сами от пальцев отлетают, а если вы пишете на языке время от времени, то постоянно будете спотыкаться о синтаксис, конструкции, допускать простые ошибки, забывать приводить типы и т.д и т.п.
В общем, вроде бы и понятно, что делать, но постоянно какие-то сложности. А время идет. Кроме того, еще и отладить надо, проверив разные режимы работы и выяснив почему только что все работало, а тут, неожиданно сломалось.
По кратким прикидкам работа с данным скриптом заняла бы не менее полного рабочего дня. Но был бы это принципиально иной результат, более качественный? Несомненно, все так, только есть тонкость, как в старом анекдоте: не в лотерею, а в карты, не Волгу, а три рубля, не выиграл, а проиграл.
ИИ сейчас уже пишет код гораздо более качественно, чем человек. Вы можете открыть скрипт и посмотреть, он написан по всем правилам PowerShell, с правильным форматированием и синтаксисом, что обеспечивает ему отличную читабельность.
Он прокомментирован и поэтому если вы даже неуверенно читаете сам код, то без труда поймете общую структуру.
Он документирован, прямо в самом начале написано, что это за скрипт, что делает, как его запускать и подключать. Для чего нужны какие файлы и т.д. и т.п. Также документированы все файлы настроек , в которых написано, для чего они нужны и как их заполнять.
И именно это обычно является слабым местом программиста человека, редко кто удосуживается писать подробные комментарии и краткую документацию прямо в коде. Обычно это оставляют «на потом», что обозначает чаще всего «никогда».
Также весь скрипт обернут проверками практически везде, с понятными сообщениями пользователю, если что-то пошло не так или чего-то не хватает. Нет нужной зависимости – напишем, не нашли конфигурационных файлов – тоже, максимально понятно русским языком, да еще и в лог занесем.
Это тоже слабое место программиста человека, потому как тоже долго, нудно, муторно. Проще предположить, что все нужное есть, а если нет – невелика беда, ну выкинет скрипт ошибку, делов то.
Надо ли говорить, что такой подход полностью порочен и не добавляет программисту очков в глазах пользователя, у которого вчера работало. а сегодня полотно каких-то заморских ругательств пишет.
А особенно порадуются ваши коллеги, которые будут это все эксплуатировать и, скажем, при переносе на новую систему будут долго пытаться понять, что происходит, вместо того чтобы получить понятное сообщение об отсутствии какой-то зависимости.
ИИ все это делает сразу и не напрягаясь, ее даже не нужно об этом просить, для нее это стиль разработки по умолчанию.
Плюс меняется сам процесс, теперь вы сосредоточены именно на творческой части процесса и занимаетесь именно тем, чем и хотели – разработкой и отладкой, а рутину в виде написания кода буквами берет на себя ИИ.
В нашем случае ИИ накосячил только в одном месте – формировании строки подключения к ibcmd и это было единственное место, где мы просто молча поправили руками и сказали сетке – правильно вот так, прими к сведению.
Но там вопрос тонкий, ошибся он на том, что очень скупо освещено в официальной документации и курсе только те, кто в курсе.
Ну и результат мы получили всего часа за полтора, большую часть времени посвятив отладке и проверке при различных вводных.
Вопрос привлечения ИИ к выполнению повседневных задач волнует многих коллег, но вместе с тем есть превратное представление, что если специалист использует ИИ, то специалист он так себе, а то. что выдала ИИ – что-то низкопробное, не совсем качественное. То ли дело руками.
Поэтому мы решили рассказать, как писали последний скрипт, который опубликовали вчера, какую роль там сыграла нейросеть и как вообще изменился процесс разработки.
Разработка, несомненно, процесс творческий, но само написание кода – это еще та рутина. Потому как кроме основной логики вам приходится писать обертки, проверки, сервисные функции и т.д. и т.п. что долго, нудно и вообще претит творческому духу.
И это когда вы знаете язык на уровне, что команды сами от пальцев отлетают, а если вы пишете на языке время от времени, то постоянно будете спотыкаться о синтаксис, конструкции, допускать простые ошибки, забывать приводить типы и т.д и т.п.
В общем, вроде бы и понятно, что делать, но постоянно какие-то сложности. А время идет. Кроме того, еще и отладить надо, проверив разные режимы работы и выяснив почему только что все работало, а тут, неожиданно сломалось.
По кратким прикидкам работа с данным скриптом заняла бы не менее полного рабочего дня. Но был бы это принципиально иной результат, более качественный? Несомненно, все так, только есть тонкость, как в старом анекдоте: не в лотерею, а в карты, не Волгу, а три рубля, не выиграл, а проиграл.
ИИ сейчас уже пишет код гораздо более качественно, чем человек. Вы можете открыть скрипт и посмотреть, он написан по всем правилам PowerShell, с правильным форматированием и синтаксисом, что обеспечивает ему отличную читабельность.
Он прокомментирован и поэтому если вы даже неуверенно читаете сам код, то без труда поймете общую структуру.
Он документирован, прямо в самом начале написано, что это за скрипт, что делает, как его запускать и подключать. Для чего нужны какие файлы и т.д. и т.п. Также документированы все файлы настроек , в которых написано, для чего они нужны и как их заполнять.
И именно это обычно является слабым местом программиста человека, редко кто удосуживается писать подробные комментарии и краткую документацию прямо в коде. Обычно это оставляют «на потом», что обозначает чаще всего «никогда».
Также весь скрипт обернут проверками практически везде, с понятными сообщениями пользователю, если что-то пошло не так или чего-то не хватает. Нет нужной зависимости – напишем, не нашли конфигурационных файлов – тоже, максимально понятно русским языком, да еще и в лог занесем.
Это тоже слабое место программиста человека, потому как тоже долго, нудно, муторно. Проще предположить, что все нужное есть, а если нет – невелика беда, ну выкинет скрипт ошибку, делов то.
Надо ли говорить, что такой подход полностью порочен и не добавляет программисту очков в глазах пользователя, у которого вчера работало. а сегодня полотно каких-то заморских ругательств пишет.
А особенно порадуются ваши коллеги, которые будут это все эксплуатировать и, скажем, при переносе на новую систему будут долго пытаться понять, что происходит, вместо того чтобы получить понятное сообщение об отсутствии какой-то зависимости.
ИИ все это делает сразу и не напрягаясь, ее даже не нужно об этом просить, для нее это стиль разработки по умолчанию.
Плюс меняется сам процесс, теперь вы сосредоточены именно на творческой части процесса и занимаетесь именно тем, чем и хотели – разработкой и отладкой, а рутину в виде написания кода буквами берет на себя ИИ.
В нашем случае ИИ накосячил только в одном месте – формировании строки подключения к ibcmd и это было единственное место, где мы просто молча поправили руками и сказали сетке – правильно вот так, прими к сведению.
Но там вопрос тонкий, ошибся он на том, что очень скупо освещено в официальной документации и курсе только те, кто в курсе.
Ну и результат мы получили всего часа за полтора, большую часть времени посвятив отладке и проверке при различных вводных.
👍27🔥5💯2❤1⚡1
Как читать таблицу маршрутизации в Windows
Как показывает практика, маршрутизация - одна из наиболее сложных тем для начинающих администраторов. Хотя, казалось бы, берем таблицу маршрутов, там все написано.
Но не все умеют правильно читать и понимать там написанное.
Следует запомнить несколько простых правил.
1️⃣ Сначала в таблице ищется маршрут с самой узкой маской. Минимальная маска - 255.255.255.255, максимальная - 0.0.0.0.
2️⃣ Если маршрутов несколько, то берется маршрут с самой маленькой метрикой.
3️⃣ После того, как маршрут найден, следует определить интерфейс выхода, который должен быть расположен в одной из непосредственно присоединенных сетей, т.е. быть доступен на канальном уровне.
Посмотрим на картинку внизу. Если мы хотим пропинговать сами себя, т.е. 192.168.233.154, то для этого сразу будет найден кратчайший маршрут в непосредственно присоединенной сети (зеленый). On-link обозначает непосредственно присоединенную сеть.
Если мы хотим обратиться к ПК из своего сегмента. то нам подойдет маршрут с более широкой маской /24 (желтый).
А если ни одного подходящего маршрута нет? Тогда нам следует использовать маршрут по умолчанию или нулевой маршрут 0.0.0.0/0.
Смотрим, таких маршрутов сразу два. Какой из них использовать? Тот у кого меньше метрика, т.е. на интерфейса 10.20.0.101 Он тоже доступен без маршрутизации.
Если же этого маршрута не будет (отключим VPN), то заработает верхний маршрут с метрикой 25. Но там стоит адрес шлюза - 192.168.233.2. Поэтому идем дальше и ищем маршрут уже для этого адреса.
Поиск такого маршрута производится только среди непосредственно присоединенных сетей и очень скоро мы снова находим нужный маршрут, который помечен желтым.
☝️ Поэтому всегда, составляя и анализируя маршруты, помним - любой маршрут должен приводить в непосредственно присоединенную сеть, иначе он работать не будет.
Почему? Да потому что IP - это 3-й уровень модели OSI - сетевой и нельзя просто так передавать IP-пакеты между ПК. Для того, чтобы это сделать, мы должны опуститься на канальный уровень и вложить их в датафреймы.
А потом еще ниже, на физический, но так глубоко мы копать не будем.
А канальный уровень - это непосредственно присоединенная сеть и только так. Это же ответ на многие вопросы типа: я написал маршрут, а он не работает. В этом случае всегда смотрим, а можем ли мы по нему достичь непосредственно присоединенной сети или нет.
Как показывает практика, маршрутизация - одна из наиболее сложных тем для начинающих администраторов. Хотя, казалось бы, берем таблицу маршрутов, там все написано.
Но не все умеют правильно читать и понимать там написанное.
Следует запомнить несколько простых правил.
1️⃣ Сначала в таблице ищется маршрут с самой узкой маской. Минимальная маска - 255.255.255.255, максимальная - 0.0.0.0.
2️⃣ Если маршрутов несколько, то берется маршрут с самой маленькой метрикой.
3️⃣ После того, как маршрут найден, следует определить интерфейс выхода, который должен быть расположен в одной из непосредственно присоединенных сетей, т.е. быть доступен на канальном уровне.
Посмотрим на картинку внизу. Если мы хотим пропинговать сами себя, т.е. 192.168.233.154, то для этого сразу будет найден кратчайший маршрут в непосредственно присоединенной сети (зеленый). On-link обозначает непосредственно присоединенную сеть.
Если мы хотим обратиться к ПК из своего сегмента. то нам подойдет маршрут с более широкой маской /24 (желтый).
А если ни одного подходящего маршрута нет? Тогда нам следует использовать маршрут по умолчанию или нулевой маршрут 0.0.0.0/0.
Смотрим, таких маршрутов сразу два. Какой из них использовать? Тот у кого меньше метрика, т.е. на интерфейса 10.20.0.101 Он тоже доступен без маршрутизации.
Если же этого маршрута не будет (отключим VPN), то заработает верхний маршрут с метрикой 25. Но там стоит адрес шлюза - 192.168.233.2. Поэтому идем дальше и ищем маршрут уже для этого адреса.
Поиск такого маршрута производится только среди непосредственно присоединенных сетей и очень скоро мы снова находим нужный маршрут, который помечен желтым.
☝️ Поэтому всегда, составляя и анализируя маршруты, помним - любой маршрут должен приводить в непосредственно присоединенную сеть, иначе он работать не будет.
Почему? Да потому что IP - это 3-й уровень модели OSI - сетевой и нельзя просто так передавать IP-пакеты между ПК. Для того, чтобы это сделать, мы должны опуститься на канальный уровень и вложить их в датафреймы.
А потом еще ниже, на физический, но так глубоко мы копать не будем.
А канальный уровень - это непосредственно присоединенная сеть и только так. Это же ответ на многие вопросы типа: я написал маршрут, а он не работает. В этом случае всегда смотрим, а можем ли мы по нему достичь непосредственно присоединенной сети или нет.
1👍33❤4
О жизни, о молодежи
Молодежь нынче принято ругать, мол не такие, такие-сякие, вот мы в их годы… Явление это не новое и тянется с поколения в поколение. Особенно на сломе технологических укладов. Проблему отцов и детей поднимали еще древние философы, не говоря о классиках русской литературы.
И вот сегодня произошел интересный случай, который заставил меня совсем по-другому посмотреть на нашу молодежь. Дело было вечером, я собирался выйти пройтись по магазинам, так как закончилось кофе и так, по мелочи к завтраку.
Уже собираясь выходить, зашел на кухню и услышал из открытого окна поток отборного мата откуда-то из-под подъезда. Голос незнакомый, всех местных «буйных» после третьего стакана я знаю. Матерился он не на кого-то конкретно, а просто так, в темноту.
А у нас, в Белгороде, уличное освещение отсутствует как класс еще с осени, после первых прилетов по энергетике. И тут из темноты, со стороны спортивной площадки выезжает паренек лет 13-14 и вежливо, на вы спрашивает: дедушка, а чего вы тут материтесь?
Я напрягся и приготовился быстро выбежать, если события примут неприятный оборот, мало-ли, но дед явно не ожидал такого и включил заднюю, мол это не он и вообще, чего они к нему пристали.
Постепенно со всего двора к подъезду собрались дети от младшего школьного возраста до подростков лет 15-16 и начали дружно деда стыдить.
Дед агрессии не проявлял, и я решил без спешки досмотреть все до конца. А аргументы у паренька были увесистые, но обращался он к делу предельно вежливо, на вы. Другие подтверждали, что сами слышали, как дед тут матерился.
- Ну что, вам не стыдно, тут же дети? А у вас самого внуки есть? Перед ними не стыдно?
Здесь я мысленно пареньку поаплодировал. Никакого хамства, хиханек-хаханек, все строго, по существу, культурно, вежливо.
- А если вас кто на телефон снимет и в интернет выложит?
При этом я отметил, что деда никто на телефон не снимал.
Когда я вышел на улицу деда уже застыдили и он спокойно сидел на лавке, а ребята снова переместились на площадку.
Дед незнакомый, сильно выпивший, но на алкаша не похож. Ну перебрал в выходной, бывает. Спрашивает какой это дом, какая улица. Видно, что потерялся в пространстве, а тут и до беды недалеко.
Спускаюсь с порожек, окликаю ребят, мол никто деда не знает? Никто. Ну вы, говорю, проследите за ним, хорошо…
И тут они меня снова удивили, мол не беспокойся дяденька, мы деда сфотали, в чат класса сбросили, спросили кто знает. Узнаем кто такой, проследим. Мы же не дураки, тоже все прекрасно понимаем, выпил дед лишнего.
Через полчаса я вернулся, деда не было, ребята все еще сидели на площадке, увидев меня первые доложили, мол в порядке все, его внучка в параллельном классе с какой-то из присутствующих девочек учится, пришли, забрали.
Молодежь нынче принято ругать, мол не такие, такие-сякие, вот мы в их годы… Явление это не новое и тянется с поколения в поколение. Особенно на сломе технологических укладов. Проблему отцов и детей поднимали еще древние философы, не говоря о классиках русской литературы.
И вот сегодня произошел интересный случай, который заставил меня совсем по-другому посмотреть на нашу молодежь. Дело было вечером, я собирался выйти пройтись по магазинам, так как закончилось кофе и так, по мелочи к завтраку.
Уже собираясь выходить, зашел на кухню и услышал из открытого окна поток отборного мата откуда-то из-под подъезда. Голос незнакомый, всех местных «буйных» после третьего стакана я знаю. Матерился он не на кого-то конкретно, а просто так, в темноту.
А у нас, в Белгороде, уличное освещение отсутствует как класс еще с осени, после первых прилетов по энергетике. И тут из темноты, со стороны спортивной площадки выезжает паренек лет 13-14 и вежливо, на вы спрашивает: дедушка, а чего вы тут материтесь?
Я напрягся и приготовился быстро выбежать, если события примут неприятный оборот, мало-ли, но дед явно не ожидал такого и включил заднюю, мол это не он и вообще, чего они к нему пристали.
Постепенно со всего двора к подъезду собрались дети от младшего школьного возраста до подростков лет 15-16 и начали дружно деда стыдить.
Дед агрессии не проявлял, и я решил без спешки досмотреть все до конца. А аргументы у паренька были увесистые, но обращался он к делу предельно вежливо, на вы. Другие подтверждали, что сами слышали, как дед тут матерился.
- Ну что, вам не стыдно, тут же дети? А у вас самого внуки есть? Перед ними не стыдно?
Здесь я мысленно пареньку поаплодировал. Никакого хамства, хиханек-хаханек, все строго, по существу, культурно, вежливо.
- А если вас кто на телефон снимет и в интернет выложит?
При этом я отметил, что деда никто на телефон не снимал.
Когда я вышел на улицу деда уже застыдили и он спокойно сидел на лавке, а ребята снова переместились на площадку.
Дед незнакомый, сильно выпивший, но на алкаша не похож. Ну перебрал в выходной, бывает. Спрашивает какой это дом, какая улица. Видно, что потерялся в пространстве, а тут и до беды недалеко.
Спускаюсь с порожек, окликаю ребят, мол никто деда не знает? Никто. Ну вы, говорю, проследите за ним, хорошо…
И тут они меня снова удивили, мол не беспокойся дяденька, мы деда сфотали, в чат класса сбросили, спросили кто знает. Узнаем кто такой, проследим. Мы же не дураки, тоже все прекрасно понимаем, выпил дед лишнего.
Через полчаса я вернулся, деда не было, ребята все еще сидели на площадке, увидев меня первые доложили, мол в порядке все, его внучка в параллельном классе с какой-то из присутствующих девочек учится, пришли, забрали.
👍59🔥24❤10🤮2🤡1
SMART атрибуты NVMe дисков
Если SATA SSD имели набор атрибутов SMART унаследованный от жестких дисков, многие из которых были бесполезны и не отражали реального состояния устройства, то NVMe диски получили обновленный набор атрибутов, разработанный как раз с учетом специфики устройств.
Ниже будем указывать атрибуты в форме ID Наименование RU (Наименование EN)
🔹 01 Критические предупреждения (Critical Warning) – флаг, указывающий на критические состояния накопителя, не является статическим, может изменять состояние динамически, возможные значения:
▫️
▫️
▫️
▫️
▫️
🔹 02 Температура всего устройства (Composite Temperature) – средняя температура накопителя в градусах Кельвина, для перевода в градусы Цельсия необходимо вычесть из значения 273.15. Рекомендации о порогах температур задаются именно для этого значения.
🔹 03 Доступно резервных блоков (Available Spare) – процент оставшихся резервных блоков, в норме 100 и это значение будет уменьшаться
🔹 04 Критический остаток резервных блоков (Available Spare Threshold) - при падении запаса ниже указанного значения для этого поля контроллером будет сформировано событие.
🔹 05 Процент износа (Percentage Used) - показывает процент износа устройства согласно указанного производителем ресурса, 100% обозначает полный износ, значение может превышать 100, максимальное значение 255.
🔹 06 Всего прочитано данных (Data Units Read) - количество прочитанных блоков по 512 байт, единица означает тысячу прочитанных блоков.
🔹 07 Всего записано данных (Data Units Written) - количество записанных блоков по 512 байт, единица означает тысячу записанных блоков.
🔹 08 Количество команд чтения (Host Read Commands) – количество команд чтения, выполненных контролером.
🔹 09 Количество команд записи (Host Write Commands) – количество команд записи, выполненных контроллером
🔹 10 Время занятости контроллера (Controller Busy Time) – время, которое контроллер обрабатывал команды ввода-вывода или когда в очереди находились запросы. Значение представлены в минутах.
🔹 11 Количество включений питания (Power Cycles) – счетчик включений накопителя
🔹 12 Количество отработанных часов (Power On Hours) – общее время работы накопителя в часах, учитывается также время нахождения в режимах энергосбережения
🔹 13 Небезопасных выключений (Unsafe Shutdowns) – количество выключений, когда питания накопителя было отключено прежде, чем он получил от системы уведомление о выключении питания
🔹 14 Количество неисправимых ошибок (Media and Data Integrity Errors) – счетчик неисправимых ошибок ECC, вычисления контрольных сумм CRC или несоответствия LBA
🔹 15 Записей об ошибках в журнал (Number of Error Information Log Entries) – количество записей об ошибках, произведенных в журнал контроллера
🔹 16 Время работы при высокой температуре (Warning Composite Temperature Time) – время, в минутах, которое накопитель работал с превышением порога температуры
🔹 17 Время работы при критической температуре (Critical Composite Temperature Time) - время, в минутах, которое накопитель работал с превышением критического порога температуры
🔹 18 Термодатчик 1 (Temperature Sensor 1) – первый сенсор температуры, точно узнать размещение сенсора можно только из описания диска, чаще всего контроллер.
🔹 19 Термодатчик 2 (Temperature Sensor 2) – второй сенсор температуры, точно узнать размещение сенсора можно только из описания диска, чаще всего NAND.
Если SATA SSD имели набор атрибутов SMART унаследованный от жестких дисков, многие из которых были бесполезны и не отражали реального состояния устройства, то NVMe диски получили обновленный набор атрибутов, разработанный как раз с учетом специфики устройств.
Ниже будем указывать атрибуты в форме ID Наименование RU (Наименование EN)
🔹 01 Критические предупреждения (Critical Warning) – флаг, указывающий на критические состояния накопителя, не является статическим, может изменять состояние динамически, возможные значения:
▫️
0x01 – доступное свободное пространство упало ниже порогового значения▫️
0x02 – температура вышла за пороговые значения (как вверх, так и вниз)▫️
0x03 - надежность подсистемы NVM ухудшилась из-за значительных проблем, связанных со средой передачи данных, включая ошибки, снижающие надежность подсистемы NVM ▫️
0x04 – накопитель перешел в режим только чтения▫️
0x08 – устройство энергозависимой памяти (DRAM) вышло из строя 🔹 02 Температура всего устройства (Composite Temperature) – средняя температура накопителя в градусах Кельвина, для перевода в градусы Цельсия необходимо вычесть из значения 273.15. Рекомендации о порогах температур задаются именно для этого значения.
🔹 03 Доступно резервных блоков (Available Spare) – процент оставшихся резервных блоков, в норме 100 и это значение будет уменьшаться
🔹 04 Критический остаток резервных блоков (Available Spare Threshold) - при падении запаса ниже указанного значения для этого поля контроллером будет сформировано событие.
🔹 05 Процент износа (Percentage Used) - показывает процент износа устройства согласно указанного производителем ресурса, 100% обозначает полный износ, значение может превышать 100, максимальное значение 255.
🔹 06 Всего прочитано данных (Data Units Read) - количество прочитанных блоков по 512 байт, единица означает тысячу прочитанных блоков.
🔹 07 Всего записано данных (Data Units Written) - количество записанных блоков по 512 байт, единица означает тысячу записанных блоков.
🔹 08 Количество команд чтения (Host Read Commands) – количество команд чтения, выполненных контролером.
🔹 09 Количество команд записи (Host Write Commands) – количество команд записи, выполненных контроллером
🔹 10 Время занятости контроллера (Controller Busy Time) – время, которое контроллер обрабатывал команды ввода-вывода или когда в очереди находились запросы. Значение представлены в минутах.
🔹 11 Количество включений питания (Power Cycles) – счетчик включений накопителя
🔹 12 Количество отработанных часов (Power On Hours) – общее время работы накопителя в часах, учитывается также время нахождения в режимах энергосбережения
🔹 13 Небезопасных выключений (Unsafe Shutdowns) – количество выключений, когда питания накопителя было отключено прежде, чем он получил от системы уведомление о выключении питания
🔹 14 Количество неисправимых ошибок (Media and Data Integrity Errors) – счетчик неисправимых ошибок ECC, вычисления контрольных сумм CRC или несоответствия LBA
🔹 15 Записей об ошибках в журнал (Number of Error Information Log Entries) – количество записей об ошибках, произведенных в журнал контроллера
🔹 16 Время работы при высокой температуре (Warning Composite Temperature Time) – время, в минутах, которое накопитель работал с превышением порога температуры
🔹 17 Время работы при критической температуре (Critical Composite Temperature Time) - время, в минутах, которое накопитель работал с превышением критического порога температуры
🔹 18 Термодатчик 1 (Temperature Sensor 1) – первый сенсор температуры, точно узнать размещение сенсора можно только из описания диска, чаще всего контроллер.
🔹 19 Термодатчик 2 (Temperature Sensor 2) – второй сенсор температуры, точно узнать размещение сенсора можно только из описания диска, чаще всего NAND.
2👍31👌5❤3🥱1
О бедном SMART замолвите слово
Технологию SMART не пинал только ленивый. Действительно, технология, предназначенная для контроля здоровья накопителя очень часто, не дает никаких предупреждений и диск отправляется «в края вечной охоты» абсолютно здоровым.
Но так ли это? Просто у многих присутствует ожидание, что SMART заблаговременно поставит диагноз и сообщит о критическом ухудшении здоровья заранее. Однако это не совсем верно, SMART просто собирает симптомы, но не имеет никакой расширенной аналитики. Всем этим нужно заниматься пользователю.
Да, в него внесены некоторые пороговые значения, при которых он выдаст критическое предупреждение, но не более. Поэтому надеяться на SMART в этом деле не стоит, а вот контролировать его показатели стоит.
Если проводить аналогию, то SMART вызовет скорую только если у вас температура выше 40 градусов, но если она ниже, скажем 38,5, то он будет только фиксировать эту информацию в журнале никому ничего не сообщая, в то время как длительная высокая температура – это явный повод обратиться к врачу.
На глаза попалось исследование Microsoft на эту тему от 2016 года, несмотря на возраст оно не потеряло актуальности, так как технология SMART гораздо старше и принципиально в ней ничего не меняется.
Исследования выполнялись для SSD, но с определенными поправками справедливы для любого типа накопителей.
👆 Прежде всего о точности. Только 62% вышедших из строя накопителей фиксировали в SMART изменение критических параметров, 38% вышли из строя без каких-либо симптомов в SMART.
Что касается самих симптомов, то на скорый выход из строя указывают (данные на основе статистики от MS):
🔹 Reallocated (Realloc) Sector Count – количество переназначенных секторов, 80% вышедших из строя дисков с симптомами имели изменение этого показателя.
🔹 Program/Erase (P/E) fail count – ошибки программирования/стирания, встречались у 3,5% накопителей, однозначно указывает на проблемы с флеш-памятью.
🔹 CRC and Uncorrectable errors – увеличение показателя некорректируемых ошибок также является косвенным показателем ухудшения здоровья диска.
🔹 SATA downshift count – переключение интерфейса SATA на более низкие скорости – еще один симптом, указывающий на возможные проблемы с диском.
Собственный опыт показывает, что Reallocated (Realloc) Sector Count действительно является одним из критических показателей, его увеличение однозначно показывает начало процессов деградации диска. В тоже время он редко достигает критических значений по SMART, видимые глазом проблемы начинаются гораздо раньше.
Второй, по нашему опыту показатель, это CRC and Uncorrectable errors, особенно для жестких дисков, резкий рост таких ошибок также свидетельствует о возникших с накопителем проблемах.
Поэтому не стоит ждать, что SMART сам забьет тревогу, увы, но диск успеет отказать гораздо раньше, в тоже время отслеживание ключевых показателей позволит заранее обнаружить тревожные симптомы и отреагировать на них.
Технологию SMART не пинал только ленивый. Действительно, технология, предназначенная для контроля здоровья накопителя очень часто, не дает никаких предупреждений и диск отправляется «в края вечной охоты» абсолютно здоровым.
Но так ли это? Просто у многих присутствует ожидание, что SMART заблаговременно поставит диагноз и сообщит о критическом ухудшении здоровья заранее. Однако это не совсем верно, SMART просто собирает симптомы, но не имеет никакой расширенной аналитики. Всем этим нужно заниматься пользователю.
Да, в него внесены некоторые пороговые значения, при которых он выдаст критическое предупреждение, но не более. Поэтому надеяться на SMART в этом деле не стоит, а вот контролировать его показатели стоит.
Если проводить аналогию, то SMART вызовет скорую только если у вас температура выше 40 градусов, но если она ниже, скажем 38,5, то он будет только фиксировать эту информацию в журнале никому ничего не сообщая, в то время как длительная высокая температура – это явный повод обратиться к врачу.
На глаза попалось исследование Microsoft на эту тему от 2016 года, несмотря на возраст оно не потеряло актуальности, так как технология SMART гораздо старше и принципиально в ней ничего не меняется.
Исследования выполнялись для SSD, но с определенными поправками справедливы для любого типа накопителей.
👆 Прежде всего о точности. Только 62% вышедших из строя накопителей фиксировали в SMART изменение критических параметров, 38% вышли из строя без каких-либо симптомов в SMART.
Что касается самих симптомов, то на скорый выход из строя указывают (данные на основе статистики от MS):
🔹 Reallocated (Realloc) Sector Count – количество переназначенных секторов, 80% вышедших из строя дисков с симптомами имели изменение этого показателя.
🔹 Program/Erase (P/E) fail count – ошибки программирования/стирания, встречались у 3,5% накопителей, однозначно указывает на проблемы с флеш-памятью.
🔹 CRC and Uncorrectable errors – увеличение показателя некорректируемых ошибок также является косвенным показателем ухудшения здоровья диска.
🔹 SATA downshift count – переключение интерфейса SATA на более низкие скорости – еще один симптом, указывающий на возможные проблемы с диском.
Собственный опыт показывает, что Reallocated (Realloc) Sector Count действительно является одним из критических показателей, его увеличение однозначно показывает начало процессов деградации диска. В тоже время он редко достигает критических значений по SMART, видимые глазом проблемы начинаются гораздо раньше.
Второй, по нашему опыту показатель, это CRC and Uncorrectable errors, особенно для жестких дисков, резкий рост таких ошибок также свидетельствует о возникших с накопителем проблемах.
Поэтому не стоит ждать, что SMART сам забьет тревогу, увы, но диск успеет отказать гораздо раньше, в тоже время отслеживание ключевых показателей позволит заранее обнаружить тревожные симптомы и отреагировать на них.
1👍35⚡2❤1🤮1
Можно ли «поехать в лес» в наше время
Очень часто в комментариях можно услышать, что мол все, ушли те времена. Теперь все в основном в правовом поле, если только самостоятельно не искать себе приключений со стремными работодателями.
Во многом это так, времена пошли поспокойнее, но все равно никогда нельзя быть уверенным, что даже самый белый и пушистый работодатель или контрагент внезапно не вспомнит, что есть у него кое-какие связи.
История это произошла в самом начале двадцатых с братом одного из моих знакомых. Назовем его Вася. Работал Вася менеджером по закупкам в фирме по производству стройматериалов некоего Ивана Ивановича. Сами производили блоки, плитку и всякое такое, сами продавали.
Иван Иваныча я знал, на одном районе выросли. Абсолютно нормальный и вменяемый мужик, без завязок где-то там. Ни с бандитами, ни с силовиками замечен в близких отношениях не был. Зарплату платил исправно в белую, к сотрудникам относился лояльно, самодуром не был.
В общем где-то откопал Вася нового поставщика. Попробовали несколько раз – вроде нормально. Что там было точно, доподлинно неизвестно, Иваныч говорит, что Вася там получал откаты, Вася, понятное дело, все отрицал.
В общем очередную крупную закупку контрагент попросил перевести на счет некоторого ИП. В солнечный горный Дагестан. Вася убедил бухгалтера, которой сразу не понравилось назначение платежа, что все схвачено и два миллиона ушли в один конец.
В общем – попадос. Причем контрагент формально не при делах и от этого ИП сразу открестился, мол не знаем кто такие, официально мы вам ничего не писали и сотрудника такого у нас в штате нет, про кого вы говорите.
Но два миллиона – это два миллиона. И тут Иваныч вспомнил про своего друга детства и соседа снизу Сашу. Они дружили с детства, сидели за одной партой, потом Саша пошел по бандитской стезе, отсидел, остепенился и работал где-то в охране.
С Иванычем они также приятельствовали, дети ходили в одну школу, жены общались и сами они любили вместе ездить на рыбалку.
В общем пришел Иваныч со своей бедой к Саше, тот назвал стандартную таксу – 20% плюс непредвиденные расходы, если будут.
- Не кинут? – осторожно спросил Иваныч.
- Смогут – кинут, - подтвердил Саша, - но я скажу, что ты мой близкий, не кинут, не по понятиям.
На том и порешили.
Через неделю цинканули, за той фирмой стоит диаспора, мы не осилим, не та весовая категория, а закусываться за два ляма никто не будет. Поэтому давай лоха твоего нагрузим, как верблюда.
Иваныч было дал заднюю, но его успокоили, тут не девяностые, никаких утюгов, паяльников и прочего, все в рамках. Бабло, как всегда, победило зло и Иваныч согласился.
Он позвонил Васе и пояснил, что косяк его, там диаспора, поэтому долг на нем. Вася включил броню, мол я не я, бизнес, риски. Но началась у него потом совсем другая жизнь.
Нет, никто не угрожал переломать ноги, поехать в лес и т.д. Просто он начал получать с незнакомых номеров в мессенджерах фото своих детей около школы, на площадке, жены у работы, в разных местах города, родителей.
Такие же фото начали получать его родители, брат. А потом с тех же номеров приходили сообщения, что не стыдно ли ему быть должным денег, а как он своим близким в глаза смотреть будет?
Родственники получали примерно то же самое, только их спрашивали, не стыдно ли им за своего сына, брата, мужа.
Вася кинулся в полицию, там посмотрели, почитали и сказали, что никаких оснований для возбуждения дела нет, угроз нет и вообще зачем вы сюда пришли? Это полиция, между прочем, не отвлекайте, вот когда убьют, тогда и приходите.
Тут уже Иваныч понял, что перегнул палку, но авторитетные пацаны ему пояснили, что 20% уже их, если он им их отдаст, то они успокоятся, а иначе не мешай дядя.
В общем Вася с семьей резко сорвался и исчез в Белокаменной, а дела за него решал его брат, который отдал 20% + накладные расходы через Ивановича, чтобы Вася хоть мог бы выдохнуть, а потом как-то там совместно долг закрыли.
История реальная, имена, события, места изменены, но суть осталась той же.
Очень часто в комментариях можно услышать, что мол все, ушли те времена. Теперь все в основном в правовом поле, если только самостоятельно не искать себе приключений со стремными работодателями.
Во многом это так, времена пошли поспокойнее, но все равно никогда нельзя быть уверенным, что даже самый белый и пушистый работодатель или контрагент внезапно не вспомнит, что есть у него кое-какие связи.
История это произошла в самом начале двадцатых с братом одного из моих знакомых. Назовем его Вася. Работал Вася менеджером по закупкам в фирме по производству стройматериалов некоего Ивана Ивановича. Сами производили блоки, плитку и всякое такое, сами продавали.
Иван Иваныча я знал, на одном районе выросли. Абсолютно нормальный и вменяемый мужик, без завязок где-то там. Ни с бандитами, ни с силовиками замечен в близких отношениях не был. Зарплату платил исправно в белую, к сотрудникам относился лояльно, самодуром не был.
В общем где-то откопал Вася нового поставщика. Попробовали несколько раз – вроде нормально. Что там было точно, доподлинно неизвестно, Иваныч говорит, что Вася там получал откаты, Вася, понятное дело, все отрицал.
В общем очередную крупную закупку контрагент попросил перевести на счет некоторого ИП. В солнечный горный Дагестан. Вася убедил бухгалтера, которой сразу не понравилось назначение платежа, что все схвачено и два миллиона ушли в один конец.
В общем – попадос. Причем контрагент формально не при делах и от этого ИП сразу открестился, мол не знаем кто такие, официально мы вам ничего не писали и сотрудника такого у нас в штате нет, про кого вы говорите.
Но два миллиона – это два миллиона. И тут Иваныч вспомнил про своего друга детства и соседа снизу Сашу. Они дружили с детства, сидели за одной партой, потом Саша пошел по бандитской стезе, отсидел, остепенился и работал где-то в охране.
С Иванычем они также приятельствовали, дети ходили в одну школу, жены общались и сами они любили вместе ездить на рыбалку.
В общем пришел Иваныч со своей бедой к Саше, тот назвал стандартную таксу – 20% плюс непредвиденные расходы, если будут.
- Не кинут? – осторожно спросил Иваныч.
- Смогут – кинут, - подтвердил Саша, - но я скажу, что ты мой близкий, не кинут, не по понятиям.
На том и порешили.
Через неделю цинканули, за той фирмой стоит диаспора, мы не осилим, не та весовая категория, а закусываться за два ляма никто не будет. Поэтому давай лоха твоего нагрузим, как верблюда.
Иваныч было дал заднюю, но его успокоили, тут не девяностые, никаких утюгов, паяльников и прочего, все в рамках. Бабло, как всегда, победило зло и Иваныч согласился.
Он позвонил Васе и пояснил, что косяк его, там диаспора, поэтому долг на нем. Вася включил броню, мол я не я, бизнес, риски. Но началась у него потом совсем другая жизнь.
Нет, никто не угрожал переломать ноги, поехать в лес и т.д. Просто он начал получать с незнакомых номеров в мессенджерах фото своих детей около школы, на площадке, жены у работы, в разных местах города, родителей.
Такие же фото начали получать его родители, брат. А потом с тех же номеров приходили сообщения, что не стыдно ли ему быть должным денег, а как он своим близким в глаза смотреть будет?
Родственники получали примерно то же самое, только их спрашивали, не стыдно ли им за своего сына, брата, мужа.
Вася кинулся в полицию, там посмотрели, почитали и сказали, что никаких оснований для возбуждения дела нет, угроз нет и вообще зачем вы сюда пришли? Это полиция, между прочем, не отвлекайте, вот когда убьют, тогда и приходите.
Тут уже Иваныч понял, что перегнул палку, но авторитетные пацаны ему пояснили, что 20% уже их, если он им их отдаст, то они успокоятся, а иначе не мешай дядя.
В общем Вася с семьей резко сорвался и исчез в Белокаменной, а дела за него решал его брат, который отдал 20% + накладные расходы через Ивановича, чтобы Вася хоть мог бы выдохнуть, а потом как-то там совместно долг закрыли.
История реальная, имена, события, места изменены, но суть осталась той же.
😁18❤9🥱5😢3🤮3
Статья не новая, но, как показывает практика, о данной возможности знают далеко не все.
Настраиваем проброс портов в Windows при помощи командной строки и Portproxy
Необходимость проброса портов весьма часто встающая перед системным администратором задача.
Обычно для этой цели используют службы маршрутизации и удаленного доступа (RRAS), но в ряде случаев использование данного инструмента избыточно.
В тоже время немногие знают о такой службе как Portproxy, которая управляется из командной строки при помощи команд Netsh.
Тем не менее данная служба позволяет справиться с поставленной задачей проще, быстрее и удобнее, чем инструменты графического интерфейса.
✅ Читать далее
Настраиваем проброс портов в Windows при помощи командной строки и Portproxy
Необходимость проброса портов весьма часто встающая перед системным администратором задача.
Обычно для этой цели используют службы маршрутизации и удаленного доступа (RRAS), но в ряде случаев использование данного инструмента избыточно.
В тоже время немногие знают о такой службе как Portproxy, которая управляется из командной строки при помощи команд Netsh.
Тем не менее данная служба позволяет справиться с поставленной задачей проще, быстрее и удобнее, чем инструменты графического интерфейса.
✅ Читать далее
👍34
История Windows NT
Windows NT без преувеличения можно назвать ключевой системой для Microsoft, именно она и заложенные в нее технологии заложила ту основу, которую системы Windows используют сейчас.
Начиная с Windows XP закончилось деление ОС Windows на пользовательскую и профессиональную линейку и дальше пошла развиваться именно линия NT и сегодня, запуская Windows 10 или 11 мы имеем под капотом потомка той самой NT.
Вся эта история началась очень давно, в 1980 году, когда IBM готовилась к выводу на рынок IBM PC и искала для него операционную систему. Сложность дополнительно состояла в том, что все существующие на тот момент ПК были 8-битными и для 16-битного IBM PC систему еще предстояло написать.
В этот момент на сцену вышел Билл Гейтс, который пообещал недорого решить проблему IBM, для чего купил 86-DOS у компании Seattle Computer Products и перепродал лицензию IBM.
Затем, если систему продавал IBM, то она называлась PC-DOS, а если Microsoft или кто-то еще – MS-DOS.
Несмотря на то, что на момент выхода IBM PC уже вышли 16-битные версии уже существовавших ОС DOS уверенно занял рыночную нишу. Все дело было в цене, лицензия на DOS-стоила всего 40$, а CP/M – 450$ (144$ и 1613$ в нынешних ценах).
Однако дальше дела пошли не столь хорошо, ожидаемая на замену DOS операционная система Windows в версиях 1 и 2 провалилась, а выпушенная в 1987 году OS/2 оказалась тяжелой и трудно конфигурируемой, вследствие чего тоже не достигла успеха.
Понимая, что для успеха нужна новая операционная система партнеры принялись за разработку NT OS/2, которая была полностью новой системой и не базировалась ни на DOS, ни на OS/2.
Для этого Microsoft пригласила команду специалистов из DEC во главе с Девидом Катлером, который до этого разрабатывал там VAX/VMS и RSX-11M. Система изначально разрабатывалась как полностью 32-разрядная, переносимая и многопользовательская.
Сначала данный проект должен был основываться на графическом интерфейсе OS/2 и планировался к выходу как OS/2 3.0, но отношения между партерами начали портится.
IBM была недовольна открытой архитектурой IBM PC и предпринимала действия к выпуску нового поколения компьютеров PS/2 на максимально закрытой архитектуре и с использованием в качестве системы OS/2.
Но ни PS/2, ни OS/2 не имели коммерческого успеха, а в 1990 вышла в свет Windows 3.0, которая имела оглушительный рыночный успех.
В свете успехов Microsoft решила добавить в проект NT OS/2 подсистему для программной совместимости с Windows, что очень сильно не понравилось IBM, которая, наоборот, продолжала курс на максимальную закрытость и возврат контроля над всеми компонентами ПК.
В итоге в 1991 пути компаний полностью разошлись. IBM продолжило работы над OS/2, а Microsoft забрали свои наработки и выпустила в 1993 году новую ОС под именем Windows NT.
Система позиционировалась как для сетей и профессионалов, а номер первой версии был взят от рыночно успешной Windows 3.0, и новая система вышла как Windows NT 3.1
Вместе с ней увидела свет и файловая система нового поколения NTFS, а также очень многое из того, что широко применяется сейчас.
Взрывного успеха Windows NT не получила, но за год, до момента выхода NT 3.5 было продано более 300 тыс. копий по 495$ каждая (1080$ в текущих ценах).
Несмотря на наличие ресурсов и хорошие заделы по OS/2 Warp 3 компания IBM проиграла рыночную гонку с Microsoft и так и не смогла предоставить достойного конкурента Windows.
Во многом это было связано с тем, что Microsoft и лично Билл Гейтс сделали ставку на Windows и выиграли, в то время как в IBM никто не был готов взять на себя такую ответственность за проект OS/2, который продолжал оставаться еще одним из многочисленных проектов гиганта.
Вокруг этой истории до сих пор ходит масса мифов, но на самом деле Windows NT не имеет ничего общего с IBM OS/2, кроме того, что работа некоторое время велась в рамках одного проекта, это совершенно новая ОС.
Также IBM никогда не подавала к Microsoft судебных исков по поводу Windows NT.
Windows NT без преувеличения можно назвать ключевой системой для Microsoft, именно она и заложенные в нее технологии заложила ту основу, которую системы Windows используют сейчас.
Начиная с Windows XP закончилось деление ОС Windows на пользовательскую и профессиональную линейку и дальше пошла развиваться именно линия NT и сегодня, запуская Windows 10 или 11 мы имеем под капотом потомка той самой NT.
Вся эта история началась очень давно, в 1980 году, когда IBM готовилась к выводу на рынок IBM PC и искала для него операционную систему. Сложность дополнительно состояла в том, что все существующие на тот момент ПК были 8-битными и для 16-битного IBM PC систему еще предстояло написать.
В этот момент на сцену вышел Билл Гейтс, который пообещал недорого решить проблему IBM, для чего купил 86-DOS у компании Seattle Computer Products и перепродал лицензию IBM.
Затем, если систему продавал IBM, то она называлась PC-DOS, а если Microsoft или кто-то еще – MS-DOS.
Несмотря на то, что на момент выхода IBM PC уже вышли 16-битные версии уже существовавших ОС DOS уверенно занял рыночную нишу. Все дело было в цене, лицензия на DOS-стоила всего 40$, а CP/M – 450$ (144$ и 1613$ в нынешних ценах).
Однако дальше дела пошли не столь хорошо, ожидаемая на замену DOS операционная система Windows в версиях 1 и 2 провалилась, а выпушенная в 1987 году OS/2 оказалась тяжелой и трудно конфигурируемой, вследствие чего тоже не достигла успеха.
Понимая, что для успеха нужна новая операционная система партнеры принялись за разработку NT OS/2, которая была полностью новой системой и не базировалась ни на DOS, ни на OS/2.
Для этого Microsoft пригласила команду специалистов из DEC во главе с Девидом Катлером, который до этого разрабатывал там VAX/VMS и RSX-11M. Система изначально разрабатывалась как полностью 32-разрядная, переносимая и многопользовательская.
Сначала данный проект должен был основываться на графическом интерфейсе OS/2 и планировался к выходу как OS/2 3.0, но отношения между партерами начали портится.
IBM была недовольна открытой архитектурой IBM PC и предпринимала действия к выпуску нового поколения компьютеров PS/2 на максимально закрытой архитектуре и с использованием в качестве системы OS/2.
Но ни PS/2, ни OS/2 не имели коммерческого успеха, а в 1990 вышла в свет Windows 3.0, которая имела оглушительный рыночный успех.
В свете успехов Microsoft решила добавить в проект NT OS/2 подсистему для программной совместимости с Windows, что очень сильно не понравилось IBM, которая, наоборот, продолжала курс на максимальную закрытость и возврат контроля над всеми компонентами ПК.
В итоге в 1991 пути компаний полностью разошлись. IBM продолжило работы над OS/2, а Microsoft забрали свои наработки и выпустила в 1993 году новую ОС под именем Windows NT.
Система позиционировалась как для сетей и профессионалов, а номер первой версии был взят от рыночно успешной Windows 3.0, и новая система вышла как Windows NT 3.1
Вместе с ней увидела свет и файловая система нового поколения NTFS, а также очень многое из того, что широко применяется сейчас.
Взрывного успеха Windows NT не получила, но за год, до момента выхода NT 3.5 было продано более 300 тыс. копий по 495$ каждая (1080$ в текущих ценах).
Несмотря на наличие ресурсов и хорошие заделы по OS/2 Warp 3 компания IBM проиграла рыночную гонку с Microsoft и так и не смогла предоставить достойного конкурента Windows.
Во многом это было связано с тем, что Microsoft и лично Билл Гейтс сделали ставку на Windows и выиграли, в то время как в IBM никто не был готов взять на себя такую ответственность за проект OS/2, который продолжал оставаться еще одним из многочисленных проектов гиганта.
Вокруг этой истории до сих пор ходит масса мифов, но на самом деле Windows NT не имеет ничего общего с IBM OS/2, кроме того, что работа некоторое время велась в рамках одного проекта, это совершенно новая ОС.
Также IBM никогда не подавала к Microsoft судебных исков по поводу Windows NT.
👍20❤2🤮1