SILLYFEED

CORTEL

@Cortel_cloud · 4.1K подписчиков

Открыть канал в Telegram

Посты канала CORTEL в SillyFeed: единая лента публичных Telegram-каналов со ссылками на оригиналы.

Помогаем ИТ-директорам, DevOps и системным инженерам снижать TCO и поднимать SLA. Кейсы, инструменты и гайды.Сайт:https://cortel.cloudCотрудничество:@ivan_cmo

Посты канала

CORTEL
⚙️ Xargs — классическая Unix-утилита, которая берёт данные со стандартного ввода и подставляет их как аргументы другой команде. Звучит просто, но именно она помогает превращать пайплайны в мощные однострочники для массовых операций.Многие команды (rm, cp, mv, kill) не читают список целей из stdin напрямую. Они ждут аргументы. xargs решает эту задачу: принимает поток данных, разбивает его на элементы и передаёт следующей команде уже в нужном формате.Базовый принципБез xargs:
echo "file1.txt file2.txt" | rm# Не работает — rm не читает stdin
С xargs:
echo "file1.txt file2.txt" | xargs rm# Превратится в: rm file1.txt file2.txt
Основные флаги-n N — количество аргументов на одну команду.-I {} — заменитель (placeholder), используется когда нужно вставить значение в середину команды, а не в конец.-P N — параллельное выполнение в N процессов.-0 — разделитель — нулевой байт.-t — показать команду перед выполнением (verbose).-p — спросить подтверждение для каждой команды.Боевые примерыУбить все процессы по имени
pgrep -f "old_script" | xargs kill -9
Удалить пустые файлы
find . -type f -empty -print0 | xargs -0 rm
Архивация найденных файлов:
find . -name "*.log" -mtime +30 -print0 | xargs -0 tar czf old_logs.tar.gz
Изменить права на всех скриптах:
find . -name "*.sh" -print0 | xargs -0 chmod +x
xargs нужен там, где поток данных нужно превратить в аргументы команды. За счёт этого обычные Unix-команды начинают работать с большими списками файлов, процессов и других объектов.#линуксятина
CORTEL
🔫 Multus CNI — плагин для Kubernetes, позволяющий подключать поды к нескольким сетевым интерфейсам. Решает задачу «одна сетевая карта на под» по умолчанию, добавляя дополнительные интерфейсы через механизм CNI-цепочки.💬 Основной функционал:— Поддержка нескольких CNI-конфигураций для одного пода— Делегирование создания интерфейсов сторонним CNI-плагинам— Интеграция с сетевыми ресурсами через CRD NetworkAttachmentDefinition— Совместимость с любыми CNI-плагинами, поддерживающими стандарт интерфейса💬 Ключевые особенности:— Мульти-интерфейсность — один под может иметь eth0 (основная сеть) и net1, net2 для изолированных сетей или прямого доступа к устройствам— NetworkAttachmentDefinition (NAD) — CRD для описания дополнительных сетей: тип CNI, параметры IPAM, VLAN, gateway— Изоляция трафика — разные интерфейсы могут принадлежать разным VRF или сетевым доменам— Прозрачность для приложений — дополнительные интерфейсы видны как обычные сетевые устройства внутри контейнераMultus расширяет стандартную модель сети Kubernetes, позволяя объединять несколько CNI в одном кластере и предоставлять подам гибкие сетевые конфигурации без изменения основного CNI. Это особенно востребовано в сценариях, где часть рабочих нагрузок требует прямого доступа к физическим интерфейсам или изолированных каналов, а остальные продолжают использовать общий overlay.👉 Git#полезное
CORTEL
💎 Бэкапы, которые нельзя зашифроватьЦенность резервных копий становится понятна в момент инцидента — при сбое, ошибке или атаке шифровальщика.Но бэкапы тоже могут оказаться под ударом 🤯Если к ним есть доступ из основной инфраструктуры, злоумышленник может зашифровать или удалить не только рабочие данные, но и резервные копии.Поэтому резервное копирование нужно строить так, чтобы копии были изолированы, защищены от изменений и доступны для восстановления после инцидента.👉 В новом материале разобрали, как после атаки шифровальщика пересобрали архитектуру резервного копирования и усилили защиту бэкапов с помощью Hardened Repository.#статья

Ещё по теме «Технологии»

