15 августа 2012, 12:30 · internet
Основные проблемы Linux в 2012 году

Это мнение об основных проблемах Linux в 2012 году опубликовано на сайте разработчика Артема Ташкинова, известного open source-активиста. Пользуется Linux он с 1999 года, а впервые систематизировать проблемы Linux начал в 2009 году. С тех пор Артем Ташкинов регулярно обновляет список, правда, на английском языке, – его основной целью является указать направление, в котором следует работать линуксоидам и прочим энтузиастам. Здесь мы приводим перевод самой свежей сокращенной версии с комментариями автора, но на сайте присутствует и более подробный текст, а также возможность обсудить все нюансы с самим Ташкиновым.

Предисловие

В этом документе будут затронуты лишь основные проблемы и недостатки Linux. При этом необходимо учитывать, что в определенных отношениях Linux значительно превосходит другие операционные системы (стоит упомянуть, в частности, отличное управление пакетами, как правило, безупречную стабильность, отсутствие широко распространенных вирусов и вредоносных программ, отсутствие необходимости полной переустановки системы. Кроме того, Linux бесплатен, как воздух).

В этой работе я не ставлю своей целью сравнить Linux и Windows, хотя иногда я действительно сравниваю Linux с Windows либо с Mac OS. Эти операционные системы я зачастую использую в качестве ориентира (в конце концов, их продажи на порядок превосходят распространение Linux).

Возможно, вам уже доводилось слышать, что Android – реинкарнация Linux – вот-вот захватит мир. Но от Linux в Android присутствует всего один компонент – ядро операционной системы. Итак, данный документ рассказывает не об Android, а о дистрибутивах Linux и свободном программном обеспечении, входящем в состав этих дистрибутивов.

