i_odmin | Unsorted

Telegram-канал i_odmin - Системный администратор

24926

Все для системного администратора. По всем вопросам @evgenycarter № 4869313359

Subscribe to a channel

Системный администратор

👋 Привет, админы!

Сегодня расскажу про один недокументированный нюанс с задачами в Планировщике Windows, с которым недавно столкнулся сам. Был у меня скрипт, который по расписанию должен запускаться от имени системной учетной записи (SYSTEM). Всё настроено правильно, вручную запускается — работает. Но вот по расписанию не срабатывает. Без ошибок, без логов, просто тишина. 🤔

🔍 После копания выяснилось: если задача запускается от SYSTEM, но в свойствах включена опция "Запускать только при входе пользователя", — она НЕ выполнится, потому что SYSTEM не входит в систему в классическом понимании.

💡 Решение:

1. Зайти в свойства задачи.
2. Переключить опцию на: "Выполнять вне зависимости от входа пользователя".
3. Обязательно включить галку "Не сохранять пароль", если используете обычную учетку (для SYSTEM это не критично).

📌 Ну и по возможности включайте логирование в задаче — пусть пишет вывод скрипта в файл, так проще отлавливать подобные "невидимые" фейлы.

💬 А у вас были странности с Task Scheduler? Может, знаете ещё тонкости, о которых стоит рассказать? Делитесь в комментариях!

👉 @win_sysadmin

Читать полностью…

Системный администратор

Подборка часто используемых команд для первоначальной настройки устройств MikroTik: имя устройства, DNS сервера, Email, время, доступы и т.д.

Установки имени устройства
/system identity set name=MyHomeMikrotik

Установка своих DNS серверов и отключение получения их по DHCP
/ip dns set servers=8.8.8.8,1.1.1.1
/ip dhcp-client set [find ] use-peer-dns=no


Настройка email клиента для работы с Yandex.Mail
Для корректной работы разрешите в настройках профиля авторизацию SMTP по обычному паролю или [рекомендуется] используйте пароли приложений (почта)
/tool e-mail
set address=smtp.yandex.ru from=example@yandex.ru password=example-pass port=587 start-tls=yes user=example@yandex.ru


Настройка синхронизации времени по NTP и MikroTik Cloud Time (Москва)
/system ntp client set enabled=yes server-dns-names=time.google.com,0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org
/system clock set time-zone-autodetect=no
/system clock set time-zone-name=Europe/Moscow
/ip cloud set update-time=yes


Изменение количества строк системного лога
/system logging action set memory memory-lines=10000

Очистка системного лога (оставляет сообщение о смене настроек лога)
/system logging action set memory memory-lines=1
/system logging action set memory memory-lines=10000


Контроль доступа с IP адресов домена
Это позволяет использовать DynamicDNS для записей своего домена, и получать доступ к устройству с IP адресов, которые будут резолвится с домена. RouterOS будет сам обновлять записи и access-list при изменении записи в домене.

Обратите внимание, в конце 2 строки с move. Это сделано для того, чтобы правило корректно двигалось на первое место при включенном fasttrack (то есть первое место), а также при отключенном (на нулевое место)

/ip firewall address-list
add address=access.example.con list=DomainIPsAccess
/ip firewall filter
add action=accept chain=input src-address-list=DomainIPsAccess comment="Allow DomainIPsAccess"
move [find comment="Allow DomainIPsAccess"] 1
move [find comment="Allow DomainIPsAccess"] 0


Отключение ненужных служб доступа (web тоже отключается, осторожно)
/ip service disable www,ftp,api,api-ssl,telnet
/ip service enable ssh,winbox
/ip service set ssh address=""
/ip service set winbox address=""


Фикс MTU (нужен редко, но метко)
/ip firewall mangle
add chain=postrouting out-interface-list=WAN protocol=tcp tcp-flags=syn,!ack action=change-mss new-mss=clamp-to-pmtu comment="MTU Fix" passthrough=yes


Заблокировать доступ к WiFi по MAC-адресу
/interface wireless access-list authentication=no mac-address=8A:EA:B7:2E:38:C1

