Сообщество - GNU/Linux

GNU/Linux

1 172 поста 15 637 подписчиков

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

72

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

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

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

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

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


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

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


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

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


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

У меня монитор подключен по 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

Если вы всё сделали правильно, то в /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  # Собрать и установить программу

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

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

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 постепенно повышаем частоту обновления монитора до необходимых значений. Для различных мониторов пределы разгона отличаются.

Сохраняем изменения через 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

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


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

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

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


Заключение

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


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


Видеоверсия

ОРИГИНАЛ

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

Ковыряем атаку 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
33

История Окружения рабочего стола Mate

Окружение Рабочего стола Mate (Матэ) была создана на основе gnome в 2011 году, человеком с ником perberos, цель окружения продолжение развития Gnome 2, так как на момент его создания был создан Gnome 3. Первая версия данного окружения была обычным Gnome 2, но с заменой слов Gnome на Mate, для того чтобы при установке окружения рядом с gnome система не путала mate с gnome. Такая же работа была проведена с системными утилитами и приложениями. Для того же были убраны стандартные темы Gnome. Кроме-того была начата работа по устранению ошибок gnome 2.

Различие в названиях одних программ в Gnome и Mate

Так как основным окружением Linux Mint был Gnome 2, Команда создателей данного дистрибутива присоединилась к разработке Mate, и сделало его одним из основных окружений своего дистрибутива.

Изменения в следующих версиях.

Здесь отмечены только значимые версии

1.2

Добавлена поддержка PulseAudio и GStreamer в демоне настроек, добавлены новые плагины для Caja.

1.4

Огромное количество исправленных ошибок, реализована интеграция Dropbox в Caja, обновлён менеджер паролей, Появилась возможность передачи файлов через Bluetooth.

1.6

Переход на GSettings - Замена MateCorba на D-Bus, MateVFS на GVFS. Удалены устаревшие компоненты Gnome 2, поддержка systemd-logind, Портированы новые возможности Nautilus 3 в Caja. Многие компоненты Gnome 3 Были портированы в Mate. Во многих приложениях Mate появилась поддержка gtk 3.

1.8

Поддержка оконного менеджера Metacity, перенесены некоторые утилиты из gnome 3, переписан хранитель экрана.

1.10

Начальная поддержка сборки с GTK 3.

Поддержка возможностей GTK 3

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

1.14

Полная Поддержка GTK 3.20

Решены проблемы с отрисовкой окон с Headerbar-заголовка, начало перевода утилит и приложений на GTK 3.

1.16

Начало удаления поддержки GTK 2, перевод всего на GTK 3. Удалены зависимости от libmate-dekstop.

Mate 1.18

Поддержка libinput и Status Nottifer, Console Kit, Новых форматов архивов в Engrampa, полностью удалена поддержка GTK 2.

Mate 1.20

Поддержка HiDPI, глобального меню, расширений DRI3/Present в Marco, мониторинга температуры дисков. Оптимизация отрисовки окон.

Это мой первый пост в рубрике "история", не осуждайте жёстко.

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

Стандартные действия при проблемах с запуском программ в Termux/Linux

больше полезной проф информации тут: ТЫК

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

1. ответ находиться на странице проекта на гитхабе

git clone https://github.com/*страница автора*/*сам софт*


ссылка идущая после clone является ссылкой на страницу проекта где есть подробная информация по использованию команд (в случае если там ничего нету то скорее всего к проге прилагается документация в формате .txt которую следует искать в папке с прогой)
скорее всего там будет ещё и список необходимый библиотек которые можно установить соответствующей для языка программирования командой 


2. Пакеты

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

читайте те ошибки которые вам выдаёт термукс или терминал линукса в случае неудачи


3. возможен кофликт пакетов для того чтобы поправить это выявляем конфликтующие или поломанные пакеты и прописываем


apt-get update

apt-get autoremove

autoremove удалит старые версии пакетов которые могут быть причиной конфликта

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

эта информация направлена на начинающую в области изучения линукса аудиторию

но лучшим советом будет гуглите

а если не нашли решения то спрашивайте на соответствующих форумах или тг чатах (например в нашем чате)

подпишись чтобы не пропустить новые посты на пикабу и в телеграмме

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

В Play Store будут ограничены возможности VPN-приложений, фильтрующих трафик и рекламу

В Play Store будут ограничены возможности VPN-приложений, фильтрующих трафик и рекламу

Компания Google внесла изменения в правила каталога Play Store, которые ограничивают предоставляемый платформой API VpnService. Новые правила запрещают использование VpnService для фильтрации трафика других приложений с целью монетизации, скрытого сбора персональных и конфиденциальных данных и любых манипуляций с рекламой, которые могут повлиять на монетизацию других приложений.


Сервисам также предписывается обязательное применение шифрования для туннелируемого трафика и выполнение требований правил для разработчиков, связанных c мошенничеством с рекламой, запросом полномочий и вредоносной активностью. Туннели к внешним серверам разрешено создавать приложениям, явно заявляющим о выполнении функций VPN, и только при помощи API VPNService. Исключения по обращению к внешним серверам сделаны для приложений, в которых подобное обращение формирует основную функциональность, например, программы родительского контроля, межсетевые экраны, антивирусы, программы управления с мобильного устройства, сетевые инструменты, системы удалённого доступа, web-браузеры, системы телефонии и т.п.


Изменения вступят в силу 1 ноября 2022 года. Среди целей изменения правил называется улучшение качества рекламы на платформе, повышение безопасности и борьба с распространением ложной информации. Ожидается, что новые правила позволят защитить пользователей от сомнительных VPN-приложений, отслеживающих данные пользователя и перенаправляющих трафик для манипуляций с рекламой.


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


В качестве примера приложений, функциональность которых будет нарушена, приводятся Blokada v5, Jumbo и Duck Duck Go. Разработчики Blokada уже обошли вводимое ограничение в ветке v6, перейдя на фильтрацию трафика не на устройстве пользователя, а на внешних серверах, что не запрещено новыми правилами.


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


С завтрашнего дня также начнёт действовать запрет на размещение приложений, вводящих пользователей в заблуждение, выдавая себя за другого разработчика, компанию или другое приложение. Запрет охватывает использование логотипов других компаний и приложений в пиктограммах, упоминание названий других компанией в имени разработчика (например, публикация от имени "Google Developer" лицом, не связанным с Google), ложные заявления о причастности к продукту или сервису, а также нарушения, связанные с использованием торговых марок.


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

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

Debian будет поставлять Chromium с поисковой системой DuckDuckGo вместо Google

Debian будет поставлять Chromium с поисковой системой DuckDuckGo вместо Google

В пакете с браузером Chromium, предлагаемом в дистрибутиве Debian, осуществлён переход на использование по умолчанию поисковой системы DuckDuckGo вместо Google. Предложение о замене поисковой системы на DuckDuckGo рассматривалось с апреля 2020 года. В качестве причины упоминается забота о конфиденциальности пользователей - сервис DuckDuckGo не использует персонализацию вывода и вырезает данные, которые могут использоваться для отслеживания предпочтений и перемещений пользователя. При необходимости вернуть Google или выбрать любую другую поисковую систему можно в настройках ("Настройки > Поисковая система", "Settings > Search Engine").

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