логин: 
<< предыдущая заметкаследующая заметка >>
20 августа 2016
Поиск IP по картинке

Сижу дома, простудился сильно. А это у меня обычно недели на полторы. В таком состоянии никакая работа невозможна, можно только программировать. Программировать — это не работа, тут ума не надо. Товарищ попросил сделать систему неких беспилотных мониторов техпроцессов для промышленного объекта. Дело нехитрое: взяли мы в домашнем хозяйстве свободную Raspberry Pi (спасибо старым друзьям за подгон), поставили почти без бубнов тамошний Debian, запустил я на нем LXDE (простого startx почему-то в системе не оказалось), привинтил браузер какой-то Midule или Midile или что-то типа того (Chromium отказывался становиться даже после длинных инструкций, да и не нужен он), поставил PHP и Apache (nginx из коробки работать отказался, а настраивать было лень). В общем, получился классический kiosk: грузится система, разворачивается на весь экран только браузер, ну и дальше он уже пляшет. Написал я на JS тонкий клиент, который всякую работу делает и аяксами лазает на местные сервера. Единственная проблема: станки эти находятся в закрытом городе, а ехать туда нет ни сил ни желания ни допусков. Поэтому надо, чтоб всё заработало из коробки. А у системы задача — найти master-сервер в местной сети и с ним взаимодействовать. А его IP, понятное дело, никто заранее не скажет, да и он смениться может. В общем, прикинул я JS к носу и придумал фантастически идиотское решение, которое оказалось очень простым и эффективным: браузер обстукивает все 254 IP в той же сетке, где ему выдали адрес (.1, .2, ..., .254) в попытках загрузить некую уникальную картинку /master/momento.png Если удалось — значит, нашел мастер-сервер, и запоминает его IP в своем браузерном хранилище (а оно всегда у браузеров есть) и отныне работает по аяксу с этим хостом. Если хост лег — снова его ищет. Обстукивание 254 адресов происходит очень быстро и весело, весь процесс занимает пару секунд — нужный хост быстро отзывается, и всю остальную балалайку картинок мы просто грохаем, не дожидаясь загрузки, а браузер сам разберется, не маленький. Сам процесс, понятное дело, приятно виден на дисплее:

Теоретически конечно надо бы png для такой цели всякий раз создавать искусственно с SVG-шифровками внутри — для безопасности, чтоб избежать подделки. Но я решил не париться — сети там, говорят, закрытые, данные не сильно значимы, откуда там и зачем там взлом. Лучше бы мне подумать, какую бы фичу туда привинтить, чтобы послеживала, не подвис ли браузер на третью неделю работы, а если подвис, то перезапустить его или всё LXDE или просто restart сделать. Но думаю не особо напряженно, потому что через час поезд в Харьков (ребенка забирать от дедушки с бабушкой), еду на один световой день и везу кучу инструментов, чтоб бывшей теще поставить кондиционер. В Харькове +30... Дай бог пережить завтрашний день, всё успеть, просверлить и поставить, и вернуться с понедельничка в холодную Москву.

А чем вы развлекаетесь летом?

UPD: У метода оказался очень неприятный эффект: если во внутренней сети окажется устройство, роутер или компьютер, которое требует пароль доступа к любому своему контенту, то запрос картинки вызовет появление на экране казенной рамки «Логин-пароль: " — это сделает сам браузер, ни с кем не считаясь.

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок
Оставить комментарий
Linux Safari Chrome
 Москва
6
0
m (ngs-govno)
И вот так у нас примерно половина оборонки и работает...
Linux Ubuntu Firefox
 Москва
4
0
Leonid Kaganov
Это не оборонка, это колбасный завод.
Linux Ubuntu Firefox
 Москва
7
0
Leonid Kaganov
Я хотел было еще вставить три строчки кода, чтоб изредка раз в месяц на экран выползал таракан: http://lleo.me/dnevnik/2010/10/20.html Но друг запретил мне это делать.
Windows Firefox
 Москва
14
0
konachodas
Конечно. За таракана этот колбасный завод СЭС прикрыть может.
Windows Safari Chrome
 Самара
0
0
Aleksandr
какие строчки?
Linux Safari Chrome
 Москва
3
0
Leonid Kaganov
Я же ссылку дал. Там код несложный совсем.
Opera
 Москва
3
0
Mike Novikoff
Классные истории у тебя были 6 лет назад. Старушка дождя.
(Конечно, читал уже, но это достойно перечитывания).

А чем дело закончилось? Она жива ещё?
Linux Firefox
 Нидерланды
0
1
Igelko
зачем так, когда можно на 7 ноября интернационал играть!
Windows Safari Chrome
 Москва
0
0
Vladimir
Всё равно, не стоит поощрять специфический образ жизни.
Windows Firefox
 CHBremgarten AG
0
0
Меир Маркович Штангенциркуль
А ниже народ с соплями и слюнями доказывает право на свой специфический образ жизни, отрицая всяческую удобную локализацию и ратуя только и только за англояычные версии программ. Идиоты? Один из них (Идиотъ) даже сам в этом признался :)
Mac Safari
 Израиль
2
0
braintunic
> загрузить некую уникальную картинку