Поместить клиента WiFi в отдельный VLAN по MAC-адресу
/interface wireless access-list
add interface=all mac-address=8A:EA:B7:2E:38:C1 vlan-id=99 vlan-mode=use-tag


Настройка пароля и безопасности WiFi на default профиль
/interface wireless security-profiles set default mode=dynamic
-keys authentication-types=wpa2-psk unicast-ciphers=aes-ccm group-ciphers=aes-ccm
wpa2-pre-shared-key=bigpassword


Включение пробросов портов SSH
/ip ssh set forwarding-enabled=both

👉 @i_odmin

Читать полностью…

Системный администратор

💪 Рекомендую качественный контент знакомого ИТ-сообщества с 15-летним стажем:

⌨️ ITKB_channel — бесплатное обучение по Windows, Linux, DevOps, Security, Network, программирование

📚 ITKB_Archive — библиотека (книги, курсы, ИТ литература)

Читать полностью…

Системный администратор

✔️ Не можете выбрать между DWH, Data Lake и Data Lakehouse?
Запутались в понятиях и хотите разобраться, какой подход лучше для вас?

На открытом вебинаре 12 мая в 20:00 МСК мы простым и понятным языком разберём эти три важнейшие архитектуры данных: от проверенных временем DWH до гибких Data Lake и современных Data Lakehouse. Узнаем преимущества, ограничения и подходящие сценарии использования каждого подхода.

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

➡️ Регистрируйтесь на вебинар и получите скидку на программу обучения «Data Engineer»:
https://vk.cc/cLFpQp

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Системный администратор

Побег от WSL или как превратить старый ноутбук в домашний сервер для хранения данных и удаленной работы

Привет! Хочу поделиться личным опытом превращения старенького ноутбука ASUS X552CL (Intel i5-5200U, 12 ГБ RAM, SSD + HDD), выпущенный 12 лет назад, в полноценный домашний сервер под Linux Ubuntu Server 24.04.5 LTS.

Получилось что-то вроде мини-датацентра на дому — он хранит файлы на жёстком диске с бэкапом в облаке, Docker-контейнеры крутит для дата-аналитики и даже имеет легковесный интерфейс XFCE, при этом есть потенциал к росту до терминала для управления умным домом. Расскажу, почему было решено отказаться от WSL на рабочем ноутбуке Huawei, как настроить удалённый доступ через xRDP (чтобы не было чёрного экрана), запустить там Docker, сборку Superset и JupyterLab с Anaconda (с разными версиями Python), прикрутить Samba-шару для домашнего использования и организовать бэкап в облачном хранилище. В этой статье будет немного технических деталей, щепотка шуток и парочка мемов с советскими плакатами.

https://habr.com/ru/articles/906742/

👉 @i_odmin

Читать полностью…

Системный администратор

Подборка хаков с grep для продвинутых


🔥 1. Поиск в архивированных логах


zgrep "CRITICAL" /var/log/syslog.3.gz


> Использует zgrep, аналог grep, работающий с .gz - архивами.



🎯 2. Поиск точного слова, а не подстроки


grep -w "main" код.c


> Найдёт main, но не domain или maintain.



🌈 3. Подсветка совпадений


grep --color=always "TODO" файл.txt


> Цветовая подсветка совпадений, особенно удобно с less -R.



🧱 4. Исключение некоторых папок при рекурсивном поиске


grep -r --exclude-dir={.git,node_modules} "token" .


> Пропускает указанные директории.



🚦 5. Только совпадения (без всей строки)


grep -oE "ID-[0-9]{4}" журнал.log


> Выдаст только совпавшие фрагменты, например: ID-1234.



🔁 6. Найти строки, идущие ПЕРЕД или ПОСЛЕ совпадения


grep -A3 "panic" системный_лог.txt # 3 строки после
grep -B2 "panic" системный_лог.txt # 2 строки до
grep -C5 "panic" системный_лог.txt # 5 строк до и после




🧪 7. Поиск по нескольким шаблонам сразу


grep -E "ERROR|WARN|FATAL" журнал.log


> Или так, с отдельным шаблонным файлом:


grep -f patterns.txt журнал.log


Где patterns.txt содержит:


