gladilov.org.ru gladilov.org.ua

94 заметки с тегом

сисадминство

Всякие системные и просто нужные компьютерные фичи. Настройка софта, иногда восстановление железа, и прочее, что входит в сферы интересов от эникейшика до «full stack admin’а». В придачу — симулятор системного администратора.



Минцифры РФ разработало открытую лицензию

В git-репозитории программного комплекса «Витрины данных НСУД», разработанного по заказу Министерства цифрового развития, связи и массовых коммуникаций Российской Федерации, обнаружен текст лицензии, озаглавленной «Государственная открытая лицензия, версия 1.1». Согласно пояснительному тексту, права на текст лицензии принадлежат Минцифры. Датирована лицензия 25 июня 2021 года.

Показать

По сути лицензия является пермиссивной и близка к лицензии MIT, но создана с оглядкой на российское законодательство и гораздо более многословна. Условия лицензии содержат множество уточнений, и без того следующих из законодательства РФ. В то же время в лицензии присутствуют спорные моменты в части определений. Так, исходный код определяется как «программа для ЭВМ в форме текста на языке программирования, который может быть прочтён человеком», что не обязательно подразумевает возможность получения из него исполняемого кода, а также то, что этот код не является сгенерированным на базе настоящего исходного кода (то есть кода в предпочтительной форме для внесения изменений).

Лицензия разрешает использовать программу или её части в любых не запрещённых законодательством РФ целях, а также изучать, перерабатывать и распространять копии программы и своей изменённой версии. Лицензия не требует распространять производную программу на условиях той же лицензии. В тексте также достаточно подробно раскрыты вопросы освобождения от ответственности — ни одна из сторон лицензионного соглашения не вправе требовать от другой стороны возмещения убытков, в том числе вызванных возможными недостатками или ошибками программы, а лицензиар не обязан исправлять недостатки или ошибки.

Примечательно, что в пояснительном тексте указана версия лицензии 1.0, в то время как текст лицензии имеет версию 1.1. Вероятно, это указывает на то, что лицензия дорабатывалась наспех.

Источники:
https://g.info.gov.ru/datamart/nsud-datamarts/-/blob/master/open_license_ru
http://www.opennet.ru/opennews/art.shtml?num=55960

13 октября   досуг   интересное   Россия   сисадминство   события   софт

Компания Canonical представила оболочку Ubuntu Frame

Компания Canonical представила первый выпуск оболочки Ubuntu Frame, предназначенной для создания интернет-киосков, терминалов самообслуживания, информационных стендов, цифровых вывесок, умных зеркал, промышленных экранов, IoT-устройств и других подобных применений. Оболочка рассчитана на предоставление полноэкранного интерфейса для одного приложения и базируется на использовании дисплейного сервера  Mir и протокола  Wayland. Наработки проекта распространяются под лицензией GPLv3. Для загрузки подготовлены пакеты в формате snap.

Показать

Ubuntu Frame можно использовать для запуска приложений на базе  GTK,  Qt,  Flutter и  SDL2, а также программ на базе Java, HTML5 и Electron. Возможен запуск как приложений, собранных с поддержкой Wayland, так и программ на базе протокола  X11 (используется Xwayland). Для организации работы в Ubuntu Frame с отдельными web-страницами или сайтами развивается программа Electron Wayland с реализацией специализированного полноэкранного web-браузера, а также порт движка WPE WebKit. Для быстрой подготовки и развёртывания решений на основе Ubuntu Frame предлагается использовать пакеты в формате snap, при помощи которых организована изоляция запускаемых программ от остальной системы.

Оболочка Ubuntu Frame адаптирована для работы поверх системного окружения  Ubuntu Core, компактного варианта дистрибутива Ubuntu, поставляемого в форме неделимого монолитного образа базовой системы, в котором не применяется разбивка на отдельные deb-пакеты и используется механизм атомарного обновления всей системы. Компоненты Ubuntu Core, включая базовую систему, ядро Linux, системные надстройки и дополнительные приложения, поставляются в формате snap и управляются инструментарием snapd. Компоненты в формате Span изолируются при помощи AppArmor и Seccomp, что создаёт дополнительный рубеж для защиты системы в случае компрометации отдельных приложений. Базовая файловая система монтируется в режиме только для чтения.

