bash.im ithappens.me zadolba.li
13452

Чудеса маскировки

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

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

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

Барабанная дробь. Апогеем стало непонимание, каким образом скриншот сам собой открылся. Возможно, Великий Ктулху изволил девственные платы? Может, техника и без души, но окружающее пространство явно что-то скрывает.

13451

Показать всё, что скрыто

Расскажу про свой факап. Сейчас за него не сколько стыдно, сколько смешно.

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

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

Прошло полгода. Месяц назад от хостера мне посыпались письма с угрозами: «Место на хостинге кончается, купите больше хостинга или мы вас закроем». Добавил сотню метров. Через пару недель опять то же самое. Добавил ещё сотню. На третьей сотне мне уже стало любопытно — что же так раздувает наш хостинг? Не новый ли сайт на OC Store с интеграцией в 1С и ежедневной выгрузкой номенклатуры? Полез через PhpMyAdmin смотреть размеры таблиц. И тут-то я и увидел то, что на весь остаток дня заставило меня улыбаться. Так как спираченный шаблон на джумлу победить до конца не удалось, недостающий функционал заменили на К2 и локализовали вручную (сам переводил, да). И таблица %prefix%_k2_comments была раздута до 1,5 Гб с содержимым в > 2 млн. строк. Судя по содержимому, боты, однажды зацепившись за пару статей, продолжали спамить туда свои китайские ссылки на протяжении всех этих долгих месяцев.

DELETE FROM %prefix%_k2_comments WHERE id > 1

И сразу размер базы уменьшился до 6 Мб. И стыдно, и смешно.

Мораль сей басни такова: если накрыть кучку тряпочкой — это вовсе не значит, что она не будет вонять.

13450

Квантовая неопределённость

Эффект присутствия при ловле багов? Попробуйте отсутствовать. Непонятно? Сейчас объясню.

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

Сидели над ним по часу, слушали музыку, читали книги — не виснет. Уйдёшь, оставив на попечение владельца — виснет.

А причина оказалась каким-то образом связана то ли с мышью, то ли со скринсейвером (которого не было, но, видимо, что-то как-то пыталось запуститься). Уже догадались?

Вот что вы делаете, когда тупо сидите у компа и чего-то ждёте? Даже если вы с ним ничего полезного не делаете — кто-то гоняет курсор мыши по экрану, кто-то постукивает по столу пальцами, заставляя мышь елозить туда-сюда на 1−2 пикселя, кто-то щёлкает кнопками.

А сотрудник, чей это был комп, оставаясь один, просто вставал и шёл трепаться с коллегами, пить чай, курить, смотреть в окно. Он-то не айтишник. И через несколько минут комп зависал наглухо.

Вылечили переустановкой системы, так как это было банально быстрее, поэтому настоящая причина зависания так и осталась невыясненной. Да и нужно ли это было?

13449

Ювелирная работа

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

Выезжаю к клиенту, вытаскиваю диск, цепляю к ноуту, пока данные сливаются разговариваю с хозяйкой.

— А этот ноутбук уже только выбрасывать? Мне он, в общем-то, не очень нужен, разве только пасьянсы раскладывать…

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

— А что с ним случилось? Как он сломался?

— Он сильно задымил, заискрил и выключился.

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

— Скорее всего, уже не получится починить.

— А он вам нужен?

— Ну, разве что на запчасти. За сколько отдадите?

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

Принёс в офис. Решили вскрыть и посмотреть, что можем из него взять. Вскрыли. Рядом с материнкой маленькая платка с разъёмом S-Video и входом питания. Гнездо питания обуглено, одной ножки вообще нет — испарилась! И рядом маленький винтик валяется. Судя по размеру, попал в корпус между пластинами радиатора и однажды просто замкнул между собой плюс и минус гнезда!

Заменили БП, я сделал новую платку питания, и ноут ожил! Только разъёмом S-Video пришлось пожертвовать. Теперь это наш офисный ноутбук!

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

13448

Дело было не в бобине

Это было в начале 2000-х в небольшом провинциальном городке. У моей мамы на работе был компьютер, который постоянно перезагружался. Вот так, без видимых причин, просто перезагружался, и всё тут. И мышь не работала. Это был, кажется, AMD Athlon 233, если я ничего не путаю.

И вот попросили меня его вылечить. Мышь была вылечена простой чисткой шарика. А вот перезагрузку я с ходу вылечить не смог — в менеджере процессов ничего криминального не наблюдалось, и я решил переустановить Windows. Переустановил, отчитался, мол, всё, процесс восстановления завершён. И буквально через пять минут компьютер снова перезагрузился…

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

