Три возможности повторного использования типового оборудования с помощью Linux

Создаём Linux-устройства из запчастей

Устаревшее компьютерное оборудование может быть слишком старым, чтобы рассчитывать на его безотказную работу, однако оно имеет стоимость для организации вне зависимости от того, где оно установлено — в офисе или дома. Узнайте, как можно реализовать эту стоимость, используя старые машины под новые задачи с помощью Linux®.

Джеффри M. Осье-Миксон, технический писатель, MontaVista Software, Inc.

Jeffrey Osier-MixonДжеффри М. Осье-Миксон (Jeffrey Osier-Mixon) — технический писатель, пропагандист программного обеспечения с открытым исходным кодом и менеджер сообщества. Он ведет блог об открытом ПО и сообщество Meld по встраиваемому Linux, а также выступает на конференциях по Linux.



16.06.2011

Присоединяйтесь к группам «зеленых» на сайте My developerWorks

Обсудите темы и поделитесь ссылками на ресурсы по теме энергосбережения, эффективности и окружающей среды в разделах GReen IT Report space и Green computing group на сайте My developerWorks.

Сделайте из мусора конфетку

Г. Питер Анвин (H. Peter Anvin), знаменитость в мире Linux, недавно перепрофилировал старую систему для использования её в качестве файлового сервера. В качестве операционной системы он выбрал Fedora из-за ее частых обновлений безопасности, системы управления пакетами на основе RPM и количества уже готовых пакетов программного обеспечения для серверов. На его системе размещается 9 ТБ новых жестких дисков, собранных в массив в конфигурации RAID 6. Старая машина для разработки, которая стояла списанной под столом, теперь выполняет полезные задачи.

Отставное компьютерное железо, даже и не очень старое, обычно представляет собой проблему. Оно уже не поддерживается, как правило — слишком медленное, чтобы идти в ногу со временем, и ненадежное в техническом отношении — особенно, если истекла гарантия. Однако оно слишком ценное для того, чтобы просто его выбросить. Во многих организациях (и домах) старым системам дают новую жизнь, отдавая их в школы или библиотеки, но очень часто получатели тоже не знают, что с ними делать, и оборудование заканчивает жизнь на мусороперерабатывающем заводе. Это не только разбазаривание ресурсов, но и, кроме того, иногда перерабатываемые компьютеры оказываются на свалках или в мусоросжигателях в так называемых странах третьего мира, создавая новую проблему под названием электронный мусор, e-waste (дополнительную информацию см. в разделе Ресурсы).

В этой статье описывается, как использовать операционную систему Linux для перепрофилирования старой, но рабочей компьютерной системы, дав ей новую жизнь в качестве сервера, универсального проигрывателя или тонкого клиента.


Перепрофилирование, шаг за шагом

При беглом взгляде процесс перепрофилирования выглядит очень похожим на любой другой процесс преобразования с участием Linux: установка Linux на машину. Это кажется достаточно простым делом, особенно с современными дистрибутивами, но трудности скрываются в деталях. Какой Linux и какая машина?

Я рекомендую следующие пять шагов.

  1. Определите требования проекта.

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

  2. Оцените возможности оборудования.

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

  3. Найдите подходящее ПО.

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

  4. Разыщите и скомпонуйте программное обеспечение, установите и настройте его.

    Запустите ваш проект в работу. Установка Linux обычно оказывается не сложнее шагов по скачиванию образа CD, записи его на диск и загрузки с него вашей системы. Следуйте инструкциям программы установки, просмотрите полезные замечания в разделе Поиск, компоновка и установка— и вперед!

  5. Обслуживайте вашу систему.

    Резервные копии, конечно же, имеют важное значение. Тем не менее, имея дело со старыми системами, держите ухо востро на случай проблем с оборудованием.


Определите требования проекта

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

Требования для файлового сервера

К файловому серверу, как правило, предъявляются следующие требования.

  • Система должна быть надежной, но не обязательно быстрой.
  • Большое значение имеет довольно объемный (и, по возможности, новый) жесткий диск, так как эта система может служить в качестве хранилища резервных копий. Вполне можно было бы посоветовать RAID, но тогда необходима его поддержка в материнской плате.
  • Требуется поддержка сети.
  • Поддержка графики и звука не обязательна, поскольку у этой системы может даже не быть монитора и колонок.
  • Для удалённого обслуживания требуется поддержка системы Virtual Network Computing (VNC), особенно при отсутствии монитора и клавиатуры.

