Новости Calculate Linux (март 2021)

Fastlogin для доменных пользователей

Главным нововведением новой версии утилит Calculate 3.6.9 является многократное ускорение входа в сеанс пользователей Calculate Linux Desktop, введенных в домен Calculate Directory Server. Надо сказать, что узкое горлышко мы нашли довольно случайно. Сравнительное тестирование скорости передачи файлов по rsync через samba ресурс и с rsync сервера не показывало большой разницы в скорости. Однако если попробовать сравнить скорость передачи файлов профиля пользователя, то разница будет уже отличаться в разы!

Возможно кто-то помнит, как на ранних версиях Calculate Linux Desktop приходилось подолгу ждать загрузки рабочего стола. Причиной длительного ожидания было выполнение шаблонов при входе в сеанс. Это было сделано для того, чтобы установленное или обновленное ПО могло получить настройки для всех пользователей. В некоторых случаях это было критично, например в ранних версиях KDE 4, когда настройки plasma от версии к версии постоянно ломались. Позже, для не доменных пользователей, мы добавили механизм fastlogin, в котором профиль пользователя настраивался только в случае, если установка ПО выполнялась пока пользователь был не в сеансе, а его профиль зашифрован.

В новых утилитах механизм fastlogin работает и для доменных пользователей. Один раз настроенный профиль пользователя не претерпевает дальнейших изменений если не вносились правки в шаблоны или файлы настроек (calculate.env, ini.env). То есть, если администратор поменяет на сервере настройки ini.env, пользователь залогинится на другом компьютере, будет установлено ПО или изменено разрешение монитора, только в этом случае при входе в сеанс будут выполнены настройки. В противном случае пользователь будет входить в сеанс максимально быстро, выполняя только синхронизацию профиля с сервера.

К профилю пользователя относятся файлы настроек ПК, они обычно находятся в директориях .config, .local, но могут так же иметь собственные директории или файлы начинающиеся с точки. По этому принципу мы отделяем профиль, синхронизируя его с сервером. Многие программы в этих же директориях хранят свои кэши. Такие файлы не имеет смысла передавать на сервер, при этом они могут оставаться локально. Решается это исключением передачи определенных путей в параметрах rsync и писывается в переменной cl_sync_skip_path (см. cl-core-variables-show --filter cl_sync_skip_path). Одновременно с выходом новой версии утилит мы добавили множество новых правил чтобы исключить разрастание профиля на сервере. В итоге размер среднестатистического профиля сотрудника в нашей компании сократился до приемлемых 100-130 Мб.

Выполненные оптимизации позволили добиться значительного ускорения входа в сеанс доменным пользователем. На протестированном профиле размером 318 Мб вход в сеанс с полным выкачиванием профиля с сервера занял 18 секунд вместо прежних 1м 49 сек. Повторный вход без настройки профиля составил 8,8 сек вместо 14,7 сек. Выход из сеанса теперь занимает 9 сек. вместо прежних 24,2 сек.

Не менее важно и то, что отказ от передачи профиля через samba ресурс позволил отказаться от поддержки устаревшего формата NT1, который приходилось использовать для поддержки прав доступа к файлам.

Zstd для пакетов

Тихо и незаметно в портежи была добавлена поддержка формата сжатия Zstd для бинарных пакетов. Мы воспользовались этой возможностью и перешли на новый, уже полюбившийся нам формат. Выигрыш получился небольшим, но все равно приятным. Не так давно вышло обновление GCC-10.2, бинарные пакеты были пересобраны новым компилятором и запакованы уже в Zstd.

Переход на ядро 5.10

Следуя устоявшемуся правилу использовать только LTS версии ядра, сразу после выхода версии 5.10 системы Calculate Linux так же получили обновление. Как и прежде, вы всегда можете использовать самую свежую версию ядра, доступную в бинарном репозитории. Для этого достаточно размаскировать пакет sys-kernel/calculate-sources без указания версии.

Новый Git-репозиторий

Не так давно мы запустили новый сайт https://git.calculate-linux.org перенеся все проекты из Gitolite в Gitea. Регистрация на сайте выполняется в профиле пользователя основного сайта Calculate Linux. Вы можете использовать новый Git репозиторий для своих проектов.

1 Like

Уважаемый Alexander!
Подскажите пожалуйста, как должен теперь выглядеть smb.conf для сервера CDS, ведь для доменных пк под Win 10 рекомендовалась строка в /etc/samba/smb.conf: server max protocol = NT1. Но на практике в смешанном парке Win7/Win10 работала строка server min protocol = NT1.

server min protocol и server max protocol сейчас не нужен

Михаил, большое спасибо!

Также, наверное, из последних новостей можно упомянуть, что Calculate «тихо и незаметно» перешёл на Pipewire. Не знаю, как это работает, но Pulseaudio-микшер ничего необычного не показывает, всё так же, как и было, но выбор в настройках аудио теперь из ALSA и Pipewire и при проигрывании звука теперь замечен процесс pipewire, а не pulseaudio.

Подозреваю, что теперь, pulseaudio (он всё так же установлен) работает как ещё один слой и как клиент, а не как сервер. Но всё произошло абсолютно бесшовно и без проблем, с чем поздравляю разработчиков дистрибутива. Как всегда всё стабильно и просто. Ну и о самом продукте, всё-таки, когда работают профессионалы (один из разработчиков Pipewire работал над GStreamer) всё так и должно быть.

Теперь и видеопотоками можно по идее делиться (веб-камера там и тд.), а не только звук с разных устройств. Хотя и звук тоже точно также остался, даже больше, добавилась поддержка и сервера Jack. И всё абсолютно прозрачно и ненавязчиво.

Спасибо ) напишу обязательно

Это вам спасибо, за качественный и стабильный дистрибутив. Периодически запускаю у знакомых или устанавливаю другие дистрибутивы (Ubuntu и др.). Нигде такой стабильности, как в кальке, больше не видел. Вечно какие-то проблемы, да, небольшие, да — относительно легко решаемые. Но только в Calculate всё работает так, как должно работать исходя из настроек.