Странно, почему это должна быть именно картинка, а не простой текстовый файл?
Linux Ubuntu Firefox
 Владимир
2
0
Adamos
Видимо, чтобы браузер сохранил ее в кэше и в следующий раз вместо того, чтобы тянуться за этой картинкой, сразу выдал скрипту, что она есть, а значит, сервер... ну и что, что не пингуется? Картинка-то - вот она!..
Linux Safari Chrome
 Москва
4
0
Leonid Kaganov
И каким тэгом и зачем загружать текстовый файл? А так img src=http://192.168.0.123/img.png?random64646445 И браузер услужливо раздает события onerror и onload - только бери.
Mac Firefox
 Киев
0
0
grimskin
Аяксом же, асинхронненько
Windows Safari Chrome
 Каменск-Уральский
0
0
D.iK.iJ
Аякс вместо 1 строки с img src? Современненько.
Mac Firefox
 Киев
0
0
grimskin
Вместо 254 строк с img и кода, который ловит события об их прогрузке. Алсо - надежнее, т.к. можно содержимое ответа проверить, картинку то криво настроенный сервак какой-нить может и отдать.
Linux Safari Chrome
 Москва
0
0
Leonid Kaganov
Это как? Пример пжлст.
Mac Firefox
 Киев
0
0
grimskin
навскиду как-то так: http://pastebin.com/ZS13QmX1

ну и по-хорошему надо еще считать количество фэйлов, чтобы понимать, когда мы ничего найти не смогли.

p.s. пришлось код закидывать на pastebin, т.к. иначе коммент не принимался, что-то там лопоталось про неотображение html-тегов и все такое
p.s.s. - в цикле нуна i меньше 255, конечно же, то я копипастнул криво
Windows Firefox
 Москва
0
0
vctor
Каждому ребёнку - персональную бабушку!

Вот зачем нужны тёщи. Одобряю!
Mac Safari
 Израиль
3
1
braintunic
> А его IP, понятное дело, никто заранее не скажет, да и он смениться может

А ведь для чего-то люди придумывали и DNS и NIS и LDAP...
Linux Safari Chrome
 Москва
0
0
Leonid Kaganov
А где гарантия, что там это настроено, прописано и заработает из коробки?
Mac Safari
 Израиль
2
0
braintunic
А где гарантия, что там HTTP настроен?
А ведь это ты почему-то считаешь гарантированным?)

Пишешь или звонишь их сисадмину и спрашиваешь, какой из сервисов у них настроен для hostname, всего делов-то.

А у твоего метода есть уязвимость.
В один прекрасный день они перенесут сервер на более мощную машину, а старую машину продолжат использовать как обычный компьютер, а почистить /master, конечно, забудут.
Тут у тебя всё и повалится)
Linux Safari Chrome
 Москва
1
0
Leonid Kaganov
Нет контактов сисадмина. Надо чтоб работало из коробки. А картинку скрипты создают, мастер-то одна из этих Raspberry, смотря какую к станку подключат. Взаимозаменчемость, опять же Есди надо - еще и выборы между ними устроим, у кого пинг лучше. Тоже средствами тонкого клиента. Считаю, что это лучший метод.
Mac Safari
 Израиль
0
0
braintunic
Ладно, убедил ;)
Linux Chrome
 New York
0
0
Зокалебала кревая авторизацея
дикие люди...

Хотя на самом деле ситуации разные бывают: мне как-то пришлось передавать динамический IP-адрес в виде строки в текстовом файле на публичном веб-сервере, а чтобы этот файл кто попало не открывал - назвать его именем из одних пробелов...

А другого варианта там не было.
Windows Safari Chrome
 Самара
1
0
Aleksandr
программисты и работают и отдыхают за компьютером)
Mac Safari
 Израиль
6
0
braintunic



В английском языке выражение "find for" используется только в юридическом сленге, и значение у него несколько иное.

Поменяй это сообщение на "Find Master", а лучше "Look for Master" или "Search for Master".
Linux Safari Chrome
 Москва
3
0
Leonid Kaganov
Поздно :) Пачка Raspberry Pi уехала в далекие города, а я лежу на полке поезда Москва-Харьков. Сука чемодан с инструментами кондиционера неподъемен и не умещается под полкой. Добрый чел помог эти 60 кг наверх поднять. Щас придет таможня и попросит показать...
Mac Safari
 Израиль
5
0
braintunic
> Сука чемодан с инструментами кондиционера неподъемен
> Добрый чел помог эти 60 кг наверх поднять

Заносила в вагон - жена?
Наверх поднял - сосед.
А доставать будет - тёща? ;)
Windows Firefox
 Москва
0
0
vctor
И потом тёща, держась за поясницу, будет объяснять соседям;

- Вы не смотрите, что он необычный. Зато такой умный, такой умный!
Windows Firefox
 Австралия
0
0
Идиотъ
Сказать таможне "не открывайте, там труп" - они и достанут... Единственная проблема - не совсем в Харькове.
Linux Safari Chrome
 Москва
15
1
Leonid Kaganov
Вот вы смеетесь, а российская пограничница только что полчаса листала мой паспорт и задала вопрос: с какой целью вы ездили в США?

