понедельник, 9 февраля 2009 г.

Десять причин отказаться от Windows.

Microsoft достигла огромного успеха со своей ОС Windows, фактически монополизировав рынок операционых систем для домашних компьютеров. Но это не означает что Windows всё ещё лучшая ОС для всех пользователей. Я собираюсь рассказать о недостатках Windows XP, и о десяти причинах, по которым я решил мигрировать на Linux.

Прежде чем вы начнёте колотить меня, я попробую объяснить вам несколько вещей.

Эта статья не является попыткой

  • Сравнить Windows и Linux. Всё-таки я пишу эссе а не роман.
  • Убедить вас что ваша любимая ОС не является идеалом. Это не маркетинговая статья.
  • Убедить вас в превосходстве Linux во всём. Это не верно.
  • Быть объективным. Если вы хотите объективности - перестаньте читать это. Будучи субъективным я не буду концентрировать внимание на отдельных проблемах в Linux.

Я хочу сделать следующие вещи:

  • Описать мелочи, которые меня раздражали в процессе использования Windows на рабочем столе.
  • Linux не идеален, однако проблем с Windows больше. Поскольку обзор субъективен - я сосредоточусь на последних.
  • Я сосредоточусь на проблема Windows, не потому что я не навижу эту систему и её пользователей, а потому что я беспокоюсь за них. То, с чем Windows имеет проблемы, спокойно работает из коробки в альтернативных системах.
  • Я не работаю в Linux-компании, я не фанатик Linux. Я использую обе системы, каждую там - где она лучше для для меня.

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

1. Настройки безопасности по умолчанию.

Каков самый лёгкий путь получения незабываемых моментов на компьютере с Windows? не делайте ничего особенного. Просто следуйте этой инструкции.

  1. Установите Windows (версия не имеет значения), или лучше позволить сделать это фирме, которая продала вам оборудование (они профессионалы!).
  2. Подключитесь к Интернет (Большой значок "e" в меню "Пуск").
  3. Займитесь интернет-сёрфингом. Посетите ваши любимые сайты.
  4. Загрузите почту, используя Outlook Express (Ещё одни значок сразу после большой "e").
  5. Не устанавливайте таких приложений как файрвол или антивирус. Помните что вы простой пользователь, а некоторые из ваших друзей ставили такие программы и их компьютеры стали медленнее. Я вас предупредил.
  6. Не устанавливайте исправлений безопасности. Система установлена профессионалами, и они говорят что она безопасна. Зачем вам это нарушать?
  7. Помните что вы должны выполнять все действия на компьютере как Администратор (учётная запись по умолчанию). Очевидно вы итак это делаете, не зная об этом.
  8. Через несколько дней (или недель - кому как повезёт) позвоните вашему другу IT-инженеру и скажите что компьютер не работает. Когда он спросит что вы делали, скажи правду - "Ничего". Когда он скажет что не может вам помочь - назовите его идиотом (он компьютерный инженер и должен знать ответ. Ведь так?) и позвоните в сервис.
  9. Не паникуйте когда в сервисе вам скажут что уже ничего нельзя сделать. Просто переустановите ОС, или лучше заплатите им за это и начните всё сначала. Второй раз всё должно пойти лучше.

Драматичная история? Не реалистичная? Вы не верите что настройки по умолчанию, рекомендуемые для обычных пользователей настолько не безопасны? Как может получиться такое, что для того чтобы спокойно путешествовать по интернету вам нужно установить множество программных пакетов для защиты от взломов и вирусов? Наконец почему возможно такое, что люди, увлечённые своим хобби, которые разрабатывают Debian, RedHat или OpenBSD смогли создать систему безопасности, гораздо более качественную чем гигант IT-индустрии? Это одна из самых интересных загадок нашего времени.

А как это делают другие?