Требования для медиапроигрывателя

Универсальный проигрыватель может быть музыкальным автоматом без монитора и клавиатуры (headless jukebox), хранящим всю вашу музыку, домашним кинотеатром со звуком 7.1 и цифровым проектором или простым проигрывателем фильмов для спальни. (Из старых ноутбуков получаются отличные проигрыватели для спальни.) В этом разделе даются некоторые мысли на тему о том, какие требования тут можно предъявить.

  • Система должна быть достаточно быстрой для воспроизведения видео.
  • Жесткий диск должен быть достаточно объёмным, чтобы вместить какой-то набор медиафайлов.
  • Если система будет воспроизводить видео, графический интерфейс должен поддерживать ваш монитор или телевизор. Это может быть что-то в диапазоне от S-video до HDMI в зависимости от того, что требуется монитору. Нужно проверить также поддерживаемые графической платой разрешения.
  • Аудиоинтерфейс должен поддерживать работу с вашим усилителем и громкоговорителями. Если это простая система для спальни с наушниками или недорогими компьютерными колонками, то можно остановить свой выбор на использовании встроенного разъема для наушников или встроенных в ноутбук громкоговорителей. Для домашнего кинотеатра в системе должна быть хорошая звуковая плата (к счастью, они обычно недорогие).
  • Сетевая поддержка требуется для скачивания файлов, но не для их воспроизведения.
  • Для воспроизведения CD- и/или DVD-дисков требуется соответствующий привод.
  • Для дистанционного управления необходим удалённый или инфракрасный интерфейс.

Требования к тонкому клиенту

Два типа систем обычно называют тонкими клиентами.

  • Выделенные тонкие клиенты. Эти клиенты не выполняют локальную обработку, а соединяются с более крупным сервером, который предоставляет как службы рабочего стола, так и приложения.
  • Автономные тонкие клиенты. Эти машины представляют собой полностью функциональные системы, используемые в качестве тонких клиентов. Службы рабочего стола предоставляются локально, но приложения (как правило, и данные тоже) размещаются где-нибудь в другом месте. Эти клиенты теперь гораздо более распространены, потому что даже мобильные телефоны могут предоставлять рабочую среду и множество приложений. Это стандартная схема для «облачных вычислений», где локальные системы используют для обработки более крупные удаленные серверы. (Дополнительную информацию см. в разделе Ресурсы.)

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

  • Система должна быть достаточно быстрой, чтобы обеспечивать работу графики и чтобы на ней работала минимальная операционная система и оконный менеджер в случае автономных клиентов.
  • Требуется сетевая поддержка.
  • Для выделенных тонких клиентов требуется сервер в локальной сети. Настройка такого сервера выходит за рамки этой статьи, но есть множество вариантов для выбора как среди дистрибутивов Linux, так и среди других ОС.
  • Для автономных тонких клиентов сервер в локальной сети не требуется, но может использоваться. Система может также использоваться как система «облачных вычислений» с доступом к информации через Web-браузер. Гостиничные и информационные киоски часто строятся таким образом.
  • Жесткий диск не требуется, но может использоваться для размещения операционной системы.

Оценка возможностей оборудования

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

Самый полезный программный инструмент для диагностирования (и, зачастую, исправления) проблем в системе — это диск Ultimate Boot CD, который, к счастью, тоже основан на Linux. Один этот CD содержит широкий выбор бесплатных инструментов для жесткого диска и сети — многие из них предоставлены производителями оборудования — все в одном месте и с удобным доступом из быстро загружающейся оболочки. Ссылку см. в разделе Ресурсы.

Убедитесь, что в системе есть все необходимые для ваших планов компоненты. В таблице 1 приводятся общие рекомендации по каждому проекту. Тем не менее не позволяйте этим рекомендациям ограничивать ваше воображение. Например, для того чтобы ваш файловый сервер работал и как маршрутизатор, и как межсетевой экран, вам, вероятно, потребуется по меньшей мере два сетевых адаптера: один для локальной сети (LAN) и один для глобальной сети (WAN).

