LINUX.ORG.RU
ФорумTalks

systemd портит материнские платы PC/ноутбуков по дефолту монтируя efivarfs на чтение-запись

 ,


1

3

Пруф: https://github.com/systemd/systemd/issues/2402 Обсуждение на HN: https://news.ycombinator.com/item?id=10999335

Для Ъ: юзеры выводят из строя PC/лэптопы, по тем или иным причинам, удаляя каталог /sys/firmware/efi/efivars/, который systemd по дефолту монтирует в rw, т.е., грубо говоря, давая возможность удалить «биос» (да я знаю, что в реальности это uefi) изнутри ОС.

Один из случаев: https://bbs.archlinux.org/viewtopic.php?id=207549 (товарищ собирался переустановить систему, но им с другом стало любопытно, что будет происходить с Гномом, после выполнения rm -rf --no-preserve-root /. Итог печален, ноутбук MSI превратился... превратился MSI-ноутбук... нет, не в шорты. В кирпич).

Что я хотел сказать. Когда мудаков или школоту подпускаешь к серьёзным вещам: написание кода для ядра или написание новой системы инициализации (которая ВНЕЗАПНО становится не только системой инициализации), или написания кода для АЭС - логично предположить, что это рано или поздно закончится катастрофой. И если история с Пшшшшаудио завершалась (а по слухам, до сих пор завершается) лишь разражением, то дохлое железо пользователей карму Леннарту сильно укорачивают, индусские коровы в негодовании от происходящего, доложу я вам.

Слава Леннарту, слава systemd, товарищи! Верной дорогой движемся мы к светлому будущему, возглавляемое светлыми умами корпорации Redhat!



Последнее исправление: vehn (всего исправлений: 1)

Ответ на: комментарий от intelfx

Конечно. Однако, большинство людей в треде со мной согласны.

Большинству людей в треде просто не подали мысли о том, что нормальные, безопасные настрокий должны быть не rw, а ro. Это называется «защита от дурака». Или от случайности, как в вышеописанном случае с Гномом. Это стандартная мера в любой высокотехнологичной индустрии.

vehn
() автор топика
Ответ на: комментарий от intelfx

If it looks like shit, smells like shit, and feels like shit, you don't have to actually eat it to know it's shit. (c)

beastie ★★★★★
()
Ответ на: комментарий от intelfx

Могут. Надо взять интеграл компетентности по всем отписавшимся, но, увы, такой информации у меня нет.

Однако, на основании десятка постов, ты выводы о том, что Леннарт прав, ты таки сделал.

vehn
() автор топика
Ответ на: комментарий от arturpub

Торопился, бро, извини, боялся не успеть донести

vehn
() автор топика
Ответ на: комментарий от arturpub

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

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

vehn
() автор топика
Ответ на: комментарий от intelfx

Да, потому что многих из отписавшихся «на стороне systemd» я знаю как достаточно компетентных (по форумным постам).

Это весьма необдуманная позиция строить своё мнение на основании форумных постов. Формировать своё мнение разумней на основании фактов приведённых в топике.

vehn
() автор топика
Ответ на: комментарий от vehn

В топике никто никаких фактов не приводил. Все лишь высказывали свои неформальные мнения.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Леня нарушил принцип неожиданности, т.к. подавляющее большинство не в теме за уефи, и что оно валяется rw-маунтом. Это эпичный факап, и компетенция неудивленных как раз-таки играет здесь обратную роль. Их решения привели к тому, что юзер без задней мысли угробил девайс — о чем тут дальше говорить? Давай еще он поставит растяжку у тебя в подвале, а потом скажет, что это от наркоманов, и нечего соседским детям было там лазить.

arturpub ★★
()
Ответ на: комментарий от vehn

А какие факты в топике приведены? Я вижу только потоки желчи по поводу PulseAudio/systemd/etc. Ситуация такова: с одной стороны есть разработчики, которые опираются на стандарты, согласно которым после удаления содержимого efivars система должна загрузиться в recovery; с другой стороны производители железа, которые начхать хотели на стандарты, и которые после удаления efivars превращают систему в кирпич. Вопрос: ну и кто мудак-то?

hippi90 ★★★★★
()

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

MLP_Fan ★★
()
Ответ на: комментарий от hippi90

Вопрос: ну и кто мудак-то?

Оба. Первые - потому что так делают. Вторые, потому что зная о таком поведении первых, ничего не предприняли и не собираются.

Честно, хиппи90, ну вот какой гимнастикой ума ты занимаешься, чтобы умудриться поддерживать такой факап? С intelfx, ладно, всё понятно. Он либо тролль, либо ему платят, либо он дурак. Мне интересно, что тебя заставляет поддерживать такое решение, выставить эту фичу в rw? Ну захотел внести изменения, перемонтируй в ro, делов-то.

vehn
() автор топика
Ответ на: комментарий от vehn

Оба. Первые - потому что так делают.

Если заявлено одно, а происходит другое, то оба. В противном случае мудак ровно один.

arturpub ★★
()
Ответ на: комментарий от arturpub

Я могу без задней мысли понаписать рандома в /dev/mem и попасть в PCI-регистры — о чём тут дальше говорить?

