Re: systemd-networkd

2019-08-08 Пенетрантность artiom

Нет, проблема не во мне.
Я отключил это - всё заработало.
Проблема в тех, кто это производит и тех дураках, кто их поддерживает.

08.08.2019 06:36, Igor Savluk пишет:



On 24/07/2019 14.03, Н. Артём wrote:

Есть система, которая имеет SSH сервер в initramfs (dropbear).
Интерфейсы связаны через бондинг в bond0, на котором этот сервер 
работает.

Роутер выдаёт бондинг интерфейсу через DHCP фиксированный IP по MAC.

Когда система загружается, сервер убивается, бондинг разрушается и 
запускается "нормальная" сетевая подсистема,

которая настраивает бондинг и поднимает OpenSSH.
MAC bond0 не изменяется, IP выдаётся тот же.

Когда был Stretch, не было проблем, всё работало.
Обновил на Buster - всё сломалось.

Выяснилось, что недавно пришедший на замену работающей подсистеме, 
networkd-systemd всё ломает.
Если я не опускаю бондинг, его расхреначивает, и он требует IP для 
каждого адаптера.
Когда я устанавливаю MAC вручную в его настройках (в двух местах - 
настройках устройства bond0 и в настройках подключения),

он всё-равно устанавливает MAC на свой, и только потом на мной указанный.

В результате, роутер выдаёт другой IP (к тому моменту, ещё не истёк 
срок действия предыдущего).


Проблема решилась отключением этой замечательной штуки и переходом на 
предыдущую систему управления сетью.



Отсюда вопросы (реально не в курсе, так что может не в тему):

- Что я делаю не так?
- Зачем поменяли работающее на это?
- Повинен в этом Леннар или это последователи?
- Что их не устраивало в resolv.conf?
- Стоит ли намекнуть маинтайнерам дистрибутива на то, что это какая-то 
сильно непрозрачная, кривая и неочевидная в настройке херня?


Проблема только в тебе и твоих руках.









Re: systemd-networkd

2019-07-25 Пенетрантность artiom

Более того, формально opensource продукты, такие как мозилла тоже
в общем-то нарушают свободу N1. Потому что дизайн там такой запутанный
что на выяснение того как там что устроено и "change it so it does
computing as you wish" уйдут годы. А за эти годы оно будет три раза
переделано. Поэтому если ты не имеешь возможности тратить на работу над
конкретным продуктом значительную часть своего времени, ты не сможешь
"change it so it does your computing as you wish."


Конкретно насчёт этого, вы не правы. Тот же Столлман достаточно серьёзно 
относится к терминологии.

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




Re: systemd-networkd

2019-07-25 Пенетрантность artiom

> Правильно думаете. Я имею слишком большой опыт  программирования на
> этому уродце, чтобы заниматься этим в конце второго десятилетия XXI
> века, когда есть Go и Rust.

Go - это для микросервисов, да и то, где не требуется особая 
предсказуемость, как и любой язык с коллектором.
Ну и сам по себе: начали за здравие, кончили за упокой, когда туда 
набежали пионеры и стали засовывать директивы в комментарии, а систему 
его сборки объединять с Git, параллельно напиливая костыли, типа вендоринга.

Rust, увы, не взлетел, и похоже, что сейчас уже не предполагается.


> А код на C++ который существует ну слова доброго не стоит (ну скажем
> мозилла или qt).

Mozilla я не копал, а Qt вполне приятная библиотека, подозреваю, чем она 
вас не устроила, однако в целом, достаточно неплоха.



> Опять же код на столь безумно устаревших языках интересен только если у
> нас есть огромная старая codebase (ну скажем mozilla или qt). А эта
> codebase все равно была написана по стандартам конца прошлого века.
> Так что продолжать в том же духе не столь уже сложно

Похоже, вы очень давно не программируете на C++.
Сейчас это другой язык, и от Стандарта 2003 года сильно отличается.
А насчёт "устарелости" - он в пятёрке наиболее популярных в списке TIOBE.


> Потому  что мы в debian-russian. Были бы во freebsd-russian или
> macos-russian, шла бы речь про clang. Ну и понятно на какой платформе
> шла бы речь про MSVC.
>

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



> Вот совместимость с линейкой компиляторов очень способствует "чтобы оно
> не падало в местах, где...". Разные компиляторы вылавливают в качестве
> Warning-ов разные огрехи. И если все их гонять с -Werror и аналогами...

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


> Очень полезно для этой цели также тестироваться на разных процессорах.
> Вот, скажем если в тестовой ферме есть спарк, ни один не выровненный
> доступ к памяти не уйдет.
>

Это уже вопрос наличия ресурсов.


> Так борьба с systemd тоже требует времени. Вопрос в том, на что
> потратить время - на борьбу с поделиями поттерингов или на создание
> альтернативы им.
>

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


