9671

Пляски с бубном под дудку начальства

Есть у нас на предприятии лазерный принтер формата А3, верой и правдой служащий с конца девяностых. Сам принтер работает без особых глюков, расходники добывать пока удаётся. По нелепому стечению обстоятельств аппарату не хватало одной буквы в конце названия, чтобы иметь свой собственный Ethernet-порт, а поддержка сети ему жизненно необходима ввиду очень разношёрстного и склочного коллектива отдела, в котором он эксплуатируется. Вовремя нужный модуль расширения купить не успели, аппаратные принт-серверы тогда стоили дюже дорого. В результате аппарат оказался подключён к скромному Pentium-233, который в течение какого то времени исполнял роль общественной печатной машинки, а затем был вообще заброшен. Работал комп под управлением Win98, но так как полноценно его никто не использовал, в IT-отдел он попадал только во время эпидемий сетевых червей.

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

Очередной приезд машины сопроводился очень неприятной «телегой» на весь IT-отдел. Объясниться перед руководством оказалось просто, а вот вразумить пользователей не удалось. В результате мне была поставлена задача: сделать так, чтобы всё работало, несмотря на неадекватность пользователей, однако денег на покупку даже самого дешёвого принт-сервера выделено не было.

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

Я отыскал микродистрибутив, занимающий в минимальной конфигурации под 20 МБ, но при этом с полноценной поддержкой сети и возможностью прикрутить CUPS. Установленная система на диске держала только папку BOOT и два архива: в первом корневая файловая система, во втором опциональные модули и файлы настроек. Такая конфигурация позволяла монтировать жёсткий диск только на чтение, следовательно, при аварийном завершении работы ничего страшного не происходило.

На виртуальной машине всё отработало как по учебнику, но установка на реальную машину оказалась делом куда более интересным. Сначала я опробовал штатный способ установки. Созданный раздел оказался повреждён и не подлежал восстановлению, загрузчик не установился. Создал разделы вручную и подсунул их инсталлятору — результат был аналогичен предыдущей попытке. Оказалось, что на реальной древней машине инсталляционный скрипт криво создаёт разделы, а при установке загрузчика в MBR убивает даже те, что есть. На более современном компьютере с тем же винтом всё устанавливалось без единого косяка, из чего я сделал вывод: инсталляционный скрипт считает, что любая машина обязана понимать, что такое LBA32, а BIOS материнки искренне думает, что LBA28 (а может, и что подревнее) — до сих пор самый модный метод адресации.

Уменьшение размеров загрузочного раздела до 50 МБ ситуацию не облегчало. Возня с мануалами ни к чему не привела. Способ объяснить загрузчику метод адресации явно существовал, но за давностью лет упоминаний о нём было мало. В конце концов я нашёл другое решение: поставить на машину полноценный дистрибутив линукса, который точно работает на подобных материнках, подсадить к нему в конфигурацию загрузки файлы микродистрибутива, а потом удалить всё лишнее.

Инсталляционный скрипт полноценного дистрибутива подтвердил, что BIOS, несмотря на обновление до последней версии, дико крив, и для установки загрузчика будет использован какой то очень коварный метод. По завершении всех манипуляций я больше удивился не тому, что всё загрузилось, а тому, что двухгиговый винт начал определятся в BIOS (причём на любой машине) как 524-метровый, причём после загрузки системы оказывалось, что реальная ёмкость диска всё-таки 2 ГБ.

Обрадованный победой, закинул на место подготовленные конфиги и стал пытаться достучаться до CUPS по сети. Интерфейс оказался недоступен, в списке процессов соответствующего демона не наблюдалось, в логах ошибок ничего подозрительного не нашлось. Как только винт был переставлен обратно на более свежую машину, CUPS запустился. Оказалось, создатели этого чудо-дистрибутива затолкали в него самую распоследнюю версию CUPS, да ещё и откомпилированную под 686 архитектуру. Зачем в микродистрибутив пихать модуль, минимальные требования которого серьёзно круче всего остального хозяйства, для меня до сих пор загадка.

Разбираться, как собирать опциональные модули для этого микрочуда, было уже выше моих сил. В куче хлама отрыл AT-материнку под Pentium II и соответствующий процессор. Вся возня с загрузчиком оказалась напрасной: на эту мать всё встало без особых проблем.

Но это был не конец приключений. CUPS не имел встроенных драйверов на нужный принтер, а значит, нужно было искать подходящий PPD-файл. На сайте изготовителя принтера рекомендовалось взять его из виндовых драйверов PostScript. Файл быстро нашёлся, однако CUPS заявил о том, что не может его использовать по непонятным причинам. Правильным решением оказалось взять этот файл из драйверов под Mac OS.

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

9670

Когда кактус не справляется

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