Проблемы настольных дистрибутивов Linux и основные недостатки этих дистрибутивов

  • Программные проблемы: очень небольшое количество игр и фактически полное отсутствие качественных крупнобюджетных видеоигр класса ААА (Humble Indie Bundles и Oil Rush – два единичных примера, которые являются исключениями и их можно не учитывать). При этом для Windows ежегодно выпускаются тысячи игр. Ощущается недостаток программ, с которыми пользователь привык работать в Windows, в частности, нет полноценного аналога Microsoft Office (в LibreOffice по-прежнему регулярно возникают проблемы с открытием документов, которые были созданы в Microsoft Office). Отсутствует нативная общая файловая система Интернета (CIFS) – простой, защищенный паролем и поддерживающий шифрование механизм совместного использования файлов в сети. Также в Linux нет аналога или эквивалента службы активных директорий (Active Directory)
  • Аппаратные проблемы: в Linux по-прежнему плохо поддерживаются или вообще не поддерживаются многие устройства и аппаратные свойства. Определенное оборудование невозможно использовать, если у вас уже есть активное соединение с Интернетом (в частности, это касается WiFi-адаптеров Broadcom). Практически не существует специализированного ПО, предназначенного для управления такими устройствами, как принтеры, сканеры, цифровые фотоаппараты, веб-камеры, аудиоплейеры, смартфоны и т.д. Таким образом, Linux не обеспечивает вам полного контроля над вашим новым iPad и не позволяет обновить прошивку на Galaxy SIII. Поддержка графики в Linux представляет собой грандиозный хаос, поскольку ядро/API X.org/ABI (двоичные интерфейсы приложений) постоянно изменяются, а NVIDIA/ATI/Broadcom/т.д. «не желают» выделять дополнительные ресурсы и тратить корпоративные средства на то, чтобы идти в ногу с непрерывно изменяющимся свободным ПО.
  • Отсутствие стабильности, баги, регрессии, регрессии и еще раз регрессии. Для Linux характерно невероятное количество случаев регрессии (как в ядре, так и в пользовательских приложениях). Регрессия – это случай, в котором нормально работавшие компоненты необъяснимым образом ломаются. Иногда регрессии могут даже приводить к потере данных. В большинстве свободных проектов вообще не проводится контроля качества и регрессивного тестирования. На устранение серьезных ошибок, из-за которых рушится нормальная последовательность операций программы, могут уходить годы. Плохо поддерживаются целые классы критически важного оборудования (в частности, графические процессоры, карты WiFi).
  • Недостаточная стандартизация, крайне разношерстные несогласованные различия. Слишком многие дистрибутивы Linux обладают совершенно несовместимыми конфигурациями, системами пакетов и библиотеками. В различных дистрибутивах задействуются совершенно разные среды для ПК, графические и консольные приложения для конфигурирования настроек компьютера. Например, дистрибутивы, основанные на Debian, требуют использовать для технической поддержки системы утилиту «dpkg-reconfigure», которая работает лишь в текстовом режиме.
  • Обилие стремительных изменений. Для большинства дистрибутивов Linux характерны очень краткие циклы обновления и выпуска новых версий (в некоторых случаях этот цикл не превышает 6 месяцев – так, Arch вообще обновляется непрерывно, а не от версии к версии – такая система называется «rolling distro» – а Fedora обновляется каждые 6 месяцев). В результате на вас льется нескончаемый дождь изменений – не только неожиданных, но и нежелательных. Дистрибутивы с долговременной поддержкой (т.н. LTS), как правило, недостаточно стабильны для использования на ПК. Это объясняется политикой сохранения различных версий приложений. Вдобавок, как правило, отсутствует официально одобренный способ установки наиболее современных приложений.
  • Нестабильные интерфейсы API/ABI, неудовлетворительная фактическая совместимость. В новых дистрибутивах очень сложно использовать старые программы – как с открытым, так и с закрытым исходным кодом. Зачастую это оказывается вообще невозможно в силу того, что сравнительно новые изменения касаются даже основных компонентов Linux – ядра или glibc. Обратная совместимость практически отсутствует, поэтому создание для дистрибутивов Linux приложений с закрытым исходным кодом оказывается исключительно сложным и дорогостоящим процессом. Свободное ПО, на разработку и поддержку которого лень тратить время, просто забрасывается. Зачастую это происходит из-за того, что устаревают или становятся недоступны библиотеки, требуемые для удовлетворения необходимых зависимостей. Именно поэтому многие приложения для KDE/Qt3 недоступны в современных дистрибутивах Linux, даже притом, что альтернатив им до сих пор нет. Разработка драйверов, не относящихся к основному дереву ядра Linux, – мучительная, дорогостоящая и при этом довольно нудная работа.
  • Деньги, энтузиазм, мотивация: уже много лет назад я прогнозировал, что разработчики FOSS (свободного и открытого программного обеспечения) начнут уходить с этой платформы, как только такая разработка перестанет быть забавой. Как только работа начинает требовать существенных усилий и затрат времени – то есть когда игра в бирюльки заканчивается – разработчики начинают требовать реальной оплаты своего по-настоящему тяжелого труда. Разработка FOSS, при которой явно ощущается недостаток финансирования, быстро приводит к усталости и разочарованию. Платформа FOSS, в первую очередь, нуждается в финансово мотивированных разработчиках, так как плохо финансируемые проекты начинают угасать, а критические баги никто не исправляет по нескольку лет. Можно, конечно, сказать: «баба с возу – кобыле легче», но проблема заключается в том, что зачастую у таких гибнущих проектов нет альтернатив и даже проектов-наследников.
  • Многие наработки Linux несовершенны, непоследовательны и не соответствуют рекомендациям для разработки пользовательских интерфейсов. Это признают даже разработчики KDE.

Авторский комментарий

Читатели, которые недавно работают с Linux или используют лишь небольшое подмножество приложений, могут быстро раскритиковать весь список, возразив мне: «А вот меня совершенно устраивает поддержка аудио в Linux» или «У меня никогда не возникало проблем при работе с видео под Linux». Но я могу их заверить, что есть тысячи людей, испытывающих колоссальные проблемы такого рода – просто потому, что им приходится пользоваться иным набором программного или аппаратного обеспечения. Можете сами в этом удостовериться – сходите на форумы Ubuntu или Linux.com и посчитайте, сколько веток начинается словами вроде «Стоило мне удалить PulseAudio – и аудио сразу заработало» или «Я наконец-то обнаружил, что можно пользоваться nouveau-драйверами вместо бинарных драйверов NVIDIA (или наоборот) – и все проблемы решились сами собой».

Критикам сложно понять еще один важный момент. Когда в Linux что-то не работает, пользователь не задумывается о том, чья это вина, а сразу считает, что проблема в самом Linux. Для среднестатистического пользователя Linux – это просто еще одна операционная система. Ему не легче от того, что какая-то компания, оказывается, решила не поддерживать Linux или не выпускать для Linux полнофункциональных драйверов. Он просто обнаружит, что программа не работает на оборудовании, приобретенном за свои кровные. Пользователю неинтересно, почему это Skype вырубается каждые пять минут – даже притом, что программа Skype откровенно ужасна, в ней тысячи глюков, и она с тем же успехом вырубается и в Windows, и в Mac OS X.

