Сообщество - GNU/Linux
Добавить пост

GNU/Linux

1 030 постов 15 516 подписчиков

Популярные теги в сообществе:

Началось платное распространение LibreOffice через Mac App Store

Началось платное распространение LibreOffice через Mac App Store Mac Os, App Store, Libreoffice

Организация The Document Foundation объявила о начале распространения через каталог Mac App Store платных сборок свободного офисного пакета LibreOffice для платформы macOS. Стоимость загрузки LibreOffice из Mac App Store составляет 8.99 евро, в то время как сборки для macOS также можно загрузить с официального сайта проекта бесплатно.


Утверждается, что собранные от платной поставки средства будут направлены на поддержку разработки LibreOffice. Размещённые в Mac App Store сборки сформированы компанией Collabora и отличаются от сборок с сайта LibreOffice отсутствием Java в поставке, так как Apple запрещает размещение внешних зависимостей. Из-за отсутствия Java функциональность LibreOffice Base в платных сборках ограничена

В Chrome выявлена утечка паролей из полей с предпросмотром скрытого ввода

В Chrome выявлена утечка паролей из полей с предпросмотром скрытого ввода Google, Google Chrome, Утечка

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


Оказалось, что текст для проверки передаётся также и из форм ввода, содержащих конфиденциальные данные, в том числе из полей, содержащих имена пользователей, адреса, email, паспортные данные и даже пароли, в случае если поля ввода паролей не ограничены штатным тегом "<input type=password>". Например, проблема приводит к отправке на сервер www.googleapis.com паролей в случае включение опции для показа введённого пароля, реализованной в сервисах Google Cloud (Secret Manager), AWS (Secrets Manager), Facebook, Office 365, Alibaba Cloud и LastPass. Из 30 протестированных известных сайтов, включая социальные сети, банки, облачные платформы и интернет-магазины, 29 оказались подвержены утечке.


В AWS и LastPass проблема уже оперативно решена через добавление параметра "spellcheck=false" в тег "input". Для блокирования отправки данных на стороне пользователя следует отключить в настройках расширенную проверку (секция "Languages/Spell check/Enhanced spell check" или "Языки/Проверка правописания/Расширенная проверка", по умолчанию расширенная проверка отключена).

Показать полностью 1

Нативный запуск игр на движке Ren'Py в Linux

Надеюсь, ни для кого не станет открытием, что операционные системы на базе ядра Linux не пользуются большим почётом среди разработчиков видеоигр. Такое положение дел вынуждает энтузиастов по всему миру разрабатывать различные ухищрения для запуска Windows-игр в Linux. В этом материале мы познакомимся с небольшой хитростью, которая позволит нам выполнить нативный запуск множества игровых проектов на движке Ren'Py, даже если сами разработчики не позаботились о версии для Linux.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

Особенности Ren'PyПрежде чем переходить к запуску игр, необходимо чуть подробней разобрать, что из себя представляет игровой движок Ren'Py и созданные с его помощью игры.


Ren'Py - это открытый игровой движок, ориентированный на создания ролевых игр и визуальных новелл с помощью языка программирования Python. Пользуется широкой популярностью среди инди-разработчиков и насчитывает десятки тысяч игр, среди которых такие известные проекты, как: Бесконечное лето, Врата Штейна, Doki Doki Literature Club и многие другие.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

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


Система автора

Сразу уточню, что вне зависимости от того, какой дистрибутив Linux вы предпочитаете использовать на своём компьютере, все выполняемые действия, кроме команд терминала, будут полностью идентичны.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

Запуск игр из консолиДля демонстрации работоспособности была выбрана случайная бесплатная визуальная новелла Stillwater.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

1. Удостоверимся, что наша выбранная визуальная новелла построена именно на игровом движке Ren'Py. Для этого заходим в папку с установленной игрой и проверяем наличие там подпапки renpy. Если она есть, то переходим к следующему шагу.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

В папке с игрой, помимо файлов расширения .exe для запуска игры под Windows, также присутствует и стандартный скрипт .sh для запуска в Linux. Однако не спешите его запускать, потому как c ним могут часто возникать различные проблемы, связанные с правами доступа или же его попросту может и не быть.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

2. Для запуска игры переходим в папку с установленной игрой и в подпапке /lib/linux-x86_64 находим основной исполняемый файл игры. Обычно он подписан как и сама игра.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

Вводим в терминале команды:

cd папка_с_вашей_игрой/lib/linux-x86_64 # Перейти в папку с игрой

./название_вашей_игры  # Запустить игру


Такой немного муторный, но изощренный способ, позволяет выполнить нативный запуск любой игры созданный на игровом движка Ren'Py.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

Если кому-то лень каждый раз это всё проделывать, то можно прямо как в Windows, тыкая бездумно по картиночкам реализовать запуск игр.


Способ для ленивых1. Выполним установку файлового менеджера: sudo pacman -S nautilus.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

2. Переходим с помощью нового файлового менеджера в подпапку /lib/linux-x86_64 и через правый клик>свойства назначаем файл исполняемым.

Нативный запуск игр на движке Ren'Py в Linux Linux, Визуальная новелла, Игры, Бесконечное лето (визуальная новелла), Windows, Видео, YouTube, Длиннопост

3. Пробуем выполнить запуск.

Всё работает!


Заключение

Вот, собственно, и всё! Без установки каких-либо прослоек совместимости, а лишь зная особенности работы игрового движка Ren'Py, мы всего за пару минут сумели превратить наш Linux в настоящую игровую станцию с доступом к множеству прекрасных игровых проектов. Уважайте свободу, используйте Linux и ни в коем случае не предавайте себя.


Если вам понравился материал, то, пожалуйста, посетите блог автора ---> ТЫК.

Видеоверсия

ОРИГИНАЛ

Показать полностью 10 2

Собираем свой дистрибутив Linux на флешке

Всем привет! Думаю, многие из тех, кто хоть как-то связан с IT, знают про популярные live-дистрибутивы, которые можно носить с собой в кармане для решения различных задач (восстановление системы, разметка диска, резервное копирование и многое другое), такие как Slax, Puppy Linux, Porteus или отечественные проекты PuppyRus, MagOS. Сегодня мы с вами соберём свой дистрибутив на флешке на базе Debian.
Что нам понадобится? Дистрибутив на базе Debian (оптимальным выбором будут последние версии Debian, Ubuntu или Mint), либо любой дистрибутив с установленным Docker и немного времени (все операции, описанные в данной статье, включая сборку, занимают не более получаса при наличии достаточно быстрого канала в Internet).
Первые шаги
Собирать мы будем скриптами MiniOS Live, так как они имеют относительно низкий порог вхождения и позволяют собрать вариант с любым набором пакетов на базе Debian 9-Sid.
git clone --depth=1 https://github.com/minios-linux/minios-live.git
Изначально, скрипты настроены на сборку варианта MiniOS Standard на базе Debian 11 с архитектурой amd64. Собрать этот вариант можно достаточно просто
cd minios-live
./install -

либо для Docker
cd minios-live/docker
./01-runme.sh
docker run -it --name mlc --privileged --device-cgroup-rule='b 7:* rmw' -v /dev:/dev -v /home/username/build:/build local/mlc /build/minios-live/install -

где /home/username/build - папка, содержащая minios-live.
Вот что у нас получится в итоге:

Собираем свой дистрибутив Linux на флешке Linux, Debian, Livecd, Liveusb, IT, Длиннопост

Основной файл конфигурации сборки MiniOS - minios-live/linux-live/buildconfig, для большинства переменных указано их назначение и значения, которые они могут принимать. В нём можно выбрать готовые наборы пакетов и настроек, архитектуру, изменить стандартный initrd и многое другое.
Модификация базовой системы
Сборка базовой системы 00-core производится из скриптов, расположеных в minios-live/linux-live/basesystem/00-core, там вы можете найти списки пакетов для каждого варианта сборки и изменить их (часть пакетов устанавливается скриптом install, так как в разных дистрибутивах один и тот же пакет может иметь разные названия).Там же расположена папка rootcopy-install, данные из неё автоматически копируются в систему перед началом установки. Для копирования данных в систему после установки создайте папку rootcopy-postinstall и разместите данные в ней. В самом конце выполняется скрипт postinstall.
Модификация/создание модулей
Скрипты, из которых собираются модули, располагаются в minios-live/linux-live/scripts, менять наименования модулей 00-09 нельзя. Наименования скриптов сборки, списков пакетов и папок те же, что и для базовой системы, но теперь к ним добавляется скрипт build. В нём указываются операции сборки ПО из исходных кодов, данный скрипт выполняется после install. При этом, данные, полученные после выполнения install, сохраняются в папке squashfs-root. После сборки ПО скомпилированные файлы необходимо скопировать в эту папку, в конце скрипта необходимо добавить эти строки
if [ $COMP_TYPE = "zstd" ]; then
    time mksquashfs /squashfs-root /$MODULE.$BEXT -comp $COMP_TYPE -Xcompression-level 19 -b 1024K -always-use-fragments -noappend >>$OUTPUT 2>&1
