Как понять, что системе на базе Linux требуется перезагрузка? Самый простой способ - использовать программу needrestart (deb дистрибутивы) или needs-restarting (rpm дистрибутивы). Я про неё подробно рассказывал. Её можно использовать для собственного мониторинга. Также другой софт может на неё опираться. Например, Lynis.
Needrestart установлен не всегда и не везде. Например, в базовых образах LXC контейнеров в Proxmox его нет. Если система не ваша, то самостоятельно лучше ничего не ставить.
Косвенно узнать, что у нас со службами и перезагрузкой можно очень простым и привычным способом, но для других задач. На помощью придёт lsof.
Тут видно удалённые файлы системных сервисов, таких как systemd, sshd, ну и bash заодно. То есть было обновление, приехали новые версии этих файлов, заменили старые. Но так как службы не перезапускались, они до сих пор используют удалённые файлы.
Для systemd существует специальная команда для полного перезапуска службы в том числе после обновления:
Её, кстати, часто ошибочно предлагают ИИ, когда изменяются настройки юнитов. Использовать её в этом случае не стоит. К сожалению, эта команда не всегда помогает запустить systemd с обновлённым бинарём. В таком случае поможет только перезагрузка.
С другими службами проще. Для обновления
А вот если изменился systemd, glibc или ядро, то тут без reboot уже не обойтись. Ядро, кстати, можно так посмотреть:
Это текущая версия, а вот список установленных ядер:
Установлен пакет с более свежим ядром. Надо перезагружаться.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux
Needrestart установлен не всегда и не везде. Например, в базовых образах LXC контейнеров в Proxmox его нет. Если система не ваша, то самостоятельно лучше ничего не ставить.
Косвенно узнать, что у нас со службами и перезагрузкой можно очень простым и привычным способом, но для других задач. На помощью придёт lsof.
# lsof -nP +L1 | grep '(deleted)'
systemd-l 488 root txt REG 8,1 281096 0 270929 /usr/lib/systemd/systemd-logind (deleted)
dockerd 526 root txt REG 8,1 75181152 0 265728 /usr/sbin/dockerd (deleted)
sshd 532 root txt REG 8,1 1265432 0 262298 /usr/sbin/sshd (deleted)
systemd 582 root txt REG 8,1 92544 0 270899 /usr/lib/systemd/systemd (deleted)
(sd-pam) 584 root txt REG 8,1 92544 0 270899 /usr/lib/systemd/systemd (deleted)
bash 647 root txt REG 8,1 1265648 0 263309 /usr/bin/bash (deleted)
Тут видно удалённые файлы системных сервисов, таких как systemd, sshd, ну и bash заодно. То есть было обновление, приехали новые версии этих файлов, заменили старые. Но так как службы не перезапускались, они до сих пор используют удалённые файлы.
Для systemd существует специальная команда для полного перезапуска службы в том числе после обновления:
# systemctl daemon-reexec
Её, кстати, часто ошибочно предлагают ИИ, когда изменяются настройки юнитов. Использовать её в этом случае не стоит. К сожалению, эта команда не всегда помогает запустить systemd с обновлённым бинарём. В таком случае поможет только перезагрузка.
С другими службами проще. Для обновления
sshd и bash достаточно переподключиться по SSH. В новой сессии загрузятся уже новые бинарники.А вот если изменился systemd, glibc или ядро, то тут без reboot уже не обойтись. Ядро, кстати, можно так посмотреть:
# uname -r
6.1.0-35-amd64
Это текущая версия, а вот список установленных ядер:
# dpkg -l | grep linux-image
.................................
ii linux-image-6.1.0-39-amd64 6.1.148-1 amd64 Linux 6.1 for 64-bit PCs (signed)
Установлен пакет с более свежим ядром. Надо перезагружаться.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux
1👍150👎1
Поделюсь с вами необычным сервисом. Необычен он тем, что полностью бесплатно даёт интересные возможности, правда нужны они далеко не всем.
⇨ https://tastewp.com
С помощью этого сервиса можно бесплатно, без регистрации и вообще каких-то дополнительных действий получить себе в управление на 2-е суток чистую версию Wordpress.
Актуально это будет только тем, кто работает с Wordpress. Очень удобно проверить какие-то темы, плагины, загрузить бэкап своего сайта и посмотреть, как он заработает в новом окружении.
Свежесозданный сайт на удивление очень быстро работает. Удобно что-то проверять, смотреть. На своих серверах такой скорости работы админки не видел.
#бесплатно #wordpress
⇨ https://tastewp.com
С помощью этого сервиса можно бесплатно, без регистрации и вообще каких-то дополнительных действий получить себе в управление на 2-е суток чистую версию Wordpress.
Актуально это будет только тем, кто работает с Wordpress. Очень удобно проверить какие-то темы, плагины, загрузить бэкап своего сайта и посмотреть, как он заработает в новом окружении.
Свежесозданный сайт на удивление очень быстро работает. Удобно что-то проверять, смотреть. На своих серверах такой скорости работы админки не видел.
#бесплатно #wordpress
👍46👎1
backup-postgresql-restic.sh
2.1 KB
🔥 Бэкап баз postgresql с помощью restic!
Вновь возвращаюсь к очень удобному инструменту для бэкапов restic. Последнее время часто стал его использовать. Дальше вы поймёте, почему. На создание бэкапов баз данных с его помощью меня навела вот эта статья:
⇨ Restic: эффективное резервное копирование из Stdin
Автор с помощью restic дампит базы данных в Kubernetes. Я немного переделал его решение для своих локальных бэкапов. Основная проблема, которая там решена - корректная отработка ошибок снятия дампа. Я до этого сам не догадался, правда не сильно и пытался, поэтому дампил по старинке сначала в файл, проверял, а потом уже куда-то на хранение отправлял.
Но можно всё это сделать на лету и с проверкой ошибок. То есть делается дамп и тут же через pipe отправляется в restic. Этот способ удобен по нескольким причинам:
1️⃣ Самое основное - сырые дампы в restic очень хорошо дедуплицируются и экономят место. Если между дампами небольшие изменения, то даже хранение большого количества файлов за разные дни не съедает место на хранилище в отличие от обычного хранения в исходном виде на файловой системе.
2️⃣ Прямая отправка данных с pg_dump в restic исключает промежуточное сохранение, что существенно экономит ресурс SSD дисков, если у вас много баз приличного размера. Да и банально быстрее получается.
3️⃣ Если во время снятия дампа будет ошибка, то такой бэкап помечается отдельным тэгом и по этому тэгу вы сможете понять, что у вас какая-то проблема. Я специально проверил этот момент. Отрабатывает корректно. Если дамп прерывается по какой-то причине и не завершается без ошибок, то этот бэкап помечается отдельным тэгом.
В статье у автора подробно всё рассказано, не буду на этом останавливаться. Покажу свой итоговый скрипт, который бэкапит дампы условно локально, а не в S3. Если надо в S3 или куда-то ещё, то просто измените переменную
Надо убрать ключ
Это, как я понял, связано с тем, что ключ
И ещё важный момент. Не забудьте сохранить пароль от репозитория, который тоже задаётся в скрипте. Так как пароль передаётся в виде переменной окружения, его можно хранить где-то отдельно и подгружать перед запуском основного скрипта. Я в предыдущей заметке про restic упоминал об этом и показывал пример в конце.
Сам скрипт прикрепил к сообщению. Также продублировал его в публичный репозиторий. Не забудьте поменять переменные под свои нужды и окружение.
Полезные материалы по теме:
▪️Описание Restic с примерами
▪️Мониторинг Restic с помощью Zabbix и Prometheus
▪️Бэкап с помощью Restic в S3 на примере Selectel
Restic очень удобный инструмент для бэкапов. Рекомендую присмотреться.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#backup #postgresql #restic
Вновь возвращаюсь к очень удобному инструменту для бэкапов restic. Последнее время часто стал его использовать. Дальше вы поймёте, почему. На создание бэкапов баз данных с его помощью меня навела вот эта статья:
⇨ Restic: эффективное резервное копирование из Stdin
Автор с помощью restic дампит базы данных в Kubernetes. Я немного переделал его решение для своих локальных бэкапов. Основная проблема, которая там решена - корректная отработка ошибок снятия дампа. Я до этого сам не догадался, правда не сильно и пытался, поэтому дампил по старинке сначала в файл, проверял, а потом уже куда-то на хранение отправлял.
Но можно всё это сделать на лету и с проверкой ошибок. То есть делается дамп и тут же через pipe отправляется в restic. Этот способ удобен по нескольким причинам:
В статье у автора подробно всё рассказано, не буду на этом останавливаться. Покажу свой итоговый скрипт, который бэкапит дампы условно локально, а не в S3. Если надо в S3 или куда-то ещё, то просто измените переменную
REPO_PREFIX в скрипте и добавьте переменных для доступа к бакетам. Плюс, я поменял формат хранения данных. Вместо tar выгружаю в текстовый sql файл. Мне так удобнее. Ещё исправил там небольшую ошибку, которую выявил во время тестов. В строке:restic forget -r "${REPO_PREFIX}/$db" --group-by=tags --keep-tag "completed"Надо убрать ключ
--group-by=tags, иначе команда на очистку будет возвращать ошибку:refusing to delete last snapshot of snapshot group "tags [job-8dd4f544]"Это, как я понял, связано с тем, что ключ
--keep-tag не позволяет удалить при группировке по тэгам полную группу тэгов, если в ней не останется хотя бы одного снепшота. А так как у нас все тэги с job уникальны, все проблемные снепшоты будут с уникальными тэгами и по сути одни в группе. Поэтому группировку --group-by=tags надо убрать. По крайней мере у меня, когда я убрал, ошибка ушла и очистка стала нормально отрабатывать. В доках это так объясняется: "The forget command will exit with an error if all snapshots in a snapshot group would be removed as none of them have the specified tags."И ещё важный момент. Не забудьте сохранить пароль от репозитория, который тоже задаётся в скрипте. Так как пароль передаётся в виде переменной окружения, его можно хранить где-то отдельно и подгружать перед запуском основного скрипта. Я в предыдущей заметке про restic упоминал об этом и показывал пример в конце.
Сам скрипт прикрепил к сообщению. Также продублировал его в публичный репозиторий. Не забудьте поменять переменные под свои нужды и окружение.
Полезные материалы по теме:
▪️Описание Restic с примерами
▪️Мониторинг Restic с помощью Zabbix и Prometheus
▪️Бэкап с помощью Restic в S3 на примере Selectel
Restic очень удобный инструмент для бэкапов. Рекомендую присмотреться.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#backup #postgresql #restic
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍111👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Youtube показал в рекомендациях тематический шорт:
▶️ POV: You are a Sys Admin
Смотрю, много просмотров и лайков для нашей темы. Думаю, что-то интересное. Посмотрел раз, два, три. Потом включил перевод, посмотрел ещё пару раз и не понял. В чём тут юмор? Прочитал комментарии и всё равно не понял.
Решил спросить у ChatGPT. Как оказалось, видео с ютуба он смотреть не может. Пришлось скачать и загрузить ему в чат. На что он ответил, что видео видит, а звук не слышит. Загрузил ему субтитры на английском. И он мне всё объяснил.
------------------------------------------------------
◽️Сотрудник просит change request (официальное разрешение на изменения), чтобы поработать с серверами.
◽️Само по себе это звучит абсурдно, ведь change request обычно оформляют для изменения серверов, а не для того, чтобы только начать работать с ними.
◽️Он возмущается: «Что я, инженер первой линии (tier one)?» — намекая, что такие формальности и бюрократия свойственны для самых простых задач.
◽️Финал: «IT-менеджер бы меня убил» — подчеркивает, что без бумажки он вообще не имеет права ничего делать, иначе будут большие проблемы.
Юмор в том, что ролик высмеивает реальность работы системных администраторов: иногда вместо настоящей технической работы больше времени уходит на согласования, бюрократию и правила «чтобы никто не тронул сервер без бумажки».
Давай разберём по слоям, на чём держится шутка в этом видео:
🔹 1. Буквальный уровень
Фраза «i need a change request to work on these servers» звучит нелепо: админ вроде бы просто хочет поработать, но ему нужен специальный документ. Для несведущего зрителя это выглядит как чрезмерная бюрократия.
🔹 2. Ирония
Ирония в том, что админ должен запрашивать разрешение на то, что по его должности и так входит в обязанности. Это как если бы водитель автобуса просил письменное разрешение, чтобы завести двигатель.
🔹 3. Профессиональный юмор
Change request — реальный процесс в ITIL/DevOps, когда любое изменение инфраструктуры фиксируется и согласовывается.
Tier one (1-я линия поддержки) — обычно выполняет простые задачи (перезапуск, проверка логов), а не занимается управлением серверами.
Герой намекает, что бюрократия опускает его уровень работы до "самых простых тикетов".
🔹 4. Гипербола (преувеличение)
«The IT manager would literally kill me» — естественно, менеджер никого не убьёт. Но преувеличение подчёркивает, насколько строго относятся к процедурам.
👉 Получается, это мета-юмор про корпоративные процессы в IT: формальности порой важнее самой работы.
То, что герой каждый раз рукой касается сервера, добавляет ещё один слой юмора:
Буквально — он демонстрирует: «Вот эти самые серверы, с которыми я хочу поработать». Жест подчёркивает объект, о котором идёт речь.
Визуальный акцент — чтобы зритель не потерял контекст: всё время идёт речь именно про «железо», а не про абстрактные тикеты.
Ирония — он показывает, что сервер прямо здесь, под рукой, но при этом он не имеет права его трогать без бумажки. Контраст: физически доступ есть, а формально — нет.
Эффект комичности — повторение жеста делает сцену карикатурной. Сначала это естественно, а потом — всё более нелепо, словно герой доказывает очевидное: «Вот же они! Но я не могу их трогать!»
------------------------------------------------------
Как вам такой анализ от ИИ просто на основании короткого видео и нескольких строк субтитров? И это бесплатная версия. Я просто никогда не работал в крупном IT, поэтому юмора не понял.
#юмор #AI
Смотрю, много просмотров и лайков для нашей темы. Думаю, что-то интересное. Посмотрел раз, два, три. Потом включил перевод, посмотрел ещё пару раз и не понял. В чём тут юмор? Прочитал комментарии и всё равно не понял.
Решил спросить у ChatGPT. Как оказалось, видео с ютуба он смотреть не может. Пришлось скачать и загрузить ему в чат. На что он ответил, что видео видит, а звук не слышит. Загрузил ему субтитры на английском. И он мне всё объяснил.
------------------------------------------------------
◽️Сотрудник просит change request (официальное разрешение на изменения), чтобы поработать с серверами.
◽️Само по себе это звучит абсурдно, ведь change request обычно оформляют для изменения серверов, а не для того, чтобы только начать работать с ними.
◽️Он возмущается: «Что я, инженер первой линии (tier one)?» — намекая, что такие формальности и бюрократия свойственны для самых простых задач.
◽️Финал: «IT-менеджер бы меня убил» — подчеркивает, что без бумажки он вообще не имеет права ничего делать, иначе будут большие проблемы.
Юмор в том, что ролик высмеивает реальность работы системных администраторов: иногда вместо настоящей технической работы больше времени уходит на согласования, бюрократию и правила «чтобы никто не тронул сервер без бумажки».
Давай разберём по слоям, на чём держится шутка в этом видео:
🔹 1. Буквальный уровень
Фраза «i need a change request to work on these servers» звучит нелепо: админ вроде бы просто хочет поработать, но ему нужен специальный документ. Для несведущего зрителя это выглядит как чрезмерная бюрократия.
🔹 2. Ирония
Ирония в том, что админ должен запрашивать разрешение на то, что по его должности и так входит в обязанности. Это как если бы водитель автобуса просил письменное разрешение, чтобы завести двигатель.
🔹 3. Профессиональный юмор
Change request — реальный процесс в ITIL/DevOps, когда любое изменение инфраструктуры фиксируется и согласовывается.
Tier one (1-я линия поддержки) — обычно выполняет простые задачи (перезапуск, проверка логов), а не занимается управлением серверами.
Герой намекает, что бюрократия опускает его уровень работы до "самых простых тикетов".
🔹 4. Гипербола (преувеличение)
«The IT manager would literally kill me» — естественно, менеджер никого не убьёт. Но преувеличение подчёркивает, насколько строго относятся к процедурам.
👉 Получается, это мета-юмор про корпоративные процессы в IT: формальности порой важнее самой работы.
То, что герой каждый раз рукой касается сервера, добавляет ещё один слой юмора:
Буквально — он демонстрирует: «Вот эти самые серверы, с которыми я хочу поработать». Жест подчёркивает объект, о котором идёт речь.
Визуальный акцент — чтобы зритель не потерял контекст: всё время идёт речь именно про «железо», а не про абстрактные тикеты.
Ирония — он показывает, что сервер прямо здесь, под рукой, но при этом он не имеет права его трогать без бумажки. Контраст: физически доступ есть, а формально — нет.
Эффект комичности — повторение жеста делает сцену карикатурной. Сначала это естественно, а потом — всё более нелепо, словно герой доказывает очевидное: «Вот же они! Но я не могу их трогать!»
------------------------------------------------------
Как вам такой анализ от ИИ просто на основании короткого видео и нескольких строк субтитров? И это бесплатная версия. Я просто никогда не работал в крупном IT, поэтому юмора не понял.
#юмор #AI
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64👎13
Субботняя тема, непосредственно с IT не связанная. Скорее с рабочим местом. Давно планировал купить себе датчик CO2, чтобы проверять воздух в разных комнатах дома и прежде всего у своего рабочего места.
Я в этой теме не разбираюсь и никогда не интересовался ей. Потратил некоторое время, чтобы выбрать какое-то не самое дешёвое, но и не очень дорогое устройство, которое позволило бы хоть и с погрешностями, но оценить качество воздуха. Если хотите сэкономить себе время и не выбирать самостоятельно, можете купить то же самое, что и я.
Задача выбора непростая, так как на каждый прибор есть как куча положительных, так и отрицательных отзывов. Причём последние связаны зачастую с браком или какими-то другими повреждениями, так что для массовых продуктов не так просто по отзывам и обзорам оценить качество.
Я в итоге купил себе анализатор воздуха Qingping Air Monitor 2 (CGS2) (~9000 р.). По моим тестам он работает адекватно и предсказуемо. Корректно отображает CO2 уличного воздуха, предсказуемо показывает повышение при закрытых форточках в комнате, резко повышает значения при дыхании на него.
Я его протестировал в разных помещениях и режимах проветривания. Мои ощущения полностью совпали с показаниями. Спать в спальне с наглухо закрытыми форточками некомфортно, но приоткрытая дверь и микро проветривание в окнах полностью решают эту проблему. Всю ночь ppm не более 1000.
В кабинете при закрытом окне через пол часа ppm уходит за 1200 и становится душновато. Откинутая форточка решает этот вопрос. Я так обычно и работаю.
Ну и в целом в доме всё проверил. У меня нет управляемой централизованной принудительной вентиляции, но приколхожена полуавтоматическая своя, которая делалась по наитию. На удивление, получилось неплохо. Постоянный тёплый пол и проветривание в ванной комнате через откинутую форточку тянут воздух с другого конца дома из кухонной вытяжки, которая в стене и всегда открыта. В итоге в гостинной и по пути следования воздуха всегда свежо. При включении кухонной вытяжки, воздух идёт в обратном направлении, так как она мощная.
А общий воздуховод, проходящий через второй этаж, случайно проходит рядом с радиатором батареи, нагревается и на постоянке уверенно тянет наверх воздух, несмотря на несколько поворотов. Плюс, на втором этаже в санузле принудительно можно включить вытяжку, чтобы ускорить проветривание.
Получается, что ничего особо делать не надо, как только где-то приоткрываешь форточку на зимнее проветривание, через неё начинает понемногу тянуть, чего хватает для проветривания помещения. Распахивать не обязательно. В квартире, к примеру, это так не работает.
Так что с одной стороны устройство удобное, могу рекомендовать. С другой стороны мои ощущения меня не подводили, и без него я всё делал правильно. Повышение СО2 я очень хорошо ощущаю. Всегда и везде приоткрываю окна, если нет принудительной вентиляции. Так что просто приобрёл современную игрушку.
Помимо CO2 в устройстве сменный картридж для анализа мелких и средних частиц пыли, термометр (я сравнил с другими в доме, показывает корректно), измеритель влажности. Проверить его нечем, показывает последние дни 60%, что совпадает плюс-минус с тем, что сейчас должно быть на улице. Отопление пока не включено, так что похоже на правду. Ну и уровень шума, что тоже более-менее корректно, так как видно изменение на датчике при звуках в помещении. Но мне лично это вообще не актуально.
За городом по пыли показания хорошие. Да это и без приборов заметно. Пыли в разы меньше, чем в городской квартире. Нет такого, что неделю не пользовался предметом и он весь запылился. Так что за здоровьем все за город, на удалёнку.
Это не реклама, мне никто не платил и не заказывал её, поэтому ни ссылок, ни магазинов не привожу. Просто поделился полезной в хозяйстве вещью. Я бы советовал в первую очередь проверить воздух в спальне. Мне кажется, это важнее всего. Днём можно ощутить плохой воздух, а вот когда спишь, уже не управляешь этим.
#железо
Я в этой теме не разбираюсь и никогда не интересовался ей. Потратил некоторое время, чтобы выбрать какое-то не самое дешёвое, но и не очень дорогое устройство, которое позволило бы хоть и с погрешностями, но оценить качество воздуха. Если хотите сэкономить себе время и не выбирать самостоятельно, можете купить то же самое, что и я.
Задача выбора непростая, так как на каждый прибор есть как куча положительных, так и отрицательных отзывов. Причём последние связаны зачастую с браком или какими-то другими повреждениями, так что для массовых продуктов не так просто по отзывам и обзорам оценить качество.
Я в итоге купил себе анализатор воздуха Qingping Air Monitor 2 (CGS2) (~9000 р.). По моим тестам он работает адекватно и предсказуемо. Корректно отображает CO2 уличного воздуха, предсказуемо показывает повышение при закрытых форточках в комнате, резко повышает значения при дыхании на него.
Я его протестировал в разных помещениях и режимах проветривания. Мои ощущения полностью совпали с показаниями. Спать в спальне с наглухо закрытыми форточками некомфортно, но приоткрытая дверь и микро проветривание в окнах полностью решают эту проблему. Всю ночь ppm не более 1000.
В кабинете при закрытом окне через пол часа ppm уходит за 1200 и становится душновато. Откинутая форточка решает этот вопрос. Я так обычно и работаю.
Ну и в целом в доме всё проверил. У меня нет управляемой централизованной принудительной вентиляции, но приколхожена полуавтоматическая своя, которая делалась по наитию. На удивление, получилось неплохо. Постоянный тёплый пол и проветривание в ванной комнате через откинутую форточку тянут воздух с другого конца дома из кухонной вытяжки, которая в стене и всегда открыта. В итоге в гостинной и по пути следования воздуха всегда свежо. При включении кухонной вытяжки, воздух идёт в обратном направлении, так как она мощная.
А общий воздуховод, проходящий через второй этаж, случайно проходит рядом с радиатором батареи, нагревается и на постоянке уверенно тянет наверх воздух, несмотря на несколько поворотов. Плюс, на втором этаже в санузле принудительно можно включить вытяжку, чтобы ускорить проветривание.
Получается, что ничего особо делать не надо, как только где-то приоткрываешь форточку на зимнее проветривание, через неё начинает понемногу тянуть, чего хватает для проветривания помещения. Распахивать не обязательно. В квартире, к примеру, это так не работает.
Так что с одной стороны устройство удобное, могу рекомендовать. С другой стороны мои ощущения меня не подводили, и без него я всё делал правильно. Повышение СО2 я очень хорошо ощущаю. Всегда и везде приоткрываю окна, если нет принудительной вентиляции. Так что просто приобрёл современную игрушку.
Помимо CO2 в устройстве сменный картридж для анализа мелких и средних частиц пыли, термометр (я сравнил с другими в доме, показывает корректно), измеритель влажности. Проверить его нечем, показывает последние дни 60%, что совпадает плюс-минус с тем, что сейчас должно быть на улице. Отопление пока не включено, так что похоже на правду. Ну и уровень шума, что тоже более-менее корректно, так как видно изменение на датчике при звуках в помещении. Но мне лично это вообще не актуально.
За городом по пыли показания хорошие. Да это и без приборов заметно. Пыли в разы меньше, чем в городской квартире. Нет такого, что неделю не пользовался предметом и он весь запылился. Так что за здоровьем все за город, на удалёнку.
Это не реклама, мне никто не платил и не заказывал её, поэтому ни ссылок, ни магазинов не привожу. Просто поделился полезной в хозяйстве вещью. Я бы советовал в первую очередь проверить воздух в спальне. Мне кажется, это важнее всего. Днём можно ощутить плохой воздух, а вот когда спишь, уже не управляешь этим.
#железо
1👍128👎9
К заметкам про Restic уже не раз упоминали веб панель к нему Backrest. У меня были большие надежды на эту панель, но они не оправдались. Я почему-то думал, что это будет панель для управления множеством распределённых по хостам экземплярам Restic. Он работает по модели push, то есть сам отправляет данные в репозиторий и поэтому должен быть установлен локально.
С такой архитектурой затруднено централизованное управление. Это должна быть какая-то сторонняя система для установки самого restic, раскатки конфигураций на него и отслеживания выполнений заданий бэкапа. Для этого, к примеру, подойдёт Ansible Semaphore.
Я рассчитывал увидеть подобную панель, но с акцентом именно на возможности restic. Но увы. Backrest не про это. С её помощью можно настраивать только локальный бэкап на конкретном одиночном хосте. Для меня вообще неактуальна подобная функциональность, потому что я предпочитаю такие вещи настраивать в консоли на скриптах.
Тем не менее, я развернул Backrest и попробовал. Она вполне удобна для тех, кому нужен веб интерфейс для настройки. Одним из явных удобств этой панели будет возможность просматривать и скачивать файлы из снепшотов в репозиотрии. Да и просто просмотр выполненных заданий и содержимое репозитория в браузере выглядит наглядно и удобно.
Запустить Backrest можно как локально, установив вручную из бинарника и создав службу, так и автоматически в Doсker Compose. Я выбрал второе. Немного доработал пример из репозитория. Получилось вот так:
Обращаю внимание на подключаемую директорию
◽️id_ed25519 - приватный ключ для доступа к серверу, делаем так:
id_ed25519.pub добавляем на удалённом сервере в
◽️known_hosts - файл с открытым ключом удалённого сервера. Подключитесь к нему с какого-нибудь сервера, а потом скопируйте сохранённую строку из
После запуска контейнера можно идти на порт 9898 и настраивать бэкап через браузер. Первым делом надо добавить Repo. Для SFTP строка Repository URI будет примерно такая:
После этого можно создавать задание для бэкапа. Я в своём примере бэкаплю директорию
Примеры настроек Repo и задания для бэкапа показал внизу на картинках.
Теперь можно либо вручную сделать бэкап здесь же, либо дождаться планировщика. Перейдя в репозиторий, можно посмотреть Snapshots уже сделанных бэкапов, увидеть список файлов в них и по желанию что-то восстановить. Для восстановления удобно использовать директорию tmp, которую добавили в compose.
В целом нормальная, удобная панель, если для вас актуальна такая функциональность. Будет хорошим решением локальных бэкапов для тех, у кого рабочая машина на Linux. Для бэкапа и восстановления файлов с серверов, я думаю, можно обойтись и без веб интерфейса.
⇨ 🌐 Сайт / Исходники
#backup #restic
С такой архитектурой затруднено централизованное управление. Это должна быть какая-то сторонняя система для установки самого restic, раскатки конфигураций на него и отслеживания выполнений заданий бэкапа. Для этого, к примеру, подойдёт Ansible Semaphore.
Я рассчитывал увидеть подобную панель, но с акцентом именно на возможности restic. Но увы. Backrest не про это. С её помощью можно настраивать только локальный бэкап на конкретном одиночном хосте. Для меня вообще неактуальна подобная функциональность, потому что я предпочитаю такие вещи настраивать в консоли на скриптах.
Тем не менее, я развернул Backrest и попробовал. Она вполне удобна для тех, кому нужен веб интерфейс для настройки. Одним из явных удобств этой панели будет возможность просматривать и скачивать файлы из снепшотов в репозиотрии. Да и просто просмотр выполненных заданий и содержимое репозитория в браузере выглядит наглядно и удобно.
Запустить Backrest можно как локально, установив вручную из бинарника и создав службу, так и автоматически в Doсker Compose. Я выбрал второе. Немного доработал пример из репозитория. Получилось вот так:
services:
backrest:
image: garethgeorge/backrest:latest
container_name: backrest
hostname: backrest
volumes:
- ./backrest/data:/data
- ./backrest/config:/config
- ./backrest/cache:/cache
- ./backrest/tmp:/tmp # для восстановления бэкапов
- ./.ssh:/root/.ssh # для доступа к repo по sftp
- /path/to/local/repos:/userdata # локальная директория, которая бэкапится
- /path/to/local/repos:/repos # для использования в качестве local repo
environment:
- BACKREST_DATA=/data
- BACKREST_CONFIG=/config/config.json
- XDG_CACHE_HOME=/cache
- TMPDIR=/tmp
- TZ=Europe/Moscow
ports:
- "9898:9898"
restart: unless-stopped
Обращаю внимание на подключаемую директорию
.ssh. Она нужна для подключения репозитория по SFTP. По мне, так это самый простой и удобный способ подключиться к удалённому хосту для хранения бэкапов на нём. В этой директории должны быть 2 файла: ◽️id_ed25519 - приватный ключ для доступа к серверу, делаем так:
# ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -C "$(whoami)@$(hostname)_$(date -I)"id_ed25519.pub добавляем на удалённом сервере в
authorized_keys.◽️known_hosts - файл с открытым ключом удалённого сервера. Подключитесь к нему с какого-нибудь сервера, а потом скопируйте сохранённую строку из
known_hosts в этот файл. После запуска контейнера можно идти на порт 9898 и настраивать бэкап через браузер. Первым делом надо добавить Repo. Для SFTP строка Repository URI будет примерно такая:
sftp:user@10.20.1.24:/mnt/backup. Остальные параметры указывайте по потребностям.После этого можно создавать задание для бэкапа. Я в своём примере бэкаплю директорию
/var/log, которую примапил в композ файле к /userdata.Примеры настроек Repo и задания для бэкапа показал внизу на картинках.
Теперь можно либо вручную сделать бэкап здесь же, либо дождаться планировщика. Перейдя в репозиторий, можно посмотреть Snapshots уже сделанных бэкапов, увидеть список файлов в них и по желанию что-то восстановить. Для восстановления удобно использовать директорию tmp, которую добавили в compose.
В целом нормальная, удобная панель, если для вас актуальна такая функциональность. Будет хорошим решением локальных бэкапов для тех, у кого рабочая машина на Linux. Для бэкапа и восстановления файлов с серверов, я думаю, можно обойтись и без веб интерфейса.
⇨ 🌐 Сайт / Исходники
#backup #restic
👍50👎5
В недавнем опросе про консольные редакторы было много упоминаний редактора micro. Никогда не пробовал и не работал в нём. Решил исправить. И вы знаете, он меня реально впечатлил. В нём удобно работать. Удобнее, чем во всех других, с которыми приходилось сталкиваться. Расскажу про основные моменты, на которые обратил внимание.
1️⃣ Установка. Тут всё просто. Micro есть в базовых репозиториях дистрибутивов, так что можно сделать так:
Я хотел получить самую свежую версию, поэтому сделал вот так:
По сути это просто одиночный бинарник на Go. Можно скачать из репозитория.
2️⃣ Делаем micro редактором по умолчанию:
Для того, чтобы в Midnight Commander (mc) он тоже выступал в качестве редактора, надо добавить в
И перечитать файл:
В MC нажимаем F9 ⇨ Options ⇨ Configuration ⇨ [ ] Use internal editor. Убираем галочку с внутреннего редактора. Теперь вместо
📌Теперь что больше всего понравилось:
🔹В micro можно передать текст через pipe:
И весь вывод откроется в редакторе, где с ним можно работать. Не знаю, как вам, но я в других редакторах этого не видел и не использовал. Мне показался очень удобным этот момент. За одно это захотелось использовать micro.
🔹В micro работает копирование/вставка так же, как в гуишных редакторах. Не нужны какие-то особенные выделения через Shift, как это сделано в mcedit или через какие-то другие горячие клавиши.
В micro просто выделяете мышкой текст, копируете по Ctrl+c, выбираете мышкой место, куда будете вставлять и вставляете по Ctrl+v. Как в любом редакторе. Плюс, работает Ctrl+a для выделения всего текста.
Но тут же заметил и минус. Если в mcedit ты выделил текст через Shift, он копируется в буфер внешней системы, через которую ты подключился. Можно вставить текст куда-то во вне терминала. Если копируешь текст в micro, он остаётся в буфере на сервере, и вне терминала его не скопировать. Я не понял, как выйти из этой ситуации и скопировать текст из редактора куда-то во вне. Думаю, этот момент зависит от настроек и возможностей SSH клиента.
🔹В micro полная поддержка мышки. Помимо копирования, вставки, можно двойным кликом выделить слово, тройным всю строку, чтобы, к примеру, её скопировать или удалить.
Выписал для себя горячие клавиши, которыми буду пользоваться:
▪️Ctrl-q, F10 выход
▪️Ctrl-s, F2 сохранение
▪️Ctrl-f, F7 поиск
▪️Ctrl-o открыть файл
▪️Ctrl-z откатить изменения
▪️Ctrl-с копировать
▪️Ctrl-v вставить
▪️Ctrl-k вырезать строку
▪️Ctrl-e открыть командную строку для внутренних команд
Как видно, некоторые клавиши пересекаются с
Я акцентировал внимание только на нескольких моментах, которые понравились больше всего. У Micro много других возможностей, про которые я не упомянул:
- Можно переназначать горячие клавиши
- У него различные темы и подсветки синтаксиса
- Есть плагины
- Можно открыть терминал в нижней строке редактора
- Можно делить экран на несколько рабочих областей
Лично мне micro понравился. Он объединил в себе набор полезной функциональности, простоту и удобство других редакторов. Много умеет, легко осваивается, можно усложнить плагинами, если захочется.
Если ещё не прикипели к какому-то редактору, то смело используйте micro. Я себе поставил его по умолчанию в WSL. Буду пользоваться. Если понравится и привыкну, то начну ставить его везде. Он по всем параметрам лучше и удобнее
⇨ 🌐 Сайт / Исходники
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #terminal
# apt install microЯ хотел получить самую свежую версию, поэтому сделал вот так:
# curl https://getmic.ro | bash# mv micro /usr/bin/microПо сути это просто одиночный бинарник на Go. Можно скачать из репозитория.
# update-alternatives --install /usr/bin/editor editor /usr/bin/micro 50# update-alternatives --set editor /usr/bin/microДля того, чтобы в Midnight Commander (mc) он тоже выступал в качестве редактора, надо добавить в
~/.bashrc пару переменных:export EDITOR=microexport VISUAL=microИ перечитать файл:
# source ~/.bashrcВ MC нажимаем F9 ⇨ Options ⇨ Configuration ⇨ [ ] Use internal editor. Убираем галочку с внутреннего редактора. Теперь вместо
mcedit будет использоваться micro.📌Теперь что больше всего понравилось:
🔹В micro можно передать текст через pipe:
# docker inspect aa3a452f7320 | microИ весь вывод откроется в редакторе, где с ним можно работать. Не знаю, как вам, но я в других редакторах этого не видел и не использовал. Мне показался очень удобным этот момент. За одно это захотелось использовать micro.
🔹В micro работает копирование/вставка так же, как в гуишных редакторах. Не нужны какие-то особенные выделения через Shift, как это сделано в mcedit или через какие-то другие горячие клавиши.
В micro просто выделяете мышкой текст, копируете по Ctrl+c, выбираете мышкой место, куда будете вставлять и вставляете по Ctrl+v. Как в любом редакторе. Плюс, работает Ctrl+a для выделения всего текста.
Но тут же заметил и минус. Если в mcedit ты выделил текст через Shift, он копируется в буфер внешней системы, через которую ты подключился. Можно вставить текст куда-то во вне терминала. Если копируешь текст в micro, он остаётся в буфере на сервере, и вне терминала его не скопировать. Я не понял, как выйти из этой ситуации и скопировать текст из редактора куда-то во вне. Думаю, этот момент зависит от настроек и возможностей SSH клиента.
🔹В micro полная поддержка мышки. Помимо копирования, вставки, можно двойным кликом выделить слово, тройным всю строку, чтобы, к примеру, её скопировать или удалить.
Выписал для себя горячие клавиши, которыми буду пользоваться:
▪️Ctrl-q, F10 выход
▪️Ctrl-s, F2 сохранение
▪️Ctrl-f, F7 поиск
▪️Ctrl-o открыть файл
▪️Ctrl-z откатить изменения
▪️Ctrl-с копировать
▪️Ctrl-v вставить
▪️Ctrl-k вырезать строку
▪️Ctrl-e открыть командную строку для внутренних команд
Как видно, некоторые клавиши пересекаются с
mcedit. Ну а в целом набор горячих клавиш типовой, хоть и непривычный для меня в консольном редакторе.Я акцентировал внимание только на нескольких моментах, которые понравились больше всего. У Micro много других возможностей, про которые я не упомянул:
- Можно переназначать горячие клавиши
- У него различные темы и подсветки синтаксиса
- Есть плагины
- Можно открыть терминал в нижней строке редактора
- Можно делить экран на несколько рабочих областей
Лично мне micro понравился. Он объединил в себе набор полезной функциональности, простоту и удобство других редакторов. Много умеет, легко осваивается, можно усложнить плагинами, если захочется.
Если ещё не прикипели к какому-то редактору, то смело используйте micro. Я себе поставил его по умолчанию в WSL. Буду пользоваться. Если понравится и привыкну, то начну ставить его везде. Он по всем параметрам лучше и удобнее
mcedit, которым я пользуюсь просто из-за привычки.⇨ 🌐 Сайт / Исходники
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #terminal
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍168👎4
Я написал подробный обзор на новую необычную систему INFRAX. Даже не знаю, как её коротко охарактеризовать или с чем-то сравнить. На ум не приходят аналоги. INFRAX объединяет в себе систему мониторинга, удалённого подключения к серверам и техподдержку с тикетами. Это если коротко.
Бегло посмотрел описание и возможности, и решил сразу её внедрить в небольшую реальную инфраструктуру. Примерно 2 недели попользовался, всё изучил и написал статью.
☝️Сразу обращаю внимание, что на текущий момент у системы очень лояльные ограничения бесплатной версии: 100 объектов мониторинга и 100 пользователей. Это закрывает потребности не только малого, но и некоторого среднего бизнеса, особенно если ставить только на сервера.
Для того, чтобы попробовать, не надо нигде регистрироваться, оставлять телефон, ждать, когда тебе ответят или что-то пришлют. Просто качайте и устанавливайте. По умолчанию будет активирована версия Community Edition. Нетипичный подход для разработки софта в РФ. Причём это именно своя разработка с нуля, без заимствования из других продуктов. Это видно и по внешнему виду, и по функциональности. INFRAX ни на кого не похож.
Расскажу коротко, как это работает.
1️⃣ Устанавливаете систему. Она упакована в Docker контейнеры. Установка автоматическая через консольное меню, как и дальнейшее управление. То есть сам Докер знать не обязательно. Всё интуитивно и просто.
2️⃣ INFRAX сканирует сеть, находит узлы, добавляет в систему. Вы потом можете сами настроить структуру и распределить узлы по папкам.
3️⃣ Для сбора базовых метрик нужно установить агенты мониторинга. Поддерживаются системы Linux и Windows. Установка автоматическая через панель управления. Достаточно указать учётные данные с правами на установку. Базовые метрики, графики и триггеры преднастроены. Дополнительно ничего делать не обязательно, если нет нужды в тонкой настройке.
4️⃣ Для каждого узла можно указать протокол подключения для управления (SSH, RDP, VNC, HTTP или Winbox) и настроить учётные данные для подключения. Подключаться к серверу можно будет через веб интерфейс или отдельное приложение. Все сессии через веб интерфейс автоматически записываются.
5️⃣ Если срабатывает какой-то триггер, автоматически создаётся тикет, приходит уведомление. В тикете можно посмотреть первичную аналитику по узлу, назначить ответственного, посмотреть метрики хоста, прошлые инциденты, или тут же подключиться к нему и решить проблему.
Здесь же в тикете можно пообщаться с ИИ-агентом. Он умеет смотреть метрики, логи и выполнять какие-то действия на сервере, предварительно получив согласие на это. В статье есть пример, как это выглядит. ИИ оплачивается отдельно, если захочется попробовать. В бесплатной версии он отключен.
Очень кратко описал основную функциональность. В системе много дополнительных возможностей:
- полный аудит всего и вся
- планировщик заданий
- планировщик тикетов
- база скриптов для запуска на узлах
- база знаний
- отчёты и аналитика
- интеграция с LDAP, AD, OAuth
- 2FA с помощью TOTP или Email
- полноценный RBAC
- объединение узлов в бизнес-сервисы
Система для технической поддержки и обслуживания выглядит очень привлекательно. Вся функциональность относительно простая, но за счёт того, что собрана в одном месте, пользоваться удобно. Создал пользователя сотруднику, назначил права, он получил доступ к каким-то хостам через веб интерфейс. Если надо, то в одно действие в режиме реального времени доступ закрывается.
Рекомендую посмотреть и попробовать:
⇨ INFRAX – управление, поддержка (HelpDesk), мониторинг, удаленный доступ и автоматизация ИТ-инфраструктуры
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#мониторинг #remote #infrax #отечественное
Бегло посмотрел описание и возможности, и решил сразу её внедрить в небольшую реальную инфраструктуру. Примерно 2 недели попользовался, всё изучил и написал статью.
☝️Сразу обращаю внимание, что на текущий момент у системы очень лояльные ограничения бесплатной версии: 100 объектов мониторинга и 100 пользователей. Это закрывает потребности не только малого, но и некоторого среднего бизнеса, особенно если ставить только на сервера.
Для того, чтобы попробовать, не надо нигде регистрироваться, оставлять телефон, ждать, когда тебе ответят или что-то пришлют. Просто качайте и устанавливайте. По умолчанию будет активирована версия Community Edition. Нетипичный подход для разработки софта в РФ. Причём это именно своя разработка с нуля, без заимствования из других продуктов. Это видно и по внешнему виду, и по функциональности. INFRAX ни на кого не похож.
Расскажу коротко, как это работает.
Здесь же в тикете можно пообщаться с ИИ-агентом. Он умеет смотреть метрики, логи и выполнять какие-то действия на сервере, предварительно получив согласие на это. В статье есть пример, как это выглядит. ИИ оплачивается отдельно, если захочется попробовать. В бесплатной версии он отключен.
Очень кратко описал основную функциональность. В системе много дополнительных возможностей:
- полный аудит всего и вся
- планировщик заданий
- планировщик тикетов
- база скриптов для запуска на узлах
- база знаний
- отчёты и аналитика
- интеграция с LDAP, AD, OAuth
- 2FA с помощью TOTP или Email
- полноценный RBAC
- объединение узлов в бизнес-сервисы
Система для технической поддержки и обслуживания выглядит очень привлекательно. Вся функциональность относительно простая, но за счёт того, что собрана в одном месте, пользоваться удобно. Создал пользователя сотруднику, назначил права, он получил доступ к каким-то хостам через веб интерфейс. Если надо, то в одно действие в режиме реального времени доступ закрывается.
Рекомендую посмотреть и попробовать:
⇨ INFRAX – управление, поддержка (HelpDesk), мониторинг, удаленный доступ и автоматизация ИТ-инфраструктуры
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#мониторинг #remote #infrax #отечественное
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍216👎4
Заметил в 7-й версии RouterOS на Микротике в настройках DHCP сервера новую кнопку Send Reconfigure. Она находится в списке выданных аренд (Leases). Специально заглянул в старое устройство. Её там не было. Стало интересно, что это такое.
Как оказалось, DHCP сервер может инициировать обновление сетевых настроек. Для этого есть специальное DHCP-сообщение типа FORCERENEW. Вообще не знал и никогда не слышал, что это возможно. И не видел, чтобы кто-то так делал. Я всегда обновлял настройки со стороны клиента. Думал, только он может решать, когда ему это делать. Соответственно, если ты поменял настройки на сервере, то либо ждешь, когда закончится аренда, либо клиентом инициируешь обновление.
На эту тему есть RFC 3203 (DHCP reconfigure extension) аж от 2001 года. То есть это не что-то новое и уникальное. Просто в RouterOS добавили поддержку этой функциональности. Дай, думаю, попробую, как это работает. Выглядит удобно. Поменял IP адрес в аренде и отправил команду на обновление настроек. Но ничего не вышло.
Тут не всё так просто. Для того, чтобы кто попало не рассылал по сети сообщения на обновление настроек, в этот механизм добавлена защита, описанная в RFC 6704 (Forcerenew Nonce Authentication). При получении аренды от сервера, клиент сообщает, что он поддерживает механизм аутентификации. В ответ сервер отправляет ему ключ аутентификации.
В Mikrotik этот ключ можно посмотреть в статусе аренды, на вкладке Active, в поле Reconfigure Key. Если ключа там нет, значит обмена ключами не было, клиент не примет запрос FORCERENEW на смену настроек. Сервер, соответственно, когда отправляет запрос, в заголовок добавляет ключ для аутентификации.
Будет или нет работать команда FORCERENEW зависит опять от клиента. В клиенте того же Mikrotik сделали удобно. Там просто добавили опцию в свойства клиента - Allow Reconfigure Messages. Ставишь галочку и клиент обменивается с сервером ключами.
С другими клиентами сложнее. Стандартный
Стандартный DHCP клиент в Windows тоже не имеет такой поддержки.
В итоге фичу в RouterOS завезли, причём весьма удобную, а на практике применить её негде. Только если в качестве DHCP клиентов у вас выступают те же устройства RouterOS. На практике это не особо и нужно, хотя и может где-то пригодиться.
Вы вообще знали о такой возможности? Не понимаю, почему её не реализовали в популярных клиентах. Удобно же.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#mikrotik #network #dhcp
Как оказалось, DHCP сервер может инициировать обновление сетевых настроек. Для этого есть специальное DHCP-сообщение типа FORCERENEW. Вообще не знал и никогда не слышал, что это возможно. И не видел, чтобы кто-то так делал. Я всегда обновлял настройки со стороны клиента. Думал, только он может решать, когда ему это делать. Соответственно, если ты поменял настройки на сервере, то либо ждешь, когда закончится аренда, либо клиентом инициируешь обновление.
На эту тему есть RFC 3203 (DHCP reconfigure extension) аж от 2001 года. То есть это не что-то новое и уникальное. Просто в RouterOS добавили поддержку этой функциональности. Дай, думаю, попробую, как это работает. Выглядит удобно. Поменял IP адрес в аренде и отправил команду на обновление настроек. Но ничего не вышло.
Тут не всё так просто. Для того, чтобы кто попало не рассылал по сети сообщения на обновление настроек, в этот механизм добавлена защита, описанная в RFC 6704 (Forcerenew Nonce Authentication). При получении аренды от сервера, клиент сообщает, что он поддерживает механизм аутентификации. В ответ сервер отправляет ему ключ аутентификации.
В Mikrotik этот ключ можно посмотреть в статусе аренды, на вкладке Active, в поле Reconfigure Key. Если ключа там нет, значит обмена ключами не было, клиент не примет запрос FORCERENEW на смену настроек. Сервер, соответственно, когда отправляет запрос, в заголовок добавляет ключ для аутентификации.
Будет или нет работать команда FORCERENEW зависит опять от клиента. В клиенте того же Mikrotik сделали удобно. Там просто добавили опцию в свойства клиента - Allow Reconfigure Messages. Ставишь галочку и клиент обменивается с сервером ключами.
С другими клиентами сложнее. Стандартный
dhclient в Linux по умолчанию не поддерживает реализацию RFC 3203 и RFC 6704. Нужно брать какой-то другой. Например, цисковский поддерживает, но я не знаю, можно ли его запустить в Linux. Не изучал этот вопрос.Стандартный DHCP клиент в Windows тоже не имеет такой поддержки.
В итоге фичу в RouterOS завезли, причём весьма удобную, а на практике применить её негде. Только если в качестве DHCP клиентов у вас выступают те же устройства RouterOS. На практике это не особо и нужно, хотя и может где-то пригодиться.
Вы вообще знали о такой возможности? Не понимаю, почему её не реализовали в популярных клиентах. Удобно же.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#mikrotik #network #dhcp
👍156👎3
Когда надо узнать скорость сетевого интерфейса в Linux, первое, что приходит на ум - ethtool. Это самая популярная утилита для просмотра и управления настройками сетевых адаптеров. С ней только одна проблема - в базовом наборе системных утилит её обычно нет. Надо ставить отдельно:
Для разовых задач особого смысла в этом нет, потому что все подобные утилиты берут информацию у ядра. Нет никаких проблем самим её посмотреть. Проверяем имена своих сетевых интерфейсов:
И смотрим скорость:
В данном случае это скорость 1000Mb/s или 1Gb/s. Если у вас виртуальная машина, то в зависимости от типа эмуляции, вы можете получить неожиданные значения:
В данном случае
Это скорость сетевой карты, которая в бридже с виртуальным коммутатором для виртуальных машин.
☝️Кстати, если хотите быстро узнать, в виртуалке вы или на железе, запустите:
Я всегда использую эту команду для таких задач.
Помимо скорости интерфейса, ядро может передать всю остальную информацию. Например, наличие линка, параметры дуплекса, mtu или mac адрес:
Можете зайти в директорию
Таким образом можно посмотреть всё, что угодно из того, что показывают системные утилиты. Просто некоторые значения нужно преобразовывать. Например, открытые TCP порты:
Номера портов будут в шестнадцатеричном формате. Подобным образом у ядра можно выведать массу информации. Примерно этим и занимаются многочисленные клоны *top-ов и им подобных утилит. Вы и сами что-то подобное можете написать под свои задачи относительно просто, особенно с помощью ИИ.
#linux #terminal
# apt install ethtoolДля разовых задач особого смысла в этом нет, потому что все подобные утилиты берут информацию у ядра. Нет никаких проблем самим её посмотреть. Проверяем имена своих сетевых интерфейсов:
# ip a И смотрим скорость:
# cat /sys/class/net/enp4s0/speed1000В данном случае это скорость 1000Mb/s или 1Gb/s. Если у вас виртуальная машина, то в зависимости от типа эмуляции, вы можете получить неожиданные значения:
# cat /sys/class/net/ens18/speed-1В данном случае
-1 - это отсутствие какого-либо значения, нет данных. Это характерно для виртуальных машин в KVM. Virtio-драйвер не сообщает реальную физическую скорость (у него её просто нет) даже если он в бридже с реальной сетевой картой. А вот драйвер в Hyper-V сообщает:# cat /sys/class/net/eth0/speed1000Это скорость сетевой карты, которая в бридже с виртуальным коммутатором для виртуальных машин.
☝️Кстати, если хотите быстро узнать, в виртуалке вы или на железе, запустите:
# hostnamectlЯ всегда использую эту команду для таких задач.
Помимо скорости интерфейса, ядро может передать всю остальную информацию. Например, наличие линка, параметры дуплекса, mtu или mac адрес:
# cat /sys/class/net/enp4s0/carrier1# cat /sys/class/net/enp4s0/duplexfull# cat /sys/class/net/enp4s0/mtu1500# cat /sys/class/net/enp4s0/address00:25:22:dc:39:42Можете зайти в директорию
/sys/class/net/enp4s0/ и посмотреть всё, что там есть.Таким образом можно посмотреть всё, что угодно из того, что показывают системные утилиты. Просто некоторые значения нужно преобразовывать. Например, открытые TCP порты:
# cat /proc/net/tcpНомера портов будут в шестнадцатеричном формате. Подобным образом у ядра можно выведать массу информации. Примерно этим и занимаются многочисленные клоны *top-ов и им подобных утилит. Вы и сами что-то подобное можете написать под свои задачи относительно просто, особенно с помощью ИИ.
#linux #terminal
👍102👎2
Я давно и активно использую виртуальные машины с Linux в подсистеме WSL в Windows. Точнее одну конкретную виртуальную машину с Ubuntu. Она у меня давно установлена ещё версии 22.04. В системе она так и отображается - Ubuntu-22.04.
Внутри она давно обновилась до Ubuntu 24.04 LTS и мне не нравится, что теперь версия в названии не соответствует действительности. Всё руки не доходили исправить это. А тут подвернулся случай, потому что решил поставить ещё одну систему с Debian и заодно навести в целом порядок с WSL.
Я решил, во-первых, переименовать Ubuntu. А во-вторых, перенести все WSL системы для удобства в одну директорию. По умолчанию Убунта живёт вот тут:
Задумал перенести её и остальные виртуалки в
Смотрим список систем в терминале PowerShell:
У меня она пока одна. Останавливаем:
Делаем экспорт и потом сразу импорт:
Назвал систему просто Ubuntu, чтобы не менять постоянно версии. Она у меня только одна будет. Смотрю список систем:
Делаю новую системой по умолчанию:
После этого зашёл в настройки стандартного Терминала Windows, убедился, что появился профиль для Ubuntu. На всякий случай проверил настройки, чтобы они совпадали с прошлым профилем. Я особо стандартный не менял, на вид там всё так же.
После этого зашёл в новый профиль и, соответственно, в перенесённую систему. Убедился, что с ней всё в порядке. Там единственный момент возник, что система почему-то сразу под пользователем root стартует, хотя в исходную я заходил всегда под обычным пользователем. Исправил это так. Создал файл
После этого новый профиль открывался под моим пользователем. Убедившись, что импортированная система нормально работает, старую удалил:
Образ старого диска автоматически удалился, а новый остался в
Теперь пришло время поставить ещё одну систему. Смотрю список доступных из магазина:
Вижу образ с Debian. Его и буду ставить. К сожалению, я не понял, как мне сразу указать директорию, куда я буду его устанавливать. Поэтому сначала просто установил:
А потом так же через экспорт/импрот перенёс в нужную директорию.
Для удобства я назначаю системе в WSL и основному хосту дополнительные статические IP адреса на виртуальном коммутаторе. Подробно об этом рассказывал отдельно. Задачу я решил костылём, а если хотите красиво и удобно, то лучше сделать вот так. Но лично мне такой режим не очень нравится. Мне больше подходит изолированная сеть у Linux, чтобы она не пересекалась с основной системой.
Ещё материалы по теме:
▪️Запуск графических приложений Linux в основной системе
▪️SSH туннели через WSL
▪️Проброс портов в WSL
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows #wsl
Внутри она давно обновилась до Ubuntu 24.04 LTS и мне не нравится, что теперь версия в названии не соответствует действительности. Всё руки не доходили исправить это. А тут подвернулся случай, потому что решил поставить ещё одну систему с Debian и заодно навести в целом порядок с WSL.
Я решил, во-первых, переименовать Ubuntu. А во-вторых, перенести все WSL системы для удобства в одну директорию. По умолчанию Убунта живёт вот тут:
C:\Users\User\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdxЗадумал перенести её и остальные виртуалки в
C:\Users\User\Documents\WSL. Для переименования и одновременного переноса проще всего воспользоваться процедурой экспорт/импорт. Смотрим список систем в терминале PowerShell:
> wsl -l -v NAME STATE VERSION* Ubuntu-22.04 Running 2У меня она пока одна. Останавливаем:
> wsl --shutdownДелаем экспорт и потом сразу импорт:
> wsl --export Ubuntu-22.04 C:\Users\User\Documents\WSL\ubuntu24.tar> wsl --import Ubuntu C:\Users\User\Documents\WSL\Ubuntu C:\Users\Zerox\Documents\WSL\ubuntu24.tar --version 2Назвал систему просто Ubuntu, чтобы не менять постоянно версии. Она у меня только одна будет. Смотрю список систем:
> wsl -l -v NAME STATE VERSIONUbuntu Stopped 2* Ubuntu-22.04 Stopped 2Делаю новую системой по умолчанию:
> wsl --set-default UbuntuПосле этого зашёл в настройки стандартного Терминала Windows, убедился, что появился профиль для Ubuntu. На всякий случай проверил настройки, чтобы они совпадали с прошлым профилем. Я особо стандартный не менял, на вид там всё так же.
После этого зашёл в новый профиль и, соответственно, в перенесённую систему. Убедился, что с ней всё в порядке. Там единственный момент возник, что система почему-то сразу под пользователем root стартует, хотя в исходную я заходил всегда под обычным пользователем. Исправил это так. Создал файл
/etc/wsl.conf и добавил туда:[user]default=zeroxПосле этого новый профиль открывался под моим пользователем. Убедившись, что импортированная система нормально работает, старую удалил:
> wsl --unregister Ubuntu-22.04Образ старого диска автоматически удалился, а новый остался в
C:\Users\Zerox\Documents\WSL\Ubuntu, куда я его импортировал.Теперь пришло время поставить ещё одну систему. Смотрю список доступных из магазина:
> wsl -l -oВижу образ с Debian. Его и буду ставить. К сожалению, я не понял, как мне сразу указать директорию, куда я буду его устанавливать. Поэтому сначала просто установил:
> wsl --install -d DebianА потом так же через экспорт/импрот перенёс в нужную директорию.
Для удобства я назначаю системе в WSL и основному хосту дополнительные статические IP адреса на виртуальном коммутаторе. Подробно об этом рассказывал отдельно. Задачу я решил костылём, а если хотите красиво и удобно, то лучше сделать вот так. Но лично мне такой режим не очень нравится. Мне больше подходит изолированная сеть у Linux, чтобы она не пересекалась с основной системой.
Ещё материалы по теме:
▪️Запуск графических приложений Linux в основной системе
▪️SSH туннели через WSL
▪️Проброс портов в WSL
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows #wsl
👍150👎3
Проработал вчера вопрос обновления Debian 12 до свежего релиза 13 Trixie. Предстоит много раз проделать эту процедуру, поэтому решил сам внимательно прочитать документацию к новому релизу и вручную выполнить обновление.
⇨ Как обновить Debian 12 до Debian 13 Trixie
Из особенностей отмечу следующее:
🔹У меня возникли проблемы совместимости с некоторыми пакетами Docker, так что рекомендую всё, что установлено не из стандартных репозиториев удалить, а после обновления вернуть, иначе в процессе могут возникнуть ошибки совместимости и зависимости пакетов.
🔹Очень сильно изменилась конфигурация imap сервера Dovecot в той версии, что приедет с новым релизом. Внимательно проверьте новую конфигурацию сервиса перед обновлением и отладьте. Иначе может случиться сюрприз. Я уже видел отзывы на эту тему.
🔹Наконец-то обновился менеджер пакетов
🔹В Debian 13 убраны утилиты
🔹Раздел
🔹Немного поменялся установщик. Я лично посмотрел на его. По описанию показалось, что он сильно поменялся. На деле не увидел изменений. Основные изменения под капотом. Внешний вид точно такой же остался. Упоминалось, что изменился алгоритм автоматической настройки разделов и точек монтирования. Заметил только, что размер раздела под swap немного по-другому выбирается. Больше никакой разницы не увидел со старым установщиков, который я знаю ещё со времён 6-й версии.
🔹Если у вас на сервере установлена MariaDB, имейте ввиду, что режим recovery запустится только с теми же бинарниками, с которыми база упала. То есть если аварийно завершите работу СУБД версии 10.11 и обновитесь до 11.8, восстановление не сработает. Поэтому перед обновлением корректно завершите работу СУБД, чтобы она остановилась без каких-либо ошибок.
🔹Если в системе используется служба systemd-sysctl, то файл /etc/sysctl.conf больше ею не поддерживается. Вместо него используется /usr/lib/sysctl.d/50-default.conf. Важное изменение. Имейте ввиду. Настройки лучше хранить в /etc/sysctl.d/*.conf.
Всё это вычитал по официальным ссылкам:
◽️What’s new in Debian 13
◽️Upgrades from Debian 12 (bookworm)
#linux #debian
⇨ Как обновить Debian 12 до Debian 13 Trixie
Из особенностей отмечу следующее:
🔹У меня возникли проблемы совместимости с некоторыми пакетами Docker, так что рекомендую всё, что установлено не из стандартных репозиториев удалить, а после обновления вернуть, иначе в процессе могут возникнуть ошибки совместимости и зависимости пакетов.
🔹Очень сильно изменилась конфигурация imap сервера Dovecot в той версии, что приедет с новым релизом. Внимательно проверьте новую конфигурацию сервиса перед обновлением и отладьте. Иначе может случиться сюрприз. Я уже видел отзывы на эту тему.
🔹Наконец-то обновился менеджер пакетов
apt и стал хоть немного, но удобнее за счёт форматирования списка пакетов и подсветки. Не понимаю, почему так долго не могли это сделать. Но даже в таком виде он выглядит хуже, чем yum или dnf даже 15 лет назад. У apt появился новый формат конфигурации. Я использовал уже его.🔹В Debian 13 убраны утилиты
last, lastb и lastlog. Вместо них можно использовать wtmpdb (пакет libpam-wtmpdb), lastlog2 (пакет libpam-lastlog2) и команду lslogins --failed.🔹Раздел
/tmp переехал в оперативную память tmpfs. Может занимать до 50% свободной памяти. Настроить поведение можно в systemd в отдельном конфигурационном файле для этого tmp.mount.🔹Немного поменялся установщик. Я лично посмотрел на его. По описанию показалось, что он сильно поменялся. На деле не увидел изменений. Основные изменения под капотом. Внешний вид точно такой же остался. Упоминалось, что изменился алгоритм автоматической настройки разделов и точек монтирования. Заметил только, что размер раздела под swap немного по-другому выбирается. Больше никакой разницы не увидел со старым установщиков, который я знаю ещё со времён 6-й версии.
🔹Если у вас на сервере установлена MariaDB, имейте ввиду, что режим recovery запустится только с теми же бинарниками, с которыми база упала. То есть если аварийно завершите работу СУБД версии 10.11 и обновитесь до 11.8, восстановление не сработает. Поэтому перед обновлением корректно завершите работу СУБД, чтобы она остановилась без каких-либо ошибок.
🔹Если в системе используется служба systemd-sysctl, то файл /etc/sysctl.conf больше ею не поддерживается. Вместо него используется /usr/lib/sysctl.d/50-default.conf. Важное изменение. Имейте ввиду. Настройки лучше хранить в /etc/sysctl.d/*.conf.
Всё это вычитал по официальным ссылкам:
◽️What’s new in Debian 13
◽️Upgrades from Debian 12 (bookworm)
#linux #debian
Server Admin
Обновление Debian 12 до 13 Trixie | serveradmin.ru
Пошаговая инструкция с разбором нюансов обновления и возможных ошибок при обновлении Debian 12 до 13-й версии.
1👍162👎2
⇨ Пульс вашего сервера. Мониторинг Proxmox - Pulse
Первый раз услышал про этот мониторинг для Proxmox VE. Раньше и не видел, и не слышал. На вид понравилось. Думаю, что сам попробую и напишу заметку.
⇨ Kernel TLS в Angie: ускорение или деградация?
Полезный обзор технологии Kernel TLS, которая реализует шифрование трафика сразу в ядре. В общем случае это обеспечивает прирост в обработке шифрованного трафика. Но как это обычно бывает, везде есть нюансы. Есть такие конфигурации, когда производительность катастрофически падает. Связано это с тем, что иногда трафик может ходить из ядра в user space и обратно. В видео приведён такой пример.
⇨ Сделал тихий серверный шкаф. Можно ли ставить энтерпрайз сервер в квартире? Строю HOMELAB 2
Интересно было посмотреть, как автор покупал, собирал и обесшумливал серверный шкаф, который поставил рядом со своим рабочим место. Мне тоже такой нужно, уже даже подбирал себе на Авито, но так ничего не выбрал. Хорошие шкафы новые дорого стоят, а б.у. покупать не очень удобно, особенно после того, как я уехал из Москвы. Если кто-то продаёт или знает, где купить хорошие шкафы, поделитесь информацией.
⇨ Paperless AI - управление документами с помощью AI (LLM). Paperless NGX + AI + Ollama
Практический пример по объединению системы для хранения документов Paperless NGX в связке с ИИ. Вся связка работает в режиме self-hosted на своём железе. На видео пошаговая инструкция по настройке всех компонентов. В конце есть пример с демонстрацией работы.
⇨ Установка и настройка ZITADEL | Полный гайд по self-hosted IAM
Обзор одной из платформ для аутентификации и управления доступом Zitadel, аналог Authentik, Keycloak и т.д.
⇨ Self-hosted automation for EVERYTHING! // n8n Tutorial
Очередной разбор автоматизации с помощью платформы n8n. В данном видео в основном обзор продукта: установка, основные возможности, из чего состоит и как пользоваться. В конце автор привёл пример публикации заметки из Notion в социальные сети.
⇨ Практика по сокетам | Компьютерные сети 2025 - 37
⇨ Протоколы, интерфейсы и сервисы | Компьютерные сети 2025 - 38
⇨ Защищенные сетевые протоколы | Компьютерные сети 2025 - 39
Очередные уроки хорошего бесплатного курса по компьютерным сетям. Все предыдущие уроки текущего курса обновились в 2025 году.
⇨ Proxmox 9 + Terraform — Автоматическая Установка Виртуальных Машин | Полный Гайд
Практический пример работы с Terraform в Proxmox для создания VM.
⇨ Proxmox Backup Server: A Game Changer for HomeLabs!
Обзор PBS. Будет интересно только тем, кто не знаком с этим продуктом. Автор предлагает его устанавливать в LXC контейнер, что для меня было непривычно. Я его ставлю прямо на хост с VE. Минусов не увидел, а пользоваться удобно, так как можно тут же развернуть и проверить бэкапы.
⇨ DKT83 - DevOps Mock Interview #4 (Junior/Middle DevOps Engineer)
Интересное интервью бывшего разработчика, который решил стать DevOps. Там всю базу обсудили этой профессии. Можно послушать где-то на прогулке или в машине. Смотреть не обязательно.
#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ПУЛЬС ВАШЕГО СЕРВЕРА. МОНИТОРИНГ PROXMOX - PULSE
💳 Поддержи проект:
✔️ Boosty → https://boosty.to/liagen/donate
✔️ T-BANK card 💳 → 5536 9139 8127 7276
🧑💻 ссылки на все ресурсы:
✔️ Сайт 🌐 → https://www.samohosting.ru/
✔️ Форум 🗨️ → https://forum.samohosting.ru/
✔️ Телеграм 📰 → https://xn--r1a.website/samohosting…
✔️ Boosty → https://boosty.to/liagen/donate
✔️ T-BANK card 💳 → 5536 9139 8127 7276
🧑💻 ссылки на все ресурсы:
✔️ Сайт 🌐 → https://www.samohosting.ru/
✔️ Форум 🗨️ → https://forum.samohosting.ru/
✔️ Телеграм 📰 → https://xn--r1a.website/samohosting…
👍58👎1
Решил выделить в отдельную публикацию свежий цикл из трёх видео про настройку виртуализации на базе Proxmox для малого и среднего бизнеса. Автор построит IT инфраструктуру с нуля на голом железе. Всё это будет сделано на базе реальных примеров с настройкой сети, VPN, файрвола, удалённого доступа в инфраструктуру и т.д.
Получился хороший, информативный цикл (ещё не закончен), который будет интересен в основном новичкам, потому что даётся база. Из интересного, автор рассматривает разные способы организации доступа в интернет для виртуальных машин.
1. Каждая виртуалка имеет свой внешний IP.
2. В качестве шлюза выступает сам гипервизор.
3. В качестве шлюза использует Mikrotik CHR в отдельной виртуальной машине.
Я тоже в разных ситуациях могу использовать один из этих способов. Это в 3-м видео разбирается. Причём с практическим примером от Hetzner, но похожая схема бывает и у других провайдеров.
▶️ Обзор построения IT-инфраструктуры на базе Proxmox (Debian, Mikrotik CHR, VPN, VM, AD, RDP) [Видео0]
▶️ Установка Proxmox на Hetzner + базовая защита (Debian 12, SSH, Fail2Ban, Firewall, Nmap) [Видео1]
▶️ Организация интернета для ВМ в Proxmox (PROXMOX, Bridge, NAT, MikroTik CHR, vmbr0/vmbr1) [Видео2]
В целом ничего особенного лично для меня, но мне импонирует такой формат, когда показывают на примере реального хостинга, а не искусственной лабы.
Очень хочется написать такой же цикл в тексте на примере реального хостера, например, Selectel. У меня там куча бонусных средств для этого есть. Не хватает только одного - времени. Такие статьи писать очень времязатратно. Но, думаю, получится рано или поздно.
У меня есть большая статья про настройку Proxmox, но она устарела. Хотя принципиально ничего не поменялось, но всё равно надо освежить. Я там в том числе рассказываю про реальный пример настройки доступа в интернет виртуальных машин с использованием шлюза на одной из них с пробросом в него внешнего IP. Прям с одного из рабочих серверов взял пример и описал.
#обучение #proxmox
Получился хороший, информативный цикл (ещё не закончен), который будет интересен в основном новичкам, потому что даётся база. Из интересного, автор рассматривает разные способы организации доступа в интернет для виртуальных машин.
1. Каждая виртуалка имеет свой внешний IP.
2. В качестве шлюза выступает сам гипервизор.
3. В качестве шлюза использует Mikrotik CHR в отдельной виртуальной машине.
Я тоже в разных ситуациях могу использовать один из этих способов. Это в 3-м видео разбирается. Причём с практическим примером от Hetzner, но похожая схема бывает и у других провайдеров.
В целом ничего особенного лично для меня, но мне импонирует такой формат, когда показывают на примере реального хостинга, а не искусственной лабы.
Очень хочется написать такой же цикл в тексте на примере реального хостера, например, Selectel. У меня там куча бонусных средств для этого есть. Не хватает только одного - времени. Такие статьи писать очень времязатратно. Но, думаю, получится рано или поздно.
У меня есть большая статья про настройку Proxmox, но она устарела. Хотя принципиально ничего не поменялось, но всё равно надо освежить. Я там в том числе рассказываю про реальный пример настройки доступа в интернет виртуальных машин с использованием шлюза на одной из них с пробросом в него внешнего IP. Прям с одного из рабочих серверов взял пример и описал.
#обучение #proxmox
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Обзор построения IT-инфраструктуры на базе Proxmox (Debian, Mikrotik CHR, VPN, VM, AD, RDP) [Видео0]
0:00 Приветствие
0:42 Proxmox Server
0:58 Интернет для виртуалок
2:42 Mikrotik CHR
3:56 Установка виртуалок
4:38 Mikrotik VPN
5:41 Microsoft AD
7:51 Итог
Хочешь обсудить тему или задать вопрос лично?
Залетай в чат :
https://xn--r1a.website/sudo_hub
Это вводное видео…
0:42 Proxmox Server
0:58 Интернет для виртуалок
2:42 Mikrotik CHR
3:56 Установка виртуалок
4:38 Mikrotik VPN
5:41 Microsoft AD
7:51 Итог
Хочешь обсудить тему или задать вопрос лично?
Залетай в чат :
https://xn--r1a.website/sudo_hub
Это вводное видео…
6👍156👎2
Дорогие читатели, отличных вам выходных. С радостью (НЕТ) хочу сообщить, что я открыл свой канал в MAX.
Думаю, не надо объяснять, что вести ещё одну соц. сеть мне не очень хочется, при том, что текущая полностью устраивает, но обстоятельства вынуждают. Так что кому удобно читать меня там, могут это делать уже сейчас. Там будут копии публикаций отсюда.
⇨ https://max.ru/srv_admin
Думаю, не надо объяснять, что вести ещё одну соц. сеть мне не очень хочется, при том, что текущая полностью устраивает, но обстоятельства вынуждают. Так что кому удобно читать меня там, могут это делать уже сейчас. Там будут копии публикаций отсюда.
⇨ https://max.ru/srv_admin
6👎270👍97
В новом релизе Debian 13 обновился пакетный менеджер apt до версии 3.0, которая вышла в апреле 2025 года. В прошлом релизе apt был версии 2.6. От пакетного менеджера нужно обычно немного - установить пакет и зависимости. Основное, на что обращаешь внимание - интерфейс. И вот тут у apt всегда было всё как-то не очень.
Это не очень и попытались исправить. Стало лучше, но всё равно не так информативно, как в том же
Ну да ладно, что есть то есть. Посмотрел повнимательнее на новый apt, так как теперь постоянно с ним работать придётся. Вот основные изменения по сравнению с прошлой версией.
1️⃣ Как я уже сказал - внешний вид. Более наглядно выделены пакеты и зависимости. Плюс, по умолчанию появилась подсветка. Ею, если что, можно управлять через параметры. Не знаю, кому это может понадобиться. Я точно заниматься подобной настройкой не буду.
2️⃣ Теперь вывод apt, который не умещается в один экран терминала, например, при
Для ручного просмотра это удобно, но теперь не понятно, как грепать вывод. Надо отключать новый pager. Но не хочется лезть в настройки для этого. Можно сделать так:
Такой формат трудно запомнить. Нужно будет постоянно в шпаргалку лазить, что неудобно. В общем, нововведение так себе.
3️⃣ Появилась поддержка формата DEB822 для описания репозиториев. Вместо файла
Эта команда забэкапит файл
Мне новый формат понравился больше. Лучше воспринимается на глаз за счёт того, что запись репозитория разбита на строки с заголовками. Плюс, через
4️⃣ Появился новый движок поиска зависимостей. Не знаю, для чего он был сделан и какие проблемы решил. Я не сталкивался с какими-то проблемами в зависимостях из-за apt.
Ещё ряд не таких заметных в эксплуатации изменений:
- появились несжатые индексы, традиционно их сжимают gzip или xz, теперь будут и несжатые
- переработали механизм autoremove, но я не увидел сам и не нашёл нигде примеров, что конкретно изменилось
- прекращено использование утилиты apt-key и общего хранилища ключей, но это не сказать, что что-то новое, от неё уже давно отказываются в пользу отдельного ключа для каждого репозитория
- вместо gnutls и gcrypt для шифрования теперь используется openssl
В завершении несколько полезных ключей для apt.
Посмотреть версии устанавливаемых пакетов:
Пакеты, установленные не из системных репозиториев:
Список установленных пакетов с версиями и репозиториями, откуда они были установлены:
То же самое, только чтобы можно было грепнуть неродные репы:
———
ServerAdmin:📱 Telegram | 🌐 Сайт | 📲 MAX
#linux #debian
Это не очень и попытались исправить. Стало лучше, но всё равно не так информативно, как в том же
dnf. Сравнение можно посмотреть на картинке внизу. Не знаю, в чём сложность повторить примерно так же. У dnf и репозиторий сразу видно, и версию пакета, и отформатировано аккуратнее. У apt стало лучше, чем было, когда все пакеты простынёй вываливали. Частично это можно было исправить дополнительными ключами, но всё равно не так наглядно было, как у dnf. Ну да ладно, что есть то есть. Посмотрел повнимательнее на новый apt, так как теперь постоянно с ним работать придётся. Вот основные изменения по сравнению с прошлой версией.
apt search, не вываливается весь в него, а выводится построчно, как при использовании less. Соответственно, работают все горячие клавиши от less. Я чаще всего использую Shif-g - переместиться в конец списка, / - включить поиск. Подробнее про less писал отдельно.Для ручного просмотра это удобно, но теперь не понятно, как грепать вывод. Надо отключать новый pager. Но не хочется лезть в настройки для этого. Можно сделать так:
# apt -o APT::Pager= list | grep zabbixТакой формат трудно запомнить. Нужно будет постоянно в шпаргалку лазить, что неудобно. В общем, нововведение так себе.
sources.list можно описывать репозитории в sources.list.d/*.sources. Текущий sources.list преобразовать в новый формат можно так:# apt modernize-sourcesЭта команда забэкапит файл
sources.list и создаст вместо него sources.list.d/debian.sources. Так же новый apt поддерживает использование Debian APT CDN. Можно указать в качестве источника пакетов deb.debian.org, а реальный сервер для загрузки будет выбран автоматически на основании не знаю чего. Не нашёл информации на этот счёт.Мне новый формат понравился больше. Лучше воспринимается на глаз за счёт того, что запись репозитория разбита на строки с заголовками. Плюс, через
Enabled: no можно отключать репозиторий. Это более аккуратно выглядит, чем комментирование строк с репозиториями.Ещё ряд не таких заметных в эксплуатации изменений:
- появились несжатые индексы, традиционно их сжимают gzip или xz, теперь будут и несжатые
- переработали механизм autoremove, но я не увидел сам и не нашёл нигде примеров, что конкретно изменилось
- прекращено использование утилиты apt-key и общего хранилища ключей, но это не сказать, что что-то новое, от неё уже давно отказываются в пользу отдельного ключа для каждого репозитория
- вместо gnutls и gcrypt для шифрования теперь используется openssl
В завершении несколько полезных ключей для apt.
Посмотреть версии устанавливаемых пакетов:
# apt -V install mcПакеты, установленные не из системных репозиториев:
# apt list '?narrow(?installed, ?not(?origin(Debian)))'Список установленных пакетов с версиями и репозиториями, откуда они были установлены:
# apt -o APT::Pager= list --installed -a | grep -v stableТо же самое, только чтобы можно было грепнуть неродные репы:
# apt -o APT::Pager= list -a --installed | grep -v stable | grep -v '^$'———
ServerAdmin:
#linux #debian
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍106👎2
На днях зашёл в свежеустановленную из шаблона систему Rocky Linux 9 и с удивлением увидел неработающую. команду:
Первый раз с таким столкнулся. Почему-то был уверен, что это либо системная утилита, либо часть оболочки bash. Не припоминаю, чтобы я отдельно её ставил.
Эта команда полностью очищает терминал и возвращает курсор на самую первую строку. Я постоянно её использую в процессе работы в консоли. Регулярно по привычке набираю её в терминале Windows и расстраиваюсь, что она не работает. Начинаю вспоминать, как она выглядит в винде. Даю подсказку -
Оказывается, эта утилита живёт в пакете ncurses. В Debian и Ubuntu никогда этот пакет не ставил. Утилита clear там была во всех редакциях и шаблонах, с которыми мне приходилось работать. А вот в Rocky пришлось поставить:
Так что если не знали, про clear, то рекомендую посмотреть и пользоваться. Удобная утилита. Ну а если потеряли, то знайте, что живёт она в отдельном пакете.
———
ServerAdmin:📱 Telegram | 🌐 Сайт | 📲 MAX
#linux #terminal
# clear-bash: clear: command not foundПервый раз с таким столкнулся. Почему-то был уверен, что это либо системная утилита, либо часть оболочки bash. Не припоминаю, чтобы я отдельно её ставил.
Эта команда полностью очищает терминал и возвращает курсор на самую первую строку. Я постоянно её использую в процессе работы в консоли. Регулярно по привычке набираю её в терминале Windows и расстраиваюсь, что она не работает. Начинаю вспоминать, как она выглядит в винде. Даю подсказку -
cls. Оказывается, эта утилита живёт в пакете ncurses. В Debian и Ubuntu никогда этот пакет не ставил. Утилита clear там была во всех редакциях и шаблонах, с которыми мне приходилось работать. А вот в Rocky пришлось поставить:
# dnf install ncursesТак что если не знали, про clear, то рекомендую посмотреть и пользоваться. Удобная утилита. Ну а если потеряли, то знайте, что живёт она в отдельном пакете.
———
ServerAdmin:
#linux #terminal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101👎3