В чём разница между системой безопасности Windows и Linux или BSD? В значениях по умолчанию! Технологически обе системы могут обеспечить одинаковый уровень безопасности. Разница в том, что большинство дистрибутивов GNU/Linux делает это намного проще и имеет более безопасные настройки по умолчанию. В качестве иллюстрации приведу несколько примеров:

  • Файрвол установлен и настроен по умолчанию. Все неиспользуемые порты закрыты. Это затрудняет проникновение вредоносного ПО.
  • Вынуждая пользователя работать в непривелегированной учётной записи, система защищает нас от случайного проникновения вируса или установки вредоносного ПО. Если у нас нет возможности устанавливать ПО, то и запускаемые нами приложения тоже не могут сделать это.
  • Сильно упрощена установка критических обновлений не только для ядра, но и для приложений. Приложения часто имеют больше дыр чем ядро.
  • Продвигаются приложения, максимально пригодные для решения задачи. Даже от других компаний. Например RedHat использует приложения Novell и наоборот. Это преимущество открытого программного обеспечения даёт пользователям самое лучшее программное обеспечение.

Говоря всё это, я должен признать что есть постоянный конфликт между безопасностью и удобством. Например необходимость войти как root для установки приложения отталкивает пользователей. С другой стороны: можем ли мы назвать пригодной для использования систему, которая падает через несколько недель? Даже ребята из Microsoft кажется начали это понимать. Грядущая Windows Vista будет иметь множество ограничений по умолчанию. Я надеюсь что моё мнение о безопасности Windows со временем измениться.

2. Простота и удобство на рабочем столе

Изящная и всегда зелёная кнопка "Пуск" в левом нижнем углу, открывающая огромное меню со всевозможными приложениями. Значки Internet Explorer и Outlook Express рядом с ней. Значок корзины на рабочем столе вместе со значками "Мой компьютер" и "Мои документы". Почему кстати они мои? Это ведь в основном документы компании, где я работаю.

Вы ещё не заметили что ваш компьютер выглядит так же, как и компьютер соседа, вашей матери и вашего помошника? Вы думаете что вы все одинаково используете компьютер? Как по вашему, вам всем необходимы одинаковые вычислительные мощности? Вероятно что на все три вопроса, правильным ответом будет "нет". Если так, то почему ваши компьютеры различаются только обоями на рабочем столе да парой ярлыков? Почему для завершения работы вы должны нажать кнопку "Пуск", а для переключения между окнами Alt+Tab? Эти решения настолько сложные, что не оставляют ресурсов для альтернативных решений?

Настольный компьютер с Windows это реально шедевр и это не шутка. Множество людей трудилось чтобы сделать его возможно более универсальным. Однако он может идеально подходить для вашего босса, которому нужна только одна кнопка для выхода в интернет, но может не подойти для вас и ваших потребностей. Ведь так? Хорошо если вы просто не знаете альтернатив. Вы можете думать что это идеал, и не видеть причин попробовать что-то другое. Однако попробовав например KDE или FVWM вы увидете насколько ограниченным и не гибким было ваше предыдущее решение.

Оконный менеджер - что это за зверь?

Если вы всю жизнь использовали Windows, то вы наверняка никогда не слышали о менеджере окон рабочего стола. Это не удивительно, так как в MS поддерживают только один менеджер, и нет возможность заменить его на какой-либо другой. Менеджер окон это такая программа, которую вы не замечаете, однако она отвечает за отображение, перемещение и изменение размеров окон ваших приложений. Среда рабочего стола состоит не только из менеджера окон, но и ряда других приложений, предоставляющих различные функции, такие как меню, значки, инструментальные панели, буфер обмена и т.д. В Linux есть как минимум три полноценных среды рабочего стола (KDE, GNOME и XFCE) и множество менеджеров окон. Каждый хорош по своему. Одни продвигают минимализм (WindowMaker, FluxBox, IceWM), другие дают максимальную функциональность (KDE), третьи пытаются предоставить простоту и удобство (Главным образом GNOME). XFCE, FVWM и EDE стараются совмещать все эти принципы. Приятно что вы всегда можете изменить свой выбор, и у вас не возникнет проблем с переносом настроек из одного окружения в другое. Чтобы перечислить все достоинства - придётся писать отдельную статью. Если вам интересны детали, то посетите ximian.org. Там есть список практически всех оконных менеджеров с краткими описаниями.