> Собственно проблема devuan как раз в том, что люди предпочитают бухтеть
> про то, какой плохой поттеринг, вместо того чтобы засучить рукава и
> сделать свое.

Зачем? Уже много делали. "Выбрали" творение поттеринга, потому что RH.


> Столлман 35 лет назад не бухтел про то какая плохая
> Symbolics, а писал патчи для LMI.
>

Столлман живёт в США, и он мог себе позволить бросить престижный и 
дорогой ВУЗ, не опасаясь того, что ему будет негде жить и нечего есть.

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



>
> То есть вместо того, чтобы потратить время на то, чтобы решить проблему
> для всех, вы будете тратить время и ресурсы на то, чтобы
> воспользвоаться решением, сделанным за вам.
>

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

Хотите мне сказать, что это плохо? :-/
Так и вы не святой, чтобы праведно судить: делаете то, за что вам платят 
заказчики.



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

Ну так о чём говорить? А поттеринг сунулся - не услышали, сунулся - 
послали, сунулся - отгородились.

Но он делал это снова и снова, пока не пробился.


>> Ну и прекращение их выхода для старых версий библиотек (та же OpenSSL
>> в конце года выкидывает какую-то версию) и прекращение официальной
>> разработки и поддержки старых диалектов, типа Python 2, на котором в
>> Devuan много что есть, тоже не стимулирует к переходу.
>
> Подавляющее боьшинство крупных корпоративных заказчиков использует
> системы на базе RHEL 6 и 7. Которые обе гораздо старее Devuan. Так что не
> беспокойтесь по поводу прекращения поддержки софта менее чем
> десятилетней давности.

Да как факт в openssl (по-моему, 1.12.x) больше патчей не будет.
Это риск по SDL.
Его заставляют менять, следовательно, придётся обновлять то, что в 
образах, а с учётом завязок других компонентов, надо обновлять саму ОС.



25.07.2019 10:12, Victor Wagner пишет:

On Thu, 25 Jul 2019 09:04:21 +0300
artiom  wrote:


  > Прописывать адрес статически.

А, ну да, в IPv6 у каждого диапазон же.
Можно, конечно, особенно внутри сети.
Но сейчас всё настроено с IPv4 и автоматической выдачей адресов, не
хочется 

Re: systemd-networkd

2019-07-25 Пенетрантность Eugene Berdnikov
On Thu, Jul 25, 2019 at 01:00:18PM +0300, Victor Wagner wrote:
> On Thu, 25 Jul 2019 11:58:01 +0300
> Eugene Berdnikov  wrote:
> 
> > > доступа к которым с этим китайцем придется судиться.
> > > в) оно все нихрена не документировано.  
> > 
> >  Железка и драйвера нас не интересуют. А вот базовая платформа общая.
> 
> Как не интересует? Нас интересует изменить поведение железки так, чтобы
> она делала то, что надо нам. Свобода N1 по Столлману.

 Прежде всего нас интересовал вопрос, кто победил в "войне за свободу ПО",
 и было утверждение, что война якобы проиграна. Меня именно это задело, и
 я утверждаю, что наличие свободной базовой платформы означает, что "война"
 вовсе не проиграна. Те самые производители железок помогают победить
 в ней проприетарщину, даже если закрывают код своих драйверов.
 Потому что платформа общая, а драйверы это частности.

> Кстати, в огромном количестве случаев "чтобы она работала как нам надо"
> будет "поправить дурацкий глюк в драйвере WiFi" или что-то подобное,
> так что без драйверов никак.

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

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

> Поэтому об отсутствии подготовки и образования речь не идет.
> 
> Речь идет о том, что гигантские  проекты должны быть структурированы
> так. чтобы можно было сесть и за полчаса разобраться где что править.
> При условии что ты умеешь читать на том языке, на котором оно написано.

 Да это тоже маниловщина. Открывашь, скажем, кусок, относящийся к изернету
 в более-менее структурированной линуксовой сети, а там -- бац! Kакие-то
 skb, локи, rcu и хрен знает что внутри привычного, вроде бы, языка Си...

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

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

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

 Да им просто не до документации... Это плохо, но не нужно искать здесь
 сознательное вредительство. Настоящее вредительство это "документация"
 от Майкрософт, у которого, наверное, есть целый штат сотрудников,
 задачей которых является так переделать технический текст, чтобы читающий
 (даже если у него 20-летний стаж в предметной области) почувствовал себя
 полным идиотом.
-- 
 Eugene Berdnikov



Re: systemd-networkd

2019-07-25 Пенетрантность Victor Wagner
On Thu, 25 Jul 2019 11:58:01 +0300
Eugene Berdnikov  wrote:

> > доступа к которым с этим китайцем придется судиться.
> > в) оно все нихрена не документировано.  
> 
>  Железка и драйвера нас не интересуют. А вот базовая платформа общая.