Комп я наладил и, улучив минутку, спросил у буха: «Чё это?» Выяснилось, что кассир таким образом предохранялась от компьютерной радиации.

9669

Ну, удивись!

Конец восьмидесятых. В классе, где училась моя дочь, уже у многих появились игры «Ну, погоди!» и «Тайны океана». Дочь очень комплексовала, что у неё нет, а мы не покупали, потому что 23 рубля — это тогда было не так уж мало, а если потеряет, сломает или старшеклассники отберут, будет обидно.

Решили мы сделать для дочки такую игру, чтобы было ещё интереснее, чем «Ну, погоди». Выбор пал на электростатическую. Их тогда описывали в книгах, журналах, даже показывали по телевизору. Потрёшь пальцем прозрачную крышку, а под ней начинают прыгать лёгкие и плоские силуэты боксёров, бабочек, мартышек каких-то, вырезанные из газетной бумаги. Тут есть хитрость: крышка должна быть не из полипропилена, а обязательно из полистирола, иначе не будет от пальцев электризоваться.

Сделали. Бабочек дочка сама рисовала и вырезала — красивые получились. Принесла в школу. Такого ажиотажа не ожидал никто! Весь класс столпился, ученики друг у друга игру вырывают, все хотят не просто посмотреть, но и поиграть. А играть можно по-разному: или просто крышку натирать, или сначала наэлектризовать, а потом медленно поднести палец — бабочка резко перепрыгнет на другое место до того, как палец коснётся поверхности. Почти тачскрин.

На шум и старшеклассники прибежали. «Ну, погоди!» и «Тайны океана» им приелись уже, а тут экзотика. Взяли да отобрали, тем более что они тогда как раз на физике электростатику и проходили. Но нам, учитывая мизерную себестоимость игры, было её совершенно не жалко.

9668

Ваши ядра будут крепкими

Приносят системник — не запускается. Небольшой танец с бубном — никак.

Вскрываю пациента и чувствую сильный запах мяты. На проце — слой зубной пасты, заботливо прикрытый целлофанчиком. Юзвери, я вас люблю!

9667

Весна-лето 0x7DC

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

— Неплохой поясок вышел бы.

Молча закрутил системник, засунул на место, дал сестре два ненужных флоппи-шлейфа. Взяла, посмотрела.

— «Асус». М-м-м, фирменный!

9666

Артефактово-кракозябрьский словарь

Сижу ночью, пишу сайт. Перетаскиваю очередной файл в Notepad++, смотрю — с кодировкой что-то совсем плохо, вообще какая-то дикая кракозябра. Зову мужа. Подходит.

— Тебе дырку в стуле проделать и мышку на пол положить?

Показывает на расширение jpg. Видимо, спать пора, да вот теперь ржач не даст.

9665

Простите за ад

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

«Город старый! Сложно обеспечить устойчивую связь, оптимальную расстановку оборудования», — скажете вы. Неправда ваша! При желании можно сделать что угодно, тем более что есть более старые районы, в которых почти всё в порядке.

Терпеливо прождав определённое время, набираю заветный номер. Всегда вежливый молодой человек спрашивает, чего моя душа изволит. Интересуюсь, когда, собственно, всё починят. Ответ не заставляет себя ждать:

— Да, проблемы технические, ближе к вечеру всё будет.

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

Конечно, всё могло измениться за два с лишним дня. Сегодня я получил ответ, что, возможно, интернет будет в течение недели. Да простит меня саппорт, но это уже не смешно, и ребята получили от меня хорошую порцию негатива.

Я могу всё понять: грозу, молнию, возможно, выгоревшую часть оборудования, матерщину наладчиков на чердаке, идущее невесть откуда сетевое оборудование. Могу принять факт того, что вы там работаете, и я знаю, что работаете неплохо. Я одного понять не могу: врать-то зачем? Неужели сложно сказать: «Вы знаете, у нас просто ад творится, мы всё делаем, в крайнем случае связи не будет неделю»?

В итоге я сижу с модема с синим перевёрнутым человечком и пишу эту историю о пренебрежении банальными вещами в общении клиента и саппорта. Хочу пожелать всем терпения и уважения друг к другу, а также честности в таких вещах. У вас может быть правило врать всегда до последнего, но от этого может зависеть чья-то зарплата, кто-то не позвонит по скайпу далёким родственникам — да мало ли чего! Будьте людьми, и к вам потянутся. От честности клиент не отвернётся.

9664

Падал прошлогодний FPS

Решил я вспомнить молодость да нервишки потрепать. Установил достопамятную игру F.E.A.R., после которой в своё время шарахался от каждой тени, впрочем, неизменно восхищаясь реализацией AI. Машина, на которой я вознамерился вновь воевать с Альмой, была ещё мощнее той, на которой я прошёл игру на максимальных настройках, поэтому за производительность я не волновался. Каково же было моё удивление, когда спустя пару минут игра начала из шутера постепенно превращаться в пошаговую стратегию! Причём было совершенно всё равно, просторный ли зал, полный монстров, или закрытый угол перед тобой: с самого начала количество кадров в секунду плавно начинало снижаться, и чем дольше игра была запущена, тем сильнее тормозила. Загрузка отложенной партии решала проблему, но лишь на несколько минут, после чего всё повторялось снова.