Для создания кастомизированного киоска, ограниченного работой одного приложения, разработчику достаточно подготовить само приложение, а все остальные задачи по поддержке оборудования, поддержанию системы в актуальном состоянии и организации взаимодействия с пользователем берут на себя Ubuntu Core и Ubuntu Frame, включая поддержку управления при помощи экранных жестов на системах с сенсорными экранами. Заявлено, что обновления с устранением ошибок и уязвимостей в выпусках Ubuntu Frame будут формироваться в течение 10 лет. При желании оболочку можно запустить не только в Ubuntu Core, но и в любом дистрибутиве Linux с поддержкой пакетов Snap. В простейшем случае для развёртывания web-киоска достаточно установить и запустить пакет ubuntu-frame и настроить несколько параметров конфигурации:

snap install ubuntu-frame
snap install wpe-webkit-mir-kiosk
snap set wpe-webkit-mir-kiosk daemon=true
snap set ubuntu-frame daemon=true
snap set wpe-webkit-mir-kiosk url=https://example.com

Источники:
https://ubuntu.com/blog/canonical-launches-ubuntu-frame-the-foundation-for-embedded-displays
https://www.opennet.ru/opennews/art.shtml?num=55933
https://github.com/MirServer/ubuntu-frame

7 октября   ubuntu   в мире   досуг   интересное   сисадминство   события   софт

Для ядра Linux предложена реализация SMB-сервера

Для включение в состав следующего выпуска ядра Linux предложена новая реализация файлового сервера, использующего протокол SMB3. Сервер оформлен в виде модуля ядра ksmbd и дополняет ранее доступный код клиента SMB. Отмечается, что в отличие от SMB-сервера, работающего в пространстве пользователя, реализация на уровне ядра более эффективна с точки зрения производительности, потребления памяти и интеграции с расширенными возможностями ядра. Основным разработчиком ksmbd является Стив Френч (Steve French) из компании Microsoft (ранее много лет работал в IBM), мэйнтейнер подсистем CIFS/SMB2/SMB3 в ядре Linux и давний участник команды разработчиков Samba, внёсший значительный вклад в реализацию поддержки протоколов SMB/CIFS в Samba и Linux.

Показать

Из возможностей ksmbd выделяется улучшенная поддержка технологии распределённого кэширования файлов (SMB leases) на локальных системах, которая позволяет существенно сократить трафик. В дальнейшем планируется добавление новых возможностей, таких как поддержка RDMA («smbdirect»), а также расширений протокола, связанных с усилением надёжности шифрования и верификацией по цифровым подписям. Отмечается, что подобные расширения гораздо проще реализовать в компактном и хорошо оптимизированном сервере, работающем на уровне ядра, чем в пакете Samba.

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

Ksmbd рассматривается не как отдельный продукт, а скорее как высокопроизводительное и готовое для применения на встраиваемых устройствах расширение к Samba, при необходимости интегрируемое с инструментами и библиотеками Samba. Например, с разработчиками Samba уже согласован вопрос использования в ksmbd совместимых с smbd файлов конфигурации и расширенных атрибутов (xattrs), что упростит переход с smbd на ksmbd и наоборот.

Источники:
Список рассылки
Опёнок

30 августа   Linux   в мире   досуг   интересное   ОС   сисадминство   события   софт

День рождения ядра Linux

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).

История
Подходящая картинка к новости

25 августа   Linux   в мире   досуг   интересное   история   памятные даты   сисадминство   софт   юбилей

Бубунта переходит на использование zstd для сжатия deb-пакетов

Разработчики Ubuntu начали перевод deb-пакетов на использование алгоритма zstd, который позволит почти в два раза увеличить скорость установки пакетов, ценой небольшого увеличения их размера (~6%). Примечательно, что поддержка использования zstd была добавлена в apt и dpkg ещё в 2018 году в выпуске Ubuntu 18.04, но для сжатия пакетов не использовалась. В Debian поддержка zstd уже включена в APT, debootstrap и reprepro и проходит рецензирование перед включением в dpkg.

Источники:
http://www.opennet.ru/opennews/art.shtml?num=55453
https://balintreczey.hu/blog/hello-zstd-compressed-debs-in-ubuntu/

2021   в мире   досуг   интересное   ОС   сисадминство   события   софт

Google Play уходит от использования APK в пользу App Bundle