Я также хочу развеять всеобщее заблуждение насчет того, что в Linux поддержка старого оборудования организована гораздо лучше, чем в Windows. Частично это утверждение справедливо, но лишь отчасти. Например, ни nouveau, ни патентованные драйверы NVIDIA для Linux не обеспечивают достаточно качественной поддержки старых графических процессоров NVIDIA. Nouveau-драйверы не обеспечивают ускорения при работе с OpenGL, NVIDIA-блоб не поддерживает многих критически важных функций Xrandr или функций, необходимых для надлежащего ускорения работы современных графических пользовательских интерфейсов Linux (это касается, например, Gnome 3 или KDE 4). Если же по какой-то таинственной причине ваше старое оборудование по-прежнему поддерживается, драйверы Linux все равно, как правило, предоставляют лишь малую толику возможностей по сравнению с драйверами Windows. Поэтому утверждать, что в Linux аппаратная поддержка организована лучше, поскольку вам не придется тратить лишние двадцать минут на установку нужных драйверов, – как минимум нечестно.

Некоторые комментарии меня просто ошеломляют, например, второй комментарий по этой ссылке. ...Сударь, вы гоните. Я тут купил ноутбук, чтобы резаться в игры на Wine/dulaboot, а вы мне говорите, что я вообще не должен был его покупать? Будьте так добры не учить людей, которым – только представьте – действительно нравится играть в высококачественные игры! Утверждение, что файловая система SSHFSS – равноценная замена для системы совместного доступа к файлам, предлагаемой Windows – самая вопиющая вещь, которую мне доводилось слышать в жизни.

Необходимо также отметить, что многие активные участники сообщества разработчиков свободного ПО – довольно склочные люди, которые к тому же отличаются крайним идеализмом. Они безапелляционно заявляют, что все программы на свете должны быть бесплатными и свободно распространяемыми. Еще нередко раздаются возгласы о том, что «этой программе не место в Linux». При таком подходе совершенно неудивительно, что многие компании вполне снисходительно и даже высокомерно относятся к настольным приложениям Linux. Сам Линус Торвальдс высказался об этом: «В мире свободного программного обеспечения есть экстремисты, но именно поэтому я уже давно не называю мой род деятельности «разработкой свободного ПО». Я не хочу, чтобы меня отождествляли с личностями, считающими такую «свободу» оправданием для остракизма и вражды».

Но если у вас сложилось впечатление, что Linux – отстой, то вы заблуждаетесь. Если бы я составил аналогичный список проблем Windows, он получился бы не короче. Проблемы, присущие Windows, практически неистребимы, Microsoft проще создать новый модуль с нуля, чем исправить старый. А вот проблемы Linux действительно можно решить.

Что по-настоящему радует в этой истории – в настоящее время ведется ряд проектов, которые призваны привести к общему знаменателю настольные приложения Linux, сделать систему по-настоящему современной и целостной. Такие вещи, как systemd, Wayland и унификация файловых систем, впервые были предложены и реализованы в Fedora и других дистрибутивах. Компания Valve Software в настоящее время занимается разработкой Steam (это будет система распространения цифровых игр и управления ими) и Source Engine для Linux. Поэтому не исключено, что и в Linux вскоре появятся игры, способные соперничать с играми для Windows.

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

Источник

Обсуждение

Missing-male

Многих из этих проблем лишена Ubuntu, а это пожалуй единственная система полностью ориентированная на пользователя. Поэтому если говорить о пользователе, то лучше говорить об Ubuntu. Есть также платные версии дистрибутивов на основе Линукс, поддерживаемые компаниями. Нельзя говорить о проблемах, упоминая Линукс в общем случае. Ведь Линукс сам по себе всего лишь ядро и набор стандартных утилит. Да и предназначается Линукс для целей отличных от других Windows.

Некоторые дистрибутивы нацелены только на людей, которые нравится ковыряться в операционных системах. Некоторые являются своеобразным полигоном для других дистрибутивов(Fedora). Но Linux в отличие от Windows позволяет пользователю уникальную возможность - самому решать свою проблему.

451554536c3149d85af3d10adb56fd03?1482330855
ardgep
– старший инженер в Godel Technologies Europe

+1

>>>Многих из этих проблем лишена Ubuntu