ERROR
WARN
FATAL




👁 8. Найти только имена файлов с совпадением


grep -rl "import numpy" .


> Удобно для массовой рефакторинга или аудита.



🧹 9. Удалить лишний мусор из grep - вывода


grep "Session" журнал.log | cut -d' ' -f2- | sort | uniq


> Например, выводим только нужные поля, убираем повторы.



⚙️ 10. Использование grep в пайплайне для live-аналитики


tail -f /var/log/nginx/access.log | grep --line-buffered "404"


> Реальное время: мониторинг 404 ошибок на веб-сервере.

👉 @i_odmin

Читать полностью…

Системный администратор

📕MySQL для администраторов, разработчиков, архитекторов и специалистов баз данных

Как грамотно оптимизировать производительность в MySQL и решить возникающие проблемы.

📗 На вебинаре 6 мая в 19:00 разберём:
1. Практические методы оптимизации производительности, диагностику нагрузки и анализ "узких мест" MySQL;
2. Оптимизацию запросов: от простых до сложных.

📘 В результате будете знать всё о настройке ключевых параметров конфигурации, уметь самостоятельно диагностировать и решать проблемы производительности MySQL.

👉 Регистрация и подробности о курсе Базы данных: https://vk.cc/cLzNwa

Все участники открытого урока получат скидку на курс

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Системный администратор

💻 Полезные команды Linux. Корректное выключение, перезагрузка и выход из системы


🔌 Выключение системы:


sudo shutdown -h now


> Немедленно завершить работу системы.


sudo shutdown -h +10 "Выключение через 10 минут"


> Запланированное выключение с сообщением.


sudo poweroff


> Альтернатива shutdown -h now, завершает работу и отключает питание.



🔄 Перезагрузка:


sudo reboot


> Стандартная перезагрузка.


sudo shutdown -r now


> Немедленная перезагрузка.


sudo systemctl reboot


> Современный способ на системах с systemd.



🚪 Выход из текущей сессии:


exit


> Завершение текущей shell-сессии (для терминала).


logout


> Выход из системы, если вы вошли через консоль.



💡 Быстрые подсказки:

* -h = halt (выключить)
* -r = reboot (перезагрузить)
* +минуты — отложенное действие
* wall — отправка сообщения всем пользователям

👉 @i_odmin

Читать полностью…

Системный администратор

В Debian (и производных, включая Ubuntu) для ускорения установки пакетов можно использовать утилиту libeatmydata, которая значительно снижает время установки за счёт отключения fsync и других дорогостоящих операций записи на диск.


📌 Что такое libeatmydata

libeatmydata — это LD_PRELOAD-библиотека, которая подменяет функции fsync(), fdatasync(), msync() и другие, превращая их в no-op (то есть они ничего не делают). Это полезно, когда производительность важнее надёжности — например, в CI, сборках образов, chroot'ах или при частой установке/удалении пакетов.


🛠 Как использовать libeatmydata

1. Установите пакет:


sudo apt install eatmydata


2. Используйте eatmydata как префикс:


sudo eatmydata apt install some-package


3. Используйте с другими командами:


sudo eatmydata dpkg -i some-package.deb
sudo eatmydata apt upgrade -y




⚙️ Пример ускорения установки


time sudo apt install -y build-essential # обычный способ
time sudo eatmydata apt install -y build-essential # ускоренный способ




🔒 Важно: когда не стоит использовать

* В продуктивной системе.
* Когда стабильность данных критична (напр. при установке базы данных).
* Если установка прерывается — есть риск повреждения пакетов.



💡 Расширенное применение

Внутри chroot / контейнеров:


chroot /mnt/debian-root eatmydata apt install -y ...


В скриптах сборки:


#!/bin/bash
export LD_PRELOAD=libeatmydata.so
apt install -y ...


Использование через debootstrap:


sudo eatmydata debootstrap bullseye /mnt/debian http://deb.debian.org/debian


👉 @i_odmin

Читать полностью…

Системный администратор

❓ 📝 Как эффективно собирать и анализировать логи в распределённых системах?