13447

Каждому своё

Специально для тех, кто спускается на землю, заходим в Гугл, вбиваем «кто использует Linux и СПО» и находим там кучу организаций, от медицинских до министерств. Как я сказал, министерств? Наверное, это какие-то неправильные министерства, и там меньше 500−1000 человек. А может, они просто не умеют считать деньги?

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

А тот «мальчик», кстати, не говорил, что линукс — это «серебряная пуля». Он просто показал, что линукс неожиданно оказался юзерфрендли для виндузятника со стажем.

Кстати, я работал в конторах со смешанным парком, админы были на своём месте, так что проблем никто не видел ни с линуксом, ни с виндой, ни с маком.

P.S. А возрастом кичиться не комильфо.

13446

С небес на землю

Я рад за мальчика, у которого отец, сорокалетний сетевой инженер и закоренелый виндузятник, наконец поумнел и дорос до уровня знаний школьника. Как всё-таки смешон юношеский максимализм. «Ух ты, тут и это есть! Как же я до этого жил?»

Я чуток постарше вашего отца: 25 лет в IT, из них 15 начальником (в разное время под моим началом было от 30 до 500 рабочих мест), сейчас постоянно использую в работе все 3 основных системы (винда, линукс и макось).

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

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

Ну, например, каждая минута рабочего времени каждого сотрудника стоит денег. Да-да, именно так. Поиск и закачка дистрибутива, настройка репозиториев, показ пользователю, как и что делать — всё это в итоге не бесплатно.

Вы не задумывались, почему практически во всех предприятиях на рабочих местах стоит именно винда? А также почему ни один дизайнер (по крайней мере, серьёзный — а я их знаю сотни) не работает на линуксе? 90% — мак, 10% — винда, 0.00% — линукс.

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

Ну и задумайтесь ещё вот над каким вопросом: зачем Microsoft и Apple содержать тысячи программистов и дизайнеров, если «всё уже есть, и бесплатно»? Не потому ли, что они делают продукт лучше? Помните, что ни один человек никогда не работает бесплатно. Именно по этой причине софт (в том числе и для линукса), который в самом деле сделан на приличном уровне, стоит очень дорого. Есть специализированные пакеты со стоимостью лицензии в десятки и сотни тысяч долларов. Или вы в самом деле думаете, что такие деньги платят чисто из глупости (то есть платят те, кто явно глупее вас)?

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

13445

Не жми на кнопку — получишь результат

Есть у меня домашний сервер, как, наверное, у многих айтишников: файлохранилище, прокси, VPN, DLNA, управление 1-Wire и так далее.

В качестве него используется старый нетбук с линуксом. Почему нетбук — потому что маленький и не шумит, в нём вообще вентиляторов нет. Почему не перепрошитый роутер или какой-нибудь Raspberry Pi — потому что не хотелось возиться с поиском прошивок, кросскомпиляцией и прочими интересными вещами.

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

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

И вот, наконец, нашлось решение: конденсатор!

Ведь что такое «нажать на кнопку»? Это на пару секунд замкнуть два контакта, чтобы компьютер запустился, а потом контакты разомкнуть, чтобы он не выключился.

А что такое конденсатор? В момент подачи напряжения через него проходит ток заряда, который постепенно снижается до нуля. Чем не нажатие на кнопку?

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

Просто вовремя вспомнился график заряда из учебника. А ведь уже собирался рыть интернет в поисках нового биоса для этой давно снятой с производства модели — и вряд ли бы нашёл.

13444

Не виндой единой

Давеча приходит ко мне отец, сетевой инженер:

— Надо, видимо, уже на линукс переходить.

— Ну так переходи, в чём проблемы?

— Да ну, я эту систему совсем не знаю.

Три года назад он кривил лицо, когда я о ней упоминал. Сегодня же я поставил ему на комп Fedora 22 с Oracle Virtual Machine (есть проги типа Альфа-директа (для брокеров), которые не работают под линуксом ни в какую).

Вечером приезжает, включает:

— Это чё такое?!

— Линукс.

— Почему Федорка?

— Ну, с openSUSE были проблемы, да и не знаю я её…

— Ну давай мне, в инете посижу.

Собираюсь я уже уезжать. Крик из комнаты:

— Женя, бл%#ь! Как же я раньше жил-то?!

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

Итог: человеку за сорок, доволен как ребёнок, периодически вскрикивает: «Охренеть, тут даже это есть!» Уже сидит читает консоль, bash скриптинг. Говорит, завтра будет ядро пересобирать.

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