![]() |
![]() ЛУЧШЕЕ ИЗ ЛУЧШЕГО
ДЛЯ ЛЮБОПЫТСТВУЮЩИХ
- Knoppix - ДЛЯ НАЧИНАЮЩИХ
- Русский Комплект - ДЛЯ ОПЫТНЫХ
- ASP Linux - ДЛЯ ПРОДВИНУТЫХ
- Debian - ИГРЫ
Новогодний комплект ПРИЛОЖЕНИЯ
- OpenOffice.org -
![]() ![]()
МАРТ
(2003 - 2005) ![]()
- Шаг 1 - ![]() ![]()
![]()
ПИНГВИН В КАРМАНЕ ![]() ![]() ![]() WINDOWS-ПРОГРАММ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Алексей Паршин, Сан Франциско, май 2004 Я не знаю как Вы, а я успел попробовать по крайней мере несколько различных операционных систем Linux. Началось все с RedHat (ну, это классические грабли), потом был Mandrake (это было неплохо, в общем), затем промелькнули Black Cat и SuSE. Казалось бы, и версии были разные, но всё время хотелось чего-то более программерского, что ли. Что не нравилось? Да вот делаешь себе систему, настраиваешь её под себя, а потом появляется супер-пупер-бета версия (здесь подставьте свою любимую программу) и хочется сразу попробовать, но... Glibc или libc устарела или требуется куча пакетов, не входящих в любимый дистрибутив (rpm.org здесь неплохо выручает), и все их надо аккуратно поставить. Это достаточно часто ведёт к конфликту версий и заканчивается обновлением всей системы. А если я так не хочу? Я увидел Gentoo первый раз на LinuxWorld в Сан Франциско. Лохматый парнишка восседал на участке 4 на 3 метра перед парой мониторов. На мониторах крутилась пара игр, и рыбка попалась – я подошел и стал выяснять детали. Сначала было похоже, что это еще одна маленькая команда, пытающаяся сделать свой маленький Linux (как AuroraLinux, например). Потом стало интересно – оказалось, что Gentoo может работать на Sparc, причем на любых (что уже прикольно), и понимает разницу между Sparc и Ultra Sparc (ну и, конечно, различает любой Pentium и AMD). Что значит различает? Вся установка ведётся компилированием из исходного кода, и в настройках компилятора вы сами обьявляете оптимизацию – по типу процессора, типу оптимизации кода. Хотите – задаёте банальный Pentium, и всю систему потом можно использовать на любом Pentium и выше, а хотите – обьявляете свой процессор (скажем, Athlon) и все оптимизации – специально для него. Работать будет заведомо быстрее чем generic дистрибутив из коробки. Дальше – больше. Оказывается, в Gentoo можно очень неплохо задавать различные опции устанавливаемых программ – в редакторе опций ufed. Взять, хотя бы, мой любимый unixODBC. Он нужен для обеспечения работы с базами данных через ODBC-протокол. Если ничего не задавать в опциях установки, поставятся как сами библиотеки ODBC, так и графический менеджер настроек ODBC. На сервере он не нужен – проще руками подправить odbc.ini, а его установка требует также ставить QT и kdelibs. Убираем в ufed отметки напротив KDE и QT, и всё – поддержка GUI выключается, и установка становится намного быстрее и компактнее. Ну хорошо, а что вообще включено в Gentoo? Ответ парадоксальный – всё и ничего. Сам установочный диск включает только базовую систему – командная строка, сеть и компилятор. Вся установка заключается в разбивке дисков, установке базовой системы (просто un-tar), сетевых настроек, компиляции ядра и загрузчика (grub или lilo), после чего всё готово к установке собственно программ. Gentoo включает специальную базу, называемую portage, с описанием URL сайтов загрузки исходного кода программ и зависимостей между ними. Все зависимости удовлетворяются автоматически. Так, например, если в настройках ufed указано, что нужна поддержка Samba, а устанавливаете вы Midnight Commander, который способен соединяться с Samba, то команда: emerge mc поставит сначала всё, что необходимо, включая Samba, а потом и Midnight Commander. Где Gentoo все это возьмет? - Прямо из Internet. Gentoo обычно сначала закачивает исходный код с сайта разработчика или зеркала Gentoo, затем накладывает на него модификаторы (patches) для совместимости с Gentoo и, наконец, компилирует и устанавливает. Чем это хорошо? Популярные дистрибутивы всегда пытаются заключить компромисс между желанием впихнуть побольше полезных программ и обьемом дистрибутива. Если Вы вдруг попробуете впихнуть все программы, доступные Gentoo, на CD – их понадобится штук 20. При этом весь этот набор программ устаревает в течение нескольких недель – появляются новые версии. Gentoo автоматически ставит свежие версии программ. Для любителей острых ощущений есть специальный способ задать установку стабильных или нестабильных версий пакетов. Причём, в отличие от Debian, можно смешивать стабильные и нестабильные пакеты. Т.е., если я хочу всю систему иметь стабильной, а один пакет – самый-самый свежий, то можно просто "сказать" из командной строки: ACCEPT_KEYWORDS=”~86” emerge mc и будет поставлен самый свежий Midnight Commander, известный в portage. Откуда portage узнаёт про новые версии? Для этого есть команда: emerge sync обновляющая portage периодически, например, из cron, раз в сутки, загружая информацию о новых пакетах и удаляющая информацию об устаревших пакетах. После этого можно использовать прекрасную возможность обновления всех пакетов, которые вы устанавливали (-u значит update): emerge -u world Из-за вот этой последней команды я, собственно, и стёр Mandrake со всех моих серверов и рабочих станций. Всего одна команда позволяет легко и непринуждённо держать всю систему в состоянии 'up-to-date'. Когда в ComputerWorld online вышла статья про проблемы в OpenSSH определённой версии – я слегка обеспокоился. Как обычно, у меня стояла именно эта версия OpenSSH. К счастью, на двух моих самых важных серверах уже стоял Gentoo Linux. Я всего-то набрал: emerge -up world и тут же (через 2-3 минуты) получил список пакетов, для которых есть обновления. Несмотря на очень короткий срок с момента обнаружения проблемы в OpenSSH – примерно 2-3 дня, обновление для OpenSSH уже было внесено в Gentoo и я смог немедленно его установить. Никакая перезагрузка сервера при этом не потребовалась. Есть и еще полезные возможности в системе. Допустим, что у Вас в системе по каким-то причинам пропал (или испорчен) один из файлов. Хорошо, если вы знаете в какой пакет этот файл входит. А если нет? База Portage содержит для каждого пакета отдельную директорию, в которой содержится файл CONTENTS. Достаточно лишь поискать (командой grep, например) имя интересующего файла в файлах CONTENTS в /var/db/pkg и поддиректориях. После того, как имя пакета найдено, можно просто установить пакет заново и все его файлы будут переустановлены: emerge my_package Gentoo – система с огромными возможностями. А что если что-то не получается? У меня есть богатый опыт вопросов по Windows-системам, не находящих ответа даже в Microsoft. Ситуация с бесплатными Linux тоже не ясна. В RedHat по вопросам поддержки можно обращаться, если у вас есть контракт. В Mandrake – не знаю. А в Gentoo? В Gentoo есть два способа решить проблемы с программами (кроме RTFM на сайте, разумеется). Первый способ – это BugZilla. После того, как вы зарегистрировались на сайте Gentoo (бесплатно), вы получаете возможность посылать баг-репорты. Если пакет, который вам нужен, не ставится, обычно в Gentoo вносятся исправления в пределах от 1-го до 3-х дней. Вы получаете уведомление о том, что проблема решена, и можно делать emerge или вам сообщается обходной путь установки. Уже неплохо. Есть ещё и второй способ – Gentoo forums. В моей практике, ответы на мои вопросы находятся в форуме в течение 10-15 минут, поскольку на каждые грабли в мире уже кто-то когда-то наступил. Ну и последний больной вопрос, который меня очень волновал – как в Gentoo с Великим и Могучим? Неплохо, надо сказать. Во всех программах обеспечен ввод на русском языке, если необходимо. Переключатель клавиатуры входит и в Gnome, и в KDE. Печать на русском языке – через CUPS (сервис печать) и драйверы GIMP print. OpenOffice работает на русском языке. Я не любитель включать русскую locale, но и там вроде всё в порядке. Opera, Mozilla работают нормально как с русскоязычными сайтами, так и с почтой. Gaim, GnomeICU работают нормально, позволяя общаться с Windows-машинами через ICQ на русском языке. Полгода назад, на последнем Linux World, я опять встречался с разработчиками Gentoo. Одному из них я сказал: Gentoo – это лучшее что случилось со мной за последние 3-4 года. По-моему, он мне не поверил. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
При частичной или полной перепечатке, переводе, переработке материалов cайта ссылка на Linux.su обязательна (c) Linux.su 2003/05 |