Виртуальные рабочие столы

Когда вы работаете с большим количеством документов и приложений одновременно, вы теряете возможность быстро теряете возможность управлять рабочим столом. Какое из свёрнутых окон является необходимым в данный момент веб-сайтом а какое почтовым клиентом? Даже если мы имеем только три приложения, нам всё равно приходится использовать клавиши Alt+Tab для переключения между окнами.

Виртуальные рабочие столы позволяют упорядочивать ваши приложения простым и эффективным способом, фактически позволяющим вообще отказаться от сворачивания окон. Идея проста: мы как бы имеем не один а много компьютеров и можем переключаться между ними по горячим клавишам (Например Alt+1 для первого, Alt+2 для второго и т.д.) На каждом виртуальном рабочем столе мы можем иметь множество окон приложений. Каждый рабочий стол может быть представлен в виде эскиза на панели задач, что существенно облегчает работу за компьютером.

Как пример использования нескольких виртуальных рабочих столов: мы можем начать использование с четырёх рабочих столов (в настоящий момент я использую шесть). Первый можно использовать для интернет-сёрфинга. На нём удобно расположить несколько окон браузера с различными открытыми сайтами. Второй рабочий стол - для обмена мгновенными сообщениями. Здесь у нас будут окна Skype, PSI и других IM-клиентов. Третий - для электронной почты. Сюда мы поместим e-mail клиент, например Thunderbird. На последнем, четвёртом, рабочем столе можно запустить OpenOffice.org Writer, в котором мы набираем эту статю :). Теперь нам необходимо только запомнить несколько простых сочетаний клавиш. Если мы хотим с кем-то проконсультироваться то мы жмём Alt+2 и звоним через Skype, а для чтения новой почты достаточно нажать Alt+3.

Конечно сначала это будет не привычно, однако через неделю вы уже не сможете работать иначе. Эффективность работы возрастает многократно (особенно при использовании огромного количества приложений одновременно). Казалось бы что можно сказать что это начало новой эпохи на рабочем столе, однако всё не так просто. Эта модель очень распространена в GNU/Linux, однако в Windows её нет. Конечно там есть некоторое количество приложений, эмулирующих работу с несколькими виртуальными рабочими столами, однако ни одно из них нельзя назвать полностью пригодным для использования. Я проверил более двух десятков подобных приложений и нашёл что только Virtual Dimension ещё немного близок по функциональности к аналогам в Linux, остальные оставляют желать лучшего. Никаких эскизов в реальном времени. Медленное переключение между окнами. Но всё-таки я рекомендую это решение, как одно из средств в вашей борьбе с вашим компьютером.

Фокус окон

Фокус окна определяет какое окно сейчас активно. В большинстве ОС и их менеджеров окон активное окно всегда поверх всех других. Это разумный подход, но не всегда эффективный. Представим следующую ситуацию: Мы читаем некоторую статью в Интернет и болтаем с другом в чате. Когда мы кликаем по окну браузера оно выходит на передний план, и окно диалога оказывается скрытым. Это оказывается неудобным для многих пользователей. Решение простое: делать окно активным при наведении курсора мыши. Такое решение позволит делать окно активным (без вывода на передний план) при наведении на него курсора мыши. В этом случае окно диалога не будет скрыто, а просто будет не активным. Это позволит нам нормально прокручивать статью и общаться с другом не испытывая неудобств.

Ещё одно хорошее решение есть в менеджере FVWM: возможность на ходу конфигурировать менеджер окон. Даже клик мыши по окну не передаёт ему фокус. Вместо этого нужно нажать на заголовок окна держа кнопку Alt и выбрать действие. Это особенно полезно когда нам нужно некоторое окно поверх остальных (например окно чата, как было предложено выше), но одновременно используется другое приложение. Обычно такое не реализуемо и приходится очень много нажимать Alt+Tab. Сначала такая модель поведения будет очень не привычной и возможно даже не удобной, однако через некоторое время скорость работы возрастёт и будет даже больше чем с классическими вариантами фокусировки. Такая функциональность изначально была применена в FVWM, однако вы можете использовать её и в KWin и в любом другом менеджере окон. В этом и есть свобода Linux: разработчики могут сотрудничать и использовать решения друг друга.

