bash.im ithappens.me zadolba.li

Факапы

5431

Писк на местном диалекте

11 февраля 2011, 11:00

В канун зимней сессии случилось со мной история банальная, но поучительная. За три дня до очередного экзамена, непосредственно связанного с программированием, экран домашнего ПК загораться решительно отказался, хотя все признаки загрузки оси имели место. Полез внутрь. Не найдя ничего необычного, я передёрнул видеокарту и повторил попытку. Результат был: теперь, помимо чёрного экрана, истошно пищал динамик, а система не поднималась вовсе. Остаток вечера я в расстроенных чувствах провёл, колдуя с отвёрткой над видеокартой. С мыслями о том, что материнка безвозвратно сгорела, я отправился баиньки.

На следующий день по предоставленному результату обследования (писк длинный-короткий, питание на видео подаётся, замена видеокарты не спасла) двое весьма авторитетных в моих глазах товарища подтвердили диагноз. Мысль о поиске старенькой материнки (AGP, IDE, SATA, DDR первый) накануне экзамена вызывала холодный пот. Открыв документы на машину и начав собирать подробную информацию о подходящих мне материнках, в числе прочего я обнаружил перечень писков динамика для моего биоса, который я сам напечатал с год назад. К величайшему удивлению я, убеждённый, что почти все их знаю на память, обнаружил: длинный-короткий сигнал — это проблема в памяти, а никак не в видеокарточке. Сомнения подтвердились: видеокарта открыла и заблокировала одну из защёлок планки памяти. Стоит ли говорить, что после исправления компьютер довольно зажужжал?

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

5416

Смерть в творческих муках

10 февраля 2011, 09:00

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

Как-то, зависнув в трансе над очередным 1156-м сокетом, принимаю ремонт бука от клиента с постоянным рестартом и без зазрения совести списываю бук младшему разгильдяю. Как оказалось, компьютер был весьма ценным: четырёхъядерный проц, серьёзное охлаждение и всё такое. Но в нашей стране можно и танк сломать. Элементарный отвал моста — махнув рукой, отдаю мазерборд на прогрев падавану. Через полчаса бук готов, клиент доволен, деньги в кассе.

Через энное время прибегает тот же клиент с буком наперевес: «Отказывается работать с С++». А в целом ничего, мол, пашет исправно. Откинув сокет в сторону и мысленно признав клиента за идиота (какая мамке разница, что с ней делают?), провожу всевозможные действия с буком. Как ни странно, ноут работает. Клиент начинает прописывать строки, и когда привычным движением с треском бьёт пальцем по Enter, бук моментально дохнет.

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

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

5412

Клиническая смерть && install

9 февраля 2011, 11:00

Звонит мне как-то друг, ярый виндузятник, и спрашивает: «Как установить принтер в Убунту?» Немного офигев, на автомате отвечаю: «Система → Администрирование → Печать». Через несколько минут понимаю, что принтеру от компании из двух букв драйвера CUPS чем-то не нравятся. Одной частью мозга вспоминаю нужную ветку на форуме, второй диктую другу консольную команду, параллельно вводя её у себя для чистоты эксперимента:

sudo aptitude install hplip

Консоль выдаёт кучу надписей, задаёт вопрос, я автоматом ввожу «y» и переключаюсь на разговор. Тут моё сердце начинает останавливаться:

Удаляется пакет …
Удаляется пакет …
Удаляется пакет …

Сtrl+С не работает, терминал не закрывается. Система медленно умирает: пропадают обои, оформление окон становится квадратным, сеть отваливается, виснет док… В голове картина: живому человеку вскрывают живот и вытаскивают все органы.

Злобный hplip снёс около тысячи пакетов (разве что libc и ядро не сдали позиции), а сам так и не установился.

Минут пять я приходил в себя. Потом осторожно скопировал весь вывод консоли в случайно оставшийся открытым gedit, осторожно удалил всё, кроме названий пакетов, добавил в начало «aptitude install» и вставил обратно в терминал.