else
    time mksquashfs /squashfs-root /$MODULE.$BEXT -comp $COMP_TYPE -b 1024K -always-use-fragments -noappend >>$OUTPUT 2>&1
fi

Пакеты, установленые скриптом build не сохраняются в системе. Пример такого скрипта можно посмотреть здесь minios-live/linux-live/scripts/04-slax-desktop. Если вам необходимо установить модуль DKMS так, чтобы в системе не осталось пакетов, необходимых для сборки (заголовки ядра и прочие), создайте в папке скриптов модуля файл is_dkms_build, тогда в модуль после работы скрипта build будут скопированы только модули ядра. Пример: minios-live/linux-live/scripts/01-kernel. Для создания простого модуля, где необходима только установка пакетов, используйте в качестве примера скрипты модуля 10-galculator:
cd minios-live/linux-live/scripts
cp -r 10-galculator 10-openshot
замените в packages.list galculator на openshot. В packages.list можно в столбик указать любые пакеты из репозитория Debian, которые вы хотите иметь в модуле. В качестве имени модуля будет использоваться имя первого пакета в списке.
Сборка системы с включением своих модулей
Сборка системы с модулями осуществляется из папок в minios-live/linux-live/modules, где расположены ссылки на папки скриптов, из которых собираются модули. В minios-live/linux-live/modules есть скрипт create_symlinks.sh, с помощью которого можно создать структуру модулей. Например, мы хотим собрать MiniOS с Chromium вместо Firefox, для этого необходимо отредактировать create_symlinks.sh.
#!/bin/bash
if [ ! -d $1 ]; then
mkdir -p $1
fi

for file in $1/00-minios \
$1/01-kernel \
$1/02-firmware \
$1/03-xorg \
$1/04-xfce-desktop \
$1/05-xfce-apps \
$1/10-chromium; do
if [ -L $file ]; then
rm $file
fi
ln -s ../../scripts/$(basename $file) $file
done

Затем запустите скрипт:
create_symlinks.sh xfce-chromium
измените DESKTOP_ENVIRONMENT в buildconfig на xfce-chromium. Обратите внимание, сохранять "xfce", если вы используете XFCE, в наименовании варианта системы и в начале переменой DESKTOP_ENVIRONMENT обязательно.
Сборка модулей для собранной системы
Допустим, вы только что собрали собрали систему и вам необходимо внести изменения модуль. В папке minios-live/build/bullseye-standard-amd64/image/minios (для других вариантов папка может называться иначе) удалите модуль и все модули, которые по алфавиту располагаются после него, затем запустите сборку:
./install build_modules -
Для версии Frugal для модулей с порядковыми номерами 10 и выше удалять модули, располагающиеся по алфавиту после, не надо.

Надеюсь, у вас получится собрать систему под себя достаточно быстро. Если есть вопросы по сборке - пишите комментарии, буду рад помочь. А на сегодня всё. Надеюсь, этот первый пост не станет последним)

Показать полностью 1

Выпуск раскладки клавиатуры Ручей 2.0 с исправлениями от сообщества

Опубликована версия 2.0 инженерной раскладки клавиатуры Ручей. Раскладка позволяет без переключения на латиницу вводить спецсимволы, такие как "{}[]<>", используя правую клавишу Alt, что упрощает набор технических текстов с использованием разметки Markdown, Yaml и Wiki, а также кода программ на русском языке. Также доступен и английский вариант раскладки имеющий одинаковый с русским вариантом расположение спецсимволов. Наработки проекта распространяются как общественное достояние.


Изменения в новой версии:


# Раскладки теперь полностью базируются на русском варианте;

# На своё место вернулась двойная кавычка и гравис;

# Изменено расположение апострофа и параграфа;

# Убрана идентификация раскладок как кириллицы и латиницы;

# Для Linux раскладки теперь не относятся к категории "exotic" и размещены в base.xml;

# Для GNOME исправлена идентификация раскладок как "ru" и "en".