В Windows вы такое никогда не настроите. Вообще-то там такая опция есть, но она скрыта. Почему? Потому что она до сих пор не работает нормально.

Если вы всё же хотите попробовать включить "focus-on-mouse-over" то вам нужно установить дополнительный инструмент - TweakUI (Из состава Microsoft Power Tools). Однако эта функция имеет ряд проблем. В том числе проблемы в некоторых случаях с измененим размеров окон.

Главное меню

Мы нажимаем кнопку "Пуск" чтобы запускать приложения, открывать документы и настраивать систему. Зелёная кнопка в левом нижнем углу экрана была нашим другом много лет и остаётся им теперь. Но действительно ли хорошо иметь одну кнопку для всего, или лучше просто ввести имя желаемого приложения и выполнить его? Это может быть быстрее чем обзор десяти вложенных меню. Или может вы хотите иметь маленькое меню с основными приложениями? Или возможно средняя кнопка мыши будет лучше?

Я вообще не использую главное меню. За исключением ситуации когда я не помню название приложения. Тогда я ищу её в соответствующем разделе меню. В любом другом случае я использую аплет GNOME DeskBar, который не только упрощает запуск приложений, но так же ещё и находит и открывает файлы и папки, с которыми я в данный момент работаю в файловом менеджере. Тоже самое я могу делать в KDE, FVWM, FXCE, MacOS X - всюду, кроме Windows. Уж слишком сильна там позиция одной кнопки.

Я не хочу сказать что главное меню это плохо. Подобное меню есть в GNOME, KDE и многих других средах рабочего стола. Точно так же я не хочу сказать что рабочий стол Windows уж совсем не удобен для использования. Хотя я и ненавижу многое из того что в нём есть - он вполне прилично работает у многих людей. Здесь и ответ: работает у большинства, но должно работать и у меня точно так же? Основная проблема Windows - последовательность. Вы практически ничего не можете изменить, потому как Microsoft, создавая свой продукт, готовила его не для расширяемости, а на среднего пользователя. Я могу использовать значения по умолчанию, но если я всё же хочу настроить систему под себя? Есть много вещей которые мне хотелось бы видеть на своём компьютере. И Linux давал мне это. В Windows нет выбора - это её основная проблема.

Да. Я знаю про сочетание Win+R, которое запускает простеньки апплет, в котором мы можем вводит названия приложений (например iexplore), но вы пробовали там набирать FireFox или Opera? Или любой другое приложение, расположенное за пределами папки Windows? Это не работает потому, что апплет способен запускать только приложения, которые лежат в папках, перечисленных в переменной окружении %PATH%. Если мы хотим это делать - нам нужно изменять эту перменную после установки каждого нового приложения. Это не удобно. Не так ли?

Установка программного обеспечения

Я часто слышу что установка программного обеспечения в Windows настолько проста, что её уже трудно улучшить. Доля правда в этом есть. Действительно, достаточно просто: загрузить пакет программы из интернета, запустить инсталлятор, несколько раз нажать "Далее", потом "Готово" и всё. Новое приложение установленно и им можно пользоваться. Что ещё тут можно упростить?

Этот метод прекрасен если мы точно знаем что хотим установить. Мы можем найти через Google официальный сайт проекта, зайти на него и в разделе загрузки скачать инсталлятор. Однако всё становиться сложнее если нам нужен "Проигрыватель компакт-дисков" или "Хороший редактор ID3-тэгов". В этом случае мы обойдём множество сайтов, выбирая нужную нам программу. Это будет головной болью даже для опытного пользователя Windows. Особенно если мы хотим быть уверены что программа не содержит вирусов и проч.

Представьте что вам не нужно такого поиска, и что все приложения собраны в единый репозиторий, в котором вы можете найти всё что вам нужно. Вы можете читать описание и тут же устанвливать понравившееся приложение. Добро пожаловать в GNU/Linux!