Не, нормально? С КАКОЙ ЦЕЛЬЮ ВЫ ЕЗДИЛИ В США - спрашивают теперь русские пограничники на украинской границе.

В тренировочный блять лагерь обамки по сходу-развалу России ездил. Учили стрелять из айфона, взрывать зубопротезные мосты и искать покемонов в церквях.
Windows Firefox
0
0
Идиотъ
Мать сыну-то гроб покупала,
Отец ему яму копал,
Жена ему саван сшивала —
Всем разом работу вам дал!
Linux Firefox
 Mount Laurel
3
0
Михаил (#1684620)
Мне кажется, только «Search for Master» подходит по смыслу. Это же не головоломка «найди кота сервер». :–)
Windows Firefox
 Европа
1
0
Меир Маркович Штангенциркуль
Не думаю что Леонид делал свои беспилотные мониторы для Вашингтона, Кейптауна или Кембриджа. Так же не думаю что на колбасном заводе, который находится в закрытом городе который при СССР назывался скорее всего "Новосибирск 13" или "Ахтубинск 38" кого-то волнует какое английское, АНГЛИЙСКОЕ, КАРЛ, правописание более правильное. По мне там вообще должно быть "Поиск основного сервера" без всякой этой англоязычной туфты. Зачем вообще в России нужна эта иностранщина?
Opera
 Москва
2
0
Mike Novikoff
> Зачем вообще в России нужна эта иностранщина?

Хотя бы уже затем, что существует зоопарк кодировок (866, 1251, koi8-r, koi8-u, iso-8859-5, utf-8, utf-16) и с ними бывают проблемы. А простая семибитная ASCII работает всегда и везде. Даже если делать переводы на русский (потом, отдельно, через gettext), то основа всё равно в ASCII по-английски. Во всех приличных программах, по определению.

Подчеркну: это вопрос матчасти, а не вкуса.

Ну, а кроме того, конечно, как языковая практика. Лично у меня — ежедневная с 1990 года и поныне. Потому что вся основная документация — англоязычная. Хорошей русской документации в линуксе не было и не будет, это я говорил ещё в 2002 и повторяю сейчас. По простой причине: кому она нужна, тот не может её написать, а кто может, тому уже не нужна.
Mac Safari
 Израиль
0
0
braintunic
> А простая семибитная ASCII работает всегда и везде

Почти везде ;)
Видел я в своё время машины с системной кодировкой КОИ-7, то есть, заглавные русские буквы вместо строчных латинских.
Linux Safari Chrome
 Москва
1
0
Неужели_меня_теперь_залогинит_нормально
Авотхуй! В телеграфе (а кое-где он ещё используется, например, в гражданской авиации) пятибитная кодировка МТК-2.
Windows Firefox
 Москва
1
0
Меир Маркович Штангенциркуль
Не надо валить всё на зоопарк кодировок, не существующих, а когда-то существовавших, эдак можно довспоминаться до того, что когда-то вообще на перфокартах да перфолентах всё было в виде дырочек. Есть utf-8 и давно пора принять этот факт.

Во всех приличных программах по определению присутствует локализация. Для России всё по-русски, для Германии всё по-немецки, для Дании всё по-датски и т.д. И точка.
Linux Safari Chrome
 Москва
0
0
katsuk
Потому что покажите мне завод, от колбасного до оборонки, где поставщики оборудования, а заодно и заказчики были бы китайцами, понимающими 1251? Не понимают они в массе своей 1251 и KOI8 тоже не понимают. А хуавэн и даже пиньïн не понимают рабочие этих заводов
Windows Firefox
 Австралия
1
0
Идиотъ
Ну не всё же сразу! Уже не "Naiti Mastera" какое-нибудь, уже культурный рост.
Windows Firefox
 Москва
0
0
Меир Маркович Штангенциркуль
Это бескультурный рост. Если совсем уж никак не получается вывести "Поиск основного сервера" то "Naiti Mastera" или "Poisk Mastera" это куда лучше, чем "Searching for Master".
Windows Firefox
 Австралия
7
1
Идиотъ
Возможно, есть исключения, но до сих пор мой опыт говорит мне, что когда в софте видишь перл вроде "poisk mastera", надо с ужасом удалить этот софт немедленно, в ужасе отформатировать жёсткий диск на самом низком уровне, разбить его в ужасе молотком, в ужасе бросить обломки в чан с кислотой и в ужасе самому нырнуть туда следом за ними.
Opera
 Москва
0
1
Mike Novikoff
> Программировать — это не работа, тут ума не надо.
Картишки — это тебе не шахматы, тут нужно думать! ;-)

> в своем браузерном хранилище (а оно всегда у браузеров есть)
Не всегда. Может быть отключено в настройках. Например, у меня.
Может, я чего-то не догоняю и когда-нибудь изменю мнение, но пока что эта фича мне видится бесполезной фигнёй из разряда bloatware. Совсем с ума сошли: индексировать каждый сайт, на который когда-либо заглядывали! На маленьком локальном винте! А Гугл тогда для чего?
Windows Firefox
 Румыния
0
0
Меир Маркович Штангенциркуль
> Совсем с ума сошли: индексировать каждый сайт, на который когда-либо заглядывали! На маленьком локальном винте!