Как не интересует? Нас интересует изменить поведение железки так, чтобы
она делала то, что надо нам. Свобода N1 по Столлману.

Как правило, это подразумевает "собрать образ
прошивки, включающий все - и ядро, и драйвера и весь софт, включая
модифицированный нами". Производители железяк почему-то очень любят
оперировать образами прошивок. Как вспомню сколько пришлось Nokia пинать
всем сообществом, чтобы они в N800 и иже с ним сделали обновление
ядра через пакетный менеджер. И это Nokia, а не китайцы.

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

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

Ну или "попатчить CVE которое в mainline попатчили 3 версии ядра назад,
а у этих китайцев ядро 5 версий назад и сами они апдейтить его не
собраются"

>  Вам Столман не объяснил, в чём разница между свободным и бесплатным?

Мне-то как раз объяснил. Это вы тут пытаетесь нагло врать и утверждать
что несовободное свободно.

Свобода - это когда я (квалифицированный програмист, обремененный
семьей) могу в свободное время от своих других дел, заодно разобраться и
с этим. У меня на это хватит времени и сил. Поэтому Столлман
существенно важной частью концепции Свободного ПО всегда полагал Toolbox
Philosophy, которая сводит время на разбирательство к приемлемому.

Поэтому монолитные продукты, такие как Firefox, systemd, libreoffice
не могут считаться свободным ПО, по какой бы они лицензии не
распространялись.

>  А думать, что "свобода" это когда можно без подготовки и образования
>  сесть и сходу поправить что-то в коде гигантского проекта, вроде

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

Поэтому об отсутствии подготовки и образования речь не идет.

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

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

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

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

-- 



Re: systemd-networkd

2019-07-25 Пенетрантность Eugene Berdnikov
On Thu, Jul 25, 2019 at 10:25:46AM +0300, Victor Wagner wrote:
> On Thu, 25 Jul 2019 09:47:34 +0300
> Eugene Berdnikov  wrote:
> 
> > On Thu, Jul 25, 2019 at 12:54:43AM +0300, Victor Wagner wrote:
> > > Здесь все не так. И война за свободу ПО, которую начал Столлман в
> > > середине 80-х - проиграна.  
> > 
> >  Выиграна. Какую коробочку с WiFi или 4G ни возьми с полки, везде
> >  внутри линукс, а из лога, если он показывается, торчат busybox,
> >  dnsmasq и прочие ужасы... :) И каждый новый китаец, пришедший на
> > рынок со своей новой коробочкой, пихает в неё тот же линукс. Потому
> 
> Проиграна. Попробуйте в этом busybox-е что-нибудь изменить.
> Выяснится что
> а) не так-то просто выяснить как и чем это вообще можно собрать

 Нужна некоторая квалификация. Абыдна, да? :)

> б) оно требует патчей и проприетарных драйверов, за получение доступа к
> которым с этим китайцем придется судиться.
> в) оно все нихрена не документировано.

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

> Более того, формально opensource продукты, такие как мозилла тоже
> в общем-то нарушают свободу N1. Потому что дизайн там такой запутанный
> что на выяснение того как там что устроено и "change it so it does
> computing as you wish" уйдут годы. А за эти годы оно будет три раза
> переделано. Поэтому если ты не имеешь возможности тратить на работу над
> конкретным продуктом значительную часть своего времени, ты не сможешь 
> "change it so it does your computing as you wish."

 Вам Столман не объяснил, в чём разница между свободным и бесплатным?
 Жаль. Если нет времени разбираться в продукте, заплатите тому, кто сядет
 и разберётся. Продукт можете ему дать, вместе с зарплатой. Вас никто
 в этом не ограничит, и будет свободный выбор между "плестись в остающих
 на 3 года" или "опередить всех", "сделать свой форк" и т.д.

 А думать, что "свобода" это когда можно без подготовки и образования
 сесть и сходу поправить что-то в коде гигантского проекта, вроде ядра
 линукса, так это глупо. Никто ж не удивляется тому, что средняя кухарка
 не может просто так сесть и посчитать распределение радиационных потерь
 нейтронов в стенке реактора: ей нужно хотя бы квантовую механику изучить.
 Хотя книжек по физике на полке и в инете целый ряд, все свободно доступны.
 А если ещё возмущаться тем, что книжки "слишком сложно написаны", так
 это просто инфантилизм чистой воды. :)
-- 
 Eugene Berdnikov



Re: systemd-networkd

2019-07-25 Пенетрантность Victor Wagner
On Thu, 25 Jul 2019 09:47:34 +0300
Eugene Berdnikov  wrote:

> On Thu, Jul 25, 2019 at 12:54:43AM +0300, Victor Wagner wrote:
> > Здесь все не так. И война за свободу ПО, которую начал Столлман в
> > середине 80-х - проиграна.  
> 
>  Выиграна. Какую коробочку с WiFi или 4G ни возьми с полки, везде
>  внутри линукс, а из лога, если он показывается, торчат busybox,
>  dnsmasq и прочие ужасы... :) И каждый новый китаец, пришедший на
> рынок со своей новой коробочкой, пихает в неё тот же линукс. Потому

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