Менеджеры пакетов и репозитории

Подход выбранный большинством дистрибутивов Linux - производитель ОС должен заботиться о качестве программного обеспечения. Например в Ubuntu чтобы установить программное обеспечение (Например GIMP) достаточно запустить апплет установки/удаления программ или менеджер пакетов, выбрать приложение из списка (который разделён на категории для облегчения поиска) и подвердить установку. Программа автоматически будет загружена и установлена. После этого мы можем найти приложение в соответствующем разделе меню (Например Графика -> Редакторы -> The GIMP). Просто, не правда ли?

Единые репозитории кроме удобства имеют ещё одну выгоду. Приложение, заражённое вирусом, практически не реально внести в официальный репозиторий. Я лично боюсь устанавливать неизвестное ПО в Windows именно из-за выского риска заражения системы. Единые репозитории уменьшают эту вероятность, и именно поэтому многие профессионалы считают это способ лучшим для установки ПО.

OK. Но сколько приложений доступно из таких репозиториев? Что мы не сможем там найти? В Debian (и Ubuntu) в репозиториях содержиться около десяти тысяч пакетов, доступных для мгновенной инсталляции несколькими щелчками мыши. Очень трудно найти открытую программу, которой нет в репозитории. Исключение - закрытые приложения, такие как Acrobat Reader, Java и Real Player. Большинство из них может быть установлено из неофициального репозитория, или вы можете воспользоваться инсталлятором (Windows-подобный вариант).

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

C:> win-get install vplayer gimp cygwin xvid vlc

Посмотрите на это. Я надеюсь что Microsoft наконец поймёт что такие архивы программного обеспечения не являются чем-то плохим. Почему бы не сделать инсталляцию других программ столь же простой?

4. Обновления системы.

Ошибки и уязвимости в программах находят каждый день и пользователям часто приходится "патчить" приложения. Чтобы остаться в безопасности каждая операционная система должна быть вовремя обновлена, избавлена от вирусов. По той же причине остальные программы (браузеры, офисные пакеты, интернет-пейджеры и т.п.) также должны быть регулярно обновлены. Мы рассмотрим способы обновления Windows и сравним с GNU/Linux. Все сталкивались с Windows Update (если вы в первый раз слышите это название можете считать себя счастливчиком). Трудно не обращать внимание на всплывающее окно которое все время выскакивает когда я пытаюсь сделать какую нибудь работу. Кроме того, это действительно работает очень хорошо - все последние обновления для моей великой Windows скачиваются автоматически. Несколько кликов и перезагрузка (только бы не забыть сохранить документы) и я снова в безопасности, по крайней мере до следующего обновления. Я прав?

Я вас разочарую. То что что мы только что скачали - это всего лишь несколько заплаток безопасности для ядра и обновления некоторых компонент Windows. Если вы не используете Internet Explorer, Outlook Express или Windows Media Player (надеюсь, прочитав эту статью вы не будете использовать саму Windows) все эти обновления вас не касаются. Таким образом Windows Update дает лишь чувство безопасности. Если вы хотите действительно безопасную ОС, вы должны вручную обновить все приложения, которые вы обычно используете, включая файрволл, браузер, все мессенжеры, программы пиринга и все остальные приложения имеющие доступ к Интернет. Но когда конкретно обновлять? Поздравляю! Если вы действительно хотите быть в безопасности, вы должны ежедневно следить за сайтами типа Secunia, и следовать инструкциям с этих сайтов. Когда будет найдена уязвимость в каком либо приложении которое вы используете, вам придется установить патч или новую версию программы. Вам интересно как один человек может найти время чтобы сделать все эти операции? На самом деле никто не может. Большинство компьютеров по всему миру работают незакрытыми уязвимостями и с небезопасным ПО, иногда из-за недостатка знаний, иногда из-за недостатка времени.

Хорошо, но почему эта проблема не была до сих пор разрешена? Наверно было бы намного проще, если бы изготовитель операционной системы (например Microsoft) предоставил инструмент для автоматического обновления всех программ установленных на компьютере? К сожалению, такие вещи существуют только в мире GNU/Linux.