В подготовке новой версии большое участие приняло сообщество opennet.ru и linux.org.ru. С версии 2.0 все изменения заморожены, символы своё положение менять не будут. Для Linux раскладки будут штатно доступны в выпуске пакета xkeyboard-config 2.37. Также в выпуск вошли варианты раскладки для Windows и macOS.


Макет русского варианта раскладки:

Выпуск раскладки клавиатуры Ручей 2.0 с исправлениями от сообщества Разработка, Клавиатура

Макет английского варианта раскладки:

Выпуск раскладки клавиатуры Ручей 2.0 с исправлениями от сообщества Разработка, Клавиатура
Показать полностью 2

Разработано устройство для определения скрытого включения микрофона

Группа исследователей из Национального университета Сингапура и Университета Ёнсе (Корея) разработала метод для выявления скрытого включения микрофона на ноутбуке. Для демонстрации работы метода на базе платы Raspberry Pi 4, усилителя и программируемого приёмопередатчика (SDR) собран прототип, получивший название TickTock, который позволяет выявлять активацию микрофона вредоносным или шпионским ПО для прослушивания за пользователем. Техника пассивного определения включения микрофона актуальна так как, если в случае с web-камерой пользователь может блокировать запись просто заклеив камеру, то встроенный микрофон отключить проблематично и не понятно, когда он активен, а когда нет.

Разработано устройство для определения скрытого включения микрофона Электроника, Микрофон, Ноутбук

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

Разработано устройство для определения скрытого включения микрофона Электроника, Микрофон, Ноутбук

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


В итоге, исследователям удалось адаптировать своё устройство для надёжного определения включения микрофона на 27 из 30 протестированных моделях ноутбуков, производства Lenovo, Fujitsu, Toshiba, Samsung, HP, Asus и Dell. Три устройства, с которыми метод не сработал, оказались модели Apple MacBook 2014, 2017 и 2019 (предполагается, что утечку сигнала не удалось уловить из-за экранирующего алюминиевого корпуса и использования коротких гибких кабелей).


Исследователи также попытались адаптировать метод для других классов устройств, таких как смартфоны, планшеты, умные колонки и USB-камеры, но эффективность оказались заметно ниже - из 40 протестированных устройств определение было налажено только на 21, что объясняется использованием аналоговых микрофонов вместо цифровых, других схем подключения и более коротких проводников, излучающих электромагнитный сигнал.

Показать полностью 2

Разгон монитора и исправление цветового диапазона в Linux

Здравствуй, многоуважаемый читатель! Мы продолжаем серию материалов, посвящённых настройке и оптимизации систем на базе ядра Linux. В этой небольшой инструкции вы узнаете, как исправить давнюю проблему с ограниченным цветовым диапазоном в Linux, а также как всего за пару кликов разогнать матрицу монитора вне зависимости от используемой модели видеокарты, протокола графического сервера (Xorg, Wayland) или рабочего окружения (Gnome, KDE, Xfce, I3).

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Система автора

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Пояснение проблемы

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


При использовании цифрового подключения HDMI/DVI-D, Linux не всегда правильно выставляет цветовой диапазон и частоту обновления экрана монитора, что приводит к плохому качеству отображаемой картинки и потери плавности мыши.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Наглядно продемонстрировать проблему весьма сложно, так как это не связано с параметрами цветовой палитры файла, а является ограничением передаваемого сигнала на ваш монитор. То есть видите это только вы. Тем не мене, если вы заметили, что тёмные цвета стали отдавать белизной, а былые яркие картины потускнели и как-то выглядят не так, то эта инструкция вам точно необходима!


Full RGB и разгон монитора

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


1. Открываем терминал и вводим команду find /sys/devices/pci*/ -name edid. Она нам необходима, чтобы узнать, где хранится файл конфигурации edid.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

У меня монитор подключен по HDMI, а значит я просто выделяю и копирую всю первую строку.


2. Копируем файл edid в домашнюю директорию с помощью команды:

cp /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-HDMI-A-1/edid ~/edid.bin

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Если вы всё сделали правильно, то в /home/ваше_имя появится файл edid.bin.


3. Теперь нам необходимо установить ПО для чтения и внесения изменений в файл edid.bin. Я рекомендую использовать нативный редактор wxEDID.


Выполняем установку wxEDID и зависимостей:

sudo pacman -S git base-devel grub-customize  # Скачать зависимости и редактор grub

