После почти трех лет формирования последнего важного отделения КПСС, Apple представляет новую версию системы бесплатной печати CUPS 2.3 (Common Unix Printing System), используется в macOS и большинстве дистрибутивов Linux. Cups полностью контролирует развитие компании Apple, которая в 2007 году поглотила компанию Easy Software Products, основанную CUPS.
Эта новая версия CUPS выделяется тем, что поставляется с новой лицензией. поскольку лицензия на код изменился с GPLv2 и LGPLv2 на Apache 2.0, что позволит сторонним компаниям использовать код CUPS в своих продуктах без необходимости открывать изменения, а также предоставит возможность достичь лицензионной совместимости с другими открытыми проектами Apple, такими как Swift, WebKit и mDNSResponder.
Лицензия Apache 2.0 также явно определяет передачу прав на проприетарные технологии вместе с кодом.
Негативным последствием смены лицензии с GPL на Apache является потеря совместимости лицензий. с проектами, выпущенными только под лицензией GPLv2 (лицензия Apache 2.0 совместима с GPLv3, но несовместима с GPLv2).
Чтобы решить эту проблему, в лицензионное соглашение для кода под лицензиями GPLv2 / LGPLv2 было добавлено специальное исключение.
Что нового в CUPS
Помимо изменения лицензии в этой новой версии CUPS 2.3, мы можем обнаружить, что добавлена поддержка предустановок и атрибута "окончательная обработка" в шаблонах заданий на печать. для протокола IPP Everywhere, который предоставляет инструменты для динамического выбора доступного принтера в сети, позволяет определять наличие принтеров, отправлять запросы и выполнять операции печати либо напрямую, либо через посредника.
Сочинение включает новую утилиту ippeveprinter с реализацией простого сервера IPP Everywhere, который можно использовать для тестирования клиентского программного обеспечения или выполнения команд для каждого задания на печать.
В то время как для команды lpstat реализовано отображение состояния сна новых заданий на печать.
также выделена поддержка HTTP Digest и аутентификации SHA-256 в библиотеку libcups. А также правила, учитывающие характеристики принтеров Lexmark E120n, Lexmark Optra E310, Zebra, DYMO 450 Turbo, Canon MP280, Xerox и HP LaserJet P1102 USB.
Исправлены уязвимости CVE-2019-8696 и CVE-2019-8675. , что вызвало переполнение буфера, выделенного для обработки недопустимых данных в функциях asn1_get_packed и asn1_get_type, используемых при обработке запросов SNMP.
Из других изменений что мы можем найти в этом новом выпуске:
- В реализации протокола совместного доступа к принтерам Bonjour предусмотрено использование имен DNS-SD при регистрации принтера в сети.
- Добавлена возможность записи файлов атрибутов ippserver в утилите ipptool.
- Добавлена поддержка параметров MinTLS и MaxTLS в директиву SSLOptions для выбора используемых версий TLS.
- Добавлена поддержка директивы UserAgentTokens в client.conf.
- Обновлен сервис Systemd для запуска cupsd
- Команда lpoptions теперь может работать с принтерами IPP Everywhere, которые не добавлены в локальные очереди печати.
- В драйвер IPP Everywhere добавлена правильная поддержка принтеров с передним режимом печати.
- Убраны утилиты cupsaddsmb и cupstestdsc.
Как установить CUPS 2.3 на Ubuntu и производные?
В настоящее время эта новая версия CUPS недоступна в официальных репозиториях Ubuntu, поэтому ее обновление по официальным каналам может занять несколько дней.
Хотя для тех, кто хочет настоять на этой новой версии они могут загрузить исходный код для компиляции в систему.
Для этого просто откройте терминал и напишите в нем следующее:
wget https://github.com/apple/cups/releases/download/v2.3.0/cups-2.3.0-source.tar.gz
После этого они распакуют пакет.
tar xzvf cups-2.3.0-source.tar.gz
Входим в каталог, созданный с помощью:
cd cups-2.3.0
И мы можем скомпилировать:
./configure make make check sudo make install
В конце вам просто нужно перезапустить службу или перезапустить систему, чтобы новая версия заработала.
установите cups 2.3.3 в ubuntu 20.04, и когда я запускаю систему, принтеры не работают, пока я не войду в терминал и не запустил команду:
sudo /etc/init.d/cups перезапуск
Ставлю пароль и сервис перезагружается.
но делать этот процесс каждый раз, когда я запускаю ubuntu, очень утомительно, что я могу сделать, чтобы исправить эту проблему?