Технологии
Библиотека джависта | Java, Spring, Maven, Hibernate
🗓 Выброси Date и забудь Calendar Если ты работал с java.util.Date или Calendar, то сталкивался с этими проблемами. Мутабельные объекты, месяцы с нуля, запутанный API. В Java 8 появился java.time (JSR-310), и это то, что должно было быть с самого начала.🔹 Instant — source of truth
Instant now = Instant.now(); // 2024-01-15T19:00:00Z// Из Unix timestampInstant fromSeconds = Instant.ofEpochSecond(1705341600L);// Получить timestamplong epochMilli = now.toEpochMilli();// АрифметикаInstant later = now.plusSeconds(3600); // +1 час// Наносекундная точность (не то что Date с миллисекундами)long nanos = now.getNano();
Храни в БД именно Instant. Никакой TZ-зависимости и никаких сюрпризов.🔹 LocalDateTime, когда TZ не нужна
LocalDateTime dt = LocalDateTime.of(2024, 1, 15, 19, 0, 0);LocalDateTime parsed = LocalDateTime.parse("2024-01-15T19:00:00");// ✅ Юзер ввёл дату без TZ// ✅ Бизнес-логика без мультирегиональности// ❌ Хранение в БД — используй Instant// ❌ API-ответы — неоднозначно без TZ
🔹 ZonedDateTime для пользователей
ZonedDateTime ny = ZonedDateTime.now(ZoneId.of("America/New_York"));ZonedDateTime tokyo = ZonedDateTime.now(ZoneId.of("Asia/Tokyo"));// Конвертация между TZ — один и тот же момент времениZonedDateTime london = ny.withZoneSameInstant(ZoneId.of("Europe/London"));
DST обрабатывается автоматически:
// 10 марта 2:30 AM не существует (переход на летнее время)LocalDateTime nonExistent = LocalDateTime.of(2024, 3, 10, 2, 30);ZonedDateTime adjusted = nonExistent.atZone(ZoneId.of("America/New_York"));// → автоматически станет 3:30 AM EDT
🔹 ZonedDateTime vs OffsetDateTime
// ZonedDateTime — знает правила DST, для будущих датZonedDateTime zdt = ZonedDateTime.now(ZoneId.of("America/New_York"));// OffsetDateTime — просто смещение, без DST. Для прошлых событий и APIOffsetDateTime odt = OffsetDateTime.now(ZoneOffset.ofHours(-5));
🔹 DateTimeFormatter для форматирования и парсинга
LocalDateTime dt = LocalDateTime.of(2024, 1, 15, 19, 0, 0);// Predefineddt.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME); // "2024-01-15T19:00:00"dt.format(DateTimeFormatter.BASIC_ISO_DATE);       // "20240115"// CustomDateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");dt.format(fmt); // "2024-01-15 19:00:00"// Парсинг с обработкой ошибокpublic static Optional<LocalDateTime> parse(String s) {    try {        return Optional.of(LocalDateTime.parse(s, fmt));    } catch (DateTimeParseException e) {        return Optional.empty();    }}
🔹 Шпаргалка по токенам
yyyy → 2024      MM → 01      dd → 15HH   → 19 (24h) hh → 07 (12h) mm → 00ss   → 00        SSS → 123     a  → PMz    → EST       Z  → -0500    VV → America/New_York
🔹 Duration vs Period
// Duration — точный временной интервалDuration duration = Duration.ofHours(24); // ровно 86400 секунд// Period — календарный интервалPeriod period = Period.ofDays(1); // 1 день (может быть 23 или 25 ч. при DST!)// Оба работают с LocalDateTime, но семантика разная:dt.plus(Duration.ofHours(24)); // +86400 секdt.plus(Period.ofDays(1));     // +1 календарный день
🔹 Миграция с легаси
// Date → InstantInstant instant = oldDate.toInstant();// Instant → DateDate date = Date.from(instant);// Date → LocalDateTimeLocalDateTime ldt = oldDate.toInstant()    .atZone(ZoneId.systemDefault())    .toLocalDateTime();
══════ Навигация ══════ВакансииЗадачиСобесы🐸 Библиотека джависта #Enterprise
Айтишник в ватничке
Админское-бытовое. У нас была кружка пива, беспаечная макетная плата, контроллер ESP8266, высокочастотный преобразователь напряжения, пара высокотоковых драйверов двигателей постоянного тока, два электронных гироскопа, лабораторный блок питания и мощный линейный блок для конечной конструкции, а также коробка проводов dupont разных цветов и размеров (буквально). Не то, чтобы это был необходимый запас для создания рабочего стола. Но если уж начал собирать управляющую электронику для подъёмного механизма - сложно остановиться. Единственное, что вызывало у меня опасения - включение этой схемы в систему умного дома. Нет ничего более беспомощного, безответственного и испорченного, чем человек собирающий устройства IoT в какой-нибудь богомерзкий Home Assistant. Я знал, что рано или поздно мы перейдём и на эту дрянь.📱 Айтишник в ватничке
Манифест Ольги Касьян
Сегодня я была приглашенным спикером в клубе Digital Generation. Тема, мягко говоря, была с вызовом: «ИИ и человеческие желания: культура, нравственность и сексуальность как маркеры доверия 2026 год». В зале - представители фарм-индустрии: топы, бренд-менеджеры, CEO. Вот уж где моя уязвимость раскрылась по-полной. Но пришлась как нельзя кстати, потому что в эпоху всего идеального, друзья мои, любую шероховатость, оплошность, неточность, сумятица можно смело позиционировать как тренд. Потому что все это присуще живому существу, а мы в дичайшем запросе на доказательства подлинности буквально всего, заметили? Этот текст я, конечно, пишу сама. Ибо ни один DEEPSEEK и иже с ними мой шутливый настрой ПОКА (и это ключевое слово) не передаст. Но очень скоро…И тут вопрос. Я пока готовилась к выступлению, начитывала материал, структурировала, искала закономерности, вот, что поняла. Советский филосом Мераб Мамардашвили говорил: «Человек - это усилие быть человеком». ИИ сейчас это усилие у нас повсеместно забирает. Не дает нам в целом пожить в вопросе, пострадать в познании и пр. Так вот. Самое большое усилие, которое мы ДОЛЖНЫ применять к себе сейчас - это не лезть в GPT по любому поводу, отложить телефон, открыть книгу, пойти в библиотеку, заказать подборку книг, подискутировать с друзьями. НАСИЛЬНО погрузить себя в этот ВОПРОС.В противном случае, если из формулы «человек - это усилие быть человеком» убрать это самое усилие, то что останется? И это уже не праздный вопрос, это вопрос экзистенциальный, друзья мои…
Кэт, привет из Италии
Это я с таким видом смотрю на то, как сейчас все поголовно продвигают АИ агентов, подключая их бездумно ко всему, забывая про безопасность в этих ваших интернетах. И на тех, кто думает, что АИшка может полностью заменить разработчиков, написание работающего годами ПРОДУКТА. Я училась на инновациях, поэтому знаю неплохо про циклы адаптации инновационных продуктов, но сейчас творится просто хаос. Люди реально пытаются сделать все, чтобы не работать, головой: бездумно используют сервисы, не проверяют инфу, доверяют сгруппированной с разных источников информации. Люблю АИ всем сердцем, это упрощает жизнь сильно, но мозги никто не отменял
Аэротетраэдр | Нет предела безопасности
🇬🇧 Двигатель Rolls Royce впервые отработал полный полётный цикл на чистом водородеБританские инженеры совместно с авиакомпанией easyJet успешно испытали реактивный авиадвигатель Pearl 15, работающий исключительно на водороде. Масштабные наземные проверки прошли на территории испытательного комплекса NASA в штате Миссисипи.Сымитировав полный рабочий цикл от запуска до выхода на максимальную взлётную мощность и последующей посадки, специалисты на практике доказали способность современной турбины стабильно функционировать на газообразном экологичном топливе. Полученные в ходе этих экстремальных проверок данные о поведении водорода в камере сгорания планируют напрямую использовать при создании мощных моторов серии UltraFan, разрабатываемых для следующего поколения пассажирских лайнеров.Массовый переход коммерческой авиации на новый вид горючего всё ещё требует решения множества сложных логистических проблем, связанных с безопасным хранением газа и глубокой перестройкой всей аэродромной инфраструктуры. Тем не менее текущие результаты закладывают прочный технологический фундамент для постепенного отказа индустрии от классического авиационного керосина.🔼 Аэротетраэдр | #инновации
nata_doctor_brain
🧠Обожаю изучать всё новое. Мозг, как говорится, остаётся пластичным в любом возрасте, но именно новизна прокачивает его сильнее всего.🎒В сентябре Ника идёт в немецкую школу. За её академические способности я совершенно не переживаю — на тесте школьной готовности ей даже аплодировали и говорили «браво» очень милые немецкие педагоги. Но… я всё же волнуюсь за её адаптацию в новой языковой среде.📚Конечно, она много занимается: и с репетитором, и в группе, и в приложениях, и по карточкам… Но сегодня я придумала кое-что новенькое и интересное. 💡Делюсь — возможно, вам тоже пригодится.🤖С помощью ChatGPT я буквально за полчаса сделала персонализированное приложение для запоминания слов с флеш-карточками. В нём есть всё: уровни, награды, и даже приветствие «Hello, Ника», когда начинаешь заниматься… Просто чудеса современности.✨Ника в восторге, я в восторге… Кто бы мне сказал, что в 40 лет, работая только в медицине, я смогу делать обучающие компьютерные игры для детей — ни за что бы не поверила.💬А как у вас обстоят дела с нейросетями?#нейросети #обучение #материнство #немецкийязык #chatgpt #развитие
avencores telegram.
PAD3R: Реконструкция динамических 3D-объектов из монокулярных видеоPAD3R (Pose-Aware Dynamic 3D Reconstruction from Casual Videos) — это передовой исследовательский инструмент, позволяющий создавать высокоточные 4D-реконструкции деформируемых 3D-объектов из обычных монокулярных видео, снятых в повседневных условиях. Разработанный для конференции ACM SIGGRAPH Asia 2025, этот метод (написанный на языке Python) одновременно моделирует сложную артикулированную деформацию объекта и траекторию движения камеры, не требуя предварительной информации о позиционировании съемки (unposed videos).Основные возможности- Оценка положения объектов (Pose-Aware): Обучает персонализированную модель оценки позы, ориентированную на конкретный объект. Процесс управляется предварительно обученными генеративными моделями (image-to-3D), что дает точную стартовую инициализацию для 4D-реконструкции.- Деформируемое 3D-представление: Использует передовые методы дифференцируемого рендеринга и технологию 3D Gaussian Splatting для генерации подвижных артикулированных структур.- Регуляризация через 2D-трекинг: Применяет стратегию долгосрочного отслеживания 2D-точек (multi-chunk strategy) на протяжении всего видеоряда. Это позволяет строго контролировать правильность оптимизации сложных деформаций.Преимущества- Устойчивость в сложных сценариях: Алгоритм уверенно обрабатывает длинные видеоряды со значительными искажениями формы объектов, масштабными движениями камеры и ограниченными углами обзора — с теми факторами, которые обычно выводят из строя классические системы реконструкции.- Универсальность (Category-Agnostic): Способен реконструировать высококачественные 3D-представления самых разных объектов без привязки к их категории и без использования заранее заготовленных 3D-шаблонов.- Генерация качественного контента: Предоставляет высокую геометрическую точность и временную стабильность, делая метод идеальным инструментом для создания 3D-анимаций, передовых визуальных эффектов и глубокого понимания динамических сцен.Скачать с GitHub⬇️Поддержать автора⬇️SBER: 2202 2050 1464 4675
Здравые мысли
123apps — мультитул для файлов, который заменит кучу сервисов 🛠Мы нашли сервис, в котором собрано вообще все, что только может понадобиться для работы с видео, аудио, PDF, картинками и кучей других форматов. Выглядит как скромный сайт-конструктор, но а внутри — настоящий цифровой швейцарский ножЧто умеет:➡️ Видео — обрезать, склеить, добавить музыку/текст/картинку, убрать логотип или водяной знак, замедлить, ускорить, стабилизировать трясущееся видео и даже записать экран➡️ Аудио — сделать рингтон, наложить голос, поиграть с эквалайзером, повысить/понизить тон, извлечь звук из видео и склеить треки➡️ ПДФ — конвертировать из/в Word, Excel, JPG, объединить и разбить, сжать, поставить или снять пароль, добавить номера страниц➡️ Конвертеры — больше 300 форматов (видео, аудио, фото, документы, электронные книги, архивы). Можно гибко выбрать качество➡️ Архиватор — открывает более 60 типов архивов и пакует в ZIPСам сервис предлагает хороший бесплатный набор: до 5 файлов, каждый до 500 МБ в день, что для разовых задач и большинства бытовых нужд хватает с головой#ПРОсервисы