Компания Google приняла решение перевести каталог Google Play на использование формата распространения приложений Android App Bundle вместо пакетов APK. Начиная с августа 2021 года формат App Bundle должен будет применяться для всех новых приложений, добавляемых в Google Play, а также для доставки приложений, запускаемых без установки (instant app ZIP).

Обновления к уже присутствующим в каталоге приложениям разрешено продолжить распространять в формате APK. Для доставки дополнительных ресурсов в играх вместо OBB должен будет использоваться сервис Play Asset Delivery. Для заверения приложений App Bundle цифровой подписью должен будет применяться сервис Play App Signing, подразумевающий размещение в инфраструктуре Google ключей для формирования цифровых подписей.

Показать

App Bundle поддерживается начиная с Android 9 и позволяет сформировать набор, включающий всё, что нужно приложению для работы на любом устройстве — языковые наборы, поддержка разных размеров экрана и сборки для различных аппаратных платформ. При загрузке приложения из Google Play на систему пользователя доставляются только код и ресурсы, необходимые для работы на конкретном устройстве. Для разработчика приложения переход на App Bundle как правило сводится к включению другой сборочной опции в настройках и тестированию получившегося AAB-пакета.

По сравнению с загрузкой монолитных пакетов APK использование App Bundle позволяет в среднем на 15% сократить объём загружаемых на систему пользователя данных, что приводит к экономии места на накопителе и ускорению установки приложений. По данным Google в настоящее время уже около миллиона приложений перешло на использование формата App Bundle, включая приложения Adobe, Duolingo, Gameloft, Netflix, redBus, Riafy и Twitter.

Источники:
OpenNet
GoogleBlog Android

2021   в мире   досуг   интересное   ОС   сисадминство   события   софт

Смена метода доступа к Git

Протух пароль в гит, сделал так:

здесь сгенерировал новый токен.
Удалил старые кредентиалы гита:

git remote remove origin

git remote add origin https://<токен>@<URL к репозиторию>.git

Ну и находясь в директории репозитория выполнил единоразово:

git pull https://<токен>@<URL к репозиторию>.git

Источник

2021   досуг   интересное   интернет   сисадминство   софт

Инструмент от Google для полностью гомоморфного шифрования

Компания Google опубликовала открытый набор библиотек и утилит с реализацией системы полностью гомоморфного шифрования, позволяющей обрабатывать данные в шифрованном виде, которые не фигурируют в открытой форме ни на одном из этапов вычислений. Инструментарий даёт возможность создавать программы для конфиденциальных вычислений, способные работать с данными без расшифровки, в том числе выполнять математические и простые строковые операции над зашифрованными данными. Код проекта написан на языке C++ и распространяется под лицензией Apache 2.0.

Показать

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

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

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

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

Отличительной чертой опубликованного инструментария является возможность создавать программы для обработки зашифрованных данных, используя типовые приёмы разработки на языке С++. При помощи предоставляемого транспайлера программа на С++ преобразуется в специальный диалект FHE-C++, способный работать с зашифрованными данными.

2021   в мире   досуг   интересное   сисадминство   события   софт

Представлен шелл для выполнения команд на языке человека

Разработчик из проекта River’s Educational Channel представил оболочку командной строки, которая понимает человеческий язык и переводит его в команды интерпретатора Bash. Новая оболочка использует OpenAI и позволяет выполнять как простые команды для работы с файлами и директориями, так и использовать утилиты вроде ImageMagick, ffmpeg со сложными параметрами.

Видео с демонстрацией работы на YouTube

Оболочка написана на Python, распространяется под лицензией MIT. Проект по словам автора, представляет собой достаточно простую обёртку над Bash, которая получает от пользователя описание необходимой для выполнения задачи, затем обращается к OpenAI и выполняет соответствующую команду. На данном этапе развития автор рекомендует проверять предлагаемую команду перед непосредственным выполнением, т. к. ввиду несовершенства модели команды могут быть потенциально опасными.

Для того, чтобы попробовать новую оболочку самостоятельно, необходимо установить зависимости из файла requirements.txt. Также пользователю понадобится либо ключ OpenAI API, либо, как предполагает автор, можно попробовать локальную модель GPT.

Источники:
https://riveducha.onfabrica.com/openai-powered-linux-shell
https://www.linux.org.ru/news/opensource/16276883

2021   в мире   досуг   интересное   сисадминство   события   софт
Ранее Ctrl + ↓
Наверх