На открытом уроке «Особенности работы с Elasticsearch: централизованный сбор логов и стек ELK» мы расскажем, как настроить и использовать стек ELK для мониторинга и анализа логов. Это не просто теория — на вебинаре вы получите практические знания, которые помогут настроить систему логирования для реальных проектов.

Что разберем:
- как работает стек ELK (Elasticsearch, Logstash, Kibana) и как его настроить;
- как собирать, обрабатывать и визуализировать логи с разных сервисов;
- как использовать Elasticsearch для диагностики и анализа инцидентов.

⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.

⏰ Встречаемся 6 мая в 20:00 МСК. Участники получат скидку на программу обучения «Инфраструктура высоконагруженных систем».

👉 Для участия зарегистрируйтесь: https://vk.cc/cLtV5b

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Системный администратор

Протокол TCP

00:00 - Варианты подтверждения доставки в TCP
00:54 - Остановка и ожидание
01:19 - Скользящее окно
01:42 - Почему выгодно использовать скользящее окно
03:45 - Как работает скользящее окно
05:31 - Типы подтверждений в TCP
07:11 - Итоги

источник

👉 @i_odmin

Читать полностью…

Системный администратор

Линус Торвальдс жёстко разнёс регистронезависимые ФС

Линус Торвальдс сегодня в привычной для себя прямой и резкой манере высказался о файловых системах с поддержкой case folding (регистронезависимых файлов и папок).

Поводом послужила проблема с поддержкой case folding в Bcachefs, обнаруженная на этой неделе и уже имеющая фикс для Linux 6.15. Линус написал огромное сообщение в рассылке разработчиков Linux (LKML), изложив своё мнение о реализации case folding.

Стоит отметить, что проблема с case folding в Bcachefs — не первая для Linux: ранее уже возникали баги, связанные с обработкой эмодзи и других специальных символов Unicode.

https://habr.com/ru/articles/904564/

original https://www.phoronix.com/news/Linus-Torvalds-Anti-Case-Fold

👉 @i_odmin

Читать полностью…

Системный администратор

📈 Вебинар: новый продукт TrueConf Monitor

💬 «Почему лагает видео или звук в конференции?» — ответ есть! Во вторник 29 апреля в 11:00 мск представляем новое решение для анализа работы TrueConf Server в реальном времени.

Что умеет?

✔️ Собирать данные о конференциях и пользователях
✔️ Оперативно выявлять сбои и быстро диагностировать проблемы
✔️ Анализировать качество аудио и видео
✔️ Мониторить задержки и потери
✔️ Контролировать нагрузку на ВКС-сервер.

Больше не надо читать логи. Метрики, алерты и визуализация любых параметров в одном интерфейсе!

👤 Ведущие — руководитель отдела технической поддержки Руслан Мартьянов и директор по маркетингу Лев Якупов.

🔔 Когда: 29 апреля 2025 в 11:00 мск

🔗 Регистрация по ссылке

@trueconf

Читать полностью…

Системный администратор

📂 Как найти количество открытых файлов в Linux

🔹 Проверка общего количества открытых файлов:


lsof | wc -l

- lsof — выводит список всех открытых файлов.
- wc -l — считает количество строк (то есть файлов).


🔹 Количество открытых файлов процессом:

lsof -p <PID> | wc -l

- <PID> — ID интересующего процесса.

✅ Чтобы узнать PID процесса:

ps aux | grep <имя_процесса>



🔹 Использование /proc:

ls /proc/<PID>/fd | wc -l

- /proc/<PID>/fd — каталог с дескрипторами открытых файлов процесса.


🔹 Сводка по всему серверу через /proc:

ls /proc/*/fd 2>/dev/null | wc -l

- Показывает общее количество всех открытых файлов на сервере.


🔹 Ограничения (лимиты) на количество открытых файлов:
- Для текущей сессии:

ulimit -n

- Системные лимиты:

cat /proc/sys/fs/file-max

- Использование и максимальное значение:

cat /proc/sys/fs/file-nr

Расшифровка file-nr:
- 1-е число — открытые дескрипторы файлов,
- 2-е число — дескрипторы в очереди освобождения,
- 3-е число — максимальное количество дескрипторов.


🔹 Проверка лимитов процесса:

cat /proc/<PID>/limits | grep "open files"



⚙️ Быстрые советы:
- Если приближается к лимиту — увеличивайте значение через /etc/security/limits.conf.

👉 @i_odmin

Читать полностью…

Системный администратор

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

Команда alias позволяет всего лишь связать псевдоним с произвольной командой. Механизм псевдонимов позволяет устанавливать более короткие или привычные имена для часто используемых команд. Еще одним преимуществом данного механизма является возможность использования в составе псевдонимов аргументов команд. Впервые данный механизм был реализован в рамках командной оболочки csh, после чего он был перенесен в такие командные оболочки, как bash и другие.

Синтаксис команды для установки псевдонима зависит от используемой командной оболочки. В случае командных оболочек, основанных на Bourne shell (ksh, bash, и других, но не sh), синтаксис является следующим:

$ alias <псевдоним>=<команда>

В том случае, если при вызове команды должна осуществляться передача аргументов, следует использовать одинарные или двойные кавычки:

$ alias <псевдоним>="<команда> <аргумент> ..."

В случае же командных оболочек, основанных на csh (csh, tcsh и других), кавычки не требуются:

$ alias <псевдоним> <команда> [аргументы …]

Несложно заметить, что главное отличие в данном случае заключается в использовании знака равенства и необходимости использования кавычек. При вызове команды alias без аргументов будет выведен список объявленных в текущее время псевдонимов.

После установки псевдоним будет работать лишь в рамках текущей сессии командной оболочки. Для того, чтобы активировать этот псевдоним на постоянной основе, вам придется добавить его в один из файлов конфигурации используемой в текущее время командной оболочки. В случае командной оболочки bash псевдонимы для отдельных пользователей чаще всего размещаются в файле конфигурации ~/.bashrc, а общесистемные псевдонимы — в файле конфигурации /etc/profile. В случае командной оболочки tcsh аналогичными файлами конфигурации являются файлы ~/.tcshrc и /etc/login соответственно.

Примеры
Простой псевдоним для пользователей операционной системы DOS:

$ alias dir="ls -l"

А это пример более сложного псевдонима:

$ alias topcom='sort ~/.bash_history | uniq -ci | sort -r | less'

Данный псевдоним упрощает обращение к списку наиболее часто используемых команд и может стать шаблоном для новых псевдонимов.

А это еще один пример псевдонима для ознакомления со списком смонтированных дисковых разделов:

$ alias mnt='mount | grep -i /dev/[h]d[a..g] | sort'

Механизм функций командной оболочки может выполнять ту же работу, что и механизм псевдонимов, но он гораздо сложнее в использовании. В отличие от функций, псевдонимы не позволяют осуществлять подстановку значений переменных.

Например, даже такая простая функция, как

$ bak () { cp -a $1 $1.bak }

не может быть преобразована в псевдоним из-за использования переменной "$1".

Установка псевдонима на постоянной основе
Для установки псевдонима на постоянной основе для всех пользователей, всех командных оболочек (ksh, bash, …) и всех типов командных оболочек (использующихся и не использующихся для входа в систему) вам придется:

- модифицировать файл конфигурации /etc/profile для командных оболочек, использующихся для входа в систему
- модифицировать файл конфигурации /etc/bash_bashrc для командных оболочек, не использующихся для входа в систему

Деактивация псевдонима
Используйте команду unalias.

👉 @i_odmin

Читать полностью…

Системный администратор

🌐 OSPF или ISIS: машрутизация между зонами. Как разработать этот функционал и не ошибиться?

Понимание принципов работы маршрутизации между зонами позволяет на качественно новом уровне рассмотреть работу протоколов маршрутизации OSPF и IS-IS, работающих на основе информации о топологии сети и используемых внутри автономных систем (доменов маршрутизации).

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

На уроке:
- Рассмотрим, как реализована маршрутизация между зонами в OSPF
- Узнаем, как реализована маршрутизация между зонами в ISIS
- Реализуем на практике маршрутизацию между зонами в сети с использованием одного из современных протоколов маршрутизации

👉 Регистрация и подробности о курсе Network Engineer. Professional: https://vk.cc/cLGYNg

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Системный администратор

💡 Bash-совет дня: Мониторинг открытых портов с выводом в Telegram

Автоматизируй контроль за безопасностью своего сервера! Этот простой bash-скрипт проверяет изменения в открытых портах и шлёт уведомление в Telegram, если появились новые или исчезли старые порты.


#!/bin/bash

# Настройки
TG_TOKEN="your_bot_token"
TG_CHAT_ID="your_chat_id"
PORTS_FILE="/var/tmp/open_ports_last.txt"

# Получаем текущие открытые порты
ss -tuln | awk 'NR>1 {print $5}' | cut -d: -f2 | sort -n | uniq > /tmp/open_ports_now.txt

# Если нет предыдущего файла — создаём
if [ ! -f "$PORTS_FILE" ]; then
cp /tmp/open_ports_now.txt "$PORTS_FILE"
exit 0
fi

# Сравниваем с предыдущим состоянием
DIFF=$(diff -u "$PORTS_FILE" /tmp/open_ports_now.txt)

# Если есть изменения — шлём в Telegram
if [ -n "$DIFF" ]; then
MESSAGE="⚠️ Обнаружены изменения в открытых портах:\n\`\`\`\n$DIFF\n\`\`\`"
curl -s -X POST "https://api.telegram.org/bot$TG_TOKEN/sendMessage" \
-d chat_id="$TG_CHAT_ID" \
-d parse_mode="Markdown" \
-d text="$MESSAGE"

cp /tmp/open_ports_now.txt "$PORTS_FILE"
fi

# Уборка
rm -f /tmp/open_ports_now.txt


📌 Как использовать:

1. Замените your_bot_token и your_chat_id на свои значения.
2. Добавьте в cron, чтобы проверять, например, каждые 10 минут:


*/10 * * * * /path/to/script.sh