Абсолютно из той же серии что и "Если вы не параноик, это ещё не значит, что за вами не следят" ©
Opera
 Москва
0
0
Mike Novikoff
Не в том дело. Просто у меня сейчас броузер (а также и юзерская домашняя директория) стоит на той же партиции, где и вся OS. И она размером всего 4 гига. Мне — хватает. Но мусорить там я команды не давал никому. Кстати, у броузера я и дисковый кэш запретил, весь кэш только в оперативке. Оно и быстрее.
Windows Firefox
 Москва
2
1
Меир Маркович Штангенциркуль
> у меня сейчас броузер (а также и юзерская домашняя директория) стоит на той же партиции, где и вся OS.

Да ты не только Петросян, ты ещё и ССЗБ :)

> Кстати, у броузера я и дисковый кэш запретил, весь кэш только в оперативке.

А вообще удалять браузер не пробовал? Попробуй, будет ещё быстрее! Я серьёзно. А если компьютер не включать, то будет ещё быстрее. А если компьютер вообще продать, то мало того что будет быстрее, так ещё место на столе освободится и денег хоть немного, но в бюджете прибавится. Не пробовал? Попробуй!
Linux Firefox
 Middletown
1
0
Юрий Шимановский
>Программировать — это не работа, тут ума не надо.

Все зависит от знаний и умений. Вот это программу я написал. Потом купил себе дом и несколько гектар леса, где фотографирую оленей. Нормальная работа.
Вот та программа
http://www.cnews.ru/news/line/unitrends_software_predstavila[...]
Windows Firefox
 Белоруссия
0
0
Propan (pavelprokh)
Клаву мобильную не забудь забрать ;)
Opera
 Москва
2
0
Mike Novikoff
ЛЛео, по поводу Биноника. Пожалуйста, сделай так, чтобы редактировать написанный коммент там можно было в течение больше чем 0 минут. (Насколько понимаю, это одна переменная в админских настройках движка). Спасибо заранее.

Ну и ещё там сейчас свои комменты удалять нельзя. Но это уж на твоё усмотрение.
Windows Safari Chrome
 Москва
3
0
[email protected] (варящий яйца в микроволновке) (simpleid/index.php)
Очень интересно, конечно, за такими вещами наблюдать.

Есть хорошо отлаженная концепция промышленной автоматизации, где для мониторинга и управления используются отлаженные десятилетиями протоколы - Modbus, CANOpen и т.п. Вот только занимаются ей скучные люди из отдела АСУ ТП, которые гораздо более интроверты, чем сетевые программисты. И на место промышленных решений начинают внезапно приходить поделки на Ajax и Raspberry Pi - "а у меня дома оно работает". И ведь, что характерно, оно действительно работает...
Mac Safari
 Израиль
0
0
braintunic
> занимаются ей скучные люди из отдела АСУ ТП

Присосался я к АСУ
И сосу её, сосу.

©
Windows Safari Chrome
 Москва
0
0
[email protected] (варящий яйца в микроволновке) (simpleid/index.php)
"Девушка, вы откуда?" - "Я с АСУ ТП..."

Вообще, интересно было бы узнать, что это за станки такие, выдающие информацию через веб. То есть да, сейчас практически все промышленные контроллеры умеют выдавать так свой HMI - но здесь-то речь об одном сервере при нескольких возможных. И, рискну судить по вольному обращению с именами файлов, он таки отдельно-программный. Интересно, что происходит с производством в момент его перезагрузки?..
Linux Safari Chrome
 Москва
1
0
Неужели_меня_теперь_залогинит_нормально
Наверняка там таки есть какой-нибудь, образно выражаясь, профибас, только погромисты-сисьодмины об этом не ведают. И по привычке с апломбом лезут со своим уставом.
Linux Safari Chrome
 Москва
0
0
Неужели_меня_теперь_залогинит_нормально
Неистово плюсую. И такое не только с АСУ. Я ж в своё время ещё и связистом был... Так вот, что эти новопришедшие мальчики-эникейгении творят - это кошмар! Или когда читаешь исповедь-лекции от шпешиалистов на хабре, неделю назад открывших для себя RS-232, G.711, g.703 и 2ВСК - волосы на яйцах седеют. Особенно когда эти пэхапе-кодеры связистов (или АСУшников) же ещё и поучают, как правильно.
Linux Chrome
 New York
1
0
Зокалебала кревая авторизацея
Не все новомодные фичи полезны: например, мегапопулярный в свое время XML оказался довольно неудобным.

Но и наоборот, не всегда старое - доброе.
Отлаженнные протоколы с отлаженными программами от отлаженных компаний, которыми занимаются отлаженные специалисты - а заказчику надо подсчитывать количество деталей на станке в час, и температуру в баке. С чем прекрасно справляется дешевая балалайка с веб-страничкой, с которой может работать любой студент.
Linux Safari Chrome
 Москва
0
0
Leonid Kaganov
Если говорить серьезно, есть цена вопроса. И в ситуации, когда цену роняет массовый спрос, дешевле, быстрее и удобнее использовать массовый продукт.

