Все для системного администратора. По всем вопросам @evgenycarter № 4869313359
Гениально 😀
Подписывайтесь на канал 👉@tipsysdmin
💡 Совет дня по Linux
Используй расширение фигурных скобок с mkdir -p
, чтобы создавать сразу несколько вложенных директорий одним махом!
Вот такая однострочная команда:
$ mkdir -p projects/{frontend,backend}/{src,test,docs}
projects/frontend/src
projects/frontend/test
projects/frontend/docs
projects/backend/src
projects/backend/test
projects/backend/docs
Вселенная дистрибутивов Linux: От Ubuntu до Arch, от Mint до Fedora – подробный гид по выбору
Экосистема дистрибутивов Linux разнообразна и предлагает множество вариантов с разными особенностями. Выбор зависит от целей, уровня подготовки, оборудования и предпочтений пользователя. Этот обзор поможет подойти к выбору осознанно и углубиться в изучение Linux. Обмен опытом в сообществе способствует общему росту знаний.
https://habr.com/ru/articles/908986/
👉 @i_odmin
Как работает трансляция сетевых адресов (NAT)
👉 @i_odmin
🚀 Открой для себя идеальный путь к лидерству с карьерным тестом от ОЭЗ «Алабуга»! 🌟
Мечтаете о карьере в крупной компании, где ваш потенциал раскроется на полную? Наш тест поможет вам определить вашу уникальную лидерскую роль. Может быть, именно вы станете тем лидером, который выведет команду на новый уровень?
После прохождения теста вы можете заполнить заявку и получить приглашение на эксклюзивную лидерскую программу. Участие в программе открывает реальные перспективы трудоустройства в ОЭЗ «Алабуга», предоставляя шанс начать путь к профессиональному признанию.
Сделайте первый шаг к своему будущему сегодня! Пройдите тест, подайте заявку и начните строить свою карьеру вместе с нами. 🎯
🧠 Bash совет дня — Отслеживаем подозрительные sudo-команды в реальном времени 🕵️
Хочешь знать, кто и что запускает через sudo
прямо сейчас? Настроим простой мониторинг:
#!/bin/bash
logfile="/var/log/auth.log"
tail -F "$logfile" | grep --line-buffered "sudo" | while read line; do
echo "[ALERT] 🔐 $(date): $line"
done
/var/log/auth.log
в реальном времени.sudo
.
[ALERT] 🔐 2025-05-15 10:23:42: user1 : TTY=pts/0 ; PWD=/home/user1 ; USER=root ; COMMAND=/bin/bash
🖥 KVM: Управление виртуальными машинами из консоли (шпаргалка)
🔧 1. Проверка поддержки виртуализации:
egrep -c '(vmx|svm)' /proc/cpuinfo
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
sudo yum install qemu-kvm libvirt virt-install bridge-utils virt-manager
sudo systemctl enable --now libvirtd
sudo systemctl status libvirtd
virsh list --all
virsh start <vm_name>
virsh shutdown <vm_name>
virsh destroy <vm_name>
virsh autostart <vm_name>
virsh undefine <vm_name>
virsh snapshot-create-as <vm_name> <snapshot_name>
virsh snapshot-revert <vm_name> <snapshot_name>
virsh console <vm_name>
virt-install \
--name vm1 \
--ram 2048 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/vm1.qcow2,size=20 \
--os-type=linux \
--os-variant=ubuntu20.04 \
--network network=default \
--graphics none \
--console pty,target_type=serial \
--location /iso/ubuntu-20.04.iso \
--extra-args 'console=ttyS0'
qemu-img create -f qcow2 /var/lib/libvirt/images/vm1.qcow2 20G
qemu-img info /path/to/image.qcow2
virsh net-list --all
/etc/netplan/*.yaml
или /etc/network/interfaces
(в зависимости от дистрибутива).
netplan apply
/var/lib/libvirt/images/
или /iso/
virsh pool-list
virsh vol-list default
virt-top
для мониторинга ВМ в реальном времени.virt-clone
для клонирования ВМ.virsh dumpxml
и virsh edit
для тонкой настройки конфигурации ВМ.🌐 MPLS и корпоративные сети: невостребованные опции или жизненно необходимый функционал?
Понимание основ технологий MPLS позволяет на качественно новом уровне рассмотреть применение их в сегменте корпоративных сетей.
Также сравнение типов сервисов, предоставляемых набором технологий MPLS, позволяют выявить ограничения в использовании какого- либо иного сервиса в корпоративных сетях.
На уроке:
- Рассмотрим основы MPLS
- Узнаем, как реализуются сервисы на базе MPLS
- Реализуем на практике один из сервисов MPLS
👉 Регистрация и подробности о курсе Network Engineer. Professional https://vk.cc/cLVEwC
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Как упростить хранение логов и работу с данными?
В помощь отделу ИБ, DevOps- и SRE-инженерам, дата-аналитикам и разработчикам Selectel предлагает облако для OpenSearch.
Вы сможете создать готовый к работе кластер OpenSearch за несколько минут. Это поможет быстро найти, визуализировать и проанализировать данные, события или метрики без ограничений в масштабируемости.
Кроме производительного железа, бесперебойной работы и быстрого масштабирования в облаке Selectel для OpenSearch вы получите:
● бесплатные автоматические бекапы,
● возможность использовать диски разной производительности для холодного и горячего хранения
● Dashboard из коробки для аналитики и управления
Создайте кластер в OpenSearch за несколько кликов в Selectel по ссылке: https://slc.tl/4c9yj
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqwCvHSk
Генерируем пароль в терминале Linux
Будем использовать /dev/urandom и утилиты makepasswd, pwgen.
Используем /dev/urandom
При чтении устройство /dev/urandom возвращает бесконечный набор случайных байтов. Этот вывод можно отфильтровать с помощью утилиты tr. Затем, вывод передать команде xargs которая, по умолчанию выполняет команду echo и ей передается всё, что было прочитано из стандартного ввода. А с помощью утилиты head можно указать необходимое количество символов в пароле.
То есть сгенерировать пароль в Linux поможет следующая команда:$ tr -dc A-Za-z0-9_ < /dev/urandom | head -c 10 | xargs
AurTdatFbw
Вы можете сделать bash функцию и записать её в ваш .bashrc:$ nano .bashrc
genpasswd() {
local l=$1
[ "$l" == "" ] && l=16
tr -dc A-Za-z0-9_ < /dev/urandom | head -c ${l} | xargs
}
Затем применим изменения и попробуем сгенерировать пароль:$ . .bashrc
~$ genpasswd 5
Hbe7a
$ genpasswd 10
PDbt1tjBg0
Используем makepasswd
Утилита makepasswd может также помочь сгенерировать пароль в Linux. Она также использует /dev/urandom, чтобы создавать случайные пароли. Вы можете установить её с помощью apt:$ sudo apt install makepasswd
Просто выполните эту команду без параметров чтобы получить случайный пароль:$ makepasswd
5q6m4jMHJ
Можете указать количество символов в пароле с помощью опции chars и можете создать несколько паролей с помощью опции count:$ makepasswd --chars 4 --count 3
1d65
R5Xe
Lhes
Можно создать пароли и сразу вывести их зашифрованный хеш с помощью опции crypt-md5:$ makepasswd --chars 4 --count 3 --crypt-md5
DWBN $1$awZ5uNo/$r50RTWsihcMKEVQzoDyoZ1
xLN7 $1$h4ThtOu1$Bsmqhr/Tq/IIdGPtAVGda.
A2R2 $1$bss49Rj7$y.9nAbyr749N.eYRUF155.
Используем pwgen
Утилита pwgen генерирует легко запоминаемые пароли. Но также можешь генерировать случайные пароли. Устанавливается она также, с помощью apt:$ sudo apt install pwgen
Если выполнить её без опций, то вы увидите список из легко запоминаемых паролей:$ pwgen
Xu6Phei7 Ree2ud9e ohphah8I iiZ8Efoo foG0moh3 aSho2neL Phero4Ud thiCh9ei
uvaeChu0 eeCie5Um Wovie0do Eibuo3Ou Sai1Ovah po3OhT9j XeYei9ei eiQu2mai
....
Вы можете указать количество необходимых паролей с помощью опции -N и указать количество символов в пароле с помощью опции -n:$ pwgen -N 3 -n 5
aeCo2 Le7oy uv6Oh
Существует также опция -s чтобы создавать более сложные пароли (их сложнее запомнить и подобрать):$ pwgen -N 3 -n 5 -s
fY60V y6FIU 9XEt4
Я не заметил разницу в использовании опции -s, но в инструкции написано, что без этой опции пароль легче подобрать.
👉 @i_odmin
Введение в Linux – Полный курс для начинающих (Eng ver
)
Если вы новичок в Linux, этот курс предназначен для вас. Вы познакомитесь со многими инструментами, которые ежедневно используют как системные администраторы Linux, так и миллионы пользователей, работающих с дистрибутивами Linux, такими как Ubuntu, на своих компьютерах. Курс научит вас работать с графическим интерфейсом Linux и его мощной экосистемой командной строки.
⌨️ (0:00:00) Introduction
⌨️ (0:01:38) Chapter 1. Introduction to Linux Families
⌨️ (0:07:39) Chapter 2. Linux Philosophy and Concepts
⌨️ (0:16:37) Chapter 3. Linux Basics and System Startup
⌨️ (1:05:36) Chapter 4. Graphical Interface
⌨️ (1:34:29) Chapter 5. System Configuration from the Graphical Interface
⌨️ (2:04:27) Chapter 6. Common Applications
⌨️ (2:12:57) Chapter 7. Command Line Operations
⌨️ (3:25:50) Chapter 8. Finding Linux Documentation
⌨️ (3:36:53) Chapter 9. Processes
⌨️ (4:07:51) Chapter 10. File Operations
⌨️ (4:31:11) Chapter 11. Text Editors
⌨️ (4:49:25) Chapter 12. User Environment
⌨️ (5:13:32) Chapter 13. Manipulating Text
⌨️ (5:40:04) Chapter 14. Network Operations
источник
👉 @i_odmin
🐳❓ Хотите стать экспертом по Docker и микросервисам? Освойте ключевые навыки для разработки, упаковки и развертывания приложений с Docker-образами!
⏰ На открытом вебинаре 13 мая в 20:00 мск мы разберём, как эффективно использовать Docker для контейнеризации и автоматизации процессов развертывания микросервисов. Вы познакомитесь с принципами создания и оптимизации Docker-образов, а также с лучшими практиками DevOps и CI/CD.
Умение использовать Docker для автоматизации и управления микросервисами сделает вас более конкурентоспособным на рынке труда. Получите знания, которые востребованы в крупных компаниях.
👉 Регистрируйтесь на открытый урок и получите скидку на программу обучения «DevOps-практики и инструменты»: https://vk.cc/cLR9VN
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Что работает у Яндекса — и что можно взять себе
Многие темы на infra.conf — это взгляд изнутри на процессы Яндекса. Как устроена внутренняя инфраструктура и её части. Какие инструменты помогают держать стабильность. Как устроено взаимодействие между командами и почему инженерные решения принимаются именно так.
Будет полезно тем, кто проектирует что-то подобное у себя или просто хочет подсмотреть хорошие подходы.
Конференция состоится 5 июня в Москве, Loft Hall 8. Доступна онлайн-трансляция.
🚀 Подборка 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
Сборка MS-DOS 4.0
Совсем недавно на хабре появилась следующая новость: На GitHub опубликован исходный код MS-DOS 4.00 под лицензией MIT. Раз появились исходные коды, стало сразу интересно: а можно ли собрать эту операционную систему?
Задача оказалась нетривиальной и совсем неочевидной. Оказывается, что исходные файлы DOS не так-то уж и легко переносятся в git, и уж как минимум, не как текстовые файлы в кодировке UTF-8. Но, к счастью, в отличие от утечек исходников MS-DOS 6.0, здесь имеется полный комплект файлов и инструментов, достаточный для корректной сборки и тестирования. Остались сущие нюансы, которые попили много крови.
Поэтому я, как и многие — начал свои эксперименты по сборке MS-DOS 4.0, с исправлением ошибок, а также возможностью исследования исходных кодов и тестирования их на реальном железе.
В статье же изложено краткое руководство по сборке и созданию загрузочной дискетки.
https://habr.com/ru/companies/timeweb/articles/812003/
👉 @i_odmin
Приглашаем на вебинар с участием эксперта Александры Цветковой – эксперта из российской IT-компании, разрабатывающей ПО для информационной безопасности: «Как объяснить директору необходимость ИБ за 5 минут»
📌 21 мая | 11:00 (МСК)
Устали от возражений "Это дорого" и "Нам это не нужно"? Научитесь доносить ценность ИБ до руководства быстро и убедительно!
На вебинаре вы узнаете:
🔹 Почему ИБ — это инвестиция, а не затраты
🔹 Как перевести техугрозы в деньги — язык, который поймёт любой директор
🔹 Кейсы-победители: как компании экономят до 15 млн руб. на простых решениях
🔹 Готовые шаблоны для вашей следующей презентации
Вы сможете задать вопросы, поучаствовать в розыгрыше подарков, а также получить в подарок файл с готовыми аргументами для директора.
🖥 Успейте зарегистрироваться: https://xserver.a-real.ru/vebinars/?utm_source=iodmintg
Реклама. ООО «А-Реал Консалтинг», ИНН 7606047112, ERID: 2VtzqumdFkx
Неравнодушен к серверным и сетевым технологиям? Приходи на Selectel Infra MeetUp!
Selectel проводит мероприятие для инженеров дата-центров. Приходите, чтобы узнать о развитии технологий и оборудования в ЦОДах и получить советы по карьерному развитию.
📍23 мая, Москва (оффлайн и онлайн)
В программе:
— хардкорные лекции и практические воркшопы,
— карьерные консультации от экспертов,
— афтепати с розыгрышами призов и нетворкингом.
Посмотреть подробную программу и зарегистрироваться: https://slc.tl/1g379
Чтобы не пропустить митап и узнавать о других мероприятиях, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqvsYoAt
Хотите ускорить свою работу и максимально раскрыть потенциал VSCode в задачах Data-инженера?
⏺ 21 мая в 20:00 МСК на открытом вебинаре разберём 15 незаменимых расширений VSCode, которые повысят продуктивность инженеров данных. Узнаете, как настроить AI-ассистента Continue. dev — бесплатную альтернативу GitHub Copilot, и упростить работу с Docker, Jupyter и форматами данных прямо в VSCode.
После урока вы сможете автоматизировать рутинные задачи, сократить время на настройку окружения и получить удобный набор инструментов для анализа данных и разработки пайплайнов.
➡️ Регистрируйтесь и получите скидку на курс «Data Engineer»: https://vk.cc/cLZGZ1
🎁 Скидка на 15% на курс до 19 мая ждет вас и еще дарим дополнительный промокод DE5 до 10 июня. Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👋 Привет, админы!
Тут на хабре пишут👇
Обновление KB5058379 для Windows 10 22H2 заставляет ПК загружаться в Recovery и требовать ключ BitLocker
В середине мая Microsoft выпустила накопительное обновление безопасности KB5058379 для Windows 10 22H2 и 21H2, включая редакции LTSC/Enterprise, в рамках вторника патчей за май 2025 года. Пользователям и системным администраторам компаний с парком ПК Dell, HP или Lenovo на этих версиях ОС с новым обновлением пришлось столкнуться с перезагрузкой в Recovery и требованием ввести ключ BitLocker. Также у части пользователей начал возникать BSoD после развёртывания KB5058379.
В большинстве случаев проблема касается корпоративных клиентов, кто использует SCCM или WSUS.
Если ПК застрял на экране восстановления Windows или восстановления BitLocker («Введите ключ восстановления, чтобы снова начать») после KB5058379, нужно выполнить следующие действия:
перезагрузить ПК и зайти в BIOS/UEFI;
в настройках зайти на вкладку Security, открыть меню Virtualization или Advanced CPU Settings;
отключить опцию Intel TXT (другие название: Trusted Executio или OS Kernel DMA Support)
опцию VT for Direct I/O (или VT‑d) можно оставить включённой.
сохранить изменения и выйдите из BIOS.
Идея состоит в том, чтобы отключить Intel TXT и позволить KB5058379 завершить установку. Если правильно выполнить эти действия, то далее не будет ошибки с восстановлением BitLocker или BSOD. Примечательно, что в документе техподдержки Microsoft по‑прежнему указано, что компания не знает о каких‑либо новых проблемах с KB5058379.
https://support.microsoft.com/ru-ru/topic/13-%D0%BC%D0%B0%D1%8F-2025-%D0%B3-kb5058379-%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B8-%D0%BE%D1%81-19044-5854-%D0%B8-19045-5854-0a30e9ee-5038-45dd-a5d7-70a8813a5e39
https://www.windowslatest.com/2025/05/15/windows-10-kb5058379-locks-pcs-bitlocker-recovery-triggered-on-boot-bsods/
👉 @win_sysadmin
Hayabusa
Быстрая и мощная утилита для анализа Windows Event Log (EVTX) файлов, ориентированная на безопасность. Она использует сигнатуры MITRE ATT\&CK для выявления подозрительных действий, а также поддерживает временные шкалы событий. Основная цель — помочь в расследовании инцидентов, threat hunting и DFIR.
Основные возможности:
* ⚡ Высокая скорость анализа логов EVTX
* 🔎 Обнаружение атак по сигнатурам (YARA-L и SIGMA)
* 📅 Генерация временной шкалы событий
* 🧪 Поддержка пользовательских сигнатур
* 📊 Поддержка вывода в нескольких форматах: CSV, JSON, HTML и других
* 📁 Анализ каталогов с логами и .zip/.evtx архивов
* 🌐 Кросс-платформенность (работает на Windows, Linux и macOS)
Установка через pip:
pip install hayabusa
hayabusa -d ./logs --timeline -o results/
⏳ Хотите перестать тратить часы на рутинные задачи сборки релизов 1С и автоматизировать весь процесс одним нажатием?
⏺На открытом вебинаре 21 мая в 20:00 МСК вы узнаете, как использовать Docker, Jenkins и OneScript для автоматизации сборки релизов 1С. Разберёмся с настройкой окружения контейнера и запуском конфигурации напрямую из репозитория.
После урока вы сократите время на сборку и получите навыки для профессионального роста как DevOps-инженер 1С.
🚀 Присоединяйтесь к открытому вебинару и получите специальную скидку на курс «DevOps 1С»: https://vk.cc/cLX1z2Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🖥 Базовый курс Ubuntu
1. Основные зарезервированные папки в ubuntu linux
2. Команды ubuntu linux о системе, озу, цпу, жёсткий диск
3. Создание, удаление, изменение файлов и папок в ubuntu linux
4. Менеджер зависимостей в ubuntu linux
5. Процессы, мониторинг и остановка процессов в ubuntu
6. Systemctl start, stop, reload, status, enable в ubuntu linux
7. Пользователи. Создание, удаление пользователей в ubuntu linux
8. Sudoers, visudo, root пользователь и привилегии в ubuntu linux
9. Права и доступы в ubuntu linux
10. Общие рекомендации к ubuntu linux
источник
👉 @i_odmin
SQL за полтора часа в одном видео! Полный базовый курс по SQL. Базы данных курс для начинающих!
00:00:00 Введение
00:02:43 Платные курсы и что изучать дальше
00:04:55 Коротко об онлайн редакторе
00:07:11 Что такое база данных
00:08:10 Что такое CRUD
00:10:05 Запрос на создание первой таблицы
00:11:57 Типы данных у атрибутов(колонок) (DATA TYPES)
00:17:26 Прописываем атрибуты(колонки) первой таблицы
00:21:07 Создаем первую таблицу (CREATE TABLE)
00:21:38 Проверка на наличие таблицы при создании (IF NOT EXISTS)
00:22:18 Запрос на удаление таблицы(DROP TABLE)
00:22:33 Проверка на наличие таблицы при удалении(IF EXISTS)
00:22:57 Запрос на добавление объекта в таблицу (INSER INTO table)
00:23:35 Запрос на чтение(получение) объектов из таблицы(SELECT * FROM table)
00:24:18 Модификаторы для атрибутов(колонок) таблицы(NOT NULL, DEFAULT, UNIQUE)
00:29:26 Изменение уже существующей таблицы(ALTER TABLE, ADD, DROP, RENAME, MODIFY COLUMN)
00:36:08 Удаление объектов из таблицы(DELETE FROM table)
00:37:06 Редактирование объекта в таблице(UPDATE table)
00:39:03 Первичный ключ(PRIMARY KEY)
00:45:37 Композиция в бд
00:50:38 "Иностранный" ключ(FOREIGN KEY)
00:57:26 Индексы в бд(INDEX)
00:59:24 Готовим данные для темы алиас, юнион и слияние таблиц
01:03:30 Слияние таблиц(INNER JOIN)
01:06:02 Слияние таблиц(LEFT JOIN)
01:06:53 Слияние таблиц(RIGHT JOIN)
01:07:26 Слияние таблиц(FULL JOIN/OUTER JOIN) и Union
01:09:04 Алиас(table AS alias)
01:12:18 Select Distinct в SQL
01:13:42 AND OR NOT в SQL
01:16:18 ORDER BY и LIMIT в SQL
01:17:35 MIN и MAX в SQL
01:18:25 COUNT SUM AVG в SQL
01:19:29 LIKE в SQL
01:21:31 IN и BETWEEN в SQL
01:22:50 GROUP BY в SQL
01:25:17 EXISTS в SQL
01:27:37 ANY и SOME в SQL
01:29:00 INSERT INTO в SQL
01:30:40 Отношения в базе данных
01:32:11 Отношения один к одному
01:33:09 Отношения один ко многим
01:34:09 Отношения многие ко многим
01:37:10 Отношения один к одному и один ко многим "через"
01:39:10 SQL инъекции
источник
👉 @i_odmin
🧠 Bash-совет дня: Проверка скорости интернет-соединения прямо из терминала
Если тебе нужно быстро проверить скорость интернета на сервере (например, VPS), не устанавливая громоздкие GUI-программы — вот решение:
#!/bin/bash
# Проверяем наличие speedtest-cli
if ! command -v speedtest &> /dev/null; then
echo "⏳ Устанавливаем speedtest-cli..."
apt update && apt install -y speedtest-cli # Для Debian/Ubuntu
# yum install -y speedtest-cli # Для RHEL/CentOS
fi
# Запускаем тест скорости
echo "🚀 Проверяем скорость интернет-соединения..."
speedtest
curl
:
curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python3 -
Удаление бакетов в S3: что стоит учесть?
Объектное хранилище S3 — надёжный способ работать с большими объёмами данных. 27 мая проведем митап для тех, кто хочет точно понимать, как устроены ключевые процессы S3 — от настройки версионирования до безопасного удаления бакетов.
В формате демо разберём
🔹 настройку версионирования, multipart-загрузок и lifecycle-политик
🔹 автоматизацию очистки бакета (включая delete marker и незавершённые multipart-загрузки)
🔹 как подготовить бакет к удалению
🔹 настройку политик доступа, временных ссылок и шифрование на стороне сервера SSE
Спикер
Евгения Тарашкевич, инженер K2 Cloud
Формат
Онлайн-митап
Ждем администраторов, девопсов, системных архитекторов и всех, кто работает с S3.
Зарегистрироваться>>
Спецсимволы в bash
Далее перечислены символы и синтаксические конструкции, имеющее особое значение в bash. Для ввода спецсимволов как они есть используют кавычки или спецсимвол \ отменяющий специальное значение следующего символа
\ Экранирование. Отменяет специальное значение следующего символа
\\ Символ "\"
# Комментарий, не работает в кавычках и в некоторых подстановках переменных и преобразовании основания чисел
echo "Это #не комментарий"
echo 'Это # не комментарий’
echo Это \# не комментарий
echo Это # Вот комментарий.
echo ${PATH#*:} #Специальная переменная
echo $(( 2#101011 )) #Преобразование системы счисления в арифметической подстановке.
>, >> - перенаправление стандартного вывода программы в файл
< - перенаправление стандартного ввода программы из файла
<<TERM перенаправление стандартного ввода программы из текста текущего скрипта со следующей строки до строки, состоящей из слова TERM.
|- перенаправление стандартного вывода программы на стандартный ввод другой программы
; Разделитель команд в строке
echo hello; echo world
;; Разделитель альтернатив в операторе case
case "$VARiable" in
abc) echo "$VARiable = abc" ;;
xyz) echo "$VARiable = xyz" ;;
esac
. Аналог команды source (#include в С++). Выполняет скрипт в текущем интерпретаторе.
. myconf
".." Двойные кавычки, отменяют действие спецсимволов кроме $ ..
и \
'...' Апострофы, отменяют действие всех спецсимволов в том числе и \, по этому нельзя включить апостроф в строку ограниченную апострофами
: Нулевая команда, всегда возвращает нулевой код ответа. В сочетании с перенаправлением ">" создает файл, или обнуляет существующий. В сочетании с перенаправлением ">>" создает файл, или изменяет время модификации существующего
:> data.xxx # File “data.xxx” now empty.
(можно и без двоеточия)
Шаблоны в именах файлов. Если подходящие имена находятся, то они подставляются в командную строку как отдельные аргументы (возможно с пробелами внутри). Если имена не находятся, то шаблон остается как есть.
* Шаблон заменяющий любую последовательность символов
? Шаблон заменяющий ровно один символ
[xyz] Шаблон заменяющий один из перечисленных символов
{xxx,yyy,zzz,...} Подстановка одного из вариантов в шаблон. В скобках не должно быть неэкранированных пробелов
grep Linux file*.{txt,htm*} # Ищет слово “Linux” в файлах вида “fileA.txt”, “file2.txt”, “fileR.html”, “file-87.htm”, etc.
$ Подстановка значения переменной, арифметического выражения или стандартного вывода программы. Если значение содержит пробелы, то при подстановке оно разбивается на отдельные аргументы.
$A содержимое переменной A
$$ PID процесса
$? Код возврата из последней выполненной программы или функции, а также код возврата самого скрипта
$((2*2)) подстановка результата вычисления арифметического выражения
$(cmd) подстановка стандартного вывода программы...
тоже, что и $(...) – подстановка стандартного вывода программы
Пример: A=EE; echo $A $(echo QQ) $((7+5))
Результат: EE QQ 12
Ошибка: $A=ZZ
Результат: bash: EE=ZZ: command not found
(...) Группировка команд
(A=hello; echo $A)
Для выполнения группы в скобках запускается новый интерпретатор
A=123
(A=321)
echo A = $A # A = 123
# "A" внутри скобок – локальная переменная.
(...) Создание массива ( только в bash версии > 2)
Array=(element1 element2 element3)
[] Элемент массива ( только в bash версии > 2)
Array[1]=slot_1
echo ${Array[1]}
{1..10} - подстановка чисел от 1 до 10
{c..n} - подстановка символов от "c" до "n"
{...} Создание безымянной функции, удобно для перенаправления ввода/вывода нескольких команд в один файл. В отличие от настоящей функции видимости переменных не изменяется.
PACK=mysql
{
echo
echo "Archive Listing:"
rpm -qpl ${PACK} # Список фалов в пакете rpm
echo
rpm -i --test ${PACK} # Проверка, установлен ли пакет.
} > "${PACK}.txt" #И весь вывод в один файл.
[...] Встроенная функция test для вычисления логических выражений
((...)) Арифметическая подстановка, вычисляет арифметическое выражение в стиле языка Си внутри скобок
& - запуск программы в фоновом режиме
bash$ sleep 10 &
[1] 850
[1]+ Done sleep 10
👉@bash_srv
Изменение порта для подключения по SSH
Чтобы изменить порт для подключения по SSH необходимо отредактировать файл конфигурации SSH демона. Откроем данный файл текстовым редактором:vim /etc/ssh/sshd_config
Найдем строку Port 22 и изменим её, указав новый порт для подключения. Например Port 25022.
Выходим, сохраняем файл и перезагружаем SSH следующей командой:service sshd restart
После перезапуска SSH, он станет доступен по новому порту, а текущая сессия на старом останется активной. Поэтому не отключаясь для проверки попробуем подключится по новому порту - если не пускает, то возможно в системе работает фаервол и нужно в нем разрешить новый порт, например в iptables это делается так (где 25022 наш новый порт):iptables -A INPUT -p tcp --dport 25022 -j ACCEPT
Можно разрешить средствами iptables подключение к SSH только с указанного диапазона IP адресов:iptables -A INPUT -d 192.168.0.0/24 -p tcp --dport 25022 -j ACCEPT
где 192.168.0.0/24 - IP адрес сети и маска сети, с которых разрешено подключение по SSH. Далее проверяем подключение по SSH на новом порту ssh <user>@<ip> -p <port> - если подключение выполняется, то можем удалить правило iptables подключения по SSH по старому порту:iptables -D INPUT -p tcp --dport 22 -j ACCEPT
Посмотреть в системе на каком порту и на каких сетевых интерфейсах работает SSH можно следующей командой:netstat -tulpan | grep ssh
👉 @i_odmin
Работа с правами доступа файлов и директорий в Linux# chown vasya /file
Назначить пользователя vasya владельцем файла file# chown -R vasya directory
Рекурсивно обойти директорию directory и назначить пользователя vasya владельцем всех вложенных файлов и директорий# chown vasya:group /file
Назначить владельца и группу для файла /file# chmod ugo+rwx /directory
Установить полные права доступа rwx ( Read Write eXecute ) для всех ugo ( User Group Other ) на директорию /directory. То-же самое можно сделать, используя числовой представление chmod 777 directory# chmod go-rwx /directory
Удалить все права на директорию /directory для группы и остальных# chgrp new_group file
Изменить группу-владельца для file на new_group# chmod o+t /home/public
Установить так называемый STIKY-бит на директорию /home/public. Удалить файл в такой директории может только владелец данного файла# chmod o-t /home/public
Удалить STIKY-бит с директории /home/public# chmod u+s /bin/binary_file
Установить SUID-бит на файл /bin/binary_file. Это позволяет любому пользователю системы, запускать данный файл с правами владельца файла# chmod u-s /bin/binary_file
Удалить SUID-бит с файла /bin/binary_file# chmod g+s /home/public
Установить SGID-бит на директории /home/public# chmod g-s /home/public
Удалить SGID-бит с директории /home/public# find / -perm -u+s
Поиск всех файлов с установленным SUID битом, начиная с корня файловой системы# ls -lh
Листинг текущего каталога с правами доступа
👉 @i_odmin
📕 Консоль запросов в работе с 1С:Аналитика для разработчиков 1C, консультантов 1C и аналитиков
Как применять результаты из консоли запросов в системе компоновки данных и 1С:Аналитике.
📗 На вебинаре 12 мая в 19:00 мск разберём:
1. Всё о вопросах анализа данных — от консоли до 1С:Аналитика;
2. Основы работы с консолью запросов в 1С и особенности написания запросов в 1С;
📘 В результате на практике освоите работу с интеграцией с 1С:Аналитика и переход от анализа данных внутри 1С к элементам BI-систем на примере 1С:Аналитика.
👉 Регистрация и подробности о курсе Бизнес-аналитик 1С: https://vk.cc/cLNdM6
Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Резервное копирование PostgreSQL по-взрослому
Базы данных — замечательный инструмент, без которого сложно представить современное приложение. И как бы сильно я ни любил использовать БД, я просто ненавижу писать SQL-запросы. Поэтому однажды задался вопросом, кто мог бы делать это за меня, при этом несильно теряя в качестве. И, конечно же, на ум пришёл мой AI-друг. Тогда остаётся одна проблема, как скормить ему мою БД. Тут на помощь приходит резервное копирование! Выполнив все необходимые задачи, я решил углубиться в тему и поделиться с Хабром, какие вообще есть виды и, конечно, сравнить их между собой.
https://habr.com/ru/companies/ruvds/articles/900148/
👉 @i_odmin