🔒 Будьте в курсе неожиданных открытий портов на своих серверах!

👉@bash_srv

Читать полностью…

Системный администратор

Основы компьютерной безопасности

Лекция 1. Основы криптографии
Практика 1. Криптография и её прикладные инструменты
Лекция 2. Основы сетей
Лекция 3. Основы веба
Практика 2. Основы веба
Лекция 4. Атаки на веб
Лекция 5. Безопасность беспроводных сетей Wi-Fi + воркшоп / Wireless security
Лекция 6. Прикладная криптография для самых маленьких. Менеджеры паролей, HTTPS, SSH

источник

👉 @i_odmin

Читать полностью…

Системный администратор

🎯 Основные компоненты системы на базе Linux


1️⃣ Начальный загрузчикGRUB
Запускается при старте компьютера и загружает ядро системы.

2️⃣ Ядро Linux
Сердце системы: управляет ресурсами, оборудованием и процессами.

3️⃣ Демоны (Daemons)
Фоновые службы, запускаемые при загрузке системы (например, cron, systemd).

4️⃣ Командная оболочка (Shell)
Интерфейс между пользователем и системой. Примеры: bash, zsh.

5️⃣ Утилиты командной строки
Набор инструментов для работы в терминале: ls, cp, grep, top и т.д.

6️⃣ Графический сервер
Компонент, управляющий отображением интерфейса (например, X11, Wayland).
Работает с видеокартой, мышью, монитором.

7️⃣ Среда рабочего стола
Графический интерфейс пользователя: KDE, GNOME, XFCE и др.
Включает в себя окна, панели, файловые менеджеры и пр.

8️⃣ Программы рабочего стола
Браузеры, текстовые редакторы, почтовые клиенты — всё, что делает Linux удобным для пользователя.

👉 @i_odmin

Читать полностью…

Системный администратор

Столкнулись с падением производительности базы данных?
Не делайте резких движений: вы можете ухудшить ситуацию.

Сначала нужно верно диагностировать причину проблемы.
Возможно вы неправильно выбрали индексы, а быть может дело вообще в самой архитектуре БД – вариантов масса!

На открытом вебинаре «Как ускорить работу и повысить надёжность PostgreSQL»
вы узнаете:
🎯как обеспечить высокую производительность и отказоустойчивость базы данных
🎯как вовремя выявить деградацию производительности с помощью диагностики

