Капец, что творится. Сегодня ночью приснился сон по мотивам вчерашней заметки про ddos сайта. Мне приснилось, что сайт взломан, залит вредоносный код. Ddos был для того, чтобы отвлечь внимание и заливка шелла прошла незаметно на фоне сотен тысяч строк логов и прочих мероприятий.
Ведь это вполне реальное развитие событий, о котором в сознании я даже не думал. А во сне подсказка приснилась. Вообще, это не первый раз со мной такое. Сейчас сходу не припомню, но и раньше во сне мне снились осознанные вещи, которые являлись решением проблем, которые в сознании я не смог придумать.
А однажды приснилось то, что произошло с коллегой, который только утром пришёл и рассказал всем о случившемся. Тогда я конкретно удивился и понял, что мир устроен не так, как мы себе представляем. И теперь меня ничем "сверхъестественным" не удивишь. С тех пор пришлось не раз столкнуться с необычными вещами. Когда ты веришь в них и воспринимаешь как должное, лучше выхватываешь подобное из окружающего мира.
У вас бывало такое?
#мысли
Ведь это вполне реальное развитие событий, о котором в сознании я даже не думал. А во сне подсказка приснилась. Вообще, это не первый раз со мной такое. Сейчас сходу не припомню, но и раньше во сне мне снились осознанные вещи, которые являлись решением проблем, которые в сознании я не смог придумать.
А однажды приснилось то, что произошло с коллегой, который только утром пришёл и рассказал всем о случившемся. Тогда я конкретно удивился и понял, что мир устроен не так, как мы себе представляем. И теперь меня ничем "сверхъестественным" не удивишь. С тех пор пришлось не раз столкнуться с необычными вещами. Когда ты веришь в них и воспринимаешь как должное, лучше выхватываешь подобное из окружающего мира.
У вас бывало такое?
#мысли
На днях со мной поделились классным сервисом Whois API, который всю инфу о домене выдает в json. Бесплатный тариф позволяет сделать 3000 запросов в месяц, что для мониторинга за доменами более чем достаточно. Запросы можно делать раз в день.
У меня сразу же родилась идея прикрутить всё это к Zabbix. Причем так, чтобы было и автообнаружение по списку доменов, и чтобы всё хранилось только в шаблоне и исполнялось на сервере Zabbix без каких-либо скриптов. Взял шаблон, указал свой API Key, список доменов и всё работает.
Я и так, и эдак подходил к теме, пока не придумал, как же это реализовать. Дело в том, что автообнаружение в Zabbix работает через какие-то внешние запросы, откуда будет приходить список значений. То есть нельзя просто взять в каком-то макросе указать список и использовать его для автообнаружения. Раньше я сохранял список доменов в текстовом файле, парсил его скриптом и передавал на Zabbix Server через UserParameter. Хотелось от этого уйти.
В итоге я сделал вот что. Взял для автообнаружения в качестве источника данных внутреннюю проверку и ключ zabbix[uptime], просто чтобы выбрать что-то, не важно что. Список доменов передал с помощью предобработки в виде javascript, которая список доменов берет из макроса, где они перечислены через запятую. Ну а дальше все распарсить, разбить по элементам, добавить триггеры было делом техники. По ходу дело пришлось и с новым синтаксисом разобраться (есть неочевидные нюансы), и javascript подтянуть.
Прикладываю сам шаблон. Чтобы все заработало, необходимо в макросах указать свой API KEY от сервиса promptapi и список доменов через запятую. Больше ничего делать не надо, только шаблон прикрепить к какому-нибудь хосту. После того, как прикрепите, запустите вручную правило автообнаружения доменов и потом айтемы сбора данных, так как там интервал стоит в 1 день. Замучаетесь ждать результата работы :)
В шаблоне настроены триггеры на:
- 7 и 30 дней до окончания делегирования;
- изменение списка NS серверов;
- изменение регистратора.
Соответственно, все эти значения собираются. Можно вывести куда-то на дашборд, если вам они интересны.
https://serveradmin.ru/files/zabbix/zabbix-domain-paid-till-with-discovery.yaml
#zabbix
У меня сразу же родилась идея прикрутить всё это к Zabbix. Причем так, чтобы было и автообнаружение по списку доменов, и чтобы всё хранилось только в шаблоне и исполнялось на сервере Zabbix без каких-либо скриптов. Взял шаблон, указал свой API Key, список доменов и всё работает.
Я и так, и эдак подходил к теме, пока не придумал, как же это реализовать. Дело в том, что автообнаружение в Zabbix работает через какие-то внешние запросы, откуда будет приходить список значений. То есть нельзя просто взять в каком-то макросе указать список и использовать его для автообнаружения. Раньше я сохранял список доменов в текстовом файле, парсил его скриптом и передавал на Zabbix Server через UserParameter. Хотелось от этого уйти.
В итоге я сделал вот что. Взял для автообнаружения в качестве источника данных внутреннюю проверку и ключ zabbix[uptime], просто чтобы выбрать что-то, не важно что. Список доменов передал с помощью предобработки в виде javascript, которая список доменов берет из макроса, где они перечислены через запятую. Ну а дальше все распарсить, разбить по элементам, добавить триггеры было делом техники. По ходу дело пришлось и с новым синтаксисом разобраться (есть неочевидные нюансы), и javascript подтянуть.
Прикладываю сам шаблон. Чтобы все заработало, необходимо в макросах указать свой API KEY от сервиса promptapi и список доменов через запятую. Больше ничего делать не надо, только шаблон прикрепить к какому-нибудь хосту. После того, как прикрепите, запустите вручную правило автообнаружения доменов и потом айтемы сбора данных, так как там интервал стоит в 1 день. Замучаетесь ждать результата работы :)
В шаблоне настроены триггеры на:
- 7 и 30 дней до окончания делегирования;
- изменение списка NS серверов;
- изменение регистратора.
Соответственно, все эти значения собираются. Можно вывести куда-то на дашборд, если вам они интересны.
https://serveradmin.ru/files/zabbix/zabbix-domain-paid-till-with-discovery.yaml
#zabbix
▶️ Послушал интересное выступление инженера из Mail.Ru Cloud Solutions на тему бэкапов. Артемий Капитула рассказал, как они бэкапят клиентов своего облака. Понятно, что опыт этот очень специфичный и вряд ли вам что-то подобное придётся когда-либо настраивать. Облака такого масштаба - штучные проекты.
Тем не менее, мне было интересно узнать, как там всё устроено. Выступление длинное и основательное. У рассказчика грамотная и выверенная речь. Приятно слушать. Некоторые любопытные факты о бэкапах виртуалок в Mail.Ru Cloud Solutions:
◽ Суточный объем 500TB данных, из которых 300-350TB реально новые данные. В месяц - 15PB 😱
◽ Рост x2 каждый год.
◽ Сжатие бэкапов уменьшает их примерно вдвое.
◽ Сейчас бэкапы льются со скоростью 25GB/сек.
◽ Облако клиентских виртуалок построено на базе OpenStack.
Несмотря на то, что сам я с описываемыми вещами вообще никогда не сталкивался, в общем и целом почти всё понял и осознал. Никакой особой магии в создаваемых бэкапах и инструментах нет. Плюс, докладчик очень понятно все рассказал и объяснил.
Масштабы, конечно, поражают. Это при том, что облако Mail.Ru Cloud Solutions не самое большое. Плюс, в выступлении речь шла только о кластерах Compute Cloud, то есть виртуальные машины. А есть еще S3 хранилища и прочие хранилища сервисов. Какие сети должны там быть, чтобы всё это тянуть?
Для себя тоже вынес некоторые полезные вещи, например, что ZLIB сжатие очень медленное, лучше использовать LZ4.
Видео - https://www.youtube.com/watch?v=tIEZ9Cb5nVc
Тезисы - https://www.highload.ru/spring/2021/abstracts/7329
#видео #backup
Тем не менее, мне было интересно узнать, как там всё устроено. Выступление длинное и основательное. У рассказчика грамотная и выверенная речь. Приятно слушать. Некоторые любопытные факты о бэкапах виртуалок в Mail.Ru Cloud Solutions:
◽ Суточный объем 500TB данных, из которых 300-350TB реально новые данные. В месяц - 15PB 😱
◽ Рост x2 каждый год.
◽ Сжатие бэкапов уменьшает их примерно вдвое.
◽ Сейчас бэкапы льются со скоростью 25GB/сек.
◽ Облако клиентских виртуалок построено на базе OpenStack.
Несмотря на то, что сам я с описываемыми вещами вообще никогда не сталкивался, в общем и целом почти всё понял и осознал. Никакой особой магии в создаваемых бэкапах и инструментах нет. Плюс, докладчик очень понятно все рассказал и объяснил.
Масштабы, конечно, поражают. Это при том, что облако Mail.Ru Cloud Solutions не самое большое. Плюс, в выступлении речь шла только о кластерах Compute Cloud, то есть виртуальные машины. А есть еще S3 хранилища и прочие хранилища сервисов. Какие сети должны там быть, чтобы всё это тянуть?
Для себя тоже вынес некоторые полезные вещи, например, что ZLIB сжатие очень медленное, лучше использовать LZ4.
Видео - https://www.youtube.com/watch?v=tIEZ9Cb5nVc
Тезисы - https://www.highload.ru/spring/2021/abstracts/7329
#видео #backup
YouTube
Тысяча и один бэкап, или Резервное копирование Compute Cloud / Артемий Капитула
Приглашаем на конференцию Saint HighLoad++ 2025, которая пройдет 23 и 24 июня в Санкт-Петербурге!
Программа, подробности и билеты по ссылке: https://highload.ru/spb/2025
________
HighLoad++ Весна 2021
Крупнейшая профессиональная конференция для разработчиков…
Программа, подробности и билеты по ссылке: https://highload.ru/spb/2025
________
HighLoad++ Весна 2021
Крупнейшая профессиональная конференция для разработчиков…
Очень распространённый вопрос после обновления Zabbix до новой версии: "Почему не обновились шаблоны и как их обновить?". Архитектура мониторинга Zabbix действительно не подразумевает автоматическое обновление шаблонов и этому есть свои причины.
Во-первых, часто шаблоны изменяют, причем не создают новые с изменениями, а именно дефолтные редактируют. Где-то меняют айтемы, отключают триггеры и так далее. Если автоматически обновлять шаблоны, то все эти изменения будут затираться.
Во-вторых, при обновлении шаблона может оказаться так, что какие-то айтемы в нём удалены, а какие-то добавлены. Если автоматически обновлять шаблон и удалять старые айтемы, то и история по ним будет удалена, что нежелательно.
Так что вполне разумно, что обновление шаблонов происходит только в ручном режиме. Вы всегда можете взять актуальный шаблон для своей версии и обновить его вручную, оценив все изменения и риски. Брать шаблоны нужно в официальном репозитории, который теперь находится здесь - https://git.zabbix.com, а не на github. Там, как я понимаю, копия.
Конкретно шаблоны живут здесь - https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates По умолчанию вы увидите самую свежую ветку master c новыми шаблонами. Они вам могут не подойти. Нажмите на выбор ветки и по тэгам выберите нужную вам версию Zabbix, например 5.0. Здесь же находятся шаблоны для способов оповещения. Про них тоже постоянно спрашивают после обновления, где обещаны новые шаблоны интеграций, но на деле их не появляется в новой версии. Надо импортировать вручную.
Также частой ошибкой является то, что люди не понимают, что именно и как надо качать из репозитория 😀 Вам нужно сохранить только xml или yaml файл в исходном виде. Вот пример того, что надо качать:
https://git.zabbix.com/projects/ZBX/repos/zabbix/raw/templates/os/linux/template_os_linux.yaml
Исходный yaml файл. Сохраняете его как есть и потом импортируете. Обратите внимание, что в ветке master шаблоны уже от 6.0, который еще не вышел в релиз. Так что выбирайте ветку с вашей версией сервера.
#zabbix
Во-первых, часто шаблоны изменяют, причем не создают новые с изменениями, а именно дефолтные редактируют. Где-то меняют айтемы, отключают триггеры и так далее. Если автоматически обновлять шаблоны, то все эти изменения будут затираться.
Во-вторых, при обновлении шаблона может оказаться так, что какие-то айтемы в нём удалены, а какие-то добавлены. Если автоматически обновлять шаблон и удалять старые айтемы, то и история по ним будет удалена, что нежелательно.
Так что вполне разумно, что обновление шаблонов происходит только в ручном режиме. Вы всегда можете взять актуальный шаблон для своей версии и обновить его вручную, оценив все изменения и риски. Брать шаблоны нужно в официальном репозитории, который теперь находится здесь - https://git.zabbix.com, а не на github. Там, как я понимаю, копия.
Конкретно шаблоны живут здесь - https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates По умолчанию вы увидите самую свежую ветку master c новыми шаблонами. Они вам могут не подойти. Нажмите на выбор ветки и по тэгам выберите нужную вам версию Zabbix, например 5.0. Здесь же находятся шаблоны для способов оповещения. Про них тоже постоянно спрашивают после обновления, где обещаны новые шаблоны интеграций, но на деле их не появляется в новой версии. Надо импортировать вручную.
Также частой ошибкой является то, что люди не понимают, что именно и как надо качать из репозитория 😀 Вам нужно сохранить только xml или yaml файл в исходном виде. Вот пример того, что надо качать:
https://git.zabbix.com/projects/ZBX/repos/zabbix/raw/templates/os/linux/template_os_linux.yaml
Исходный yaml файл. Сохраняете его как есть и потом импортируете. Обратите внимание, что в ветке master шаблоны уже от 6.0, который еще не вышел в релиз. Так что выбирайте ветку с вашей версией сервера.
#zabbix
👍2
Почтовый сервер Tegu
Пишу этот пост для сбора обратной связи. Случайно узнал про почтовый сервер Tegu. Удивился, что ни разу про него не слышал. Пошёл читать. Оказывается, это какая-то российская разработка, причём не на базе известного бесплатного ПО, типа postfix или dovecot. Судя по информации из их репозитория используется собственная реализация SMTP и IMAP на языке GO.
Из основных возможностей:
◽ Хранение почты - maildir или база в PostgreSQL.
◽ Построение HA кластера и способность обслуживать очень большие инфраструктуры.
◽ Web интерфейс на базе Nextcloud.
◽ Из коробки есть весь основной почтовый функционал, в том числе инструменты бэкапа, восстановления.
◽ Простая установка через веб инсталлер.
◽ Интеграция с LDAP/AD (только в платных версиях).
◽ Распространяется по свободной лицензии GPL, есть коммерческие редакции.
◽ Полностью российская разработка, есть в реестре отечественного ПО.
Я посмотрел репозиторий, почитал новости. Проект живой, постоянно обновляется. Ознакомился с документацией. Вроде всё просто, основные вещи описаны.
Хотелось бы понять, насколько это удачный проект и как он на практике? Тестировать почтовый сервер достаточно хлопотное занятие, поэтому не хочется впустую потратить время. На первый взгляд всё выглядит интересно.
Сайт - https://mbk-lab.ru/development/tegu/
Исходники - https://git.mbk-lab.ru/MBK-Lab/go-tegu/
Документация - https://project.mbk-lab.ru/projects/tegu_support/wiki
#mailserver #tegu #отечественное
Пишу этот пост для сбора обратной связи. Случайно узнал про почтовый сервер Tegu. Удивился, что ни разу про него не слышал. Пошёл читать. Оказывается, это какая-то российская разработка, причём не на базе известного бесплатного ПО, типа postfix или dovecot. Судя по информации из их репозитория используется собственная реализация SMTP и IMAP на языке GO.
Из основных возможностей:
◽ Хранение почты - maildir или база в PostgreSQL.
◽ Построение HA кластера и способность обслуживать очень большие инфраструктуры.
◽ Web интерфейс на базе Nextcloud.
◽ Из коробки есть весь основной почтовый функционал, в том числе инструменты бэкапа, восстановления.
◽ Простая установка через веб инсталлер.
◽ Интеграция с LDAP/AD (только в платных версиях).
◽ Распространяется по свободной лицензии GPL, есть коммерческие редакции.
◽ Полностью российская разработка, есть в реестре отечественного ПО.
Я посмотрел репозиторий, почитал новости. Проект живой, постоянно обновляется. Ознакомился с документацией. Вроде всё просто, основные вещи описаны.
Хотелось бы понять, насколько это удачный проект и как он на практике? Тестировать почтовый сервер достаточно хлопотное занятие, поэтому не хочется впустую потратить время. На первый взгляд всё выглядит интересно.
Сайт - https://mbk-lab.ru/development/tegu/
Исходники - https://git.mbk-lab.ru/MBK-Lab/go-tegu/
Документация - https://project.mbk-lab.ru/projects/tegu_support/wiki
#mailserver #tegu #отечественное
👍10
Одна из утилит, которой я постоянно пользуюсь в консоли Linux - dig. У меня привычка проверять данные из DNS именно c её помощью. Использование очень простое.
Просмотр А записи:
Просмотр конкретных записей, например ns серверов:
Просмотр записей через конкретный dns сервер, например ns1.selectel.org:
Лично мне в 90% случаев достаточно этого функционала. Существует очень популярный dns клиент типа dig, только dog. Он похож на dig, но имеет более дружелюбный вывод, раскрашенный различными цветами для более удобного восприятия. Основные ключи такие же, как у dig, так что переучиваться не придётся. Плюс, он умеет вывод делать в формате json, что может быть полезно для мониторинга.
Для установки dog достаточно скопировать себе бинарник. Я лично в своём основном WSL это проделал и буду использовать его.
# wget https://github.com/ogham/dog/releases/download/v0.1.0/dog-v0.1.0-x86_64-unknown-linux-gnu.zip
Последняя версия dog хочет glibc не ниже 2.32, так что на старых ОС (ubuntu 18, centos 7) не запустится.
Сайт - https://dns.lookup.dog/
Исходники - https://github.com/ogham/dog
#terminal
Просмотр А записи:
# dig serveradmin.ru
Просмотр конкретных записей, например ns серверов:
# dig serveradmin.ru ns
Просмотр записей через конкретный dns сервер, например ns1.selectel.org:
# dig @ns1.selectel.org serveradmin.ru ns
Лично мне в 90% случаев достаточно этого функционала. Существует очень популярный dns клиент типа dig, только dog. Он похож на dig, но имеет более дружелюбный вывод, раскрашенный различными цветами для более удобного восприятия. Основные ключи такие же, как у dig, так что переучиваться не придётся. Плюс, он умеет вывод делать в формате json, что может быть полезно для мониторинга.
Для установки dog достаточно скопировать себе бинарник. Я лично в своём основном WSL это проделал и буду использовать его.
# wget https://github.com/ogham/dog/releases/download/v0.1.0/dog-v0.1.0-x86_64-unknown-linux-gnu.zip
# unzip dog-v0.1.0-x86_64-unknown-linux-gnu.zip -d ~/dog
# mv ~/dog/bin/dog /usr/bin
Последняя версия dog хочет glibc не ниже 2.32, так что на старых ОС (ubuntu 18, centos 7) не запустится.
Сайт - https://dns.lookup.dog/
Исходники - https://github.com/ogham/dog
#terminal
Возвращаемся к вашей самой любимой рубрике с консольными костылями на bash. Судя по количеству репостов и просмотров, это самая популярная тематика. Начнём с самого интересного и полезного.
Просмотр в режиме реального времени за изменением файлов в каталоге. Частая потребность, но когда мне понадобилось это сделать, сразу не догадался каким образом через watch все это организовать.
Не забывайте, что по умолчанию tail без параметров выводит только 10 строк. Их число задаётся через ключ -n.
Рекурсивный листинг файлов. Очевидный способ вывести список файлов, в том числе с вложенными директориями следующий: ls -lR. Он не очень удобен, если список потом надо как-то обработать и использовать. Удобнее вывести через find:
Поиск дубликатов файлов. На первый взгляд монструозная и страшная конструкция, но если разбить её на этапы, то все достаточно просто получается. Сначала идёт поиск файлов с одинаковым размером, потом у этих файлов проверяется md5sum. Если она одинаковая, то выводится список файлов.
Быстрое переименование файла. Простой и удобный трюк, хотя я сам по привычке пишу полные имена.
Список наиболее часто используемых команд. Парсится стандартный вывод history.
Запуск матрицы. Включаем и уходим на обед.
#bash #terminal
Просмотр в режиме реального времени за изменением файлов в каталоге. Частая потребность, но когда мне понадобилось это сделать, сразу не догадался каким образом через watch все это организовать.
# watch -d -n 2 'ls -rtlh | tail'
Не забывайте, что по умолчанию tail без параметров выводит только 10 строк. Их число задаётся через ключ -n.
Рекурсивный листинг файлов. Очевидный способ вывести список файлов, в том числе с вложенными директориями следующий: ls -lR. Он не очень удобен, если список потом надо как-то обработать и использовать. Удобнее вывести через find:
# find . -type f -ls
Поиск дубликатов файлов. На первый взгляд монструозная и страшная конструкция, но если разбить её на этапы, то все достаточно просто получается. Сначала идёт поиск файлов с одинаковым размером, потом у этих файлов проверяется md5sum. Если она одинаковая, то выводится список файлов.
find -not -empty -type f -printf "%s\n" | sort -rn | uniq -d \
| xargs -I{} -n1 find -type f -size {}c -print0 \
| xargs -0 md5sum | sort | uniq -w32 --all-repeated=separate
Быстрое переименование файла. Простой и удобный трюк, хотя я сам по привычке пишу полные имена.
# mv filename.{old,new}
Список наиболее часто используемых команд. Парсится стандартный вывод history.
# history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' \
| sort -rn | head
Запуск матрицы. Включаем и уходим на обед.
# tr -c "[:print:]" " " < /dev/urandom \
| dd cbs=$COLUMNS conv=unblock \
2>/dev/null | GREP_COLOR="1;32" \
grep --color "[^ ]"
#bash #terminal
👍3
Хочу порекомендовать вам канал практикующего инженера и официального тренера по Mikrotik Дмитрия Скоромнова - MikroTik сэнсэй @mikrotik_sensei. Я не часто делаю личные рекомендации, потому что знаю не так много интересных авторских каналов.
Дмитрий недавно начал вести свой канал, так что всё самое интересное ещё впереди. Я знаком с ним лично, проходил его курсы как очно, так и онлайн и не раз рекомендовал их вам. Так что советую подписаться, чтобы получать актуальную, полезную информацию по Mikrotik от сертифицированного специалиста, а не от самоучек типа меня 😁.
#реклама #текст_мой
Дмитрий недавно начал вести свой канал, так что всё самое интересное ещё впереди. Я знаком с ним лично, проходил его курсы как очно, так и онлайн и не раз рекомендовал их вам. Так что советую подписаться, чтобы получать актуальную, полезную информацию по Mikrotik от сертифицированного специалиста, а не от самоучек типа меня 😁.
#реклама #текст_мой
Gitea - легковесная Open Source-система для управления Git-репозиториями, которую можно развернуть на своем сервере. Обычно, когда вспоминают про self-hosted git репозиторий, на ум приходят Gitlab, Bitbucket. Я почти везде вижу либо Gitlab, либо аккаунт в Github. Хотя зачастую, весь функционал, что предлагают эти продукты, не нужен.
В то же время Gitea более проста в установке, настройке, бэкапе. Может работать даже на Raspberry Pi. При этом закрывает все основные потребности в хранении кода. Очень многим командам разработчиков или девопсов будет её достаточно. Особенно если уже есть какой-то инструмент для CI/CD.
В самом простом случае Gitea может использовать базу данных SQLite. Поставить и потыкать, как обычно, проще всего в Docker. Не буду сюда копировать простыню docker-compose файла. Посмотрите его в документации. При этом присутствует дистрибутив под Windows. Gitea можно поставить даже на Windows 10.
По идее, это идеальный вариант для собственного репозитория. Хотя у меня всё лежит в бесплатном облачном gitlab. Локальный только для тестов использую.
Сайт - https://gitea.io
Документация - https://docs.gitea.io
Исходники - https://github.com/go-gitea/gitea
Установка на Windows - https://www.youtube.com/watch?v=_Wu1MjrsGUc
#git #selfhosted
В то же время Gitea более проста в установке, настройке, бэкапе. Может работать даже на Raspberry Pi. При этом закрывает все основные потребности в хранении кода. Очень многим командам разработчиков или девопсов будет её достаточно. Особенно если уже есть какой-то инструмент для CI/CD.
В самом простом случае Gitea может использовать базу данных SQLite. Поставить и потыкать, как обычно, проще всего в Docker. Не буду сюда копировать простыню docker-compose файла. Посмотрите его в документации. При этом присутствует дистрибутив под Windows. Gitea можно поставить даже на Windows 10.
По идее, это идеальный вариант для собственного репозитория. Хотя у меня всё лежит в бесплатном облачном gitlab. Локальный только для тестов использую.
Сайт - https://gitea.io
Документация - https://docs.gitea.io
Исходники - https://github.com/go-gitea/gitea
Установка на Windows - https://www.youtube.com/watch?v=_Wu1MjrsGUc
#git #selfhosted
👍2
Несколько лет назад я открыл своё ИП и фактически стал предпринимателем. Идеи развивать бизнес в тот момент не было, нет её и сейчас. Я работаю по схеме фрилансера. Со своим ИП это удобнее делать, чем без него. Внутри я ощущаю себя инженером. Больше люблю практическую деятельность, не управленческую.
У меня есть статья на эту тему, которая могла устареть в каких-то отдельных деталях, но по сути актуальность не потеряла и её можно использовать для того, чтобы примерить на себе, подходит ли вам такой формат занятости и ведения дел. Важное изменение - я всю свою бухгалтерию перевел в 1С и веду сам. Мне просто хотелось посмотреть, как это работает изнутри глазами бухгалтера, получить опыт.
К статье есть хорошие вопросы и мои подробные, содержательные ответы на них. Надеюсь, моя статья и заметка сподвигнуть кого-то к изменениям в своей жизни и открытию собственного дела. Для сферы IT все дороги открыты в этом направлении. Пробуйте.
https://serveradmin.ru/kak-sistemnomu-administratoru-otkryit-ip/
У меня есть статья на эту тему, которая могла устареть в каких-то отдельных деталях, но по сути актуальность не потеряла и её можно использовать для того, чтобы примерить на себе, подходит ли вам такой формат занятости и ведения дел. Важное изменение - я всю свою бухгалтерию перевел в 1С и веду сам. Мне просто хотелось посмотреть, как это работает изнутри глазами бухгалтера, получить опыт.
К статье есть хорошие вопросы и мои подробные, содержательные ответы на них. Надеюсь, моя статья и заметка сподвигнуть кого-то к изменениям в своей жизни и открытию собственного дела. Для сферы IT все дороги открыты в этом направлении. Пробуйте.
https://serveradmin.ru/kak-sistemnomu-administratoru-otkryit-ip/
Server Admin
Открытие ИП системным администратором
Подробная пошаговая инструкция для открытия и работы в качестве ИП системному администратору. Личный опыт автора.
👍6
Taurus - интерактивный бесплатный фреймворк для нагрузочного тестирования. Название образовано от слов Test Automation Running Smoothly. На русский можно перевести, как "автоматизация тестирования пройдёт чики-пуки".
Основные особенности и отличия от других подобных программ, коих существует много:
◽ Простая установка и запуск тестов.
◽ Тесты можно писать как на json, так и yaml (почесал бороду).
◽ Можно использовать скрипты от известных JMeter и Selenium.
◽ Отображение результатов в режиме реального времени в консоли.
◽ Интеграция с панелью BlazeMeter, популярной Continuous Testing Platform.
Установить Taurus проще всего через pip. Обязательно понадобится пакет python-devel. В Rocky Linux устанавливаем примерно так:
Делаем простейший конфиг quick_test.yml
Запускаем тест и роняем сайт школы:
Шутка, сайт ронять не надо. После запуска Taurus скачает исходники JMeter и запустит его. Ему для работы нужна Java 😱 Ставим:
Результат работы будете видеть тут же, в консоли. Интересны в первую очередь будут данные Average Time: elapsed, connect, latency. После окончания теста результаты останутся в отдельной директории с датой теста в имени. Там будет очень много различной информации. Основные итоги в файле bzt.log.
Если добавите к команде ключ -report, то на выходе получите наглядную картинку с результатами тестирования и ссылку, где её можно будет посмотреть. В целом, работа с Taurus похожа на Яндекс.Танк. Очень функциональная штука.
Сайт - https://gettaurus.org/
Исходники - https://github.com/Blazemeter/taurus
Документация - https://gettaurus.org/docs/Index/
#нагрузочное_тестирование
Основные особенности и отличия от других подобных программ, коих существует много:
◽ Простая установка и запуск тестов.
◽ Тесты можно писать как на json, так и yaml (почесал бороду).
◽ Можно использовать скрипты от известных JMeter и Selenium.
◽ Отображение результатов в режиме реального времени в консоли.
◽ Интеграция с панелью BlazeMeter, популярной Continuous Testing Platform.
Установить Taurus проще всего через pip. Обязательно понадобится пакет python-devel. В Rocky Linux устанавливаем примерно так:
# dnf install python36 python36-devel gcc
# pip3 install bzt
Делаем простейший конфиг quick_test.yml
execution:
- concurrency: 100
ramp-up: 1m
hold-for: 5m
scenario: quick-test
scenarios:
quick-test:
requests:
- https://shkola1101.ru
Запускаем тест и роняем сайт школы:
# bzt quick_test.yml
Шутка, сайт ронять не надо. После запуска Taurus скачает исходники JMeter и запустит его. Ему для работы нужна Java 😱 Ставим:
# dnf install java-11-openjdk
Результат работы будете видеть тут же, в консоли. Интересны в первую очередь будут данные Average Time: elapsed, connect, latency. После окончания теста результаты останутся в отдельной директории с датой теста в имени. Там будет очень много различной информации. Основные итоги в файле bzt.log.
Если добавите к команде ключ -report, то на выходе получите наглядную картинку с результатами тестирования и ссылку, где её можно будет посмотреть. В целом, работа с Taurus похожа на Яндекс.Танк. Очень функциональная штука.
Сайт - https://gettaurus.org/
Исходники - https://github.com/Blazemeter/taurus
Документация - https://gettaurus.org/docs/Index/
#нагрузочное_тестирование
Вчера я рассказал про нагрузочные тестирования с помощью Taurus, а сегодня расскажу, как правильно интерпретировать результаты. Прежде чем написать вчерашнюю заметку, я активно понагружал некоторые сайты и заметил аномалии, с которыми пришлось разбираться.
Сначала гонял тесты со 100 активными пользователями. Результаты были в основном печальные. Это и не удивительно, так как 100 активных пользователей это чаще всего большая нагрузка для тех сайтов, что есть у меня. Начал снижать это число, но всё равно меня стали напрягать цифры request_time в логах nginx. Они показывают время от начала запроса клиента до окончания передачи ему данных.
Необычно было то, что request_time рос на пограничных nginx-proxy, а сами бэкенды отвечали быстро. То есть условно, request_time для запросов Taurus 3-4 секунды, а бэкенд отвечает за 3-5 мс, что видно по upstream_response_time. И на серверах не видно особой нагрузки, железо спокойно всё тянет. Для меня это было удивительно. Подумал, что сама машина для тестов не вытягивает нагрузку и тормозит.
Запустил на более мощном железе тесты. Результат тот же. Тут я начал активно думать, проверять конфиг nginx, гуглить подсказки. Ничего не нагуглил. Никаких ошибок не заметил, в конфигах тоже все было нормально. Мне было не понятно, почему сайты так проседают от нагрузки Taurus.
Потом с помощью ELK Stack решил сделать выборку результатов request_time, исключив оттуда запросы Taurus. Оказалось, что с ними все в порядке. Время ответа остальным клиентам низкое даже в те моменты, когда шли нагрузочные тесты и Taurus показывал очень долгое время ответа сервера.
Выходит так, что тормозит Taurus и долго забирает ответ от пограничного Nginx. Сами сервера нормально настроены и вполне справляются с нагрузкой. Получается, что нельзя просто брать результаты тестов и делать по ним выводы на основе абсолютных значений. Все это имеет смысл при регулярном тестировании и сравнении результатов одних и тех же тестов в разное время.
#nginx
Сначала гонял тесты со 100 активными пользователями. Результаты были в основном печальные. Это и не удивительно, так как 100 активных пользователей это чаще всего большая нагрузка для тех сайтов, что есть у меня. Начал снижать это число, но всё равно меня стали напрягать цифры request_time в логах nginx. Они показывают время от начала запроса клиента до окончания передачи ему данных.
Необычно было то, что request_time рос на пограничных nginx-proxy, а сами бэкенды отвечали быстро. То есть условно, request_time для запросов Taurus 3-4 секунды, а бэкенд отвечает за 3-5 мс, что видно по upstream_response_time. И на серверах не видно особой нагрузки, железо спокойно всё тянет. Для меня это было удивительно. Подумал, что сама машина для тестов не вытягивает нагрузку и тормозит.
Запустил на более мощном железе тесты. Результат тот же. Тут я начал активно думать, проверять конфиг nginx, гуглить подсказки. Ничего не нагуглил. Никаких ошибок не заметил, в конфигах тоже все было нормально. Мне было не понятно, почему сайты так проседают от нагрузки Taurus.
Потом с помощью ELK Stack решил сделать выборку результатов request_time, исключив оттуда запросы Taurus. Оказалось, что с ними все в порядке. Время ответа остальным клиентам низкое даже в те моменты, когда шли нагрузочные тесты и Taurus показывал очень долгое время ответа сервера.
Выходит так, что тормозит Taurus и долго забирает ответ от пограничного Nginx. Сами сервера нормально настроены и вполне справляются с нагрузкой. Получается, что нельзя просто брать результаты тестов и делать по ним выводы на основе абсолютных значений. Все это имеет смысл при регулярном тестировании и сравнении результатов одних и тех же тестов в разное время.
#nginx
В Linux дистрибутивах есть простой инструмент для сетевой диагностики, объединяющий в себе функционал ping и traceroute одновременно. Речь идёт про MTR. В Centos 8 и прочих форках RHEL он есть по умолчанию в минимальной установке с системными утилитами. В Centos 7 нету, надо ставить отдельно из base repo. Другие дистрибутивы не проверял на наличие в базовой поставке, но в системных репозиториях 100% будет.
Также как и traceroute, mtr показывает путь до хоста, а дополнительно и время отклика всех сетевых переходов между вашей машиной и маршрутизаторами, через которые проходит пакет. Пишу специально про эту утилиту, так как она удобна и функциональна, но особо не известна. Не вижу, чтобы ей кто-то пользовался или упоминал в статьях. Все по привычке либо пингуют, либо трасерты пускают. Хотя зачастую удобнее было бы mtr запустить. К тому же сама команда очень короткая.
MTR можно запускать как на постоянную работу, так и с автовыходом после определенного количества отправленных пакетов. Плохо, что результат работы в консоли не остаётся.
Также как и traceroute, mtr показывает путь до хоста, а дополнительно и время отклика всех сетевых переходов между вашей машиной и маршрутизаторами, через которые проходит пакет. Пишу специально про эту утилиту, так как она удобна и функциональна, но особо не известна. Не вижу, чтобы ей кто-то пользовался или упоминал в статьях. Все по привычке либо пингуют, либо трасерты пускают. Хотя зачастую удобнее было бы mtr запустить. К тому же сама команда очень короткая.
MTR можно запускать как на постоянную работу, так и с автовыходом после определенного количества отправленных пакетов. Плохо, что результат работы в консоли не остаётся.
# mtr -c3 gmail.com
Если хочется увидеть результат в консоли, то надо добавить еще один ключ:# mtr -c3 -r gmail.com
Утилита достатчоно функциональна. Подробности лучше в доках посмотреть. Покажу еще один полезный пример. Вместо icmp запросов, можно использовать TCP SYN-пакеты или UDP-датаграммы:# mtr --tcp gmail.com
# mtr --udp gmail.com
#terminal #network👍4
K055 Системный администратор на удаленке: 200к в месяц с помощью…
Евгений Кошкин
Меня регулярно просят рассказать о том, как я веду дела, чем занимаюсь, как дошёл до такой жизни и т.д. Это происходит как в комментариях к статьям и заметкам, так и в личку. Я обычно в этих случаях отправляю ссылку на подкаст с моим участием.
Там в течении 40 минут я рассказываю, как прошел путь от обычного администратора по найму, до фрилансера и блогера сейчас. Интервью записывалось чуть больше года назад, но принципиально ничего не поменялось. Я специально на днях прослушал его еще раз, чтобы убедиться в этом. Только доходы немного подросли. Но с учётом инфляции последнего времени, думаю, что при своих остался, только её компенсировал.
На момент записи подкаста аудитория канала была раза в 3 меньше, чем сейчас, так что много кто про него не знает и не слышал. Если вам интересна моя персона, мой образ жизни, моя занятость и доходы, то послушайте подкаст. Там прям много подробностей. Я все рассказал без утайки.
#подкаст
Там в течении 40 минут я рассказываю, как прошел путь от обычного администратора по найму, до фрилансера и блогера сейчас. Интервью записывалось чуть больше года назад, но принципиально ничего не поменялось. Я специально на днях прослушал его еще раз, чтобы убедиться в этом. Только доходы немного подросли. Но с учётом инфляции последнего времени, думаю, что при своих остался, только её компенсировал.
На момент записи подкаста аудитория канала была раза в 3 меньше, чем сейчас, так что много кто про него не знает и не слышал. Если вам интересна моя персона, мой образ жизни, моя занятость и доходы, то послушайте подкаст. Там прям много подробностей. Я все рассказал без утайки.
#подкаст
Очень любопытный обзор своей серверной от популярного IT блогера Techno Tim. Я вроде бы уже делился какими-то видео с его канала. Иногда смотрю, хороший контент.
Серверная, конечно, суперская. У нас у коммерческих компаний такого оснащения нет. Лично у меня одно списанное старье под тестовые лаборатории. Но с другой стороны, лично мне этих мощностей хватает и так за глаза. Так что большого смысла тратить на них деньги лично у меня нет.
Был период, когда я пытался что-то на своих серверах дома запускать и держать. Даже сайт одно время дома жил. Но я быстро понял, что получается ерунда. Дома пыль, нестабильный интернет, лишний шум и т.д. В упсах постоянно аккумы менять надо и следить за ними.
Сейчас все свои сервисы и сайты размещаю в арендованных серверах и виртуалках. А у вас дома есть свои сервера или даже серверные? Размещаете что-то в них?
https://www.youtube.com/watch?v=u45Z4yGTgs8
#видео
Серверная, конечно, суперская. У нас у коммерческих компаний такого оснащения нет. Лично у меня одно списанное старье под тестовые лаборатории. Но с другой стороны, лично мне этих мощностей хватает и так за глаза. Так что большого смысла тратить на них деньги лично у меня нет.
Был период, когда я пытался что-то на своих серверах дома запускать и держать. Даже сайт одно время дома жил. Но я быстро понял, что получается ерунда. Дома пыль, нестабильный интернет, лишний шум и т.д. В упсах постоянно аккумы менять надо и следить за ними.
Сейчас все свои сервисы и сайты размещаю в арендованных серверах и виртуалках. А у вас дома есть свои сервера или даже серверные? Размещаете что-то в них?
https://www.youtube.com/watch?v=u45Z4yGTgs8
#видео
YouTube
Techno Tim HomeLab and NEW Server Room Tour! (Late 2021)
Well, here it is! My Late 2021 Server Rack and HomeLab tour! This is a special one because I just revamped and remodeled a spot in the basement for my new data center / server room (still picking out a name for it). I've upgraded, replaced, added, and…
На днях разбирался в своём айтишном имуществе. Сколько всего лежит по коробкам, по большей части ненужное. Но выкинуть жалко. Всякие провода, переходники, вентиляторы, старые смартфоны, навигаторы. Даже adsl модем со сплиттером нашёл, чтобы межгород связь не разрывал.
Кстати, то, что надо было найти, так и не нашёл. Веб камера и poe инжектор как сквозь землю провалились. Вообще, у меня есть идея, чтобы не забывать где что лежит, вести какой-то каталог. Но тут нужна система, как всё это хранить и записывать. Я реально через год уже не помню, что и где у меня на полках и в коробках хранится. Особенно если супруга уборку проведёт 😱 То же самое относится и к инструментам, свёрлам, саморезам, ножам и т.д.
Дети с огромным энтузиазмом около меня крутились. Вот уж кто любит посмотреть на всякие непонятные штучки. Младшего сына (2,5 года) больше всего привлекли планки оперативной памяти. Дал ему поиграть. Дочка (5 лет) взяла старую проводную мышку, ушла на кухню и соорудила там импровизированный ноутбук из листов бумаги. На листе A4-клавиатуре сама нарисовала квадратики. На лист-экран маму попросила написать какие-то буквы. Сама пока очень медленно пишет. Я посмотрел на всё это и выдал ей для игр старый ноутбук. Но детскому воображению на самом деле ноутбук не нужен. Она тут же потеряла к нему интерес, буквально за 5 минут. Со своим ноутбуком из листов бумаги и мышкой играла гораздо дольше.
Старший (7 лет) в школе был, так что в изучении папиных артефактов не участвовал в этот раз. Знаю, что ему очень нравятся вентиляторы. Раньше включал их ему, чтобы поиграл.
Долго смотрел на кейс под CD диски. Хотел выкинуть, но так и не выкинул, хотя понимаю, что реально это мне уже никогда не пригодится. Но я как Плюшкин, всё храню. Со школьных времен до сих пор остались фантики от «Турбы» и сотки с битами для игры с ними.
#личное
Кстати, то, что надо было найти, так и не нашёл. Веб камера и poe инжектор как сквозь землю провалились. Вообще, у меня есть идея, чтобы не забывать где что лежит, вести какой-то каталог. Но тут нужна система, как всё это хранить и записывать. Я реально через год уже не помню, что и где у меня на полках и в коробках хранится. Особенно если супруга уборку проведёт 😱 То же самое относится и к инструментам, свёрлам, саморезам, ножам и т.д.
Дети с огромным энтузиазмом около меня крутились. Вот уж кто любит посмотреть на всякие непонятные штучки. Младшего сына (2,5 года) больше всего привлекли планки оперативной памяти. Дал ему поиграть. Дочка (5 лет) взяла старую проводную мышку, ушла на кухню и соорудила там импровизированный ноутбук из листов бумаги. На листе A4-клавиатуре сама нарисовала квадратики. На лист-экран маму попросила написать какие-то буквы. Сама пока очень медленно пишет. Я посмотрел на всё это и выдал ей для игр старый ноутбук. Но детскому воображению на самом деле ноутбук не нужен. Она тут же потеряла к нему интерес, буквально за 5 минут. Со своим ноутбуком из листов бумаги и мышкой играла гораздо дольше.
Старший (7 лет) в школе был, так что в изучении папиных артефактов не участвовал в этот раз. Знаю, что ему очень нравятся вентиляторы. Раньше включал их ему, чтобы поиграл.
Долго смотрел на кейс под CD диски. Хотел выкинуть, но так и не выкинул, хотя понимаю, что реально это мне уже никогда не пригодится. Но я как Плюшкин, всё храню. Со школьных времен до сих пор остались фантики от «Турбы» и сотки с битами для игры с ними.
#личное
👍5
Ребят, я долго не решался написать обзор этой игры. Заранее прошу прощения у тех, кто залипнет в ней надолго. Я с трудом заставил себя перестать играть в эту игру и удалить её. Если раньше были проблемы с игровой зависимостью, не читайте дальше. Искренний совет.
Factorio - симулятор автоматизации, хотя в описании сказано, что строительства и управления. Но реально это про автоматизацию. Тут надо строить невероятные конвейеры и смотреть, как по ним всё движется. Если в детстве залипали за Transport Tycoon и подобными симуляторами, то игра вам зайдёт.
Я читал, что на базе Factorio кто-то даже умудрялся проектировать компьютер с cpu, памятью, экраном. Чего в ней только не собирают. Можно сравнить с Minecraft, но немного другой игровой процесс. Для увлечённого и живого ума это бескрайний простор для творчества.
Отзывы:
❗️Я предостерегаю вас! Игра совсем не ценит ваше время. Вы можете оказаться в ситуации, когда вы только запустили игру и спустя миг обнаруживаете, что прошло больше 5 часов. Так что будьте бдительны. Ни в коем случае НЕ рекомендую устанавливать дополнительные модификации, которые углубляют и без того бездонный набор механик.
Днём я eб*шу на заводе, а вечером завод eб*шит на меня.
Знаете, за свои 28 лет я играю в разные игры, наверное, уже лет 16. Я видел всякое ♥♥♥, но никогда не видел чего-либо подобного. Будучи по образованию, мировоззрению и роду занятий абсолютным технарем до мозга костей, я не прекращаю восхищаться разработчиками этой игры. За, казалось бы, достаточно примитивной графикой, простецким визуальным оформлением, звуком и прочим прочим скрыто не что-нибудь, а МАТЕМАТИКА во всем ее величии.
Нельзя просто так встать и пойти спать, когда у тебя на базе что-то не оптимально.
В общем, я вас предупреждал, если что. Хорошего вечера 🤖
Steam - https://store.steampowered.com/app/427520/Factorio/
Обзор - https://www.youtube.com/watch?v=cUK70kcttQA
#игра
Factorio - симулятор автоматизации, хотя в описании сказано, что строительства и управления. Но реально это про автоматизацию. Тут надо строить невероятные конвейеры и смотреть, как по ним всё движется. Если в детстве залипали за Transport Tycoon и подобными симуляторами, то игра вам зайдёт.
Я читал, что на базе Factorio кто-то даже умудрялся проектировать компьютер с cpu, памятью, экраном. Чего в ней только не собирают. Можно сравнить с Minecraft, но немного другой игровой процесс. Для увлечённого и живого ума это бескрайний простор для творчества.
Отзывы:
❗️Я предостерегаю вас! Игра совсем не ценит ваше время. Вы можете оказаться в ситуации, когда вы только запустили игру и спустя миг обнаруживаете, что прошло больше 5 часов. Так что будьте бдительны. Ни в коем случае НЕ рекомендую устанавливать дополнительные модификации, которые углубляют и без того бездонный набор механик.
Днём я eб*шу на заводе, а вечером завод eб*шит на меня.
Знаете, за свои 28 лет я играю в разные игры, наверное, уже лет 16. Я видел всякое ♥♥♥, но никогда не видел чего-либо подобного. Будучи по образованию, мировоззрению и роду занятий абсолютным технарем до мозга костей, я не прекращаю восхищаться разработчиками этой игры. За, казалось бы, достаточно примитивной графикой, простецким визуальным оформлением, звуком и прочим прочим скрыто не что-нибудь, а МАТЕМАТИКА во всем ее величии.
Нельзя просто так встать и пойти спать, когда у тебя на базе что-то не оптимально.
В общем, я вас предупреждал, если что. Хорошего вечера 🤖
Steam - https://store.steampowered.com/app/427520/Factorio/
Обзор - https://www.youtube.com/watch?v=cUK70kcttQA
#игра
👍5
Хочу немного дополнить парочку предыдущих постов. После публикации в комментариях появились существенные дополнения, за что я благодарен всем, кто участвует в конструктивном обсуждении.
В четверг и пятницу писал о фреймворке нагрузочного тестирования Taurus, а также сам им тестировал некоторые сайты и заметил, что результаты тестов очень низкие, хотя железо не нагружено. Оказалось, что я очень быстро забивал исходящий канал самого сервера, где запускался Taurus. Он 100 Мегабит, в результатах теста я получал метрику загрузки канала 10 MiB/s. Ошибочно принял её за Мегабиты в секунду, а на самом деле это Мебибайты, что с учётом накладных расходов и равно примерно 100 мегабитам. Так что внимательно смотрите на все детали. Я искал проблемы на сервере, а надо было посмотреть на сам клиент.
На днях писал про утилиту MTR, объединяющую в себе функционал traceroute и ping. Оказывается, она есть и под Windows. Называется Winmtr - https://sourceforge.net/projects/winmtr/ Описание тут можно посмотреть.
В четверг и пятницу писал о фреймворке нагрузочного тестирования Taurus, а также сам им тестировал некоторые сайты и заметил, что результаты тестов очень низкие, хотя железо не нагружено. Оказалось, что я очень быстро забивал исходящий канал самого сервера, где запускался Taurus. Он 100 Мегабит, в результатах теста я получал метрику загрузки канала 10 MiB/s. Ошибочно принял её за Мегабиты в секунду, а на самом деле это Мебибайты, что с учётом накладных расходов и равно примерно 100 мегабитам. Так что внимательно смотрите на все детали. Я искал проблемы на сервере, а надо было посмотреть на сам клиент.
На днях писал про утилиту MTR, объединяющую в себе функционал traceroute и ping. Оказывается, она есть и под Windows. Называется Winmtr - https://sourceforge.net/projects/winmtr/ Описание тут можно посмотреть.
👍1
Для тех, кто не в курсе, хочу напомнить, что у меня есть отдельный канал, где я собираю юмор на тему IT - @srv_admin_humor Я туда пересылаю то, что понравилось лично мне. Канал не веду постоянно. Вообще редко туда что-то пощу.
Он может быть интересен в первую очередь подборкой музыки. Я сильно заморочился и собрал вообще всё, что нашёл с айтишной тематикой в музыке и постоянно её дополняю. Сам регулярно слушаю плейлист из этой группы. Просто захожу в канал, сразу в аудиофайлы и запускаю трек. По каналу лазить не обязательно.
Если вы знаете еще какие-то прикольные песни, то отправляйте информацию либо мне в личку, либо через бот. Его координаты есть в описании канала.
Он может быть интересен в первую очередь подборкой музыки. Я сильно заморочился и собрал вообще всё, что нашёл с айтишной тематикой в музыке и постоянно её дополняю. Сам регулярно слушаю плейлист из этой группы. Просто захожу в канал, сразу в аудиофайлы и запускаю трек. По каналу лазить не обязательно.
Если вы знаете еще какие-то прикольные песни, то отправляйте информацию либо мне в личку, либо через бот. Его координаты есть в описании канала.
Хочу порекомендовать вам очень удобную и функциональную программу для синхронизации файлов - FreeFileSync. По сути это аналог известной платной программы GoodSync, которую многие знают, но она платная. Работает FreeFileSync примерно так же, только полностью бесплатна, исходный код открыт.
Принцип работы FreeFileSync следующий. Выбираете в левой части окна программы одну директорию, в правой части другую и синхронизируете их. Можно настроить правила синхронизации и интервал. В качестве одной из сторон синхронизации может выступать не только локальная или сетевая директория, а облачный сервис google drive, sftp и ftp. То есть можно с Windows серверов лить данные на Linux по sftp.
Программа поддерживает консольный режим работы, исключения, работу в качестве службы, автозапуск по расписанию и многое другое. Это полноценный, многофункциональный продукт с регулярными обновлениями. Работает под Windows, Linux, MacOS.
Сайт - https://freefilesync.org
Обзор - https://www.youtube.com/watch?v=TThGBG_Z4N0
#backup
Принцип работы FreeFileSync следующий. Выбираете в левой части окна программы одну директорию, в правой части другую и синхронизируете их. Можно настроить правила синхронизации и интервал. В качестве одной из сторон синхронизации может выступать не только локальная или сетевая директория, а облачный сервис google drive, sftp и ftp. То есть можно с Windows серверов лить данные на Linux по sftp.
Программа поддерживает консольный режим работы, исключения, работу в качестве службы, автозапуск по расписанию и многое другое. Это полноценный, многофункциональный продукт с регулярными обновлениями. Работает под Windows, Linux, MacOS.
Сайт - https://freefilesync.org
Обзор - https://www.youtube.com/watch?v=TThGBG_Z4N0
#backup
👍8