bash.im ithappens.me zadolba.li

Unix

963

Не смешите начальника СБ, он лопнет

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

Как-то сидим, админим наши сервера. Работа достаточно скучная, так как настроены они по всем «фэн-шуям» и вероятность факапа минимальна. Внезапно сонное лицо руководителя группы администрирования Unix-систем, оживает, и он помпезно изрекает: «%Adminname%, я считаю, что употребление слов „жопа“ и „косяк“ неприемлемо при постановке служебного задания».

Через минуту хохота %Adminname%, Oracle-админ, начинает оправдываться, что он скопировал в задачу кусок из своих ночных записей — в них было отмечено, что старт инстанса Oracle с такими-то параметрами и с использованием такого-то массива приводит к жопе с производительностью, и это явно косяк в Solaris!

857

FreeBSoD

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

Загружаюсь, через boot menu выбираю нужный диск, наслаждаюсь «фряхой». На что-то отвлёкся, через десять минут вернулся и выпал в полный осадок: монитор демонстрировал «синий экран смерти». Мои эмоции от получения BSoD на FreeBSD словами передать было сложно.

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

821

Без даты

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

— Не @изди.

Я опешил. Переспрашиваю:

— Что?
— Не @изди!

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

— Молодой человек, скажите ясно, что вам нужно ?
Фри-би-эс-ди! FreeBSD у вас есть?

708

Большому кораблю — большие бэкапы

Стоял в американском порту большой научный корабль, готовился к приемо-сдаточным испытаниям. Все на корабле было на совесть, с двойным запасом прочности: сервер телеметрии под управлением HPUX, еще один такой же в горячем резерве, плюс ленточка с полным бэкапом на всякий пожарный. Для пущей сохранности оборудования на борту постоянно дежурили два админа из русской команды - смена три недели, потом на берег. Дошла очередь дежурить и до меня. Узнав, что за сервера будет отвечать мой старший и более опытный напарник, я тихо порадовался — опыт работы с HPUX у меня был небольшой.

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

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

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

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

С возрастом, знаете ли, приходит не только опыт, но и маразм.

592

UNIX это судьба

Сразу после вуза я некоторое время работал админом в межрайонной налоговой инспекции.

Однажды меня вызвала начальница отдела и спросила, работает ли у нас на каком-нибудь сервере UNIX (кто или что ее вдохновило на этот вопрос – не знаю). Говорю, что нет. Вопрос: "А почему?". Начинаю было объяснять, почему применение ему найти будет трудно или нецелесообразно (налоговый фронт-енд работал на файл сервере и ms sql, почта ms exchange, фаервол на поставленной из министерства жесть-приблуде "Dionis").
Начальница прерывает меня и заявляет, что это очень плохо, что я не понимаю, зачем нам нужен UNIX. Короче, получалось так, что я должен был пойти к себе и немедленно подумать о внедрении ЮНИКСА, потому что все уважаемые специалисты всегда говорили нашей начальнице, что UNIX - это круто.

В общем, спорить я не стал. Не особо долго думая, поставил freeBSD 4.7PC на pentium 100, унес в серверную, подключил монитор, воткнул патчкорд в свитч. Через пару дней позвал в серверную начальницу. Показал ей на этот PC c монитором и текстовым freebsd login screen и сказал:
- Вот от UNIX, он у нас есть! Он стоит в серверной, он включен и работает!
После того, как я доказал, что это действительно UNIX, наступило счастье, ибо от меня отстали с внедрением UNIX. А начальница получила возможность в годовой IT отчет для министерства об используемых в налоговой операционных системах в ячейку "Семейство операционных систем UNIX" поставить единичку. Межрайонная налоговая инспекция №ХХ г. %cityname%. использует UNIX!

557

Что-то ищем где-то не там

Очередной проект по доделке и переделке авторских недоделок в программе заказчика.
Угу.

Заявлена кроссплатформенность - используется Qt, есть клиенты для Windows и никсов. Клиентов беспокоит, как Гондурас странная особенность: под никсами программа уверенно работает отовсюду, кроме каталогов, расположенных в /home (например - на рабочем столе, что должно быть интуитивно понятно и привычно для пользователей Windows). Угу.

Авторы грешили на особенности сборки Qt, на примечания к документации QFileSystemWatcher "о зависимых от системы лимитах на количество одновременно наблюдаемых путей". Но почему-то программистов заказчика не обеспокоила такая особенность систем, под которые портировалась изначально виндозная программа, как чувствительность к регистру путей файловой системы. Аффтары нечувствительно приводили путь к lowercase, а потом проверяли существование каталогов типа Desktop или "Рабочий стол" для пользователей типа Vasya_Pupken.

А метод проверки QDir::exists(), спроектированный с учетом особенностей *nix, имел их всех в виду.

417

/dev/null большой - в него все влезет!

История #410 напомнила.

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

На сервере в Москве раз в час по крону запускался скрипт, логинящийся в "личном кабинете" хостера и читающий данные по трафику. Если какая-то из пропорций была близка к критичной отметке, происходило следующее: по sshfs подцеплялся либо сервер с безлимитным каналом в Америке, либо, тоже с безлимитным каналом, в нашем офисе и фоном запускался процесс типа:
cat /mnt/srv02/dev/zero > /dev/null

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

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

271

Первая кровь

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

- Отлично! Сохраняем новый конфиг, а теперь - sudo ipfw restart!

218

Теория относительности

Новая контора. Делаю им сайт и настраиваю почту на хостинге.

Недели две все идет нормально, и тут поступает приказ поднять почтовый сервер в офисе. Привозят HP и огромный серверный шкаф. Говорят СРОЧНО. Ну надо так надо!

Звоню провайдерам, выбиваю реальный айпишник, перенастраиваю маршрутизацию почты с хостинга на него, перенастраиваю маршрутизатор, собираю шкаф и без сил уползаю домой. На следующее утро приползаю в 7, пихаю сервер в шкаф, сношу с него 2003 винду ставлю FreeBSD. Не запускается. Качаю свежую. Ставлю - запустилась. Поднимаю почту, поднимаю вебинтерфейс, авторизацию по SMTP, перенабиваю логины и пароли. Все тестирую, перенастраиваю все машины (25 штук!) в офисе. Провожу инструктаж.

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

Там стоят группа женщин из соседнего офиса и их админ - молодой совсем парнишка. Слышу разговор:
- Ой, наш Дима такой молодец! Спас меня сегодня. Представляете, вирус мне убил. Теперь могу работать без этих сообщений выскакивающих! Что бы мы без него делали. Умничка просто!

И вот закуриваю я свою сигарету и думаю: "вот, блин, и теория относительности в действии..."