Если вы не поняли, о чем я, то пример. Допустим вам надо сделать большую серию устройств для производства или торговли, которые имеют небольшой экран, wifi, gprs если не найдется wifi, и камеру для скриншотов раз в десять минут, и gps еще. Стоимость железа должна быть 50 долларов.

Вы разработаете железо с этими характеристиками за эту сумму, включая дисплейчик? Нет. Если не возьмете... дешевый китайский смартфон за 50$ За счет массового пооизводства это железо самое дешевое. И, опчть же, за счет массовой популярности поограммиста для android/web найти куда проще, чем сранного специалиста АСУ (моя дипломная специальность, есличо), который будет пилить проект полтора года и выкатит стоимость железа по 500 за экземпляр в чемодане с бесперебойным блоком питания.
Windows Safari Chrome
 Воскресенск
0
0
[email protected] (варящий яйца в микроволновке) (simpleid/index.php)
Абсолютно верно! Именно поэтому я и не занимаюсь таким простым и привычным брюзжанием о том, как всё плохо.

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

...что в итоге приводит нас к планированию такой вещи, как "жизненный цикл продукта". Где всего-то надо, что различать, где находится горизонт - в рамках пары лет (игрушка, конечный продукт) или дальше десятилетий (создание производства, развивающейся компании).
Linux Ubuntu Firefox
 Москва
2
0
Leonid Kaganov
Странный "пример". Вот как раз со смартфоном таких проблем не будет - андроид един. А вот когда "инженер АСУ" спроектировал за три года некий ящик с проводами за 100500+, и через три года окажется, что к нему уже не выпускают этого процессора и плашек этой памяти - вот это проблема.

Но речь не про жизненный цикл продукта. Помню, путешественник-автостопщик Антон Кротов как-то с удивлением для себя узнал и рассказал в книжке о том, что если между городами А и Б 200 километров автодорог, вполне возможно, что ехать автостопом через город С, который за 500 километров, окажется вдвое быстрее. Потому что эта дорога очень public. Здесь речь о том же: за счет 7 миллиардов хомячков (и благодаря им и их нуждам) существует ряд типичных накатанных решений - как по железу, так и по разработке софта. Ничто не может сравниться с ними по дешевизне, потому что 7 миллиардов заказчиков - это непревзойденный опт в пределах планеты.

В частности, самые дешевые устройства - смартфоны-планшеты. А самые дешевые программные решения - Веб.

Поэтому, хоть я по диплому САПР/АСУ, но считаю, что использовать надо самый подходящий (дешевый, проверенный, отлаженный) ресурс. В частности, система-браузер и веб-технология - наилучшая среда для разработки простого приложения, выводящего что-то на экран. С первого взгляда может показаться, что мы едем из точки А в точку В с заездом в ненужную никому С за 500 км. А на практике - вдвое быстрее, надежнее и экономичнее.
Linux Firefox
 Москва
0
0
lavart
Увы, не всегда это выходит.

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

Много чего перепробовал, от спецадапторов и резисторов на ножку (не распознаёт) до подпаивания питания напрямую минуя аккумулятор (счётчик кулонов всё равно считает батарею разряженной и отрубает аппарат через 3 дня) и попыток найти UART на плате (не разведён).

В результате собрал агрегат из китайского LCD экрана и микроконтроллера за несколько большую цену - делов на один вечер и никаких проблем.
Linux Safari Chrome
 Москва
1
0
Неужели_меня_теперь_залогинит_нормально
На Али продаются волшебные OTG USB-хабы и кардридеры с внешним питанием. Я себе такой брал для HP Touchpad, который не умеет выдавать питание по USB при работе в режиме хоста. И он заряжался, и периферия (клавиатура + флешка) питалась и всё работало (пока сам HP Tp не утоп :( ). Рекомендую попробовать.
Windows Firefox
 Ивано-Франковск
2
0
Val
Предлагается дернуть питание с платы в момент загрузки/работы линупса. Повторить несколько раз до полного ушатывания СД-карты.
Не знаю, как распбери, а оранж, убунту минт, умирает с первой попытки отключить питание при загруженном рабочем столе.
Такие вот писатели софтов на линупсах под девборды у нас пролетают мимо интервью сразу после положительного ответа на вопрос: "на какой ОСи вы бы сделали управление промышленным объектом?"
Да, я понимаю, что хуяк-хуяк в продакшен, минимум усилий и готово. Однако, как бы друг потом спасибо не сказал.
Linux Safari Chrome
 Москва
0
0
Неужели_меня_теперь_залогинит_нормально
А вот тут не понял от слова "совсем". Нельзя ли пояснить для совсем дебилов, кроме ПЛК S7-400 и телеграфного аппарата РТА-80Л, ничего в своей жизни не видевших?
Windows Safari Chrome
 Москва
0
0
[email protected] (варящий яйца в микроволновке) (simpleid/index.php)
На S7-400, как я помню, даже SD-карточки сильно специальные и стоящие сильно необычных денег - не только из-за "фирменности", а из-за техпроцесса их производства.

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

Правильный ответ, кстати - можно использовать любую в рамках выполнения требований промышленной безопасности. Выполнить которые на тех же ПЛК гораздо проще (и зачастую - единственно возможно).
Linux Safari Chrome
 Москва
0
0
Неужели_меня_теперь_залогинит_нормально
Единственное, в чём позанудствую,- там не СД, а компактфлэш :). А в остальном неистово с вами согласен.
Windows Firefox
 Ивано-Франковск