Принцип неожиданности был нарушен вендором, когда он не предусмотрел восстановление после очистки NVRAM.

intelfx ★★★★★
()
Ответ на: комментарий от hippi90

Ну и зачем тогда вообще эти стандарты нужны?

Слушай, ну ты какбуд-то вчера родился, ей-богу.

vehn
() автор топика
Ответ на: комментарий от hippi90

Чтобы можно было не изобретать велосипед каждый раз, а юзать готовый интерфейс железо<->программист. Но это не освобождает от чтения даташитов и проверок на тему, будет ли имеющийся драйвер/ПО работать как полагается, а не гробить железо.

arturpub ★★
()
Ответ на: комментарий от intelfx

Я могу без задней мысли понаписать рандома в /dev/mem и попасть в PCI-регистры — о чём тут дальше говорить?

А в чём у тебя собственно затруднение? Пиши, ради бога, ктож не даёт. Отправляй машину в ребут и можешь писать дальше, пока не надоест.

vehn
() автор топика
Ответ на: комментарий от vehn

Я поддерживаю Поттеринга в данном конкретном случае, потому что он прав в том, что косяк производителя железа должен исправлять производитель железа. Иначе на шею сядут и ножки свесят. Вы же не будете обвинять гугл, в том, что ваш Андроидофон умер от китайской зарядки. Вот так же и тут. Монтирование efivars в rw только дефолт, никто не мешает вам сменить этот дефолт или разработчику вашего дистрибутива. Ну, а арчешкололо должно страдать, да.

hippi90 ★★★★★
()
Ответ на: комментарий от hippi90

Можно я тебя ткну в этот тред, когда вконце-концов дефолт изменится на ro (а он изменится, потому что даже Лёне, в конце-концов надоест, что на него указывают пальцем и говорят «во, дурак-то, гы-гы-гы» ну или сверху укажут, мол, не позорь корпорацию) и ты чистосердечно раскаешься, скажешь, да, батенька, дурак, был не прав? :)

..и поставишь мне пивася )

vehn
() автор топика
Ответ на: комментарий от vehn

когда вконце-концов дефолт изменится на ro

Ленартофаны как эплофаны - у них в таких случаях резко наступает амнезия.

andreyu ★★★★★
()
Ответ на: комментарий от intelfx

Попаду рандомом в какой-нибудь странный регистр и подам на процессор два вольта.

Как ты себе это представляешь? Это такие же регистры, как и регистры оперативной памяти. Ты же не беспокоишься, играя в игру, что она запишет «в странный регистр» ОЗУ карты и карта выйдит из строя.

vehn
() автор топика
Ответ на: комментарий от vehn

регистры оперативной памяти

Лол. Нубьё пытается уличить меня в некомпетентности.

Алсо, почитай про виртуальную память для начала.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от intelfx

Лёня прав, но всё-таки козёл.

Ему говорят: защити идиотов, сделай ro.

Он говорит: руту должно быть позволено всё.

Лучше бы сделал и не трахал себе мозг. Руту от этого возможностей не убавится. Срачей убавится. Волосы Лёни будут мягкими и шелковистыми.