Система оживала так же, как и умирала. Всё потихоньку отвисло и заработало в штатном режиме. Для верности я прогнал обновление и перезагрузился. Дебиан неубиваем — это вам не папку Windows удалять.

5411

Меткий выстрел себе в ногу

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

Было хорошо всем, кроме одной склочной абонентки. Однажды друг попросил меня прийти в суд в качестве специалиста. Тётка с отупляющим упорством вбивала в адресную строку адрес «Одноклассников» с собачкой вместо точки. Туда-сюда, подолбала она другу мозги — да и пошла с ним судиться, не придумав ничего умнее, чем принести на заседание фотку монитора с печальным «Не удаётся отобразить страницу» в «ослике». Друг со своей стороны притащил распечатку журнала HTTP, где было явно видно, что DNS ничего не знает об odnoklassniki@ru. Я помахал перед судьёй сертификатом MCSE, почитал лог и дал объяснение, что, мол, всё нормально, интернет работает, а вот мозги у истицы — уже нет. Под яростное «Я протестую!» тётка сунула судье в обход пристава ещё одну фотку. А теперь дословно, из копии протокола заседания:

«Уважаемый суд! На данной фотографии видно окно программы „Мюторрент“, которая является клиентом файлообменных сетей. На данной фотографии я вижу, что клиент функционирует нормально по признаку наличия указания скорости связи в 64 килобита в секунду на входящем и 16 килобит в секунду на исходящем соединениях, 18 подключенных узлах сети, а также по пиктограмме „зелёный круг с галочкой“, что означает, что программа успешно скачивает и распространяет файлы с названиями „%soft% + кряк“, „%movie%“ и „Windows XP SP3 + кряк“. Таким образом, интернет-соединение установлено и работает».

Судья сначала примеривался выгнать тётку из зала заседания (нарушает ГПК), а потом, переспросив, что такое «кряк» и можно ли распространять образ «форточек», удалился для вынесения решения. Результат: в удовлетворении иска отказано, на тётку возбуждено уголовное дело. Меткий выстрел себе в ногу засчитан.

5408

Лекарство от снобизма

9 февраля 2011, 09:00

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

В документации Sane (ПО для сканирования под линукс) утверждалось, что девайс поддерживается, однако в реальности сканер не подавал признаков жизни. При гуглении обнаружилось, что с проблемой столкнулся не я один. Кто-то умудрился запустить сканер под эмулятором, кто-то предлагал вступить в переписку с производителем, но всё это меня не устраивало. Наконец выяснилось, что реально поддерживает мой новый аппарат лишь самая-самая свежая версия Sane, которую даже скачивать нужно не как тарбол, а из SVN-репозитория. Даже версия двухмесячной давности не годилась, только январская. Скачал, собрал, запустил Scanimage, услышал обнадёживающее хрюканье аппарата, обрадовался, посмотрел на часы, убедился, что ночь подходит к концу, лёг спать.

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

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

5391

Люди как окна

7 февраля 2011, 11:00

Некоторые люди — они как Виндоус: чуть что — «Обратитесь к администратору».

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

Вскоре причина выяснилась: новый сервер запрашивал подключение с неправильного адреса и в неправильной подсети. Разумеется, виноват админ: кто же ещё может коряво настроить маршрутизацию и трансляцию? Заявления о некомпетентности слышались и на совещаниях, и в коридорах, и на кофейных перерывах.

Людям свойственно делать довольно глупые ошибки, посему я проверил все настройки. Чисто. Всё работает именно так, как должно, на админской стороне проблем нет, но ошибку найти надо. Проект стоит, программист из меня так себе, проверять, кроме кода, больше нечего. Как проверить код, если не знаешь, где искать, да ещё на сервере с обрезанным (привет, Windows 2008!) поиском? Там же тыща файлов! Всё просто: скопировать боевые директории, вычистить оттуда логи и картинки, а потом в Notepad++ задать параметры поиска.

Результат впечатлил. Судите сами: 24 раза был указан правильный внешний адрес сервера, один раз внутренний адрес (именно он и нужен), и 126 раз был указан устаревший, неправильный адрес старого сервера. Такая себе копипейст-технология. Программисту было отправлено электронное письмо с описанием технологии и результатами поиска ошибки. В теме письма: «%username%, ты слепой?» Копия — начальнику.