0
0
Val
Вот такая борда: http://goo.gl/ZX5vnV
По фичам - отличный девайс, стоит копейки. И да, подходит для всяких экспериментов или быстрых решений.
Бутится она с SD, там же стоит оська. Проблема даже не в том, что SD-карта накроется из-за внутренних проблем в момент выключения питания - это как раз бывает крайне редко (в моей практике не было ни разу), а в том, что файловая система ОСи не рассчитана на инциденты с ВНЕЗАПНЫМИ обесточиваниями. Возможно, летит даже не сама ФС (та же NTFS оборудована логом-неваляшкой, так что ушатать ее путем обрыва транзакции - вполне нетривиальная задача, например), а летят какие-то файлы линупса, без которых - ой.
Залил на СД имедж, загрузил, дернул питание, ось не грузится. Висит лог, на клаву не реагирует.
Возможные контраргументы:
- надо выбирать такие линуксы, которые не падают,
- можно настроить опции, которые загрузят ОСь, аки терминатор Калифорнии свой асм 6502.
Не знаю, что возразить. Может так и есть. Дайте такой линупс для Оранж-Пи, скажу сипасиба.
Mac Safari
 Израиль
0
0
braintunic
> файловая система ОСи не рассчитана на инциденты с ВНЕЗАПНЫМИ обесточиваниями.
> Возможно, летит даже не сама ФС, а летят какие-то файлы линупса

"Летит ФС" и "летят файлы" - это одно и то же.
Думаю, что переформатировав ваш SD в ext4, вы избавитесь от проблемы с порчей файловой системы.
Устойчивость ext4 как минимум не ниже, чем у NTFS.
И любой из Линуксов для вашей Orange Pi должен поддерживать ext4 из коробки.

Но, конечно, если ваша флешка - это какой-то китайский нонейм за полдоллара десяток, то здесь уже ничто не поможет.
Windows Firefox
 Ивано-Франковск
0
0
Val
ext4, как батюшка ребе прописал. Однако, если и на винде глюканет запись файла реестра, нтфс не поможет.
Opera
 Москва
1
0
Mike Novikoff
> если ваша флешка - это какой-то китайский нонейм за полдоллара десяток
А на всех этих Pi разве не именно такие? (Не утверждаю, но спрашиваю).

Дешёвым китайским флешкам журналируемые FS противопоказаны. Говорю как владелец хвалёного (мною же здесь сильно хвалёного) медиаплеера iconBIT Toucan Smart 3D с Андроидом. Чья впаянная на плату NAND отформатирована как раз в ext4. Радовал этот девайс только полтора года, затем флешка физически посыпалась.

Конечно, я его использовал несколько активнее, чем предполагалось производителем. Поставил туда торрент-клиент и раздавал круглосуточно. А клиент этот каждые 10 минут записывал файлы статуса раздач. Через годик такой работы — привет колобкам.

(Знал бы заранее, соорудил бы для той директории симлинк на внешний носитель. А теперь уже поздно).
Mac Safari Chrome
 Нижний Новгород
0
0
tartaglione
Хм, ext4, говорите.
Вот только что с консоли его чинил.
Мне на работе подсунули несколько совсем виртуальных линуксов, и там виртуальные диски конкретно дохнут раз в неделю, корень уходит в read only, при этом диск остаётся в таком состоянии, что бедный линух не может даже перезагрузиться - просит помочь чинить ext4, не решается что-то там править.
В общем, я как раз переезжаю на виртуальные же серверы, но не свои, а от внешнего провайдера. Tilaa называется - можете поругать, если кто что знает. Я пока только могу сказать, что авторизация у них через жопу, второй фактор SMS не присылает, в интерфейсе хрен что найдёшь.
Linux Chrome
 New York
1
0
Зокалебала кревая авторизацея
можно еще молотком по процессору стукнуть.

Ну какой рабочий стол?! Командной строки - за глаза. Системная SD-карта - только на чтение, файловая система - упакованная, питание - стабилизированное.
И прекрасно будет "линупс" работать.

Просто некоторые нелюбители линупса не знают, что он бывает без "рабочего стола", а любители не знают про sqfs
Windows Firefox
 Ивано-Франковск
1
0
Val
Автор псто относится к какой категории согласно классификации? Есть надежда, что он не знает про sqfs?
А молотком могут стукнуть. Стукали, и не только молотком. ПЛК, да еще и в "закрытом городе", должен выживать не то что при пропадании питания, а и при небольшом неглобальном экстерминатусе. Хочу посмотреть на эту распбери в под данным углом.
Linux Safari Chrome
 Москва
0
0
Неужели_меня_теперь_залогинит_нормально
Как у нас говорят, взрывозащищённость - это фигня. А вот помбуроустойчивость...
Windows Safari Chrome
 Санкт-Петербург
0
0
Eugene
Вообще правильный подход. Пусть заводская трансформаторная подстанция взорвалась и улетела в ближний космос - зато ПРОГРАММА опроса датчика угла наклона продолжает работу в штатном режиме :)
Windows Firefox
 Fremont