Собственно нарушается свобода N1.

The freedom to study how the
program works, and change it so it does your computing as you wish.

Более того, формально opensource продукты, такие как мозилла тоже
в общем-то нарушают свободу N1. Потому что дизайн там такой запутанный
что на выяснение того как там что устроено и "change it so it does
computing as you wish" уйдут годы. А за эти годы оно будет три раза
переделано. Поэтому если ты не имеешь возможности тратить на работу над
конкретным продуктом значительную часть своего времени, ты не сможешь 
"change it so it does your computing as you wish."

А с тех пор как Мозилла стала подписывать расширения ключом, сертификат
которого встроен в браузер, там все стало очень плохо со свободой N3.
Чтобы распространять модифицированную версию своего расширения, я должен
получить разрешение от чиновника из Mozilla foundation. Иначе оно не
будет работать у тех, у кого не отключена проверка подписи под
расширениями, что во-первых не во всех билдах отключаемо, во-вторых
вообще-то security hole.

Когда на выполнение какого-то действия требуется разрешительная виза 
от чиновника - это означает что свободы выполнять это действие нет.

> 
>  Экосистема живёт и развивается, это главный результат. А кто там

Крепостническая Россия при Екатерине II тоже жила и развивалась,
несмотря на отдельные мелкие шероховатости вроде восстания Пугачева.
Золотой, говорят, век. Только вот свободы нихрена там не было.

--



Re: systemd-networkd

2019-07-25 Пенетрантность Victor Wagner
On Thu, 25 Jul 2019 09:04:21 +0300
artiom  wrote:

>  > Прописывать адрес статически.  
> 
> А, ну да, в IPv6 у каждого диапазон же.
> Можно, конечно, особенно внутри сети.
> Но сейчас всё настроено с IPv4 и автоматической выдачей адресов, не 
> хочется переделывать.
> 
>  > Здесь все не так. И война за свободу ПО, которую начал Столлман в
>  > середине 80-х - проиграна.  
> 
> Хм, надо будет почитать...
> 
> 
>  > Если ты не можешь написать софт, который компилируется любым GCC
>  > начиная с 4.6 и конччая 9.1, то ты не умеешь программировать. Если
>  > ты скачал откуда-то такой софт, сотри немедленно. Потому что его
>  > автор не умеет программировать, и отсутствие поддержки компилятора
>  > имеющейся у тебя версии, скорее всего не единственная и не главная
>  > его проблема. 
> 
> Ну это излишне сильное утверждение.
> Я так думаю, вы на C++ не программируете.

Правильно думаете. Я имею слишком большой опыт  программирования на
этому уродце, чтобы заниматься этим в конце второго десятилетия XXI
века, когда есть Go и Rust. 

Код на C писать и поддерижвать - это да, приходится. За полвека его
слишком много было написано, и хорошего.

А код на C++ который существует ну слова доброго не стоит (ну скажем
мозилла или qt).

Опять же код на столь безумно устаревших языках интересен только если у
нас есть огромная старая codebase (ну скажем mozilla или qt). А эта
codebase все равно была написана по стандартам конца прошлого века. Так
что продолжать в том же духе не столь уже сложно

> (и почему gcc,
> а не clang, MSVC, icc, ну и прочие?), а внятное донесение человеку

Потому  что мы в debian-russian. Были бы во freebsd-russian или
macos-russian, шла бы речь про clang. Ну и понятно на какой платформе
шла бы речь про MSVC.

Лично мне clang под Debian стал интересен примерно год назад. Когда в
postgres появился jit-компилятор условий на базе llvm. И вот тут-то
оказалось что нужен И gcc, И clang. До этого я игрался периодически с
clang-analyze но как-то особой полезности в этом инструменте не увидел.
(особенно если у тебя есть 50Мб codebase четверть вековой давности, в
которой оно находит этак тысяч пять false positives).

> идеи. Причём так, чтобы это ещё и быстро работало, не падая в местах,
> где кривые внешние данные или нехватка ресурсов.

Вот совместимость с линейкой компиляторов очень способствует "чтобы оно
не падало в местах, где...". Разные компиляторы вылавливают в качестве
Warning-ов разные огрехи. И если все их гонять с -Werror и аналогами...

Очень полезно для этой цели также тестироваться на разных процессорах.
Вот, скажем если в тестовой ферме есть спарк, ни один не выровненный
доступ к памяти не уйдет.

 
>  > Но вообще, если нужен свеженький компилятор в deuvian, в чем
>  > проблема его собрать самому в пакет (а то и мейнтейнером
>  > заделаться).  
> 
> Ну проблема в том, что это требует времени.