меня в последнее время удивляет ее нестабильность с выходом последних двух версий. Пробовал на Gnome Shell, Gnome Classic. Все еще надеюсь, что разработчики залатают ошибки.

Мое субъективное мнение: с момента, когда я перешел на ubuntu версии 9.10, многое изменилось в худшую сторону, к сожалению.

Но как разработчику на ubuntu по-прежнему лучше. :) Есть заманчивая альтернатива Mac OS, но там не на все порты есть.

Missing-male

Ну Gnome Shell - это вообще отдельный разговор. А насчет Ubuntu, я думаю, что не нужно ставить самую новую версию. Стоит откатиться на одну-две версии назад. Некоторые вообще считают, что Ubuntu - это полигон для Debian. По мне так Ubuntu лучшее из Linux. Тем более они решили одну из самых ненавистных проблем для пользователя - шрифты. А это большой шаг вперед.

Missing-male
+1

Ubuntu, наверное, все-таки предназначена для новичков, которые только что пересели на Linux. Она очень винданутая, за что ее не любят большое количество линуксоидов. Насчет шрифтов - да, там эта проблема решена, для остальных дистрибутивов это огромная болячка. Полигон или не полигон для дебиана, но убунту основана на нестабильной ветке дебиана, если не ошибаюсь.

Почти год просидел на убунте. Сейчас сбежал на арч, все вполне устраивает, хотя, наверное, это из-за того, что в детстве любил конструкторы Lego :)

Missing-male

Про Arch слышал только лесные отзывы. Сам думаю, как заставить себя все-таки Gentoo до ума довести. Но я лезу в Gentoo только с целью основательно покавырятся, чтобы лучше понять, что такое Linux. Как только с Gentoo разберусь думаю перейти на Arch или вернуться на Ubuntu.

Missing-male

Archlinux каждому разработчику ! ;)

Missing-male

Любителям Ubuntu советую еще посмотреть Mint.

Missing-male

Думаю то на то и выйдет, сама убунта оч неплоха, да и юнити неплохо допилили, до 12.10 сидел на gnome shell, а с выходом последней с удовольсвием пересел на юнити. Mint скорей для тех, кто любит убунту, но так и не смог привыкнуть к gnome3\unity :)

701ccbac6a142099216f87d5780dd31a?1401052484

Вставлю и я свои 5 копеек :)

Из всего, что я перебрал, лучше всего себя показывает связка Ubuntu 11.04 + KDE Plasma Desktop + bumblebee (nVidia hybrid video cards support).

Для комфортной разработки под Android конечно пришлось еще потрудиться с настройкой окружения, но это было не очень сложно:

1. sun java 1.6 вместо open jdk,

2. побольше выделить памяти для IntelliJ Idea

3. Для эмулятора качаем Intel x86 поддержку и выбираем ее, как CPU target.

Все просто летает :)

Вместо офиса - Google Docs, справляются с любой офисной задачей.

Единственный минус: чтобы мышка работала через bluetooth приходится сначала загружаться в Windows, затем перегружаться в Ubuntu. KDE оказался просто прекрасен (2 года пользовался Gnome, месяца 3 назад установил KDE). Рекомендую.

Mint - все кто у нас его себе ставил (и я в том числе), через месяц-два все сносили, очень уж бажный.

Все Ubuntu выше 11.04 - просто какойт ужос :)

>> "Есть заманчивая альтернатива Mac OS"

Я также все больше и больше склоняюсь к переходу на Mac OS. Тем более, что в офисе валяется без дела Mac Mini :)

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

Если бы на мак можно было поставить еще и винду, я бы не задумываясь купил мак :D

Missing-male

< Но хочу сказать, что и маки глючат > Ну под них пишут люди, а не боги, так что ничего удивительного :) Если честно, МакОС как-то не впечатлила. Система и система. Может, так и должно быть - просто работает и все. Впрочем, есть и непродуманные моменты (в плане интерфейса).

< Из всего, что я перебрал > А пробовали работать на чем-нибудь RedHat-based (на CentOS, например)? Как впечатления?

Missing

> А пробовали работать на чем-нибудь RedHat-based (на CentOS, например)? Как впечатления?