Почему так происходит? Неужели Microsoft хочет чтобы вы запускали программы с незакрытыми уязвимостями и постоянно подвергались опасности? Наверное нет. Однако проблема не так уж проста.

Большинство ПО, которое вы устанавливаете в GNU/Linux, представлено в виде пакетов, собранных создателями операционной системы. Обновление этих пакетов так же легко и автоматизировано как установка или удаление. Пакетный менеджер, такой как APT или yum без проблем справляются со всеми этими задачами. Они могут проверить наличие новых обновлений, и, если такие есть, скачать с публичных хранилищ и установить на вашу систему. Все делается автоматически и без вашего вмешательства! Эти действия могут различаться в дистрибутивах, но основная идея та же самая. Например в Ubuntu, сообщения о наличии обновлений и готовности установки патчей выводятся на системный трэй. Этого достаточно для принятия изменений в один клик (по причинам безопасности будет запрошен пароль) и установки обновлений за несколько минут.

Было сделано несколько попыток сделать такой же инструмент для Windows. Например Google имеет собственный пакет Google Pack. В нем собраны бесплатные программы от Google и их некоторых партнеров. Обновления выполняет Google Updater, но он, конечно же, заботится только программах входящих в Google Pack. Также есть много программ, которые имеют собственную систему обновлений. Она есть у Firefox, у большинства файрволлов и антивирусных программ. Однако без ручной работы, которую я упоминал выше, нельзя быть уверенным что все ПО установленное на вашем компьютере с Windows безопасно и обновлено.

Реализовать такой инструмент тяжело, т.к. большинство программ которое запускают пользователи Windows - несвободно. Оно может быть под различными лицензиями (freeware, shareware, adware иди полностью коммерческим), но обычно поставляется независимыми изготовителями, которые не позволяют заглянуть в код и сделать собственный пакет. Для справедливости, надо сказать что эта проблема иногда возникает и в GNU/Linux. Но в Linux вы должны вручную обновлять только те приложения, которые не установлены с помощью пакетного менеджера (например Picasa или Crossover Office) и свободного ПО собранного из исходников (что бывает довольно редко т.к. репозитории основных дистрибутивов содержат большинство существующих программ программ). В этом случае, менеджер пакетов не может обновить ПО для вас, т.к. он не знает о приложениях установленных нестандартным образом. О безопасности этих приложений могут позаботится либо вы, либо непосредственно программа.

Большинство программ поставляемых с GNU/Linux полностью свободно и вы, используя умный пакетный менеджер, можете получить автоматический доступ ко всем заплаткам. А в Windows... В Windows вы все ещё делаете много лишней ручной работы.

5. Отказы системы - исправление ошибок и аварий.

Каждая ОС иногда отказывает. Никто не может быть от этого застрахован используя ПО высокого уровня сложности, даже Microsoft. Они могут возникнуть по многим причинам - иногда беспроводная сеть останавливает работу без видимых причин. В другой раз компьютер не восстанавливается из спящего режима. Драйверы могут быть нестабильными, если они плохо написаны или применяются к не поддерживаемому оборудованию. Некоторые программы при установке переписывают настройки других программ, вызывая неправильное поведение. Существует очень много причин для таких инцидентов. Я уверен что все хотя бы раз получали странное сообщение от системы с некоторой информацией что "что-то выполнило недопустимую операцию" или даже пустое окно при загрузке вашей ОС.

Это случается в GNU/Linux, MS Windows, MacOS, Haiku, Syllabe и в других. Операционная система ничего не может с этим сделать. Однако эти ОС могут дать средства чтобы решить эти проблемы стандартным способом. Буду откровенен. MS Windows это система в которой я не могу диагностировать большинство проблем. Мне жаль, но я не знаю на что мне смотреть при отказе драйвера или если какая-либо программа работает нестабильно. Действительно не знаю. И вот почему.

Полная автоматизация.