Так борьба с systemd тоже требует времени. Вопрос в том, на что
потратить время - на борьбу с поделиями поттерингов или на создание
альтернативы им.

Собственно проблема devuan как раз в том, что люди предпочитают бухтеть
про то, какой плохой поттеринг, вместо того чтобы засучить рукава и
сделать свое. Столлман 35 лет назад не бухтел про то какая плохая
Symbolics, а писал патчи для LMI.

> А обновление зависимостей, среди которых будет glibc, от которого 
> зависит всё, требует ещё больше времени.

Не будет там glibc в зависимостях. Я же предлагаю собрать компилятор, 
а не готовый бинарник тянуть. Я что-то в своей практике не припомню
случаев, чтобы софт такого класса, делаемый столь профессиональной
командой, не собирался бы на системе 2-3 летней давности. Там проблемы
обычно с системами более чем 15-летней давности бывают.

> При этом, если моей задачей было что-то от сборки компилятора в
> Devuan отличное, где-то на полпути я задумаюсь, что занимаюсь не тем,
> чем требовалось.
> 
> В случае, если у меня не будет выбора, я просто возьму Docker-образ с 
> новым компилятором.

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


> 
> Да я не плачусь, а указываю вам на вполне объективные причины,
> которые переход на Devuan блокируют.

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

> Ну и прекращение их выхода для старых версий библиотек (та же OpenSSL
> в конце года выкидывает какую-то версию) и прекращение официальной 
> разработки и поддержки старых диалектов, типа Python 2, на котором в 
> Devuan много что есть, тоже не стимулирует к переходу.

Подавляющее боьшинство крупных корпоративных заказчиков использует
системы на базе RHEL 6 и 7. Которые обе гораздо старее Devuan. Так что не
беспокойтесь по поводу прекращения поддержки софта менее чем
десятилетней давности.

>  > в ответе человеку, который вынужден
>  > 

Re: systemd-networkd

2019-07-25 Пенетрантность Eugene Berdnikov
On Thu, Jul 25, 2019 at 12:54:43AM +0300, Victor Wagner wrote:
> Здесь все не так. И война за свободу ПО, которую начал Столлман в
> середине 80-х - проиграна.

 Выиграна. Какую коробочку с WiFi или 4G ни возьми с полки, везде
 внутри линукс, а из лога, если он показывается, торчат busybox,
 dnsmasq и прочие ужасы... :) И каждый новый китаец, пришедший на рынок
 со своей новой коробочкой, пихает в неё тот же линукс. Потому что
 иначе ему на массовый рынок сегодня не выползти.

 Только не надо говорить, что, мол, настоящие пацаны будут покупать
 дорогие брендовые железки со своим вылизанным ядром внутри. Мы это
 уже проходили на примере Digital, Sun, HP и прочих динозавров...
 Будете делать ставки на Cisco, господа? :)

> Но я же говорю - битва за свободу ПО проиграна. Замена Free Software
> на Open Source, которая казалась в конце 90-х замечательным тактическим
> ходом, позволяющим привлечь на сторону свободы ресурсы копораций,
> оказалась троянским конем. Она дала возмодность примазаться де Иказам и
> Поттерингам и постепенно захватить всю экосистему.

 Экосистема живёт и развивается, это главный результат. А кто там
 "примазался" -- несущественные детали. Нужно смотреть выше, глобально.
 Поттеринг, между прочим, уже перекачивает в эту экосистему ресурсы IBM.
-- 
 Eugene Berdnikov



Re: systemd-networkd

2019-07-25 Пенетрантность artiom

> Прописывать адрес статически.

А, ну да, в IPv6 у каждого диапазон же.
Можно, конечно, особенно внутри сети.
Но сейчас всё настроено с IPv4 и автоматической выдачей адресов, не 
хочется переделывать.


> Здесь все не так. И война за свободу ПО, которую начал Столлман в
> середине 80-х - проиграна.

Хм, надо будет почитать...


> Если ты не можешь написать софт, который компилируется любым GCC начиная
> с 4.6 и конччая 9.1, то ты не умеешь программировать. Если ты скачал
> откуда-то такой софт, сотри немедленно. Потому что его автор не умеет
> программировать, и отсутствие поддержки компилятора имеющейся у тебя
> версии, скорее всего не единственная и не главная его проблема.
>

Ну это излишне сильное утверждение.
Я так думаю, вы на C++ не программируете.

Я могу написать такой софт, но делать этого не буду, потому что моя 
задача - не совместимость кода с линейкой компиляторов (и почему gcc, а 
не clang, MSVC, icc, ну и прочие?), а внятное донесение человеку идеи.
Причём так, чтобы это ещё и быстро работало, не падая в местах, где 
кривые внешние данные или нехватка ресурсов.


И я буду пользоваться возможностями 17 стандарта (тем же std::variant, 
если потребуется), а не тащить для этого костыли из Boost и десятка 
отдельных библиотек, только для того, чтобы поддержать сборку 
компилятором 10 летней давности.