Кириллические менюшки летят. Дальше можно не пробовать. (((((

Missing-male
+2

>> Для комфортной разработки ... Единственный минус: чтобы мышка работала через bluetooth приходится сначала загружаться в Windows, затем перегружаться в Ubuntu...

Осмелюсь спросить, а что тогда, простите, некомфортная разработка ?

1. Пофиг стереотипы и "общественное мнение". Инструмент не дань "моде", а средство для достижения результата. Win, Linux, Mac, что удобнее, в чем привычнее, и что наиболее эффективно для достижения конкретного результата то и надо использовать. Остальное "гламур" и не более того.

2. Ставить десктоп что б нормально изучить linux? Как по мне, это всё полумеры. Надо сразу ставить сервер, без всяких ГУИ и там "колупаться". Можно конечно и бокс по книжкам изучать, но выйдя один раз на ринг получишь опыт ни с какими книжками не сравнимый. Так и здесь, надеюсь согласитесь, что вечер, проведённый за консолью в решении необходимых задач, может "открытий чудных" преподнести столько, что до этого не дало полугодовое "нажимание кнопочек в оболочке".

0970adbfe0d28e0f0382e616e446dea5?1489766562

Сижу на Linuxе уже 7-ой год, вначале тяжеловато было, а потом ничего, притерпелся, привык :)). KDE+gvim+100500 полезных программ с разным UI - это лучшая IDE, которую я видел, и никакой коммерческий монстр рядом не стоит и не может обеспечить большую производительность меня, как программиста. Главное не забывать включать мозг! А archlinux регулярно подкидывает перчику с его обновленями pacman-а и перетасовками файлов в FHS. В результате ведь надо идти, читать новости, wiki, решать проблемы; хорошая мозгозарядка, ИМХО.

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

С автором согласен по многим позициям, проблем на десктопе вагон и маленькая тележка. Но несмотря на это Linux мне нравится:), применяю при решении задач на 95% именно эту ОС, и на работе и дома. Весьма доволен получаемыми результатами, вот.

>>> В большинстве свободных проектов вообще не проводится контроля качества и регрессивного тестирования.

Откуда такая информация? Всегда считал, что во многих крупных open-source проектах весьма серьёзно подходят к процессу тестирования, например http://www.chromium.org/developers/testing, http://ltp.sourceforge.net/. И уж точно в большинстве есть как минимум регрессионные Unit-тесты. И на выходе получается весьма качественные изделия, нужные людям.

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

Любопытно, а dev.by на каких серверах крутится?:)

Missing-male

http://ru-linups.livejournal.com/16557.html

Что называется, ППКС.

Линукс на десктопе - ЗАЧЕМ? Есть прекрасный _Юникс_ на десктопе, где не нужно курить маны и читать форумы — все и так работает. И нативный MS Office имеется — который открывает ВСЕ документы, в отличие от опенсорсных «офисов».

(Я про [Mac] OS X, если что).

P.S. Крутил и Убунту, и Linux Mint, и CentOS, и Debian. В качестве десктопной ОС — никуда не годятся, сливают даже XP, не говоря уже про «семерку» и OS X.

Missing-male

< Линукс на десктопе - ЗАЧЕМ? >

1. Чтобы поднимать свой скилл. Чаще пользуешься им "в повседневной жизни" - быстрее изучаешь.

2. Чтобы улучшать сам Линукс. Чем больше людей им пользуется, тем больше инфы о нем будет в том же инете. Быстрее будут решаться проблемы, исправляться ошибки, больше новых пользователей.

Вы можете спросить - зачем вообще развивать линукс на десктопе? Знаете, я лично не хочу, чтоб рынок десктопа был поделен между Apple и Microsoft. Должна быть бесплатная альтернатива, а то эти корпорации совсем зажрутся.

Missing

> (Я про [Mac] OS X, если что)

Установка макоси не на мак -- это 146-я, если что. (((((

Missing

70% описанных в статье проблем проистекают из 1) закрытых спецификаций железа; 2) закрытых (или намеренно опубликованных в неверном виде) спецификаций форматов и протоколов у коперастов типа адоба и микрософта; 3) целенаправленной политики по атакам на СПО (тот же адоб -- прекращение портирования новых версий флэша на линукс). Это проблемы не линукса, а антинрыночного законодательства (такого как коперастическое) и антирыночных бизнес-практик. С этим ничего не сделать, пока правительства и законодатели пляшут под дудку монополистов.


Авторизуйтесь, чтобы оставлять комментарии

© 2008-2017 Частное предприятие "Дев Бай"
Использование материалов, размещенных на сайте, разрешается при условии прямой гиперссылки на dev.by. Ссылка должна быть размещена в подзаголовке или в первом абзаце публикации.
datahata — хостинг в Беларуси