Вебинар проведёт Дмитрий Золотов, Kotlin-разработчик в «Яндексе».

Приглашаем технических руководителей, админов БД, девопсов и разработчиков.

Все участники получат в подарок видеоурок «Безопасность в PostgreSQL: защита данных, управление доступом и аудит» и скидку 7% на любой курс OTUS.

6 мая, 19:00 МСК
Бесплатно
Записаться - https://otus.pw/eioB/

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFJR7f84

Читать полностью…

Системный администратор

Команда grep используется в Unix/Linux для поиска строк, соответствующих регулярному выражению, в одном или нескольких файлах или потоках ввода.

Синтаксис:


grep [опции] ПАТТЕРН [ФАЙЛ...]


Примеры использования:

1. Поиск строки в файле:


grep "ошибка" журнал.txt


Ищет строки, содержащие слово "ошибка" в файле журнал.txt.

2. Игнор регистра:


grep -i "ошибка" журнал.txt


Найдёт "ошибка", "Ошибка", "ОШИБКА" и т.д.

3. Рекурсивный поиск по директории:


grep -r "TODO" ./src


Ищет слово "TODO" во всех файлах внутри каталога src.

4. Вывод только совпавших частей (без всей строки):


grep -o "http[s]\?://[^ ]\+"


Ищет URL в потоке ввода.

5. Показать номера строк:


grep -n "ошибка" журнал.txt


6. Инвертированный поиск (показать строки без совпадений):


grep -v "успешно" журнал.txt


7. Использование регулярных выражений (расширенные):


grep -E "foo|bar" файл.txt


8. Поиск с подсветкой результата:


grep --color "pattern" файл.txt


👉 @i_odmin

Читать полностью…

Системный администратор

👩‍💻 Shell скрипт для управления Linux- пользователями

Функциональные возможности

Создание пользователей
Просмотр списка существующих пользователей
Сброс пароля для существующих пользователей
Блокировка / Разблокировка пользовтеля
Просмотр всех заблокированных пользователей
Создание резервной копии домашнего каталога пользователя
Генерирование SSH ключей для пользователя
Повышение пользователя до админа и обратно
Удаление пользователя
Запись всех действий в журнал actions.log

Резервные копии
Скрипт создает каталог резервных копий в папке скрипта и создает архив tar.gz с именем, содержащим - имя пользователя и текущую дату

Генерация SSH ключа
Для генерации используется ssh-keygen, в результате будут отображены сведения о том, куда был сохранен ключ и отображено содержимое публичного ключа:

https://github.com/m0zgen/user-manager

👉 @i_odmin

Читать полностью…

Системный администратор

📕Архитектура программного обеспечения в 1C для для разработчиков 1C, системных и бизнес-аналитиков и руководителей в IT

Как проработка архитектуры может превратить один и тот же проект из неповоротливой конструкции в элегантное и эффективное решение.

📗 На вебинаре 5 мая в 20:00 разберём:
1. Различные архитектурные стили решений, в том числе – на платформе 1С:Предприятие;
2. Ключевые факторы при проектировании оптимальной архитектуры.

📘 В результате будете знать всё о работе с арихитектурой ПО и сможете грамотно оптимизировать работу с ней в проектах.

👉 Регистрация и подробности о курсе Функциональный архитектор 1С: https://vk.cc/cLxSix

Все участники открытого урока получат скидку на курс

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Системный администратор

Софт для VDS-сервера, на который стоит обратить внимание новичкам

Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.

https://habr.com/ru/companies/ruvds/articles/902596/

👉 @i_odmin

Читать полностью…

Системный администратор

Для защиты своего сервера я использую zip-бомбы

Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM.
Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.

https://habr.com/ru/articles/905776/

👉 @i_odmin

Читать полностью…

Системный администратор

🐧 Структура директорий Linux

👉 @i_odmin

Читать полностью…

Системный администратор

🖇 Символические и Жёсткие ссылки в Linux


Что такое ссылки?