> Но вообще, если нужен свеженький компилятор в deuvian, в чем проблема
> его собрать самому в пакет (а то и мейнтейнером заделаться).

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


В случае, если у меня не будет выбора, я просто возьму Docker-образ с 
новым компилятором.

Но привычка.


> Чай не Solaris 9 где собрать gcc так, чтобы им потом можно было 
собрать openssl было еще тем квестом, и требуемые для этого патчи к 
crt1.o почему-то gcc-шная команда принимать отказывалась.


Я даже представляю их мотивировку...


> Впрочем, я про Solaris еще могу страшных сказок порассказывать, как 
там gcc 5.3 работает с 128-битными целыми, передаваемыми в функцию.

> Помнится мы зимой в pgsql-hackers на эту тему неделю ругались, пока
> наконец не написали более-менее приличный тест для configure.
>
> Вообще, конечно, плакаться по поводу старых компиляторов в devuan,
> которому без году неделя

Да я не плачусь, а указываю вам на вполне объективные причины, которые 
переход на Devuan блокируют.
Кроме того, я не уверен, что все патчи безопасности из Debian туда 
перекочевали.
Ну и прекращение их выхода для старых версий библиотек (та же OpenSSL в 
конце года выкидывает какую-то версию) и прекращение официальной 
разработки и поддержки старых диалектов, типа Python 2, на котором в 
Devuan много что есть, тоже не стимулирует к переходу.



> в ответе человеку, который вынужден
> поддерживать софт для RHEL 6, SLES 11sp4 и МСВС-6.3 (про эльбрусы я
> вообще полмолчу)...
>

Так кто же вас заставляет поддерживать всякое старьё?
Если вам это нравится, - дело хозяйское: есть и люди, которые VAX с 
OpenVMS разворачивают в гараже.
Но я же не занимаюсь поддержкой таких систем, и то, что где-то ещё 
работает МСВС 3 с ядром версии 2.9, меня не заставляет восхититься 
относительной новизной Devuan, отставшего года на 4.



25.07.2019 00:54, Victor Wagner пишет:

В Wed, 24 Jul 2019 21:20:24 +0300
artiom  пишет:


  > Можно прописать ему (в отдельном файлике для каждого интерфейса)
  > что надо и что не надо от этого интерфейса требовать.
  >

Я же прописал для bond интерфейса, по крайней мере...
У вас MAC не прописаны, кстати.