Windows была спроектирована для пользователей с "нормальными" умственными способностями. Это означает что лучше скрыть большинство низкоуровневых операций, таких как монтирование файловой системы, запуск демонов (сервисов запускаемых в фоновом режиме) или даже установка драйверов (концепция "plug&play"). Windows всегда пытается сделать это автоматически. Другое правило Microsoft говорит что это не дело пользователя принимать решения, она или он недостаточно компетентны. Это касается таких вещей как выбор файловой системы, звуковой системы, рабочего окружения, выбора приложений по умолчанию, и выбора настроек и т.д. Это все заставляет задуматься (говорю без иронии). Полная автоматизация - это то что должна выполнять операционная система для десктопов. Так что Microsoft делает отличную работу в принятии решений за своих пользователей и все делает без знаний и вмешательства пользователей. Этот подход делает жизнь большинства неквалифицированных пользователей намного легче - за них бесплатно решают одну проблему. К сожалению (всегда есть одно "но"), есть большая проблема с этим подходом. Когда волшебство автоматизации отказывает, обнаружение причины отказа может быть адски трудным. Привыкая к автоматизации, мы блаженно доверяем операционной системе. Мы не знаем какие операции выполняет операционная система, поэтому мы вряд ли найдем причину проблемы, если что-то идёт не так. На самом деле трудно найти причину если даже не знаешь куда смотреть!

Большинство дистрибутивов GNU/Linux работают по другому. Волшебство все еще здесь, но только пользователь решает использовать или нет ту или иную вещь. Следуя этой концепции, большинство операций выполняемых помощниками и фоновыми процессами без проблем могут быть выполнены вручную редактируя конфигурационные файлы или используя некоторые низкоуровневые консольные программы. Пользователь которому нужна автоматизация по прежнему её получает, но он не обязан использовать это! Думаю, различия уже понятны.

Системные логи.

Пытаться обнаружить причину ошибки в MS Windows - это как искать иголку в стогу сена. Основная причина этого - недостаток детального логгирования системы, для регистрации всех инцидентов которые возникают во время работы ОС. Напротив, GNU/Linux каждый раз когда ОС обнаруживает какой-нибудь несовместимый видеодрайвер, ошибочную сетевую конфигурацию или ссылку на несуществующий/защищенный файл вносит запись в специальный лог, который объясняет что произошло. Это делает легким анализ обнаруженной ошибки и подготовку плана восстановления. Даже если сообщение об ошибке для вас ничего не значит, всегда есть большой шанс что оно будет понятым специалистом (вы можете связаться с ними на форумах, IRC и т.п.). Даже создатели систем UNIX в далеких 70х понимали что хорошее логирование это ключевой фактор для ОС. К сожалению, в MS Windows по прежнему не хватает функциональности и редко используемая система журналирования событий доступная в XP вызывает лишь улыбку у экспертов UNIX.

Отладочный режим

Большинство Windows программ (даже такие простые как Notepad или Paint) имеют закрытый исходный код который более или менее препятствует возможности выполнить серьезную отладку и поиск ошибок. Проприетарные приложения предназначены только для работы. И если они не работают, изготовитель должен исправить ошибки, что может занять месяцы или даже не произойти. C другой стороны, программы с открытым кодом созданы сообществом. Они обычно позволяют запускать приложения в отладочном режиме, который позволяет видеть пользователю все операции которые выполняет программа в данный момент.

Восстановление в режиме командной строки.

Консоль это мощный инструмент GNU/Linux и UNIX и я собираюсь детально раскрыть ее роль в части III этой статьи. Сейчас я лишь хочу сослаться на то что она незаменима в случае системного сбоя.

Они все время случаются и затем графическая среда перестает отвечать на движения мыши и нажатия клавиш. Обычно проблема в том, что приложение (процесс) занимает все ресурсы процессора, делая другие процессы недоступными. Если же проблема более тяжелая, например если программа входит в бесконечный цикл или пытается использовать неправильный драйвер, только выбор процесса из всех остальных может легко его закрыть. В Windows вы это делаете нажимая CTRL+ALT+DEL и вручную закрывая программу из окна Диспетчера Задач. К сожалению если Диспетчер Задач не отвечает, вы ничего не сможете ничего сделать, кроме ожидания.