git clone https://aur.archlinux.org/wxedid.git  # Стянуть исходники ПО

cd wxedid  # Перейти в папку с исходниками

makepkg -sric  # Собрать и установить программу

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

4. Запускаем программу через команду в терминале sudo wxedid и в окне программы выбираем наш edid.bin. File -> Open EDID binary.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Для активации полного цветового диапазона меняем данные в строках:

SPF: Supported features -> изменить значение vsig_format на 0b00

CHD: CEA-861 header -> изменить значение YCbCr4:2:2 и YCbCr4:4:4 на 0

VSD: Vendor Specific Data Block -> изменить значение DC_Y444 на 0


Для разгона матрицы монитора выбираем изменяем данные (Пропустите раздел, если вам не нужен разгон):

Выбираем DTD: Detailed Timing Descriptor и переключаемся на вкладку DTD Constructor, где в поле Pixel clock постепенно повышаем частоту обновления монитора до необходимых значений. Для различных мониторов пределы разгона отличаются.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Сохраняем изменения через File-> Save EDID Binary. Для удобства я назову новый конфигурационный файл edid2.bin.


5. Теперь необходимо заставить систему использовать модифицированный файл edid2.bin вместо системного. Создаём по пути /usr/lib/firmware/ папку edid и переносим туда наш модифицированный edid2.bin.


Вводим команды:

cd /usr/lib/firmware/  # Перейти в нужный раздел

sudo mkdir edid  # Создать папку от администратора

cd  # Перейти в домашнюю папку

sudo cp edid2.bin /usr/lib/firmware/edid  # Скопировать файл edid2.bin

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

6. Добавляем модифицированный файл в наш загрузчик.


Запускаем grub-customizer и добавляем в параметры ядра (в самый конец) команду drm.edid_firmware=edid/edid2.bin, которая заставит Linux подхватывать наш изменённый конфигурационный файл при загрузке ядра.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

Сохраняем изменения через кнопку "Сохранить" в левом углу ПО и смотрим на представленную ниже картинку.

Разгон монитора и исправление цветового диапазона в Linux Linux, Монитор, Wayland, Xorg, Mesa, AMD, Видео, YouTube, Длиннопост

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


Заключение

Вот, собственно, и всё! Не знакомому с Linux-миром человеку вся эта инструкция может показаться пугающим шаманством, но она и не рассчитана на него, а повествует лишь о необычном способе исправления древнего бага и существенного повышения комфорта при использовании Linux. Уважайте свободу, используйте Linux и ни в коем случае не предавайте себя.


Если вам понравился материал, то, пожалуйста, посетите блог автора ---> ТЫК.


Видеоверсия

ОРИГИНАЛ

Показать полностью 11 1

Ковыряем атаку forkbomb на bash в docker

Есть такой вид атаки на отказ в обслуживании (DoS, Denial of Service) — forkbomb. Запускается процесс, который бесконечно порождает сам себя, пожирая все ресурсы системы. Прав суперпользователя не требуется, любой пользователь может создавать процессы.


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

forkbomb()
{
forkbomb | forkbomb&
}

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

:(){ :|:& }; :

Такой набор символов эквивалентен скрипту выше. При этом он компактен, и его могут запихнуть вам в качестве шуточного ответа на вопрос. Спасибо ещё, что не патч Бармина.


В видео также рассматриваются линуксовые команды команды

1. lscpu

2. nproc

3. uptime

4. top

5. free

6. переменные $$ $PPID

7. настройка числа PID в /proc/sys/kernel/pid_max

8. ctrl-L для очистки терминала

9. разделение экрана в терминале terminator

10. буфер выделения и вставка по нажатию на колёсико мышки

11. pkill


И разбираются флаги такой docker команды

docker run --it --rm --cpus="0.5" --memory=4G --pids-limit=1000 --name=forkbomb ubuntu bash

Плюс применяются команды docker ps / stats / exec.


Хотите почувствовать себя капитаном тонущего корабля? Теперь ресурсы системы принадлежат не вам, а паразитному процессу forkbomb. Приятного просмотра!

Починить атакованную систему можно только перезагрузкой. Ну, если атакующий скрипт вам не дописали в .bashrc. Тогда только recovery mode в grub.


В телеграм-канале разбираем разные нюансы из жизни разработчика на Python и не только — python, bash, linux, тесты, командную разработку.

Показать полностью 1
Отличная работа, все прочитано!