Я ж говорю - у меня конфигурация проще. Мне не надо менять mac
интерфейсу.
  

  > У меня, правда, более простая конфигурация - не бондинг, а бридж
  > (куда потом включаются tun-интерфейсы qemu-шных виртуалок и veth
  > lxc-шных контейнеров. Зато IPv4 у него статический (потому как
  > серый) а ipv6 - динамический (потому как globally routable).

В том и дело: не хочу статический, хочу DHCP, но всегда одинаковый.


  > ipv6 - динамический (потому как globally routable).

Если это сервер, как жить?


Прописывать адрес статически.




  > Потому что есть компания людей, которая считает, что Debian is not
  > about choice. И это они как-то открытым текстом в debian-devel
  > декларировали.

Скажите, а мне одному кажется, что здесь что-то не так?


Здесь все не так. И война за свободу ПО, которую начал Столлман в
середине 80-х - проиграна.


Вот, например, идеологии Linux это не противоречит?


Linux это ядро. Его идеологии совершенно пофиг как в юзерспейсе
конфигурируются интерфейсы.

Вот идеологии GNU-системы, описанной Столлманом в статье Opening The
Software toolbox оно противоречит, и еще как.

Но я же говорю - битва за свободу ПО проиграна. Замена Free Software
на Open Source, которая казалась в конце 90-х замечательным тактическим
ходом, 

Re: systemd-networkd

2019-07-24 Пенетрантность Victor Wagner
В Wed, 24 Jul 2019 21:20:24 +0300
artiom  пишет:

>  > Можно прописать ему (в отдельном файлике для каждого интерфейса)
>  > что надо и что не надо от этого интерфейса требовать.
>  >  
> 
> Я же прописал для bond интерфейса, по крайней мере...
> У вас MAC не прописаны, кстати.

Я ж говорю - у меня конфигурация проще. Мне не надо менять mac
интерфейсу. 
 
>  > У меня, правда, более простая конфигурация - не бондинг, а бридж
>  > (куда потом включаются tun-интерфейсы qemu-шных виртуалок и veth
>  > lxc-шных контейнеров. Зато IPv4 у него статический (потому как
>  > серый) а ipv6 - динамический (потому как globally routable).  
> 
> В том и дело: не хочу статический, хочу DHCP, но всегда одинаковый.
> 
> 
>  > ipv6 - динамический (потому как globally routable).  
> 
> Если это сервер, как жить?

Прописывать адрес статически. 

> 
> 
>  > Потому что есть компания людей, которая считает, что Debian is not
>  > about choice. И это они как-то открытым текстом в debian-devel
>  > декларировали.  
> 
> Скажите, а мне одному кажется, что здесь что-то не так?

Здесь все не так. И война за свободу ПО, которую начал Столлман в
середине 80-х - проиграна.

> Вот, например, идеологии Linux это не противоречит?

Linux это ядро. Его идеологии совершенно пофиг как в юзерспейсе
конфигурируются интерфейсы.

Вот идеологии GNU-системы, описанной Столлманом в статье Opening The
Software toolbox оно противоречит, и еще как.

Но я же говорю - битва за свободу ПО проиграна. Замена Free Software
на Open Source, которая казалась в конце 90-х замечательным тактическим
ходом, позволяющим привлечь на сторону свободы ресурсы копораций,
оказалась троянским конем. Она дала возмодность примазаться де Иказам и
Поттерингам и постепенно захватить всю экосистему.

> Debian, конечно, не Linux, однако ядро основное (а сейчас уже может и 
> единственное)...
> 
> 
>  > Увы, не поможет. Те, кто согласны с этим утверждением ушли на
>  > devuan.  
> 
> Который отстаёт на две версии от и так далеко не свежайшего Debian
> (даже с учётом бэк-портов), что особенно актуально с выходом нового 
> компилятора (ага, "компильте в Docker или на CI", но мне это иногда 
> менее удобно).

Если ты не можешь написать софт, который компилируется любым GCC начиная
с 4.6 и конччая 9.1, то ты не умеешь программировать. Если ты скачал
откуда-то такой софт, сотри немедленно. Потому что его автор не умеет
программировать, и отсутствие поддержки компилятора имеющейся у тебя
версии, скорее всего не единственная и не главная его проблема.

Но вообще, если нужен свеженький компилятор в deuvian, в чем проблема
его собрать самому в пакет (а то и мейнтейнером заделаться). Чай не
Solaris 9 где собрать gcc так, чтобы им потом можно было собрать openssl
было еще тем квестом, и требуемые для этого патчи к crt1.o почему-то
gcc-шная команда принимать отказывалась. 

Впрочем, я про Solaris еще могу страшных сказок порассказывать, как там
gcc 5.3 работает с 128-битными целыми, передаваемыми в функцию.
Помнится мы зимой в pgsql-hackers на эту тему неделю ругались, пока
наконец не написали более-менее приличный тест для configure.

Вообще, конечно, плакаться по поводу старых компиляторов в devuan,
которому без году неделя, в ответе человеку, который вынужден
поддерживать софт для RHEL 6, SLES 11sp4 и МСВС-6.3 (про эльбрусы я
вообще полмолчу)...

> в
-- 
   Victor Wagner 



Re: systemd-networkd

2019-07-24 Пенетрантность artiom

> Можно прописать ему (в отдельном файлике для каждого интерфейса) что
> надо и что не надо от этого интерфейса требовать.
>

Я же прописал для bond интерфейса, по крайней мере...
У вас MAC не прописаны, кстати.
Да и он его меняет, просто не сразу, видимо...


> У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
> потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
> контейнеров. Зато IPv4 у него статический (потому как серый) а
> ipv6 - динамический (потому как globally routable).

В том и дело: не хочу статический, хочу DHCP, но всегда одинаковый.


> ipv6 - динамический (потому как globally routable).

Если это сервер, как жить?


> Потому что есть компания людей, которая считает, что Debian is not about
> choice. И это они как-то открытым текстом в debian-devel декларировали.

Скажите, а мне одному кажется, что здесь что-то не так?
Вот, например, идеологии Linux это не противоречит?
Debian, конечно, не Linux, однако ядро основное (а сейчас уже может и 
единственное)...



> Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.

Который отстаёт на две версии от и так далеко не свежайшего Debian (даже 
с учётом бэк-портов), что особенно актуально с выходом нового 
компилятора (ага, "компильте в Docker или на CI", но мне это иногда 
менее удобно).



24.07.2019 15:03, Victor Wagner пишет:> On Wed, 24 Jul 2019 14:03:34 +0300
> Н. Артём  wrote:
>
>> Есть система, которая имеет SSH сервер в initramfs (dropbear).
>> Интерфейсы связаны через бондинг в bond0, на котором этот сервер
>> работает. Роутер выдаёт бондинг интерфейсу через DHCP фиксированный
>> IP по MAC.
>>
>> Когда система загружается, сервер убивается, бондинг разрушается и
>> запускается "нормальная" сетевая подсистема, которая настраивает
>> бондинг и поднимает OpenSSH. MAC bond0 не изменяется, IP выдаётся тот
>> же.
>>
>> Когда был Stretch, не было проблем, всё работало.
>> Обновил на Buster - всё сломалось.
>>
>> Выяснилось, что недавно пришедший на замену работающей подсистеме,
>> networkd-systemd всё ломает. Если я не опускаю бондинг, его
>> расхреначивает, и он требует IP для каждого адаптера. Когда я
>
> C этим мне все-таки удалось побороться.
>
> Можно прописать ему (в отдельном файлике для каждого интерфейса) что
> надо и что не надо от этого интерфейса требовать.
>
> У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
> потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
> контейнеров. Зато IPv4 у него статический (потому как серый) а
> ipv6 - динамический (потому как globally routable).
>
> Получилось примерно так:
> ==> /etc/systemd/network/br0.netdev <==
> [NetDev]
> Name=br0
> Kind=bridge
>
>
> ==> /etc/systemd/network/br0.network <==
> [Match]
> Name=br0
> [Network]
> Address=192.168.217.1/25
> Gateway=192.168.217.63
> Broadcast=192.168.217.128
> DHCP=ipv6
> DNS=127.0.0.1
>
> ==> /etc/systemd/network/eth0.network <==
> [Match]
> Name=eth0
> [Network]
> Bridge=br0
> DHCP=no
>
> Вообще в *.network можно вписать Unmanaged=yes и
> тогда, по утверждению документации, systemd-networkd вообще не будет
> трогать этот интерфейс.
>
> И можно будет конфигурировать его через ipupdown (это же имеется в виду
> под старой подсистемой), не снося systemd-networkd.
>
> У меня, правда, сходу не получилось. Потому что я не ожидал от ini-style
> конфигурационного файла того, что пробелы вокруг знака равенства
> недопустимы.
>
>> Отсюда вопросы (реально не в курсе, так что может не в тему):
>>
>> - Что я делаю не так?
>> - Зачем поменяли работающее на это?
>> - Повинен в этом Леннар или это последователи?
>
> Потому что есть компания людей, которая считает, что Debian is not about
> choice. И это они как-то открытым текстом в debian-devel декларировали.
>
>> - Что их не устраивало в resolv.conf?
>> - Стоит ли намекнуть маинтайнерам дистрибутива на то, что это
>> какая-то сильно непрозрачная, кривая и неочевидная в настройке херня?
>
> Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.
>
> --
>



Re: systemd-networkd

2019-07-24 Пенетрантность Victor Wagner
On Wed, 24 Jul 2019 14:03:34 +0300
Н. Артём  wrote:

> Есть система, которая имеет SSH сервер в initramfs (dropbear).
> Интерфейсы связаны через бондинг в bond0, на котором этот сервер
> работает. Роутер выдаёт бондинг интерфейсу через DHCP фиксированный
> IP по MAC.
> 
> Когда система загружается, сервер убивается, бондинг разрушается и
> запускается "нормальная" сетевая подсистема, которая настраивает
> бондинг и поднимает OpenSSH. MAC bond0 не изменяется, IP выдаётся тот
> же.
> 
> Когда был Stretch, не было проблем, всё работало.
> Обновил на Buster - всё сломалось.
> 
> Выяснилось, что недавно пришедший на замену работающей подсистеме,
> networkd-systemd всё ломает. Если я не опускаю бондинг, его
> расхреначивает, и он требует IP для каждого адаптера. Когда я

C этим мне все-таки удалось побороться.

Можно прописать ему (в отдельном файлике для каждого интерфейса) что
надо и что не надо от этого интерфейса требовать.

У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
контейнеров. Зато IPv4 у него статический (потому как серый) а
ipv6 - динамический (потому как globally routable).

Получилось примерно так:
==> /etc/systemd/network/br0.netdev <==
[NetDev]
Name=br0
Kind=bridge


==> /etc/systemd/network/br0.network <==
[Match]
Name=br0
[Network]
Address=192.168.217.1/25
Gateway=192.168.217.63
Broadcast=192.168.217.128
DHCP=ipv6
DNS=127.0.0.1

==> /etc/systemd/network/eth0.network <==
[Match]
Name=eth0
[Network]
Bridge=br0
DHCP=no

Вообще в *.network можно вписать Unmanaged=yes и
тогда, по утверждению документации, systemd-networkd вообще не будет
трогать этот интерфейс.

И можно будет конфигурировать его через ipupdown (это же имеется в виду
под старой подсистемой), не снося systemd-networkd.

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

> Отсюда вопросы (реально не в курсе, так что может не в тему):
> 
> - Что я делаю не так?
> - Зачем поменяли работающее на это?
> - Повинен в этом Леннар или это последователи?

Потому что есть компания людей, которая считает, что Debian is not about
choice. И это они как-то открытым текстом в debian-devel декларировали.

> - Что их не устраивало в resolv.conf?
> - Стоит ли намекнуть маинтайнерам дистрибутива на то, что это
> какая-то сильно непрозрачная, кривая и неочевидная в настройке херня?

Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.

--