Но только не в GNU/Linux. В Linux вы всегда можете свернуть графическую оболочку и переключиться в консоль нажимая CTRL+ALT+F1. Обычно это работает даже если GUI не отвечает. Когда же вы залогинены в консоли вы можете легко проверить какая программа взывает нестабильное поведение (для этого будут полезны команды top, ps, and lsof) и вручную закрыть ее (kill -9 process_id). Кроме того, даже если невозможен переход в консольный режим или консоль работает очень медленно (это может случится в очень тяжелых случаях) вы по прежнему можете удаленно соединиться к своему компьютеру с другой машины и выполнить те же команды. Это прекрасно работает в большинстве случаев и может сохранить ваши драгоценные данные от перезагрузки. Меня всегда удивляет что после закрытия "плохих" приложений компьютер восстанавливается так, как будто ничего не произошло и я могу немедленно возобновить работу.

Хорошая вещь, вы так не считаете? В Windows она имеет статус: не реализовано.

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

6. Производительность.

Производительность... Это очень сложное понятие. Очень выгодно иметь высокую производительность, поэтому я хочу поговорить с вами насчет моего опыта использования Windows и Linux на моем компьютере. Я всегда проверяю все устройства которые хочу купить на их совместимость с Linux (обычно совместимость с Windows есть всегда). При использовании Windows XP меня всегда добивает одна вещь. Она действительно медленная! Даже на компьютере имеющем Pentium III с 256 МБ оперативной памяти. B это не самая старая конфигурация. На еще более старом железе Windows обычно нельзя использовать. Если вы хотите использовать Windows с 128 МБ (или меньше) памяти, благоразумнее выбрать одну из старых и не поддерживаемых версий (например Windows 98) Это сделает ваш компьютер уязвимым для сотен червей и вирусов если вы соединитесь к интернет. На самом деле, соединение с интернетом из Windows 98 это область энтузиастов экстремального спорта и признак самоубийц.

Так почему же Windows XP такой медленный? Есть много причин. Во-первых, если вы хотите безопасно соединиться к Интернет вам нужен антивирус и персональный файрволл (встроенный - игрушка извините-файрволл-только-в-один-конец) и некоторые средства против программных шпионов. Эти вещи очень замедляют систему, особенно когда запущен антивирус-монитор и у вас нет быстрого доступа к жесткому диску и тонны неиспользуемой оперативной памяти не используется. Во-вторых, благоразумно использовать использовать более легкий оконный менеджер чем в Windows. Microsoft решил за нас какая оконная система лучше для использования и сделал очень трудным (даже невозможным) запустить альтернативы. Специальные дистрибутивы GNU/Linux могут работать даже на ПК с 486 процессором и 8 МБ оперативной памяти и его конфигурации 15 летней давности! Для этого, вам нужен умный дистрибутив (такой как Damn Small Linux или DeLi Linux), они по прежнему доступны, до сих пор используются (очень важно для безопасности) и поддерживаются. Более того, без потери производительности все современные дистрибутивы могут быть установлены на компьютеры имеющие Pentium II с 128 МБ памяти. Будьте уверены, ваш старичок не будет отвергнут как в XP с его "красивым" оформлением окон, и вы сможете использовать его для реальных задач а не без длительного свопинга (в случае использования Windows 2000 или XP) или синих экранов и потери данных в случае ранних Windows.

Последняя версия ОС от Microsoft - Windows Vista будет полностью не пригодна для старых компьютеров, поскольку она требует как минимум 1GHz-процеесор и 512MB оперативной памяти. Linux, благодаря модульной архитектуре ещё долго будет работать на старых компьютерах. Таким образом владельцы компьютеров с Windows 2000/XP должны будут принять решение: купить новые аппаратные средства или использовать устаревшую и не поддерживаемую ОС. Возможно миграция на Linux будет тут единственным разумным выбором.

Комментариев нет:

Отправить комментарий