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

GNU/Linux

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

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

48

Клавиатура с LED-подсветкой и Gnome

Привет. Приобрел для компа клавиатуру с LED-подсветкой. Вот такую, но думаю разницы большой нет между любыми подобными изделиями.

Клавиатура с LED-подсветкой и Gnome

Управляется подсветка клавишей Scroll Lock, и тут при подключении к ПК на Linux с Gnome возникает конфликт, если у вас несколько раскладок клавиатуры. Индикация раскладок по умолчанию осуществляется с помощью LED Scroll Lock, и нажатие на саму кнопку ни к чему ни приводит, клавиатура начинает светиться, только если переключить раскладку, при обратном переключении подсветка выключается.


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


Инфы по такой проблеме в нете мало, поэтому захотел собрать это в кучу, вдруг кому-то поможет это решение. Итак. Мой способ (wrote in English cause of it might help anybody non-russian speaker if this post would be indexed by keywords - keyboard LED backlight don't switched in Linux Gnome with Scroll Lock key)


1. Remove grp_led:scroll option from /etc/default/keyboard

2. Execute 'gsettings reset org.gnome.desktop.input-sources xkb-options'

3. echo 'xset led 3' > lights

4. echo 'xset -led 3' > nolights

5. chmod +x lights nolights

6. sudo mv lights nolights /usr/local/bin

7. press ALT+F2, enter 'lights' for keyboard lights

8. press ALT+F2, enter 'nolights' for no keyboard lights


Теперь простыми командами можно управлять подсветкой.

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

Изучаем GNU/Linux часть 54. Настройка времени

Продолжаем изучать GNU/Linux и готовиться к сертификации от Red Hat (RHCSA).

Для тех, кто видит мои посты впервые - я стараюсь очень лёгким языком с нуля научить вас работать с операционной системой GNU/Linux. Зачем? Потому что - Стоит ли делать курс по RHCSA?


Предыдущие темы:

Изучаем GNU/Linux часть 53. Установка RHEL

Глава 3: pikabu.ru/@doatta/saved/1495320

Глава 2: pikabu.ru/@doatta/saved/1399947

Глава 1: pikabu.ru/@doatta/saved/1399945


Разберём часы реального времени, системные часы и настройку NTP

P.S. Текстовой вариант по ссылке - https://glr.doatta.cloud/

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

Изучаем GNU/Linux часть 53. Установка RHEL

Продолжаем изучать GNU/Linux и готовиться к сертификации от Red Hat (RHCSA).

Для тех, кто видит мои посты впервые - я стараюсь очень лёгким языком с нуля научить вас работать с операционной системой GNU/Linux. Зачем? Потому что - Стоит ли делать курс по RHCSA?


Предыдущие темы:
Глава 3: pikabu.ru/@doatta/saved/1495320

Глава 2: pikabu.ru/@doatta/saved/1399947

Глава 1: pikabu.ru/@doatta/saved/1399945


Детально разберём установку операционной системы на примере RHEL

P.S. Текстовой вариант по ссылке - https://glr.doatta.cloud/

505

Изучаем GNU/Linux часть 52. Управление многоуровневым хранилищем - stratis

Продолжаем изучать GNU/Linux и готовиться к сертификации от Red Hat (RHCSA).

Для тех, кто видит мои посты впервые - я стараюсь очень лёгким языком с нуля научить вас работать с операционной системой GNU/Linux. Зачем? Потому что - Стоит ли делать курс по RHCSA?


Предыдущие темы:

Изучаем GNU/Linux часть 51. Оптимизация производительности - tuned

Изучаем GNU/Linux часть 50. Планировщик процессов

Глава 3: pikabu.ru/@doatta/saved/1495320

Глава 2: pikabu.ru/@doatta/saved/1399947

Глава 1: pikabu.ru/@doatta/saved/1399945


Разберём новый механизм для управления томами и файловыми системами

P.S. Текстовой вариант по ссылке - https://glr.doatta.cloud/

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

Ядру Linux исполнилось 30 лет

Ядру Linux исполнилось 30 лет

25 августа 1991 года после пяти месяцев разработки 21-летний студент Линус Торвальдс объявил в телеконференции comp.os.minix о создании рабочего прототипа новой операционной системы Linux, для которой было отмечено завершение портирования bash 1.08 и gcc 1.40. Первый публичный выпуск ядра Linux был представлен 17 сентября. Ядро 0.0.1 имело размер 62 Кб в сжатом виде и содержало около 10 тысяч строк исходного кода. Современное ядро Linux насчитывает более 28 млн строк кода. По данным исследования, проведённого в 2010 году по заказу Евросоюза, приблизительная стоимость разработки с нуля проекта, аналогичного современному ядру Linux, составила бы более миллиарда долларов США (расчёт производился, когда в ядре было 13 млн строк кода), по другим оценкам - более 3 миллиардов.


Ядро Linux было создано под впечатлением от операционной системы MINIX, которая не устраивала Линуса своей ограниченной лицензией. Впоследствии, когда Linux стал известным проектом, недоброжелатели пытались обвинить Линуса в прямом копировании кода некоторых подсистем MINIX. Нападение отразил Эндрю Таненбаум, автор MINIX, который поручил одному из студентов провести детальное сравнение кода Minix и первых публичных версий Linux. Результаты исследования показали наличие только четырёх несущественных совпадений блоков кода, обусловленных требованиями POSIX и ANSI C.


Первоначально Линус задумал назвать ядро Freax, от слов «free», «freak» и X (Unix). Но имя «Linux» ядро получило с лёгкой руки Ари Лемке (Ari Lemmke), который по просьбе Линуса разместил ядро на FTP-сервере университета, назвав директорию с архивом не «freax», как просил Торвальдс, а «linux». Примечательно, что предприимчивый делец Вильям Делло Крок (William Della Croce) сумел зарегистрировать торговую марку Linux и хотел со временем собирать отчисления, но позднее передумал и передал все права на торговую марку Линусу. Официальный талисман Linux-ядра, пингвин Tux, был выбран в результате соревнования, состоявшегося в 1996 году. Имя Tux расшифровывается как Torvalds UniX.


Динамика роста кодовой базы (количество строк исходного кода) ядра:

0.0.1 - сентябрь 1991, 10 тыс. строк кода;

1.0.0 - март 1994, 176 тыс. строк кода;

1.2.0 - март 1995, 311 тыс. строк кода;

2.0.0 - июнь 1996, 778 тыс. строк кода;

2.2.0 - январь 1999, 1.8 млн. строк кода;

2.4.0 - январь 2001, 3.4 млн. строк кода;

2.6.0 - декабрь 2003, 5.9 млн. строк кода;

2.6.28 - декабрь 2008, 10.2 млн. строк кода;

2.6.35 - август 2010, 13.4 млн. строк кода;

3.0 - август 2011, 14.6 млн. строк кода.

3.5 - июль 2012, 15.5 млн. строк кода.

3.10 - июль 2013, 15.8 млн. строк кода;

3.16 - август 2014, 17.5 млн. строк кода;

4.1 - июнь 2015, 19.5 млн. строк кода;

4.7 - июль 2016, 21.7 млн. строк кода;

4.12 - июль 2017, 24.1 млн. строк кода;

4.18 - август 2018, 25.3 млн. строк кода.

5.2 - июль 2019, 26.55 млн. строк кода.

5.8 - август 2020, 28.4 млн. строк кода.

5.13 - июнь 2021, 29.2 млн. строк кода.


Прогресс развития ядра:

Linux 0.0.1 - сентябрь 1991, первый публичный выпуск, поддерживающий только CPU i386 и загружающийся с дискеты;

Linux 0.12 - январь 1992, код начал распространяться под лицензией GPLv2;

Linux 0.95 - март 1992, обеспечена возможность запуска X Window System, реализована поддержка виртуальной памяти и раздела подкачки.

Linux 0.96-0.99 - 1992-1993, началась работа над сетевым стеком. Представлена файловая система Ext2, добавлена поддержка формата файлов ELF, представлены драйверы для звуковых карт и контроллеров SCSI, реализована загрузка модулей ядра и файловой системы /proc.

В 1992 году появились первые дистрибутивы SLS и Yggdrasil. Летом 1993 года были основаны проекты Slackware и Debian.

Linux 1.0 - март 1994, первый официально стабильный релиз;

Linux 1.2 - март 1995, существенное увеличение числа драйверов, поддержка платформ Alpha, MIPS и SPARC, расширение возможностей сетевого стека, появление пакетного фильтра, поддержка NFS;

Linux 2.0 - июнь 1996 года, поддержка многопроцессорных систем;

Март 1997: основан LKML, список рассылки разработчиков ядра Linux;

1998 год: запущен первый попавший в список Top500 кластер на базе Linux, состоящий из 68 узлов с CPU Alpha;

Linux 2.2 - январь 1999, увеличена эффективность системы управления памятью, добавлена поддержка IPv6, реализован новый межсетевой экран, представлена новая звуковая подсистема;

Linux 2.4 - февраль 2001, обеспечена поддержка 8-процессорных систем и 64 Гб ОЗУ, файловая система Ext3, поддержка USB, ACPI;

Linux 2.6 - декабрь 2003, поддержка SELinux, средства автоматического тюнинга параметров ядра, sysfs, переработанная система управления памятью;

В 2005 году представлен гипервизор Xen, который открыл эру виртуализации;

В сентябре 2008 года сформирован первый релиз платформы Android, основанной на ядре Linux;

В июле 2011 года после 10 лет развития ветки 2.6.x осуществлён переход к нумерации 3.x. Число объектов в Git-репозитории достигло 2 млн;

В 2015 году состоялся выпуск ядра Linux 4.0. Число git-объектов в репозитории достигло 4 млн;

В апреле 2018 года преодолён рубеж в 6 млн git-объектов в репозитории ядра.

В январе 2019 года сформирована ветка ядра Linux 5.0. Репозиторий достиг уровня 6.5 млн git-объектов.

Опубликованное в августе 2020 года ядро 5.8 стало самым крупным по числу изменений из всех ядер за всё время существования проекта.

В ядре 5.13 был поставлен рекорд по числу разработчиков (2150), изменения от которых вошли в состав ядра.

В 2021 году в ветку ядра Linux-next добавлен код для разработки драйверов на языке Rust. Ведётся работа по включению компонентов для поддержки Rust в основной состав ядра.


68% всех изменений в ядро внесены 20 наиболее активными компаниями. Например, при разработке ядра 5.13 10% всех изменений подготовлено компанией Intel, 6.5% - Huawei, 5.9% - Red Hat, 5.7% - Linaro, 4.9% - Google, 4.8% - AMD, 3.1% - NVIDIA, 2.8% - Facebook, 2.3% - SUSE, 2.1% - IBM, 1.9% - Oracle, 1.5% - ARM, 1.4% - Canonical. 13.2% изменений подготовлены независимым участниками или разработчиками, явно не заявившим о своей работе на определённые компании. 1.3% изменений подготовлены студентами, аспирантами и представителями учебных заведений. По числу добавленных в ядро 5.13 строк кода лидирует компания AMD, доля которой составила 20.2% (драйвер amdgpu насчитывает около 3 млн строк кода, что примерно 10% от общего размера ядра - 2.4 млн строк приходится на сгенерированные автоматически заголовочные файлы с данными для регистров GPU).

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

ExpressVPN открыла код протокола Lightway, но в чем его фишка?

10-го августа стало известно о том, что исходный код VPN-протокола Lightway опубликован под лицензией GPL версии 2. За разработкой протокола стоит компания ExpressVPN, которая, как несложно догадаться, предлагает VPN-услуги. Независимый аудит реализации сделала компания Cure53, занимающаяся кибербезопасностью, и дала высокую оценку качеству кодовой базы. Тем не менее, в результате аудита были выявлены несколько уязвимостей, которые уже исправлены. Таким образом, к безопасности Lightway претензий нет. А что касается производительности, то компания-разработчик сравнивает свое детище с известной реализацией VPN под названием OpenVPN, но очень не охотно вспоминает в этом контексте о WireGuard. И здесь пользователи негодуют, а компания не дает четких ответов. Поэтому предлагаю разобраться во всем по порядку. Читайте о результатах моего расследования ниже или смотрите в ролике (отмотайте на 02:13, чтобы сразу начать с этой темы).

В отличии от Lightway, появление WireGuard было вполне обосновано. Дело в том, что OpenVPN на протяжении многих лет оставался полярным свободным решением для построения виртуальных частных сетей, но скорость этого решения оставляла желать лучшего, а сложность реализации из-за раздутой кодовой базы осложняла аудит. Так, назрела необходимость создать новое свободное решение, которое было бы компактным и быстрым. Этим решением стал WireGuard, разработанный исследователем безопасности Джейсоном Доненфилдом (Jason A. Donenfeld), который, в свою очередь, представляет компанию Edge Security.

ExpressVPN открыла код протокола Lightway, но в чем его фишка?

WireGuard задуман как решение, работающее в пространстве ядра. Тем не менее, там, где ядерной поддержки пока нет может использоваться кросс-платформенная реализация в пространстве пользователя, но производительность в таком случае будет очевидно ниже, чем у нативного решения, работающего на уровне ядра. (Напомню, что в таких случаях максимальной производительности можно добиться только за счет исключения операций переключения контекста и копирования содержимого пакетов из ядра в пространство пользователя.) Но разработчик не ищут легких путей и предлагают ядерную поддержку своего протокола во все популярные операционные системы. К примеру, 2-го августа Доненфилд представил проект WireGuardNT, который является портом WireGuard на ядро Windows.

Что касается Lightway, то это решение появилось на свет потому, что компанию ExpressVPN, которая, напомню, стоит за разработкой этого протокола, не устроил WireGuard. Клиенты компании на протяжении долгого времени просили поддержку WireGuard, но компания отвечала на это лишь тем, что этот протокол был разработан без оглядки на конфиденциальность и безопасность. К примеру, вот как вице-президент компании Гарольд Ли ответил на вопрос «Почему не WireGuard?»:

Вариант типа WireGuard, который мы очень уважаем, не был, на наш взгляд, спроектирован для больших VPN-сетей, в которых во главу угла ставится конфиденциальность и безопасность. Таким образом, мы разработали Lightway, чтобы вам не пришлось идти на компромиссы в плане скорости, конфиденциальности, безопасности или удобства. И мы действительно считаем, что он включает все из перечисленного.

В качестве подтверждения своим словам ExpressVPN также указывала на секцию «Work in Progress» на главной странице WireGuard, где говорилось, что работа еще не окончена и код еще не проходил аудит безопасности. Других доказательств своих слов компания не представляла. Стоит заметить, что 9-го апреля 2020-го этот раздел с сайта пропал, но разработка нового протокола судя по всему уже шла полным ходом.

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

Что касается работы в пространстве пользователя, то здесь Гарольд сказал, что когда они разрабатывали Lightway, то приняли осознанное решение не помещать его в пространство ядра. Вот пара причин, которые назвал Гарольд.

Во-первых, они хотели, чтобы Lightway разделял как можно больше кода между платформами. Очевидно, что реализация протокола в пространстве ядра более трудозатратная, т.к. у каждого ядра свои особенности, тогда как в пространстве пользователя плюс-минус все унифицировано и можно без труда создать реализацию, переносимую на уровне исходного кода.

Во-вторых, в реализации протокола используется встраиваемая SSL/TLS-библиотека под названием wolfSSL, которая, очевидно, работает в пространстве пользователя. Эту библиотеку в компании хотели видеть в качестве основы своего протокола.

Заключение

Реализация протокола в пространстве ядра будет быстрее, чем реализация протокола в пространстве пользователя, поэтому именно WireGuard претендует на звание самого быстрого свободного решения в области VPN. Что касается безопасности, то первой ядерной реализацией этого протокола стал модуль ядра Linux, который успешно прошел рецензирования и был принят в основное дерево исходных текстов ядра. Он разрабатывался специалистом в области безопасности и его код изучался и продолжает изучаться другими специалистами в области безопасности. Подход WireGuard более трудозатратен по сравнению с Lightway, но именно эти дополнительные затраты и позволяют добиться лучшей производительности. ExpressVPN, в свою очередь, не скрывает, что хочет сильно удешевить свое решение, но в то же время даже не делает намека на то, что это негативно скажется на производительности, что, на мой взгляд, немного не честно. Тем не менее, от еще одной свободной альтернативы в области VPN уж точно никому хуже не станет. Но надеюсь, что в недалеком будущем ExpressVPN подключится к разработки и аудиту WireGuard, и добавит поддержку этого протокола для своих клиентов.

Что предпочитаете вы, OpenVPN или WireGuard? Есть планы попробовать Lightway или вы уже его счастливый пользователь?

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

Изучаем GNU/Linux часть 51. Оптимизация производительности - tuned

Продолжаем изучать GNU/Linux и готовиться к сертификации от Red Hat (RHCSA).

Для тех, кто видит мои посты впервые - я стараюсь очень лёгким языком с нуля научить вас работать с операционной системой GNU/Linux. Зачем? Потому что - Стоит ли делать курс по RHCSA?


Предыдущие темы:

Изучаем GNU/Linux часть 50. Планировщик процессов

Изучаем GNU/Linux часть 49. Виртуальная память, swap

Глава 3: pikabu.ru/@doatta/saved/1495320

Глава 2: pikabu.ru/@doatta/saved/1399947

Глава 1: pikabu.ru/@doatta/saved/1399945


Поговорим про демон tuned, который мониторит и оптимизирует производительность системы

P.S. Текстовой вариант по ссылке - https://glr.doatta.cloud/

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

Multiseat

Привет! Возникла задача сделать мультисит на шесть юзеров на 2-х видеокартах от nvidia с использованием встроенного графического чипа (2+2+2). С чего начать эту эпопею на linux mint?


Я прекрасно понимаю, что у знатоков на каждой фразе будет фейспалм, но такоdо пожелание заказчика.

Отличная работа, все прочитано!