0
0
Korj
Ваше право, конечно, но почему в вашем представлении Linux обязательно должен стоять на R/W разделе? Даже в Android системный раздел всегда в R/O.

Для специализированных систем полно дистрибьютивов Linux, хоть тот же OpenWRT, да и обычные серверные дистрибьютивы можно допилить до вполне устойчивого автономного состояния, если платформа их потянет.
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
С какой радости журналирующая партиция формата ext4 (!) станет вдруг умирать пр отключении питания? Да я свой комп в половине случаев отключаю кнопкой питания годами, и ничего. Это вы с Виндоус перепутали.

Да, кстати, а на какой оси вы бы сделали управление промышленным объектом? На Виндоус-сервер, да? На откатиках намыли бы денежек?
Windows Firefox
 Ивано-Франковск
0
0
Val
После перезапуска монтируется RO и ессно система не стартует.
fsck запускается, но там русская рулетка: иногда исправит 1-2 файла и полетели, иногда сыпется немногим более 9000 файлов, что произошло непосредственно вчера, игрался полчаса, проверял - не наговариваю ли я зря.
Могу заснять скриншоты, заверить у нотариуса.

Идею про загрузки с RO или упакованного имеджа конечно плюсую. Но неужели система настолько неубиваема, что разгребёт вышеописанный кейз с файлами рабочей конфигурации, которые конечно же обязаны быть?
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
Ваши слова мне напомнили сегодняшний разговор с другом именно в контексте данной заметки. Он купил четыре Raspberry Pi и четыре флешки, склонировал мой образец флешки (о котором речь в посте) и поставил работать рядом все четыре устройства. Все они (кроме того образца, где вставлена изначальная флешка, не важно в какой) начинали глючить, тормозить и виснуть, а после перезагрузки падали.

Выяснилось: виной тому некачественные флешки 4Gb (название не запомнил, что-то на "М" - Мнта? Манда? Мидан? Анмит?). Причем, тест флешки проходил на Винде даже нормально, но при попытке поставить такую флешку в фотик и много пощелкать, обнаруживались не читающиеся снимки. Дело было в некондиционных флешках.

МОРАЛЬ: Если с вашим современным официальным дистрибутивом Linux на партиции ext4 происходят какие-то неприятности при перезагрузках и выключениях, первым делом изучайте качество флешки.
Windows Firefox
 Ивано-Франковск
0
0
Val
Не знаю, стоит ли говорить, что накопители всех видов - это мое хобби, и конкретно с SD я вожусь лет 10, писал под них драйверы для всех девайсов, начиная с AVR и включая STM32, Blackfin, хардварные корки для FPGA, даже под 6502 и Z80 (!) портировал Chan-овский FatFS. На тех SD, где (лет 8 назад) еще были микросхемы NAND я их менял на дохлых картах, после чего при помощи нехитрых манипуляций и Erase запускал сабж в рабочее состояние. Рискну предположить, что я способен выбрать для своих систем достаточно надежные экземпляры. Так вот уверяю: описываемый случай тестировался на надежном экземпляре сдшки. )
Mac Safari
 Израиль
2
0
braintunic
Если вы уверены, что дело не в железе флешки, положите куда-нибудь в доступное место скриншоты, логи, текст /etc/fstab, распечатку вывода команды 'dumpe2fs -h' для вашей партиции, ну заодно распечатки 'fdisk -l' и 'mount'.
Может, там что-то совсем простое, и кто-нибудь из нас быстро увидит проблему.

Нормально отформатированная ext4 не должна каждый раз влетать в fsck из-за обычного перезапуска в процессе работы.
С этим должен справляться журналинг.
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
Не, у него ж вообще "сыпется более 9000 файлов". Что это за файлы вообще, которые лежат на диске и сыпятся сами собой от выключения питания?!
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
Кстати, я слышал, что есть любители включить "шифрование диска". Что это такое, не знаю (никогда не включал), но может в этом проблема?
Windows Firefox
 Ивано-Франковск
0
0
Val
Без проблем. Сниму с консоли.
Linux Safari Chrome
 Киев
4
0
alfua



я отвожу душу любительским строительством каменно-бетонных изделий
после смд компонентов на работе..., вы не подумайте - я очень люблю свою работу..., но как же приятно замесить бетомешалочку другую, и ложить камень....
ничего случайно не свезешь...
все видно...
просто положил - и все работает....
и НАДОЛГО...
тепловая деградация несказанно мала....

лечебная медитация вообщем.
Windows Firefox
 Австралия
9
0
Идиотъ
Говорю им: "Не ложьте камень в стенку!" - всё равно ложат!
Linux Safari Chrome
 Киев
0
0
alfua
расшифруйте
Windows Firefox
 Израиль
0
0
braintunic
> как же приятно замесить бетомешалочку другую, и ложить камень

Вам намекнули, что в блоге члена Союза Писателей принято "класть", а не "ложить" ;)
Windows Firefox
0
0
Идиотъ
А в ответ можно сказать: "Да мне покласть на ваши намёки!"

Если вдруг кто не видел, это почти дословная цитата из фильма про пионеров и истерического Штирлица:
deRoxR0TLsM
Mac Safari
 Москва