Доведённый почти до отчаяния невозможностью поиграть в любимую игру на мощной машине, я таки ухитрился отыскать источник своих бед. Дело было… в моей клавиатуре Logitech G11! Непонятно как, непонятно где, но у дедушки движка Jupiter EX, писавшегося ещё в те годы, когда моей клавиатуры и в проекте не было, вскрылись какие-то специфические проблемы c DirectInput в связке именно с периферией Logitech с приставкой «G», в результате чего через какое-то время в игре начинал переполняться буфер ввода, что и приводило ко всё нарастающим тормозам. Поскольку в Monolith на своё детище уже давно махнули рукой, единственным способом всё-таки нормально поиграть оказалось отключение всех G-устройств в соответствующем диспетчере, после чего игра начала работать нормально — пусть и ценой потери макросов, всех мультимедийных клавиш клавиатуры, а на десерт и переключения на лету чувствительности мыши.

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

9663

По кастрюле и пенделю

Угощайся жареной картошечкой с грибочками, гость дорогой, да выпей стопочку. Добро пожаловать в нашу тусовку. Да, мы все здесь разные и по возрасту, и по профессии. Среди нас есть и учителя, и продавцы, и полиграфисты, и слесари…

О, а ты системный администратор? Да, знаем такую профессию. Говоришь, она наиболее востребованная в современном мире, и без сисадминов вся работа у нас, отсталых, остановится? Что ж, не будем спорить.

Нравится работа? С пользователями ладишь? Ах, в твоей фирме юзверши бестолковые? Сочувствуем. Говоришь, надо тёткам выдать по кастрюле и по жопе пендель, чтобы летели подальше от компьютера, потому что женщина и компьютер несовместимы? Сурово… Ну, да, конечно, об этом же все админы говорят, что IT — мужская специальность, а женское дело — кухня…

Получается, тёткам этим помогаешь, эникей жмёшь? Не подпускают, говорят, без тебя обойдутся? А чем же тогда ты занимаешься? Кабели, говоришь, тянул? Сам обжимал? По какой схеме? Ах, купили уже обжатые? Ясно.

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

Разреши поинтересоваться, сколько компьютеров в твоей организации? Всего восемь? А сервер у вас под какой осью? В каком смысле ось? Ну, в смысле, какая операционная система на сервере установлена? Нет сервера? А на компьютерах пользователей? Windows? Понятно, значит, сеть одноранговая. Од-но-ран-го-вая. Да-да, запиши в смартфон. Откуда мы такие слова знаем? Так их любой грамотный человек знает, даже не айтишник. А среди нас и айтишники есть. Нет, вон тот парень в бандане не айтишник — он слесарь. И не этот седоволосый дядя — он продавец. Сюда взгляни. Вот эта немолодая толстая тётка — начальник IT-департамента, где на обслуживании никсовые сервера и более тысячи клиентских компьютеров с различными операционками. А вот эта стройная девушка — механик полиграфического оборудования с программным управлением. А эта дама — программист в жёлто-красной компании. Ты лично готов им выдать по кастрюле и пендель по жопе в сторону кухни? Картошечка-то вкусная? Разрыв шаблона?

9662

Пришёл, увидел, забрал

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

— Техподдержка программы X, здравствуйте!

— У меня ваша программа не запускается. Жму на кнопку, и ничего не происходит, лампочки не загораются!.

— Какие лампочки? Какую кнопку вы нажимаете?

— Ну эту, пауэр.

— Так у вас компьютер не включается? Это техподдержка программы X, а вам надо обратиться к системному администратору.

— Нет, нам нужно к вам, мы же компьютер включаем, чтобы в вашей программе работать!

— Техподдержка программы Х, здравствуйте!

— Здравствуйте, у меня программа Y не работает!

— Мы к этой программе отношения не имеем, это другая организация.

— Я знаю, просто их техподдержка трубку не берёт!

— Техподдержка программы Х, здравствуйте!

— К нам ваш мальчик приходил, забрал компьютер и увёз в ремонт. Когда нам его вернут?

— Назовите фамилию специалиста.

— Он не представился.

— А вы точно уверены, что это был наш специалист?

— Конечно, к нам никто не ездит, кроме вас!

— Он показал удостоверение, оставил какие-то документы?

— Нет, просто пришёл, забрал компьютер и уехал! Что у вас там за бардак? Когда нам вернут компьютер?! Если завтра не привезёте, мы в суд подадим!