Ибо сделать просто rm -rf /* вместо ./* немудрено. А восстанавливать прошивку UEFI долго и больно.

От Лёни бы не убыло.

Deleted
()
Ответ на: комментарий от intelfx

Лол. Нубьё пытается уличить меня в некомпетентности.
Алсо, почитай про виртуальную память для начала.

man 4 mem:

mem is a character device file that is an image of the main memory of the computer.
Byte addresses in mem are interpreted as physical memory addresses

Слился?

vehn
() автор топика
Ответ на: комментарий от vehn

Лол, нубьё пытается тыкать меня в маны.

Сначала расскажи, в каком месте игра сможет писать в /dev/mem или вообще по физическим адресам. А потом не забудь уточнить, что такое «регистры оперативной памяти».

То, что я от рута могу писать в /dev/mem, и я буду писать по физическим адресам, я прекрасно знаю и как раз тебе это и говорю.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)

Б-же, сколько проблем от этого говноUEFI...

FiXer ★★☆☆☆
()
Ответ на: комментарий от intelfx

Лол, нубьё пытается тыкать меня в маны.

Ну вот опять. :) Ну так ты ответь, чего меня про виртуальную память-то послал читать? Или таки слился?

vehn
() автор топика
Ответ на: комментарий от vehn

На АЭС покупают материнки на которых должна быть защита от дурака? НА АЭС есть systemd?

Medar ★★★★★
()
Ответ на: комментарий от vehn

Ты же не беспокоишься, играя в игру, что она запишет «в странный регистр» ОЗУ карты и карта выйдит из строя?

Я в третий раз спрашиваю: с какой радости «игра» сможет писать по физическим адресам?

Это такие же регистры, как и регистры оперативной памяти.

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

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Я в третий раз спрашиваю: с какой радости «игра» (про которую ты там говорил) сможет писать по физическим адресам?

Парень, остынь, не додумывай за меня. Вот мои слова:

Как ты себе это представляешь? Это такие же регистры, как и регистры оперативной памяти. Ты же не беспокоишься, играя в игру, что она запишет «в странный регистр» ОЗУ карты и карта выйдит из строя.

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

Ну так мне куда дальше идти, что ещё почитать? )

vehn
() автор топика
Ответ на: комментарий от vehn

Ты сравниваешь меня, пишущего в /dev/mem, и игру, пишущую куда-то там, и неявно приравниваешь опасения по поводу опасности записи в /dev/mem от рута к опасности записи чего-то там куда-то там из процесса игры.

(Алсо, будем считать, что ты просто косноязычен и имел в виду регистры DRAM-контроллера. Иначе сказанное тобой в принципе не имеет смысла.)

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

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Ты сравниваешь меня, пишущего в /dev/mem, и игру, пишущую куда-то там, и неявно приравниваешь опасения по поводу опасности записи в /dev/mem от рута к опасности записи чего-то там куда-то там из процесса игры.

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

(Алсо, будем считать, что ты просто косноязычен и имел в виду регистры DRAM-контроллера. Иначе сказанное тобой в принципе не имеет смысла.)

Да, а разве это не очевидно, что говоря про регистры оперативной памяти я говорю именно об этом. А что тебе пришло в голову? )

vehn
() автор топика
Ответ на: комментарий от vehn

Да, речь идёт о физическом повреждении. Я последний раз спрашиваю — чем ты руководствовался, когда в разговоре об опасности записи в физическую память внезапно упомянул «игру, которая тоже может что-то куда-то писать»?

Да, а разве это не очевидно, что говоря про регистры оперативной памяти я говорю именно об этом. А что тебе пришло в голову? )

Занесите это в реестр платиновых выкручиваний из собственной лажи под номером #666.

Что характерно, на три моих предыдущих вопроса про «что ты имел в виду» ты проигнорировал, а когда я намекнул тебе на возможное значение твоих слов — ты тут же в него вцепился. :]

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)

каталог /sys/firmware/efi/efivars/, который systemd по дефолту монтирует в rw

В чем профит-то монтировать его в rw? А то я эти два треда пробежался наискосок да так и не понял? Это реально нужно было делать по какой-то причине или накосячили?

alozovskoy ★★★★★
()
Ответ на: комментарий от intelfx

Да, речь идёт о физическом повреждении. Я последний раз спрашиваю — чем ты руководствовался, когда в разговоре об опасности записи в физическую память внезапно упомянул «игру, которая тоже может что-то куда-то писать»?

Хех, батенька, ну не нужно вырывать из контекста, не нужно! Не красиво это! ) Я сказал ровно следующее и затрудняюсь сформулировать более точно (русский язык для тебя родной? ты являешься его носителем от рождения?)

Как ты себе это представляешь? Это такие же регистры, как и регистры оперативной памяти. Ты же не беспокоишься, играя в игру, что она запишет «в странный регистр» ОЗУ карты и карта выйдит из строя.

Ах, помойму, я начинаю догадываться, что у тебя вызывает затруднение. Я имел в виду, что принципиально, основная оперативная память не отличается от ОЗУ видео-карты. И первая, и вторая предназначенны для хранения информации.

Я очень надеюсь, что доступно сумел переформулировать своё объяснение :)

vehn
() автор топика
Ответ на: комментарий от intelfx

Занесите это в реестр платиновых выкручиваний из собственной лажи под номером #666.

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

Что характерно, на три моих предыдущих вопроса про «что ты имел в виду» ты проигнорировал, а когда я намекнул тебе на возможное значение твоих слов — ты тут же в него вцепился. :]

Ммм.. мне не совсем понятна данная инсинуация. Я всегда стараюсь отвечать за свои слова. В данном треде я стараюсь отвечать тебе развёрнуто. Не переходя на личности, хотя повод ты мне дал дважды.

vehn
() автор топика
Ответ на: комментарий от alozovskoy

В чем профит-то монтировать его в rw? А то я эти два треда пробежался наискосок да так и не понял? Это реально нужно было делать по какой-то причине или накосячили?

Профит в том, что из ro тебе не нужно его перемонтировать в rw. Логика в том, что если ты уже рут, то какая разница - пущай уж сразу будет на запись замонтирована, что сэкономит тебе время т.к. не нужно будет вводить ровно одну команду.

На вопрос накосячили или нет ответ в топике. У людей неработающие девайсы. Сам как считаешь накосячили или нет.

vehn
() автор топика

Я думаю, тут Леннарт не прав, в том что монтирует rw по умолчанию. Нарушается тут принцип security by default — то есть умолчальные настройки должны быть безопасными. Конечно GNU/Linux не OpenBSD, но принцип-то хороший и следовало бы ему следовать.

Но фейл тут конечно в основном на стороне разработчиков UEFI, так как по-хорошему в такой ситуации должна загружаться какая-то дефолтная разумная конфигурация, не должно быть способа убить железо программно так легко.

Xenius ★★★★★
()
Ответ на: комментарий от vehn

На вопрос накосячили или нет ответ в топике. У людей неработающие девайсы. Сам как считаешь накосячили или нет.

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

Xenius ★★★★★
()
Последнее исправление: Xenius (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.