Имейте в виду, что если в вашем проекте не требуется жесткий диск, как в случае со многими тонкими клиентами, то загрузка должна происходить с помощью CD, USB или посредством сетевой загрузки (Preboot eXecution Environment, PXE). Очевидно, что способ загрузки должен также поддерживаться оборудованием, что означает наличие привода CD/ROM для загрузки с CD, USB флэш-накопитель и поддержку в материнской плате USB-загрузки, и локальный сервер для PXE-загрузки. Поддерживаемые варианты загрузки обычно можно узнать, проверив настройки загрузки базовой системы ввода/вывода (BIOS) или посмотрев руководство.

Имейте в виду также, что если для вашего проекта требуется высококачественная графика или аудио, оборудование может создать большую проблему. Исторически сложилось так, что графические карты NVIDIA гораздо лучше поддерживались производителями, чем карты ATI, хотя ситуация понемногу меняется. Что касается аудио, стандартный звуковой драйвер ядра Linux поддерживает большое разнообразие устройств, но имеет смысл найти информацию про свое устройство, особенно если оно встроено в системную плату.

Наконец, если система для вашего проекта собрана производителем, поищите в Интернете, указав ее номер по каталогу и ключевое слово linux. Например, чтобы найти информацию о работе Linux на Lenovo ThinkPad T43, попробуйте искать по ключевым словам thinkpad t43 linux. Вы найдете уйму технических данных, а также многочисленные советы о том, как добиться работы Linux конкретно на этой системе.


Определение подходящего дистрибутива Linux

Возможно, наилучшим методом выбора подходящего дистрибутива Linux является метод проб и ошибок, так как дистрибутивы легко загрузить и опробовать на дисках LiveCD или USB флэш-накопителях. Начать все же следует с сайта DistroWatch, на котором собрана информация и факты из реальной жизни о каждом дистрибутиве (см. ссылку в разделе Ресурсы). Приведенные ниже замечания следует рассматривать скорее как общие указания, чем как жесткие рекомендации; самый лучший путь — изучать и экспериментировать.

Файловый сервер и сервер печати

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

Среди дистрибутивов, удовлетворяющих этим требованиям — Ubuntu Server Edition, CentOS, Fedora и OpenSUSE. В командной строке наиболее очевидное различие между ними состоит в системе управления пакетами, так как Ubuntu и OpenSUSE используют aptitude, а Fedora и CentOS — инструменты на основе RPM. Если у вашего сервера есть какие-то специфические нестандартные требования к пакетам, имеет смысл просмотреть для каждого дистрибутива список поддерживаемых пакетов. Однако практически любой современный дистрибутив Linux для настольной системы или сервера содержит сетевую поддержку, поддержку Samba для совместного использования файлов с другими системами, множество драйверов для оборудования и усовершенствованную систему управления пакетами и, таким образом, может функционировать как совершенно нормальный сервер.

Требования к проекту медиапроигрывателя

Для проигрывателя наиболее важным свойством при выборе операционной системы является поддержка оборудования. Точно выясните марку имеющегося аудио- и видеооборудования и поищите в Интернете упоминания о нем с ключевым словом linux, чтобы узнать, какое у других людей впечатление от работы с ним.

Затем подумайте о приложениях. Большинство дистрибутивов выходят с какими-нибудь мультимедийными проигрывателями. Выбрать можно из множества приложений в зависимости от того, что вы хотите — аудио, видео, слайд-шоу фотоснимков, просмотр телепередач или какие-то сочетания из них. Отличной платформой для связывания всего вместе является MythTV, который позиционирует себя как свободный цифровой видеомагнитофон (DVR), хотя на самом деле он делает гораздо больше и имеет активное сообщество разработчиков. MythTV поддерживается на большинстве основных дистрибутивов, но полностью раскрывает свои возможности в Fedora и Ubuntu. Даже есть версии этих дистрибутивов со встроенным MythTV, с удобными названиями MythDora и Mythbuntu соответственно. Популярна также и OpenSUSE.

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

Требования к проекту тонкого клиента

Тонкие клиенты обычно ограничены в ресурсах. И даже когда это не так, существует тенденция к отсутствию операционной системы на клиенте или, по меньшей мере, чтобы она была незаметной и быстрой. Идеальная операционная система для выделенных тонких клиентов (тех, которые в выполнении всех функций зависят от сервера, включая службы рабочего стола) должна поддерживать стандартные коммуникационные протоколы тонких клиентов, в частности Citrix и RDP (Windows Terminal Services). Многие небольшие, легкие дистрибутивы Linux удовлетворяют этому требованию, в том числе и несколько дистрибутивов, специально предназначенных для тонких клиентов.