0
0
sonyxsir
Надеюсь, вы несерьезно. Но если вдруг... Я на эту тему как-то раз нашел замечательную статью:

http://govorprav.livejournal.com/4977.html
Linux Safari Chrome
 Москва
3
0
Неужели_меня_теперь_залогинит_нормально
Что-то мне вспомнился (прошлогодний, кажется?) псто про УЗО и заземление...
Windows Safari Chrome
 Москва
0
0
Распоследний Василис
В Харькиве спека неможлива - асфальт репается. Мухи сидят на заборе и хекают.
Windows Firefox
 Москва
0
0
Zamkadoos (Залогинило нормально!)
ซ่อมมันได้ไหม ครับ?
Linux Firefox
 Middletown
0
0
Юрий Шимановский
Це зрада на мою думку.
Linux Firefox
 Middletown
4
0
Юрий Шимановский
>А чем вы развлекаетесь летом?

На флейте играем в лесу для птичек. Любят они это дело. Даже прилетают и подпевают.

Bj6FKXVq6f0


Зимой хуже. Приходится играть дома, не щадя никого. Только попугаю нравится. Особенно, если гаммы.
Mac Safari Chrome
 Нижний Новгород
1
0
tartaglione
Я тут что-то резко полюбил покойного Яака Йоалу. Собственно, он мне и раньше нравился, но как он помер, я поискал записи, послушал и прибалдел. Особенно если сравнить с другими исполнителями некоторых песен, то создаётся впечатление, что этот Яак вообще не дышит, а у Коли Баскова, например, астма - если послушать в исполнении обоих песенку "Я тебе весь мир подарю". Или "Сама любовь" - я даже шёпотом не могу выговорить, что он вытворяет на одном дыхе.

А Йоалу в музучилище запихали как раз на флейту, и он сам говорил, что от флейты у него осталась дыхалка, которой хватает точно на то, что надо.

Флейта - круто, короче.

Сам я в школе на фоно учился, сейчас на гитаре бренчу, но всё реже...
Linux Firefox
 Research Triangle Park
0
0
Юрий Шимановский
Какое совпадение мыслей! Я тоже что то на Яака Йоалу подсел после его смерти. Пришел к выводу, что это это был лучший голос в СССР времен позднего совка. Я тоже учился на ф-но, потом бренчал на гитаре, потом постепенно перебрался к флейте. Сперва свирель. Нынче я ее преподаю в онлайне. Потом сопилка, блокфлейта, файф и, наконец, вот этот аппарат. И да - благодаря флейте я избавился от очень фиговой болезни легких, которая почти не лечится. А я вылечился. И следов не осталось, что озадачивает врачей. Флейта быстро избавляет от похмелья. Такой вот удобный побочный эффект.
Windows Safari Chrome
 Каменск-Уральский
0
0
D.iK.iJ
Блин, у всех всякие прикольные записи в никах. Я тоже хочу (((
Mac Safari
 Израиль
3
0
braintunic
Не у всех.
Только у малопрогредиентных шизофреников ;)
Windows Safari Chrome
 Москва
0
0
iisus
Лео, у "программировать" есть довольно широко употребимый синоним "кодить". А в настоящем времени как правильно говорить? "Я кожу"?
Windows Safari Chrome
 Каменск-Уральский
2
0
D.iK.iJ
Я закодировался
Linux Safari Chrome
 Москва
1
0
Leonid Kaganov
Кодить - это когда задачу поставил тебе начальник-программист. Разные понятия.
Windows Firefox
 CHBremgarten AG
0
0
Меир Маркович Штангенциркуль
"Кодить" и "программировать" в случае когда не руководить отделом программистов, только выдавая ЦУ и ТУ, а самому принимать участие в написании программ, суть одно и то же.
Linux Chrome
 Москва
0
0
Зокалебала кревая авторизацея
нет такого синонима.
Windows Safari Chrome
 Краснодар
1
0
ИvN (ivn86)
«фантастически идиотское решение, которое оказалось очень простым и эффективным: браузер обстукивает все 254 IP»

С 24-й маской подсети это сгодится, а что если они расширят маску?
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
А если весь мир перейдет на IPV6? А если мастер-сервер окажется во внешней сети, и придется обстукать весь мировой интернет? :) Давайте переживать проблемы по мере поступления, как велел Жванецкий :)
Windows Safari Chrome
 Москва
0
0
Dusty
>браузер обстукивает все 254 IP в той же сетке, где ему выдали адрес

А если вдруг в сетке маска, отличная от 255.255.255.0?
Linux Ubuntu Firefox
 Москва
0
0
Leonid Kaganov
А вы не подумали, что я знаю, какая маска в той сети в том далеком городе, и даже какой там WiFi-доступ, просто не знаю, какой IP будет динамически выдан, когда несколько коробок туда привезут и включат питание? :)
Windows Safari Chrome
 Москва
0
0
Dusty
Подумал, конечно. И еще подумал о том, что со временем у них структура сети может смениться, мало ли что им там понадобиться. А вот такое решение - оно негибкое, и со временем может стать геморроем для их админа.

всего комментариев: 249

<< предыдущая заметка следующая заметка >>