- Жёсткая ссылка — второе имя файла, напрямую ссылается на данные (inode).
- Символическая ссылка — отдельный файл, который указывает на путь к другому файлу или папке.


Жёсткие ссылки 📂

✅ Указывают на inode
✅ Работают только в рамках одного раздела
✅ Оригинал можно удалить — ссылка останется рабочей
⛔ Нельзя создать на папку

Создание:


ln файл ссылка



Символические ссылки 🔗

✅ Указывают на путь к файлу/папке
✅ Можно создавать на разных разделах
⛔ Если оригинал удалён — ссылка ломается
✅ Можно создавать на директории

Создание:

ln -s файл ссылка



Как отличить ссылки?

- ls -l — символьная ссылка отображается как:
👉 имя -> путь
- Жёсткая ссылка никак не выделяется — это "обычный" файл.


Полезные команды 🛠

🔹 Посмотреть inode и количество жёстких ссылок:

ls -li файл


🔹 Узнать путь у символической ссылки:

readlink ссылка


🔹 Найти все файлы с одним inode:

find / -inum НОМЕР



Быстрое сравнение ⚡

Жёсткая ссылка:
- Прямая связь с данными
- Ограничение на файловую систему
- Данные живут до последней ссылки

Символическая ссылка:
- Указатель на путь
- Свободно между разделами
- При удалении оригинала — ссылка битая

👉 @i_odmin

Читать полностью…

Системный администратор

😱 Хотите научиться настраивать кластер Elasticsearch с нуля? Задача кажется сложной?

⏰ На вебинаре 29 апреля в 20:00 мск мы разберём архитектуру Elasticsearch: шарды, реплики и их роль в распределении данных. Узнайте, как правильно настраивать конфигурацию кластера для устойчивой работы и добавлять новые ноды без простоев.

⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.

Мы покажем, как обеспечить отказоустойчивость и надежность хранения данных, а также как масштабировать кластер, добавляя новые ноды.

Участники вебинара получат скидку на курс "Инфраструктура высоконагруженных систем"

👉 Для участия зарегистрируйтесь: https://vk.cc/cLdTeu

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Системный администратор

📕Открытый урок о функционале блока подсистемы кадровый учет в 1C ERP для разработчиков 1C, консультантов 1C, аналитиков и функциональных архитекторов.

На открытом уроке 29 апреля в 20:00 мск мы погрузимся в основные настройки, а также возможности подсистемы кадровый учет в 1C ERP.

📗 В результате вы:
- Узнаете, как реализован блок кадрового учета и расчета зарплаты в 1С ERP;
- Разберетесь, какие настройки необходимо включить в 1С ERP для корректного ведения учета;
- Освоите на практике работу с подсистемой и её возможности для различных кейсов и задач.

Спикер Юлия Курзова — опытный аналитик 1C, 10+ лет в сфере работы с 1C, сертифицированный преподаватель 1C, отвечает за внедрение 1С:ERP, 1С: КА, 1С:ERPУХ на крупных проектах.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cLd0Bv

📙 Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Системный администратор

🚀 Подборка Telegram каналов для программистов

Системное администрирование, DevOps 📌

/channel/bash_srv Bash Советы
/channel/win_sysadmin Системный Администратор Windows
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
/channel/linux_odmin Linux: Системный администратор
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux

1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
/channel/DevLab1C 1С:Предприятие 8
/channel/razrab_1C 1C Разработчик
/channel/buh1C_prog 1C Программист | Бухгалтерия и Учёт
/channel/rabota1C_rus Вакансии для программистов 1С

Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
/channel/pythonofff Python академия.
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python

Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах

GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
/channel/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
/channel/game_devv Все о разработке игр

Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов

БигДата, машинное обучение 📌
/channel/bigdata_1 Big Data, Machine Learning

Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
/channel/lifeproger Жизнь программиста. Авторский канал.

QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика

Шутки программистов 📌
/channel/itumor Шутки программистов

Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_2 Хакер Free

Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров

Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
/channel/matgeoru Математика | Геометрия | Логика

Excel лайфхак📌
/channel/Excel_lifehack

/channel/mir_teh Мир технологий (Technology World)

Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT

Читать полностью…
Subscribe to a channel