Одним из таких дистрибутивов является Thinstation, который поддерживает многие сетевые протоколы, используемые сейчас для тонких клиентов. Она может использоваться как для выделенных тонких клиентов, так и для автономных систем. Еще один вариант — Puppy Linux. Puppy — это очень маленький дистрибутив, в котором в качестве оконного менеджера используется Xfce. Puppy лучше всего подходит для автономных систем, используемых как тонкие клиенты. См. в разделе Ресурсы ссылки на эти дистрибутивы.


Поиск, компоновка и установка

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

  1. Загрузите последнюю версию своего целевого дистрибутива и запишите его на CD.
  2. Вставьте диск и загрузите систему.

    Для того чтобы загрузиться с компакт-диска, может понадобиться изменить настройки BIOS. Следуйте указаниям программы автоматизированной установки.

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

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

  4. Настройте систему и приложения в соответствии с требованиями, поставленными ранее.

    Просмотрите параметры системы. Держите в уме все требования к проекту, выработанные ранее, и настройте систему на выполнение того, что вам нужно. Например, для предоставления доступа к файлам серверу не нужна зависимость от пользователя, авторизованного в системе. Домашний универсальный проигрыватель должен сразу загружать основной экран MythTV (или другого выбранного вами приложения). Тонкий клиент, используемый несколькими людьми, должен после загрузки просто предоставлять экран входа в систему.

  5. Убедитесь, что доступ ко всем внутренним дискам, которые нужно сделать общедоступными, предоставляется с помощью Samba.

    Дополнительные сведения можно получить в документации по Samba, а также в других статьях на сайте developerWorks, где обсуждается предоставление доступа к файлам на Linux. Совместное использование принтеров можно настроить с помощью Samba и CUPS. Убедитесь, что каждый предоставляемый в совместный доступ принтер установлен, затем сделайте к нему доступ с помощью средств Samba (см. в разделе Ресурсы учебник по печати в Linux).

  6. Для систем без монитора и клавиатуры убедитесь, что VNC и/или sshd установлены и сконфигурированы, чтобы можно было удаленно войти в систему. Обратите внимание, что в некоторых системах, в частности Ubuntu, это называется удаленный рабочий стол.

Определение непригодных кандидатов

Имейте в виду, что не все кандидаты смогут подойти. Если обнаруживается, что один из важнейших компонентов вызывает сомнения, система, вероятно, больше подходит для другого проекта, в качестве источника запчастей или просто для выбрасывания на свалку — при этом нужно помнить, конечно же, важные моменты, связанные с электронным мусором (e-waste).

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

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


Заключение

Спасти электронный лом и дать ему хорошее применение — это отличный способ сэкономить деньги, лучше познакомиться с системами, от которых вы зависите и, главное, помочь предотвратить попадание токсичных материалов или нереализованного потенциала на свалку или в топку. Универсальность Linux делает этот процесс приятным. Присоединяйтесь к нашей группе Green computing group на сайте My developerWorks и дайте нам знать, как продвигается ваш проект.

Ресурсы

Научиться

Получить продукты и технологии

  • Ubuntu является прекрасным всеобъемлющим дистрибутивом для настольных систем. Обязательно попробуйте Ubuntu Server Edition для серверов и Mythbuntu для мультимедийных проигрывателей. (EN)
  • Fedora и CentOS— это дистрибутивы на основе Red Hat, оба являются отличными платформами для файловых серверов. Для универсальных проигрывателей попробуйте также MythDora. (EN)
  • OpenSUSE— еще один прекрасный дистрибутив для настольных систем, который очень хорошо подходит для файловых серверов. (EN)
  • Thinstation— дистрибутив, специально предназначенный для тонких клиентов Linux. (EN)
  • Puppy Linux— легкий дистрибутив Linux, который хорошо подходит для тонких клиентов. (EN)
  • Ultimate Boot CD— бесплатный набор инструментов для управления системой на основе Linux. (EN)

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Linux
ArticleID=681047
ArticleTitle=Три возможности повторного использования типового оборудования с помощью Linux
publish-date=06162011