This media is not supported in your browser
VIEW IN TELEGRAM
Ошибка EOWNERDEAD в Linux: поток умер, мьютекс остался
Что делать, если поток завершился с блокировкой? Сон Джинву объясняет robust mutex, восстановление данных и ошибку ENOTRECOVERABLE за 74 секунды.
#Linux #Программирование #Многопоточность #SoloLeveling
Что делать, если поток завершился с блокировкой? Сон Джинву объясняет robust mutex, восстановление данных и ошибку ENOTRECOVERABLE за 74 секунды.
#Linux #Программирование #Многопоточность #SoloLeveling
👍7🔥4❤2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Смена пароля не убивает чужую сессию: почему хакер всё ещё внутри
Пароль проверяется только в момент входа. Дальше сервер выдаёт session_id, браузер носит его в cookie, и эта сессия живёт сама по себе, даже если пароль уже другой. Чтобы реально выбить чужого, нужно завершить все сеансы в настройках безопасности, задать уникальный пароль и включить 2FA.
#linux
Пароль проверяется только в момент входа. Дальше сервер выдаёт session_id, браузер носит его в cookie, и эта сессия живёт сама по себе, даже если пароль уже другой. Чтобы реально выбить чужого, нужно завершить все сеансы в настройках безопасности, задать уникальный пароль и включить 2FA.
#linux
🔥9❤7👍6👎1
⚡️ Harness Engineering - полный курс на русском
Как заставить AI-агента писать код надёжно. Не «какую модель выбрать», а как спроектировать вокруг неё рабочую систему: инструкции, инструменты, среду, состояние и верификацию.
Курс - от нуля до продвинутых тем: теоретическая база из 11 блоков, 14 модулей, 8 практических проектов, 14 лабораторных работ, диагностический протокол «как починить агента», библиотека готовых шаблонов, карта инструментов, 40 приёмов и каталог антипаттернов.
Главный тезис курса: способность модели и надёжность исполнения - это две разные вещи. Одна и та же модель в «голой» среде и в среде с продуманным harness даёт качественно разные результаты. Апгрейд модели - это самый дорогой и обычно не самый эффективный способ починить агента.
https://github.com/justxor/Harness_ru
Как заставить AI-агента писать код надёжно. Не «какую модель выбрать», а как спроектировать вокруг неё рабочую систему: инструкции, инструменты, среду, состояние и верификацию.
Курс - от нуля до продвинутых тем: теоретическая база из 11 блоков, 14 модулей, 8 практических проектов, 14 лабораторных работ, диагностический протокол «как починить агента», библиотека готовых шаблонов, карта инструментов, 40 приёмов и каталог антипаттернов.
Главный тезис курса: способность модели и надёжность исполнения - это две разные вещи. Одна и та же модель в «голой» среде и в среде с продуманным harness даёт качественно разные результаты. Апгрейд модели - это самый дорогой и обычно не самый эффективный способ починить агента.
https://github.com/justxor/Harness_ru
👍11❤5🔥4👎2🐳2
Анонсировано открытие кода браузера Orion для Linux и Windows
Разработчики поисковой системы Kagi объявили о решении открыть исходный код редакций браузера Orion для платформ Linux и Windows. Детали будущей модели развития и лицензии Orion для указанных платформ намерены опубликовать в течение 30 дней. Рассматривается возможность передачи кода на попечение одной из некоммерческих организаций.
Подробнее:
https://opennet.ru/66403/
https://opennet.me/66403/
Разработчики поисковой системы Kagi объявили о решении открыть исходный код редакций браузера Orion для платформ Linux и Windows. Детали будущей модели развития и лицензии Orion для указанных платформ намерены опубликовать в течение 30 дней. Рассматривается возможность передачи кода на попечение одной из некоммерческих организаций.
Подробнее:
https://opennet.ru/66403/
https://opennet.me/66403/
👍15🔥6❤4
💡 Linux Совет #84 - управление сроком действия паролей
Команда
Проверить текущие параметры:
Полезные варианты:
*
*
*
*
*
Пример:
Удобно для серверов, корпоративных систем и контроля политики паролей.
Команда
chage позволяет посмотреть и настроить aging-политику пользователя.Проверить текущие параметры:
chage -l usernameПолезные варианты:
*
-M - через сколько дней пароль истечёт*
-m - минимальный срок до следующей смены*
-d 0 - заставить сменить пароль при следующем входе*
-E - дата окончания действия аккаунта*
-W - за сколько дней предупреждать об истеченииПример:
sudo chage -M 90 anushaУдобно для серверов, корпоративных систем и контроля политики паролей.
👍23❤5🔥2👏2🎉1
Media is too big
VIEW IN TELEGRAM
Почему капча Cloudflare пропускает тебя без клика? Как устроен Turnstile
Описание:
Пока ты смотришь на окошко «Я не робот», браузер уже выполняет скрытые проверки, и Cloudflare решает, нужна ли вообще галочка. После успешной проверки сайт получает одноразовый токен, который живёт всего 5 минут и сверяется на сервере. Коротко о том, как Turnstile отличает человека от бота.
#cloudflare #turnstile #капча #боты #кибербезопасность
https://youtube.com/shorts/YHiiOum-5jw?feature=share
Описание:
Пока ты смотришь на окошко «Я не робот», браузер уже выполняет скрытые проверки, и Cloudflare решает, нужна ли вообще галочка. После успешной проверки сайт получает одноразовый токен, который живёт всего 5 минут и сверяется на сервере. Коротко о том, как Turnstile отличает человека от бота.
#cloudflare #turnstile #капча #боты #кибербезопасность
https://youtube.com/shorts/YHiiOum-5jw?feature=share
❤9👍9🔥2👎1
openSUSE закрывает Leap Micro как отдельный дистрибутив.
Leap Micro создавался как immutable Linux для контейнерных хостов, виртуальных машин и edge-систем. Теперь эту модель переносят прямо в обычный openSUSE Leap.
Начиная с Leap 16.1 появится новый Immutable Mode:
- системные файлы будут read-only
- обновления будут создавать snapshots
- при проблемах систему можно быстро откатить назад
Отдельных Leap Micro 6.3 и 7.0 уже не будет. Вместо них openSUSE делает immutable-подход частью основной ветки Leap.
То есть immutable Linux в openSUSE не исчезает, наоборот, его переводят из отдельного продукта в стандартный режим основной системы.
Leap Micro создавался как immutable Linux для контейнерных хостов, виртуальных машин и edge-систем. Теперь эту модель переносят прямо в обычный openSUSE Leap.
Начиная с Leap 16.1 появится новый Immutable Mode:
- системные файлы будут read-only
- обновления будут создавать snapshots
- при проблемах систему можно быстро откатить назад
Отдельных Leap Micro 6.3 и 7.0 уже не будет. Вместо них openSUSE делает immutable-подход частью основной ветки Leap.
То есть immutable Linux в openSUSE не исчезает, наоборот, его переводят из отдельного продукта в стандартный режим основной системы.
🔥12❤6👍4🤔2💅1
Media is too big
VIEW IN TELEGRAM
Топ 10 инструментов защиты Linux-сервера на Ubuntu и Debian #linux
Разбираем 10 инструментов защиты Linux-сервера на Ubuntu и Debian: обновления, ss, UFW, SSH-ключи, Fail2ban, unattended-upgrades, AppArmor, journalctl, Lynis и restic. Начните с обновлений и безопасного входа по SSH, остальное добавляйте по списку. Сохраните, чтобы не потерять.
https://youtube.com/shorts/dfLhGiSlavg?feature=share
Разбираем 10 инструментов защиты Linux-сервера на Ubuntu и Debian: обновления, ss, UFW, SSH-ключи, Fail2ban, unattended-upgrades, AppArmor, journalctl, Lynis и restic. Начните с обновлений и безопасного входа по SSH, остальное добавляйте по списку. Сохраните, чтобы не потерять.
https://youtube.com/shorts/dfLhGiSlavg?feature=share
🔥7👍5❤4
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку
Окружение решает больше, чем кажется.
Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://xn--r1a.website/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_ci
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://xn--r1a.website/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://xn--r1a.website/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://xn--r1a.website/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://xn--r1a.website/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://xn--r1a.website/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
Окружение решает больше, чем кажется.
Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://xn--r1a.website/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_ci
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://xn--r1a.website/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://xn--r1a.website/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://xn--r1a.website/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://xn--r1a.website/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://xn--r1a.website/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
🔥4❤3👍3
Media is too big
VIEW IN TELEGRAM
Как Linux клонирует процесс за миллисекунды и не тратит память?
Linux клонирует процесс через fork(), но не копирует его память сразу. Родитель и клон читают одни и те же страницы, а когда один из них пишет, происходит page fault, и ядро копирует только изменённую страницу. Этот трюк называется copy-on-write, и благодаря ему новые процессы в Linux создаются почти мгновенно.
Linux клонирует процесс через fork(), но не копирует его память сразу. Родитель и клон читают одни и те же страницы, а когда один из них пишет, происходит page fault, и ядро копирует только изменённую страницу. Этот трюк называется copy-on-write, и благодаря ему новые процессы в Linux создаются почти мгновенно.
👍10❤8🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
Как запустить задачу в фоне в Linux: Ctrl+Z, bg и disown в Bash
Фоновая задача в Linux: Ctrl+Z, bg, disown
#Linux
https://www.youtube.com/shorts/IbBTyswsxm4
Фоновая задача в Linux: Ctrl+Z, bg, disown
#Linux
https://www.youtube.com/shorts/IbBTyswsxm4
👍18❤3👎1🔥1
Миллион навыков и почти 280 млн установок: Anthropic передаёт Agent Skills под управление фонда Linux Foundation.
Стандарт переходит в Agentic AI Foundation (AAIF), куда компания ранее передала MCP.
Skill - это папка с файлом `SKILL.md`, инструкциями, скриптами и справочными материалами. Она объясняет агенту, как выполнять конкретную задачу: например, готовить отчёт или работать по внутренним правилам команды.
По данным Anthropic, с публикации открытого стандарта в декабре 2025 года его интегрировали более 70 платформ, включая ChatGPT, Cursor, GitHub Copilot и VS Code.
Фонду передают название, логотип, GitHub-организацию и домен agentskills.io. Поддерживать стандарт будут инженеры Anthropic, Google, OpenAI и других компаний, как индивидуальные участники.
В предложенной дорожной карте — версии стандарта, формальная процедура изменений и рекомендации по безопасности.
Для разработчиков это шаг к переносимости: рабочие инструкции для агента можно создавать в общем формате и использовать в разных инструментах. Участвовать в развитии стандарта можно без вступления в фонд.
https://www.anthropic.com/news/donating-agent-skills-to-the-agentic-ai-foundation
Стандарт переходит в Agentic AI Foundation (AAIF), куда компания ранее передала MCP.
Skill - это папка с файлом `SKILL.md`, инструкциями, скриптами и справочными материалами. Она объясняет агенту, как выполнять конкретную задачу: например, готовить отчёт или работать по внутренним правилам команды.
По данным Anthropic, с публикации открытого стандарта в декабре 2025 года его интегрировали более 70 платформ, включая ChatGPT, Cursor, GitHub Copilot и VS Code.
Фонду передают название, логотип, GitHub-организацию и домен agentskills.io. Поддерживать стандарт будут инженеры Anthropic, Google, OpenAI и других компаний, как индивидуальные участники.
В предложенной дорожной карте — версии стандарта, формальная процедура изменений и рекомендации по безопасности.
Для разработчиков это шаг к переносимости: рабочие инструкции для агента можно создавать в общем формате и использовать в разных инструментах. Участвовать в развитии стандарта можно без вступления в фонд.
https://www.anthropic.com/news/donating-agent-skills-to-the-agentic-ai-foundation
👍11❤8🔥5
Выпуск qBittorrent 5.3.0
Опубликован выпуск торрент-клиента qBittorrent 5.3.0, написанного с использованием тулкита Qt и развиваемого в качестве открытой альтернативы µTorrent, приближенной к нему по интерфейсу и функциональности. Среди возможностей qBittorrent: интегрированный поисковый движок, возможность подписки на RSS, поддержка многих BEP-расширений, удалённое управление через web-интерфейс, режим последовательной загрузки в заданном порядке, расширенные настройки для торрентов, пиров и трекеров, планировщик пропускной способности и IP-фильтр, интерфейс для создания торрентов, поддержка UPnP и NAT-PMP. Код проекта написан на языке С++ и распространяется под лицензией GPLv2+. Сборки формируются для Linux, Windows и macOS.
Полный текст:
https://opennet.ru/66511/
https://opennet.me/66511/
Опубликован выпуск торрент-клиента qBittorrent 5.3.0, написанного с использованием тулкита Qt и развиваемого в качестве открытой альтернативы µTorrent, приближенной к нему по интерфейсу и функциональности. Среди возможностей qBittorrent: интегрированный поисковый движок, возможность подписки на RSS, поддержка многих BEP-расширений, удалённое управление через web-интерфейс, режим последовательной загрузки в заданном порядке, расширенные настройки для торрентов, пиров и трекеров, планировщик пропускной способности и IP-фильтр, интерфейс для создания торрентов, поддержка UPnP и NAT-PMP. Код проекта написан на языке С++ и распространяется под лицензией GPLv2+. Сборки формируются для Linux, Windows и macOS.
Полный текст:
https://opennet.ru/66511/
https://opennet.me/66511/
👍20❤3🔥1
Linux может убить программу за попытку открыть файл
Для этого есть seccomp strict — режим, который резко ограничивает доступ потока к системным вызовам:
После успешного включения разрешены только `read`, `write`, системный `_exit` и `sigreturn`. Попытка открыть новый файл, создать процесс или сокет приводит к принудительному завершению. В однопоточной программе — через SIGKILL.
Зачем это нужно? Представьте обработчик недоверенных данных: он заранее получает необходимые дескрипторы, включает ограничения и приступает к вычислениям. Даже если злоумышленник перехватит выполнение, доступные ему действия будут сильно ограничены.
Но уже открытые файлы и сокеты остаются доступны через `read` и `write`. Поэтому обещание «полностью отрезать сеть одним вызовом» некорректно.
Режим настолько строгий, что даже обычные библиотечные функции могут вызвать запрещённый syscall. Для прикладных программ чаще нужен seccomp-фильтр с собственным списком разрешённых вызовов.
Для этого есть seccomp strict — режим, который резко ограничивает доступ потока к системным вызовам:
if (prctl(PR_SET_SECCOMP, SECCOMP_MODE_STRICT) == -1) {
perror("seccomp");
return 1;
}
После успешного включения разрешены только `read`, `write`, системный `_exit` и `sigreturn`. Попытка открыть новый файл, создать процесс или сокет приводит к принудительному завершению. В однопоточной программе — через SIGKILL.
Зачем это нужно? Представьте обработчик недоверенных данных: он заранее получает необходимые дескрипторы, включает ограничения и приступает к вычислениям. Даже если злоумышленник перехватит выполнение, доступные ему действия будут сильно ограничены.
Но уже открытые файлы и сокеты остаются доступны через `read` и `write`. Поэтому обещание «полностью отрезать сеть одним вызовом» некорректно.
Режим настолько строгий, что даже обычные библиотечные функции могут вызвать запрещённый syscall. Для прикладных программ чаще нужен seccomp-фильтр с собственным списком разрешённых вызовов.
👍6