Алексей Федорчук
1999, лето
Нежное чувство к Линуксу начал испытывать очень давно. И, подобно большинству аналогичных эмоций, чувтсво это было абсолютно иррационально. Ведь почему можно использовать систему, которая до недавнего времени безусловно принадлежала к компьютеному underground'у? Причин может быть много. Кроме, конечно, самой тривиальной - только эта система позволяет вам решить ваши же практические задачи.
Для одних это - просто привычка, привитая соответствующим базовым образованием. Других в Линуксе привлекают ее многочисленные и неоспоримые достоинства (наряду с не менее неоспоримыми недостатками). Третьи видят в нем символ борьбы со вселенским злом, воплощаемым известным BG и его воробушками (пардон, окошками). Наконец, для четвертых это способ возвысится над толпой, юзающей ДОС-Уындоуз и прочие Полуоси.
В моем случае ни один из этих факторов места не имел. Образование у меня - полугуманитарное; в ходе его я несколько часов пообщался с машиной Мир-2, разговаривающей на языке Алгол - и все. О достоинствах (как, впрочем, и недостатках) системы я судить не мог за отсутствием личных впечатлений (а написанному, даже не пером, а ASCII-кодом, я разучился верить еще во времена развитого социализма). К Биллу Гейтсу и продукции Микрософт идиосинкразии тоже не испытывал: все же он не хуже прочих акул капитализма, просто повезло ему больше. А уж стремления возвысится над массами у меня не было и подавно (как сказал один из персонажей Олега Куваева, отмаялся величием в юности).
Тем не менее под обаяние слова Linux я попал сразу, как только вычитал его впервые в Мониторе (помните, был такой в бозе почивший компьютеный журнал) за 1994 (если не ошибаюсь) год в статье Водолазского (того самого, который потом написал первую отечественную книжку про Линукс). А уж после пары статей в Мире ПК (Врублевского и Хименко, они у меня до сих пор храняться) я трердо решил, что когда-нибудь эта система будет стоять на моей машине.
Конечно, сыграло свою роль и это сладкое слово Свобода, ведь большую часть своей жизни я прожил все-таки при советской власти. Если, конечно, под Free Software понимать, вслед за Ричардом Столлменом, не бесплатное пиво, а свободное слово.
Вернее, даже не столько свобода, сколько - независимость (как резонно отметил Александр Дюма-отец, это - разные вещи). Ведь максимальная степень личной независимости (вернее, минимальная - личной зависимости) - это то, к чему я с переменным успехом стремился на протяжении всей своей научной карьеры. И к которой приблизился только благодаря приобщению к компьютерным технологиям. Пусть и в ДОС-Виндовом варианте.
А тут - тебе обещают независимость от произвола производителей программного обеспечения. К тому времени у меня создалось стойкое убеждение, что каждая новая версия любого прикладного софта становится не столько лучше, сколько - больше. И в основном за счет тех функций, которые лично мне (и, смею утверждать, большинству пользователей) - не нужны.
Маленькое отступление: типичный пример - современные офисные пакеты. Ну скажите на милость, на кого они расчитаны? Человек, использующий все изобилие возможностей форматировая современного Word'а или WordPerfect'а, явно не нуждается в инженерных функциях QuattroPro или финансовых - Excel'а. А бухгалтер, верстающий в Excel'е годовые отчеты своей фирмы, вряд ли пишет в Word'е что-нибудь сложнее докладной записки начальству. И ни тот, ни другой, наверняка, не делают презентаций результатов своего труда в PowerPoint'е. А если и составляют базы данных в Acsess'е - то это каталог личной библиотеки или содержимого винного погреба.
Однако поначалу бросаться с головой в Линуксовый омут было страшно. Литературы (на русском языке - "а по ихнему я плохо читаю", с тех пор как перестал по ихнему писать) - не было. О Сети, в которой, согласно помянутым статьям, информации о Линуксе - что грязи, я имел представление сугубо умозрительное - на службе это полагалось блажью, а дома, вследствие селянского образа жизни, и телефона-то не было. И - ни одного знакомого, имевшего хоть какое-то представление о UNIX'е вообще.
Конечно, когда я начинал приобщение к компьютерному миру в лице IBM PC-XT и DOS 3.*, тоже не было почти ничего, кроме известного произведения Фигурнова; и найти его - было посложнее, чем свежеоткопанный нашими книгоиздателями детектив Чейза. Спросить (в моем окружении) - тоже особенно не у кого. Однако ДОС для своего освоения, все же, требует лишь минимума аккуратности и здравого смысла. Линукс же устрашал обилием функций, выраженных словами, которых я и знать то не знал.
Ситуация изменилась, когда у нас на службе где-то в 1996 году усилиями дяди Жоры (Сороса) и группы товарищей появился выход в Сеть. Одновременно с этим умелец из дружественной конторы сваял нам веб-сервер под Линуксом (Slackware 3-й версии, на ядре 2.0.сколько_то; к слову сказать - пашет по сей день). То есть оба главных источника информации (Сеть и личный контакт) появились. И я решил - пора.
Примерно в это же время появилась и первая генерация книжек про Линукс. Сопровождавшихся, как правило, разными вариантами более или менее полных дистрибутивов. Так что первое, что попало мне в руки - это Slackware в качестве приложения к отечественной черно-красной книжке Шойхера и Caldera Linux (еще не Open - тогда это был Red Hat практически цельнотянутый) вместе с переводным руководством Педерсена, тогда еще однотомным. Позднее у меня оказались УрбанСофтовский диск аж с двумя дистрибутивами, хотя и несколько урезанными, - RedHat 4.2 и Slackware 3.0 (в сопровождении довольно внятных русских текстов). А затем и пара WalnutCric'овских наборов с Slackware 3.2-3.3. И я пустился во все тяжкие...
Очередное отступление: Несколько слов о том, на чем я экспериментировал. Это были - Pentium-100 на маме знаменитой фирмы NoName, 8 мегабайтов памяти, видеокарта ATI Match 64 WinTurbo о 2 мегабайтах VRAM, гигабайтный Western в качестве винчестера и 6-скоростной Aztech, исполняющий обязанности CD ROM'а. Плюс к этому исторически я оброс всякими, иногда экзотическими, дивайсами: звуковая карта Aztech WaveReader Pro+3D (очень неплохая для своего времени и цены, но нормально работала только под 3.1; уже под 95-ми о WaveTable следовало забыть, не говоря уже о 3D); принтер WinType имени товарища Star'а (так и хочется сказать - он был не стар, он - SuperStar) - самое наиGDI-шное из всех печатающих GDI-устройств, какое я видел; листопротяжный сканер Dextra с собственной квази-SCSI (фирма, также благополучно скончавшаяся, но в свое время - весьма известная, главным образом - мышами) - драйвер к нему мгновенно и безвозвратно переводил 95-тые в реальный режим, искореняемый в лучшем случае тремя пальцами (в худшем - только одним); был у меня и ручной сканер - и тоже с собственной картой, предназначенный для сканирования из глыбообразных томов - отчетов по глубоководному бурению. И все это хозяйство не просто жило у меня, но постоянно использовалось (как в личных, так и в общественно-полезных целях).
Вот на все этом я и начал свои эксперименты. Они продолжались (с перерывами) года полтора - в 1996-1997 годах. За это время P-100 превратился в P-166MMX, мама - волшебным образом стала мамой некоего ASUSTek'а (T2P4), память окрепла до 32 мегабайт; кроме того, я оброс вторыми винчестером (1,6 WD) и принтером (HP DJ 400). В финале я махнул, не глядя, свою ATI на беспородный Tseng ET6000 - но это уже имеет непосредственное отношение ко всей моей Линукс-авантюре.
И так, эксперименты начались (процесс пошел, как говаривал первый и последний президент нашего последнего Союза). Я перепробовал все - и RedHat первозданный, и RedHat кальдерный (знаете, что такое кальдера? Это - род вулканического кратера), и Slackware нескольких версий; с увлечением перекомпилировал ядро, устанавливал и как бы устанавливал Иксы... И прочее, и прочее, и прочее,,, И ни разу не достиг - не то, что глубокого, но даже минимального удовлетворения.
Начать с того, что ни в одном из тогдашних RedHat'ов в Иксах я не мог получить больше 640 на 480 на 16 - ни при инсталляции, ни всякими xf86config'ами (впрочем, преувеличиваю - обычно и этого-то не удавалось, а SuperProbe указывала на неподдерживаемый чипсет). В Slackware, правда, ручьмя удавалось собрать что-то вроде SVGA-режима - но только с SUSE'выми или MetroX'овыми серверами (благо старые их версии можно было найти на WalnutCric'овских дисках. В конце концов я с отчаяния поменял свою крутую (по тем давнишним временам) видеокарту на полагавшийся ширпотребовским Tseng ET6000. С нею жить стало лучше, жить стало веселей. Но - не намного.
Во-первых, везение мое было таково, что после каждого более-менее успешно завершенного этапа борьбы с Иксами появлялась задача, связанная с добыванием хлеба насущного. Которая требовла всех ресурсов машины. В первую очередь - всего наличного дискового пространства. А поскольку решить эту задачу, естественно, требовалось вчера, делать это можно было только из знакомых пистолетов (пардон, на знакомом софте). И приходилось стирать Линукс, истреблять соответствующие дисковые разделы, искоренять LILO (иногда - ручной правкой MBR'а, fdisk /mbr в некоторых случаях оказывался бессильным). А потом, после решения хлебозаготовительной проблемы, начинать все с начала.
Во-вторых, я так и не смог заставить работать под Линуксом всю свою периферию. По причинам, вполне понятным, но от этого легче мне не становилось. Звуковая карта не звучала, принтер - не печатал, сканер - не сканировал. Ну, положим, две последние операции требуются не так часто, и их можно сделать, и перегрузившись в Винды. Но вот слушать что-нибудь ненавязчивое в процессе работы - я уже привык. И отвыкать не собирался...
А самое главное - я так и не смог приспособить Линукс для использования в мирных целях. Ну не было под него требующегося мне софта - и все. А ведь в народе уже тогда бытовала легенда об изобилии линуксовых прикладных программ.
Справедливости ради надо сказать, что уже тогда имя им было - легион. С любым, даже кастрированным УрбанСофтовским, дистрибутивом было столько софта, что разобраться с ним - требовало времени в геологических, если не астрономических, масштабах. Отсюда - главный недостаток этого софта: понять, не то что подходит он для ваших целей, или нет, а хотя бы понять, что он делает, было, мягко говоря, нелегко. Если все же, проявив поистине китайское терпение, разобраться хотя бы с подозрительными на полезность программами, окажется, что они только прикидывались столь подозрительными. Для использования в мирных (то есть моих тогдашних) целях большинство из них оказались непригодыми. Возникало подчас ощущение, что многие программы существовали в дистрибутивах только потому, что кто-то их написал и туда включил. Что касается прочего рассеянного по Сети софта - то разобраться с ним, при отсутствии нормальных аннотаций и обзоров - также казалось мне немыслимым. И вообще, большая часть существовавших тогда приложений под Linux являла собой средства разработки, что я отнюдь не считал своей вахтой.
На все это накладывались сложности с великим и могучим. Если консольная руссификация еще как-то держалась, то поддержка русского языка в Иксах вылетала при всяком удобном (для нее) случае. А вся моя работа уже в то время в значительной мере была связана с добрым и ласковым Русским Словом...
А добил меня такой случай. К тому времени машина моя мутировала до: P-II/266 на ASUS P2L97, 64 RAM'а, Riva 128 с 4 мегабайтами видеопамяти, 4-гигабайтный Fujitsu, Jamaha OPL-сколько-то в качестве звука, CD - восьмерка и US Robotics на 56,6; одновременно я, с одной стороны, временно приобщился к телефонии, с другой - отпала необходимость в больших объемах сканирования и печати, поэтому периферия - рояля не играла.
К сему великолепию у меня был дистрибутив Mandrake 5.1, сболваненный на золоте IPLabs Linux Team (ныне - Altlinux). В основе его был тот же RedHat, но уже 5-й (с нулем) версии, плюс KDE, о которой я уже слышал много всякого хорошего. Плюс - комплект руссфикации, прилагаемый IPLabs'ом. И главное - появились, наконец, некие практические задачи. С одной стороны - чисто профессиональные, которые можно было попытаться решать посредством пакета GMT (Generic Mapping Tools) - монстроидального сооружения двух гавайских профессоров-геофизиков, предназначенного для построения всякого рода карт, блок-диаграмм и прочего (преимущественно геолого-геофизической направленности). То есть именно для того, что меня в тот момент (я тогда еще делал вид, что всерьез занимаюсь наукой) больше всего интересовало. С другой же - я обнаружил, что Линукс располагает великлепными инструментами для обработки текстов. А это нужно было мне и по службе (для сочинения проектов, отчетов и всякой прочей бюрократии), и хлеба насущного зарабатывания для - эту задачу я тогда решал, эмулируя web-мастера, web-дизайнера и web-на-дуде-игреца.
На описанной конфигурации установка системы прошла без проблем (впрочем, как всегда с некоторого времени). С Иксами тоже все было не плохо - моя Riva определилась с полуоборота. И заработала во всей своей красе. И даже с русскими буковками все было нормально - и в текстовом режиме, и в графическом. Никак не удавалось разобраться со звуком - но это, как я полагал, дело наживное. Зато неожиданно запечатал принтер - в то время у меня был Epson Stylus Color 400. Что не подразумевалось по умолчанию - в описании и всех обзорах он позиционировался как Win-принтер (это, как я понял, означало, что к нему драйвера для ДОСа поленились приложить).
И так, все шло хорошо. Поначалу. Но я решил, прежде чем приступать к экспериментам с потребным для работы софтом, освоить наконец UNIX'овый стиль работы с командной строкой. Надо сказать, что это меня больше всего и привлекало в Линуксе. С приснопамятных времен DOS'а для меня проще (даже в 98-мых) многое делать именно в командной строке. А тут такое (по сравнению с ДОСовским убожеством) богатство возможностей...
Обложившись справочниками по UNIX'у, я занялся отработкой техники этого дела. Вот тут-то и таилась погибель моя (вернее, системы). В один прекрасный момент я наплодил немерянное количество процессов во всех доступных по умолчанию консолях. И (назвавшись root'ом) взялся их истреблять (великой и могучей командой kill). Мощь этой команды проявилась во всей красе: я исстребил все процессы. Включая тот, который отвечал за вхождение меня как root'а.
Жизнедеятельность системы прекратилась. Но пока я в panic mode не впал. А спокойно перезагрузился. И снова попробовал войти как root. В ответ на ввод пароля, однако, система ответила, что он не правильный.
Мысли о том, что пароль я мог забыть - не допускалось. Поскольку в качестве таковых использовались исключительно нецензурные выражения на некоторых экзотических языках. А их (выражения, не языки) - разбуди среди ночи, вспомню. Однако довольно странно требовать от системы для домашней машины (а Mandrake, в отличие от других клонов RedHat'а, и в те времена позиционировался именно так) пароля не короче восьми символов. Ведь если есть реальные основания опасаться близких своих - и 256 символов не помогут, нужна рота автоматчиков. Но это - так, отступление.
Что интересно, как user я в тот момент еще мог войти. А вот как root - уже нет. И поскольку перед этим я по ошибке инсталлировал то ли StarOffice, то ли WordPerfect в качестве root'а (а в моих планах было разобраться и с ними), я начал думать, как исправить ситуацию.
Принципиально линия поведения была понятна: загрузиться с дискеты, смонтировать раздел диска, который ext2 et cetera, забраться в /etc/passwrd и попытаться поразвлекаться с паролями. То есть просто очистить соответствующее поле в учетной записи root'а (теневых паролей тогда еще, кажется, не было). Однако, не будучи уверенным в своих силах, решил позвонить вышеупомянутому товарищу, настраивавшему наш web-сервер, - единственному знатоку Линукса среди моих знакомых.
Когда я объяснил ему ситуацию, он сказал - Перезагрузись. - Перезагрузился, - ответил я. - И что? - сказал он. - И ничего, - ответил я.
После этого я выслушал довольно длинную тираду (без употребления слов экзотических языков, обойдясь родимыми), суть которой сводилась к тому, Что Этого Не Может Быть, Потому Что Этого Не Может Быть Никогда. И к совету сделать то самое, что я и предполагал - обнулить пароль root'а, загрузившись с дискеты.
Интуитивно я понимал, что этого действительно не может быть. Иначе где же хваленая устойчивость Линукса? Ведь это значит, что сисадмин, приняв случайно лишний стакан и занявшись убиением процессов (а это - занятие засасывающее, остановиться трудно), может благополучно развалить систему любого масштаба. Это почище, чем случайное перемещение (легким движением мыши) каталога Windows в любой другой - приходилось сталкиваться с такой ситуацией, не так ли? А посему всю историю (вернее, ее причину) я потом, по зрелом размышлении, списал на баг то ли RedHat'а Пятого (а ведь багами он и славен был), то ли Mandrake, то ли непосредственно моего экземпляра дистрибутива (экземпляр экземпляру lupust est, как было сказано классиками). Но это было много позднее.
А в тот момент я очень разозлился. Попытка последовать совету ближнего (и внутреннему голосу) привела к тому, что после обнуления пароля root'а я не смог войти уже и как user. Ни тот, ни другой - я предусмотрительно завел двух юзеров, одного - для алкаемой работы, другого - для нездоровых экспериментов.
Естественно, проблема погибших паролей была решаема. Как - я узнал из письма, которое получил вскоре после размещения самого первого варианта этой заметки. Однако это также было потому.
А в тот момент я прочитал интервью с дедушкой Линукса - папой дяди Линуса Торвальса. Где отмечалось, что тот (то есть дедушка) в свое время закончил Академию общественных наук при ЦК той самой партии, которая, по выражению Алексея Новодворского, обещала всем бесплатное пиво взамен свободного слова. И решил, что все, что со мной и моими паролями случилось, суть происки заглотных коммунистов в сговоре с прихлебными плюралистами. И стер Линукс. Как казалось мне, окончательно и безвозвратно.
Настолько безвозвратно, что при скоро последовавшем upgrade сжег за собой мосты (или корабли). Приобретя в качестве видеокарты ATI Rage 128, только что тогда появившуюся. Хотя уже из прошлого опыта догадывался, что продукция ATI - для работы под Линуксом приспособлена не лучшим образом (к нынешним картам ATI это, говорят, не относится, но стойкое предубеждение против ее продукции сохранялось у меня очень долго). И был выбор - TNT, как раз тогда включенная в стандартный набор Иксовых серверов, Matrox G200, поддержка которого очень быстро появилась в одном из SUSE'ых серверов, или Banshee, которая теоретически должна была бы работать как G200.
Столь кардинальное решение обеспечило мне в дальнейшем немало веселья. Но на этом предыстория моего приобщения к Линуксу заканчивается, и начинается - история. О чем - в одной из следующих заметок.