Говорят, начальство долго кричало на программиста, обвиняло в саботаже и заморозке проекта, намекало на умственные способности. Говорят, программист оправдывался: «Я так привык, что ошибка всегда у других!», на что начальство задохнулось от ярости. В этот момент я был на перекуре и думал: «Неужели Вижл-студио — диагноз?»

5372

Глаз да глаз

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

Довольно быстро выяснилось, что для просмотра используется Remote Office Manager, он же ROM. Также стало известно, что блокирование удалённого просмотра тем или иным образом приводит к выговору от начальства. Что ж, блокировать не станем, зато настроим уведомления о подключениях. Пишу другу подробный мануал о том, как использовать Netstat, чтобы выяснить, на какой порт сконфигурирован ROM, а также о том, как воспользоваться утилиткой Anti Radmin Suite, чтобы получать уведомления о входящих соединениях на этот порт. Мануал с утилиткой отправляю другу по электронной почте.

Утро, разговор в ICQ. Друг радостно сообщает, что нашёл-таки порт ROM, и присылает мне скриншот консоли. Вижу ROMServer.exe на родном порту 5650. Попутно просматриваю остальные процессы.

— Витальян, а что за lvsclnt.exe на порту 4127?

Не дожидаясь ответа, гуглю. Ну и ну: процесс принадлежит пакету LANVisor, предназначенному для удалённого наблюдения.

— Витальян! Палево! Это ещё одна смотрелка.
— %#@&$! Как? Зачем?

Начинается паника. Строятся догадки по поводу того, зачем это кому-то могло понадобиться. Доходит до подозрений, что ROM поставлен для отвода глаз, чтобы отвлекать на себя старания «сильно умных» сотрудников, а фактически используется LANVisor.

— Всё, мне $#&@ец, — пишет Витальян. — Скоро, значит, буду смотреть фильм о том, как я работал. Б#&… Пойду курну.

* * *

— Только что курил с сисадмином. Спросил, на фига две смотрелки ставить. Короче, он непритворно о%#ел и сказал, что про LANVisor вообще никогда не слышал. Мог ли его кто-то другой поставить?
— А кто ещё имеет доступ к твоему компу?
— КГБ разве что. Больше никто.
— Может, осталось от старых админов?
— Нет, я недавно систему переустанавливал… Короче, надо снести, ну его на @#$!
— Что ж, вперёд!

Спустя пять минут:

— Пашка, хочешь упасть?
— ?
— Это ж я сам его ставил, тренировался. Месяц назад скачал демку, покрутил, надоело. Снёс ярлык и забыл.
— Б#&! Е&%#@^$ &^% @#$! Ну не $#&@ец ли? Надо про тебя на IT happens написать.
— Точно! История та ещё.
— Твои админы тоже прочтут. Не боишься, что тебя узнают?
— Не, они об этом сайте даже не слыхали.

А жаль — узнали бы много интересного.

5358

Стопроцентный русский

3 февраля 2011, 09:00

К сожалению, если при установке Убунту с Alternate CD выбрать русский язык системы и только русскую раскладку, то в ходе инсталляции английский будет, а при первой же загрузке никакого варианта, кроме русского языка, не останется, и войти в систему будет невозможно.

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

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

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

5356

На заборе тоже написано

На довольно старом сервере сработала сигнализация RAID-контроллера: один из дисков в системном зеркале заканчивал свой путь. Не беда: берём замену, идём в серверную, переводим диск в офлайн и вытаскиваем из корзины. Сервер, подумав, сообщает, что служба Remote Procedure Call неожиданно завершилась, и сейчас мы будем перезагружаться. Перезагрузка не удаётся. Теперь уже беда: сервер-то критичный.

Хард-ресет, вход в настройки контроллера, стук сердца: зеркала больше нет. Какой-то шутник перепутал номера дисков на корзине и подписал их наоборот. В итоге из работающего зеркала сперва вывели штатно один диск, а затем выдернули второй на живую…

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