Объявление на фрилансерском сайте:
Заголовок: Надо вы мне
Текст: Мне в команду надо люди Веб-программисти 1 человек Версталщики 1 человек Флешер 1 Человек Я сам веб дизайнер Хочу сделать команду Купиль хостинг...
И здесь гастарбайтеры.
Объявление на фрилансерском сайте:
Заголовок: Надо вы мне
Текст: Мне в команду надо люди Веб-программисти 1 человек Версталщики 1 человек Флешер 1 Человек Я сам веб дизайнер Хочу сделать команду Купиль хостинг...
И здесь гастарбайтеры.
Итак, дано.
Платежные терминалы, на них стоит линукс, в иксах крутится программа на java, которая собственно, обеспечивает взимодействие с пользователями и спецустройствами.
Иногда для определенных целей по инициативе программы надо терминал перегрузить или выключить, что делается банально вызовом линуксовых shutdown или reboot.
Закупили 100 терминалов с Elitegroup в качестве материнских плат. У них обнаружился неприятная проблема — они не перезагружаются и не выключаются вышеуказанными командами. Вынуть 100 матерей из терминалов, выкинуть и поставить новые и накладно, и долго.
Оказалось, что для того, чтобы перезагрузка начала работать, нужно всего лишь разогнать процессор из биоса.
Я боюсь спрашивать наших техников, как они дошли до этого решения.
Вот вы говорите, циклы забыли закрыть, и монстры убитые поползли за вами. А с нами такой случай был. Работали над русской компьютерной игрой, навроде Аллодов. Занимались компьютерным интеллектом на тот момент.
Меню игры представляла собой гигантская каменная плита с высеченными на ней словами, на фоне острова. По сути эта плита стояла на земле.
Так вот, в какой то момент, эта плита вдруг несколько раз покачнулась, и неуклюжими движениями рванула к костру. Потом обошла вокруг него, и пошла в глубь острова.
Оказалось, из за какой то ошибки, каменной плите, которая на самом деле была обычным трёхмерным объектом в мире игры, был назначен интеллект одного из бандитов, который должен был патрулировать остров.
Вот она и пошла. Патрулировать.
Начинала работать web-программистом в компании, где был свой собственный движок сайта. Понадобилось мне на сайте файл подправить. Исправила, захотела скопировать и в это время пропал интернет. Будучи уверенной, что через 20 мин все заработает, я решила со спокойной душой отправиться домой.
Утром прихожу, влетает начальник. Большой и злой.
Накануне вечером ему начали названивать клиенты: "У нас нет интернета!". Он сначала пытался пинговать сервер наш, так как мы обеспечивали интернет некоторым клиентам. Потом приехал, проверил всю сеть, позвонил людям насчет удаленного сервера. А все это время ему продолжали звонить....
И только позже (до сих пор не знаю как) выяснилось, что "пропал интернет" - это означает, что у клиента не открывалась страничка их сайта. Поскольку я при копировании затерла файл движка.
Пришлось изображать кота из второй части Шрека.
Знакомый убунтонавт (ибо тонет в дебрях убунты и ничего толком не умеет с ней делать) пожаловался, что у него не пингуется localhost. Притащил свой ноутбук, показывает.
ping: unknown host localhost.
Проверяем /etc/hosts - всё верно. /etc/host.conf - всё отлично, даже lo поднят и iptables даже не настроен, поэтому не мешает.
Прошло минут 40. В процессе было выяснено, что hosts игнорируется полностью. Попытка выяснить его действия выявила, что он "что-то поредактировал и оно перестало работать".
Смотрю в /etc: подозрительно, что /etc/nsswitch.conf весит несколько десятков килобайт. Закрадываются смутные подозрения. Открываю - точно: mimetypeapplication/vnd.oasis.opendocument.text...
Оказалось, убунтонавт месяца 3 назад ещё не знал о существовании в убунте gedit'а. В инструкции к apache, найденной им на какой-то помойке, было написано "открыть в любом текстовом редакторе" этот файл. Любым редактором стал oowriter. Убунтонавта смутило странное название сохраненного файла nsswitch.conf.odt и он недолго думая сделал ему sudo mv. Заметил ошибку лишь спустя 3 месяца.
Смотрю исходник лабораторной работы по математическим моделям, сделанной одним из студентов. Обнаруживаю такие комментарии:
{Дальше идет особая магия!}
procedure fbHalfCountClick(Sender: TObject); //Считать методом половинного деления
procedure fbSerialCountClick(Sender: TObject); //Считать методом последовательных приближений
procedure fbNewtonCountClick(Sender: TObject); //Считать меня коммунистом
Только что закончил правку javascript-файла. Делал это "по-быстренькому", то есть прямо на сервере. Правил редактором mcedit (он умеет работать с файлами по ftp). Часа через 3 добился нужного результата. Пора возвращать файл на историческую родину, то есть на локальную машину.
Жму F5 в mc (в одной панели - локальный каталог, в другой - ftp). Вылезает вопрос "Заменить файл ${FILENAME} размером 3096 на файл размером 3096?". Это что же такое? Правил, правил и где результат? Даты, правда, отличаются, и все-таки стало как-то неуютно. Стал проверять, выяснилось, что действительно, после нескольких часов правки, многочисленных убавлений и добавлений размер файла стал таким же, как до ее начала с точностью до байта.
Протянули сетку на несколько домов. Немного спустя в одном доме пропал интернет и мы пошли искать причину.
Оказалась, некий мужик, живущий на последнем этаже дома, в котором протянута сеть, перерезал ножом все провода подключенные к хабу.
Я не думаю, что вы угадаете причину его поступка.
Этот мужик дождался, пока мы придем и потребовал пойти с ним в отделение милиции, где он, на полном серьезе, написал заявление, что мы с помощью этого устройства через провода пускали к нему в квартиру фреон.
Мужик был уверен, что мы злодеи, желающие его смерти.
Один мой друг долго жаловался на то, что у него категорически не открывается ни один поисковик. Точнее, вместо поисковика открывается пустая страница. Решили мы с товарищами (программист, сисадмин и веб-дизайнер) разобраться, в чем же дело. После того, как DSL-роутер, его фаерволл, антивирус и брандмауер были определены как невиновные, наш коллективный разум решил бросить пинг. Пинг полетел вместо поисковика на 127.0.0.1
.
Коллективный разум догадался так же пустить до того же поисковика tracert. Единственный скачок - до 127.0.0.1. Что-то не так, подумал коллективный разум.
Полезли в файл hosts. Обнаружили там надпись, по-видимому оставленную вирусом, который был благополучно убит антивирусом:
127.0.0.1 go.mail.ru
127.0.0.1 nova.rambler.ru
127.0.0.1 google.ad
127.0.0.1 www.google.ad
127.0.0.1 google.ae
127.0.0.1 www.google.ae
127.0.0.1 google.com.af
127.0.0.1 www.google.com.af
127.0.0.1 google.com.ag
127.0.0.1 www.google.com.ag
127.0.0.1 google.com.ai
127.0.0.1 www.google.com.ai
127.0.0.1 google.am
127.0.0.1 www.google.am
.. и так еще 11 кб редиректов.
В древние времена "косых флопов" и тому подобных вещей, мне, студенту, пришлось подрабатывать на кафедре в институте.
Был у нас desktop-корпус, который открывался без отворачивания кучи винтов, достаточно было просто нажать на 2 кнопки по бокам корпуса.
Однажды на лабороторной он начал перезагружаться странным образом. Его включаешь, начинается тест железа, перезагрузка, так по кругу. Что с ним только не делали преподаватели и студенты! Решили в конце концов выключить.
Когда он добрался до лаборатории - я долго ржал. Кнопку перезагрузки кто-то привязал изнутри к головке пятидюймового дисковода.
Начинался тест, головка шла на нулевую дорожку, ниточка натягивалась.
Ребут.