Состоялся (http://lists.nongnu.org/archive/html/sysvinit-devel/2018-06/...) релиз классической системы инициализации sysvinit 2.90 (https://savannah.nongnu.org/projects/sysvinit), которая широко применялась в дистрибутивах Linux во времена до systemd, upstart и OpenRC. В новом выпуске отмечается (https://git.savannah.nongnu.org/cgit/sysvinit.git/tree/doc/C...) проведение чистки и актуализации кодовой базы, а также исправление ошибок, выявленных после публикации в марте выпуска sysvinit 2.89 (https://www.opennet.ru/opennews/art.shtml?num=48354), вобравшего в себя изменения за последние 8 лет.
Среди наиболее заметных изменений:- Добавлена обработка ситуации, когда на определённое время намечено завершение работы командй shutdown, но до наступления выбранного момента осуществлён перевод системы в спящий режим. Sysvinit теперь завершает работу точно в намеченное время (ранее завершение происходило с задержкой на время, проведённое в спящем режиме);
- Документирован pipe-интерфейс для initctl;
- Отправка сигнала SIGUSR2 закрывает неименованный канал к initctl (например, когда нужно убедиться, что в системе нет открытых файлов), а SIGUSR1 открывает его вновь;- Устранены предупреждения компилятора, выводимые при сборке программы init в GCC 6 и 7 (при сборке в GCC 8 пока остаются некоторые несущественные предупреждения);
- Устранена ошибка, приводившая к некорректной компиляции процесса init в окружении Fedora 28 (из-за изменения зависимостей вызов crypt() выдавал некорректный результат);
- На серверы pgp.mit.edu и pgp.com загружены открытые ключи для верификации tar-архивов с sysvinit;
В следующем выпуске ожидается добавление флага
"--version" для определения версии sysvinit, возможность изменения имени процесса init (например, для установки как /sbin/sysvinit вместо /sbin/init) и сохранения текущего runlevel в каталоге доступном для команд reboot/halt/shutdow (например, в /var/run/runlevel).
URL: http://lists.nongnu.org/archive/html/sysvinit-devel/2018-06/...
Новость: https://www.opennet.ru/opennews/art.shtml?num=48801
Long Live sysVinit!
А я бы предложил закoпaть.
Совершенно безумная в плане реализации система инициализации.
То, что олдскульщики к ней привыкли, не означает удобства и практичности.
systemd еще пилить и пилить, но это более правильный вариант.[ ] - минусуйте, спорить и отстаивать точку зрения не собираюсь...
Спорол чушь и в кусты?
Спасибо, что разрешил. Лови.
> Совершенно безумная в плане реализации система инициализации.То, что олдскульщики к ней привыкли, не означает удобства и практичности.
Я вот не понимаю, чего вам так там не нравится? Есть основной скрипт, в котором перечислены все остальные, которые можно хоть в бинарном виде делать.
> Я вот не понимаю, чего вам так там не нравится? Есть основной скрипт, в котором перечислены все остальные, которые можно хоть в бинарном виде делать.Слишком всё просто и понятно, легко будет найти бэкдор.. Нужно больше бинарников, куча трудной документашки, и что бы юзвери, или админы, которые не осилили - платили денег за поддержку. (Red Hat-же инициатор systemd, да?)
нет, мы покупатель. Нет смысла инициировать, когда кругом столько деятельных чудаков.
>Нужно больше бинарников, куча трудной документашки,и чтобы логи публиковалиcь в Facebook и Twitter
>> Я вот не понимаю, чего вам так там не нравится? Есть основной скрипт, в котором перечислены все остальные, которые можно хоть в бинарном виде делать.
> Слишком всё просто и понятно, легко будет найти бэкдор.. Нужно больше бинарников,
> куча трудной документашки, и что бы юзвери, или админы, которые не
> осилили - платили денег за поддержку. (Red Hat-же инициатор systemd, да?)История такова... в далёкие-далёкие времена, когда ещё не было никакого systemd... Не нашлось иного пути с системой от RedHat, кроме как полностью удалить их основанную на скриптах систему инициализации... >:-)
(после чего откуда-то начал появляться systemd) :-)
> Я вот не понимаю, чего вам так там не нравится? Есть основной
> скриптЭто не скрипт...
> Совершенно безумная в плане реализации система инициализации.Чем бездарна? Где лучше?
systemd ещё более бездарна - висит ВСЁ в PID1, всякие systemd-webserverd, на кой они нужны?А какие будут ваши аргументы?
А вообще runit - one love. Жалко только в Void юзабельно.
системд - когда нет проблем, отличная система, быстрая и удобная
но, в случае возникновения проблем, она превращается в адскую машину, которую практически невозможно отладить
+1, к сожалению
Что в systemd «висит в PID1»?
> Что в systemd «висит в PID1»?Sysvinit??
Срочно прекратите употреблять!
> Срочно прекратите употреблять!" Чай, кофе, табак, алкоголь и систем-дэ -- разрешены к употреблению. "
sysVinit strikes back
> В следующем выпуске ожидается добавление флага "--version" для определения версии sysvinitНу вот зачем компактный инит переделывать в монструозное поделиe? Чем теперь козырять перед адептами системд?
Какой монстроуз?
--version это совершенно стандартный GNU-шный флаг.
Учитывая что за столько лет его не добавили и аж перенесли на следующий релиз - определенно монструоз.
Если там уже есть getopt(), то добавление опции сводится к:* добавлению "v" в список обрабатываемых ключей
* добавлению ещё одной ветки switch/case с одним printfдля getopt_long() чуть посложнее, но ненамного.
> Если там уже есть getopt(), то добавление опции сводится к:его там, очевидно, нет, поскольку init'у он не нужен и тяжеловесен для программы, стартующей на недозапустившейся системе неведомого производителя (в которой может быть вовсе не так много лишней памяти, как у тебя на столе).
Но впиндюрят, конечно же, как же ж это, без --version! (она ж охрененно нужна, чтоб гадать - оно ответит что-нибудь, или это старый/не гнутый init и реакция будет непредсказуемой)
одна надежда, что может раньше у них новый семестр начнется, и забудут релизнуть.
> его там, очевидно, нет, поскольку init'у он не нужену init вообще есть аргументы
> - Добавлена обработка ситуации, когда на определённое время намечено завершение работы
> командй shutdown, но до наступления выбранного момента осуществлён перевод системы в
> спящий режим. Sysvinit теперь завершает работу точно в намеченное время (ранее
> завершение происходило с задержкой на время, проведённое в спящем режиме);Я так понимаю, после пробуждения, если время выключения прошло во время сна, система сразу же вырубится?
Все лучше, чем через пол часа после пробуждения (ну или сколько оставалось)
>>до наступления выбранного момента осуществлён перевод системы в
>> спящий режим.
>>завершает работу точно в намеченное время
> Я так понимаю, после пробуждения, если время выключения прошло во время сна,
> система сразу же вырубится?А я понимаю не так.
> Я так понимаю, после пробуждения, если время выключения прошло во время сна, система сразу же вырубится?А вот фиг знает, надо уточнить. По-моему логичным поведением в данном случае будет не вырубать систему вообще. Всё зависит от решаемой задачи и юз-кейса.
Эх, sysvinit... Кстати, я тут попробовал systemd не только как пользователь-домохозяйка, но и как сисадмин. Потребовалось поднять http-сервак на node.js (не кидайте яйцами - там 20 строк кода, фунционал примитивнейший, хотел вообще на баше сделать - гуглите "пятистрочный http-сервер на баше") — оформил .service, положил куда надо, запустил. И знаете что? Все работает. А на sysvinit наверное пришлось бы баш-портянки писать со сравнением $1 с "start", "stop" и т.д.
>> А на sysvinit наверное пришлось бы баш-портянки писать со сравнением $1 с "start", "stop" и т.д.
>> наверноеhighly likely (c)
> наверное пришлось бы баш-портянки писатьМакака никогда этого не делала, но мнение имеет.
а не могли бы вы для сравнения привести тот самый service файл?
я вот понятия не имею что в нем писать, а баш портянку наваяю не глядя в гугл (возможно оно при этом будет не по станадрту, но сервер запустит)
Пожалуйста, делал по этому тутору. Обрати внимание, как все красиво и декларативно:https://nodesource.com/blog/running-your-node-js-app-with-sy...
#>>> тут попробовал systemd не только как пользователь-домохозяйка, но и как сисадмин.> Пожалуйста, делал по этому тутору.
Сисадмин! Глыба!11 Делал1111 Сам Ctrl-C/Ctrl-V нажимал12121121212
а вот и митрюха подъехал.Я описал свой положительный опыт с системдой, непонятно, почему у тебя от этого так пригорело.
Кстати, а Ctrl-C/Ctrl-V -- это плохо? Ну, допустим, мои цитаты ты вручную набирал? Если твоя претензия, митрюха, в том, что я копировал якобы бездумно, то нет: каждая строчка в статье описывается. Да и, в принципе, описывать нечего: чрезвычайно декларативный конфиг с говорящими за себя именами и значениями.
В таком случае, думаю, аналогичный туториал по sysvinit точно так-же решил-бы Ваши проблемы. В скрипте поменять одно имя (/home/ubuntu/hello_env.js) на другое (/home/ubuntu/my_super_node-js_programm.js) тоже не составит никакого труда.
Там объем скопированного вышел бы больше, и по факту получились бы два скрипта (js и bash), а не один скрипт и один конфиг. И в сопровождении более тяжел. К примеру, то, что в системдосе делается заменой Restart=on-failure на Restart=always, в баш-портянке затронуло бы несколько строк. С системдосом я получаю готовую реюзабельную инфраструктуру, а баш-портянка - чистой воды постоянно переизобретаемый велосипед.
> Там объем скопированного вышел бы больше,прошу прощения, у Вас всё так плохо со свободным местом на диске? тогда тем более надо сносить systemd и переходить на subj - он гораздо меньше занимает, даже со всеми своими скриптами.
> и по факту получились бы два скрипта (js и bash), а не один скрипт и один конфиг.
а в чём сакральная разница?
> И в сопровождении более тяжел. К примеру, то, что в системдосе
> делается заменой Restart=on-failure на Restart=always, в баш-портянке затронуло бы несколько
> строк. С системдосом я получаю готовую реюзабельную инфраструктуру, а баш-портянка -
> чистой воды постоянно переизобретаемый велосипед.ну, тут можно частично согласиться - придётся копировать или одни несколько строк, или другие..
> Там объем скопированного вышел бы большеЕсли хилый, сразу в гроб, сохранить здоровье чтоб, применяйте, люди ...тяжё-о-олую атлетику. Начни с гантелей в 0,5 кг, проконсультируйся с доктором. Береги руку, Сеня!
>получились бы два
>, а не один
>и один конфиг." Два, а не один и один! Победа s-d за явным преимуществом. " //у ЦА.
> И в сопровождении более тяжел.
"С-слабак!"
> Два, а не один и один!митрюха снова со своей альтернативной математикой, где 2x всегда равно 1x + 1y
>> Два, а не один и один!
> митрюха снова со своей альтернативной математикой, где 2x всегда равно 1x +
> 1yНу вообще один и один определённо больше чем два... (по лексикографическомупорядочениюгмкпримеру...) >:-)
> " Два, а не один и один! Победа s-d за явным преимуществом. "это пять :-)
А вот и systeminit приехал: :)extra_started_commands="reload"
command="/usr/sbin/acpid"
command_args="${ACPID_ARGS}"
description="Daemon for Advanced Configuration and Power Interface"depend() {
need localmount
use logger
}reload() {
ebegin "Reloading acpid configuration"
start-stop-daemon --exec $command --signal HUP
eend $?
}
то есть сервис-файл без гугла вы не напишите?
в первый раз в жизни-то?
ну да, оно же "интуитивно очевидный синтаксис" и "чтоб не думать"
> ну да, оно же "интуитивно очевидный синтаксис" и "чтоб не думать"Это самый главный и самый критический недостаток системдоса, — то что без мануалов ему ничего не объяснишь. По идее, системдос должен был поддерживать конструкции на естественном языке:
$ cat my.service
Запусти там ноду, рестарть короче если что не так. Скрипт у меня в домашней папке в корне
$С баш-портянками такой проблемы нет. Специального обучения не требуется.
> Запусти там ноду, рестарть короче если что не так. Скрипт у меня...хер помнит, куда я его дел, в общем, найди какой-нибудь, а не найдешь, придумай!
БЫСТРО!
$
What is (Who is) "системдос" ?
> What is (Who is) "системдос" ?" Кто я? Где я нахожусь?! "
>> What is (Who is) "системдос" ?
> " Кто я? Где я нахожусь?! "никто(и знвать вас никак*() ЖВ)
нет. man systemd.service 5 с ним напишет, и гугла не надо. хех а откуда мне знать в сравнительно новой системе инициализации какой синтаксис написания сервис файлов? ковырять чужие дебиановско-убунтовские портянки написанные, чтобы посмотреть как там сделано? ;) для этого доки и создаются наверное, чтобы их читали.
> нет. man systemd.service 5 с ним напишет, и гугла не надо. хех
> man systemd.service 5Блин, они даже синтаксиса команды man не знают... Прогугляторы фиговы...
> А на sysvinit наверное пришлось бы баш-портянки писать со сравнением $1 с "start",
> "stop" и т.д.
> наверноеВ баше пришлось бы написать 10 строчек. Буквально. Только одно НО. Демон должен быть POSIX-совместимым :) Что, бсд поддерживать уже не модно? А то поттеринг сказал что нафиг другие юниксы. Другие юниксы для маргиналов ууууууу!
> Демон должен быть POSIX-совместимымА зачем мне посих или винда? У меня сервак на Fedora. Более того, я даже другие дистры линуха поддерживать не собираюсь. Более того, я не собираюсь поддерживать даже федоры других версий. Сервак в 20 строк кода написан для обслуживания исключительно моих корыстных интересов и учитывает существование исключительно моих активов в виде сервака на федоре.
> виндаПро венду не слова не было, но аноним всё-равно где-то его откапал. Сделал выводы.
Ну раз ты исключительно для себя не распростроняй свои флюиды насчёт systemd. Это так же никому не интересно как твоя половая ориентация.
> Про POSIX не слова не было, но аноним всё-равно где-то его откапал. Сделал выводы.
Не знаю но всё равно несу фигню? Продолжай, ты уже показал себя не очень умным.
>> Демон должен быть POSIX-совместимым
> А зачем мне посих или винда? У меня сервак на Fedora.<facepalm>
Ааа! Они думают, что POSIX -- это какая-то ОСЬ! Ё-моё...
</facepalm>
> В баше пришлось бы написать 10 строчек.Кстати, приведи-ка их. Чтобы старт, стоп, рестарт, авто-рестарт при фейле, запуск от такого-то юзера, и чтобы дожидался поднятия сети. В 10 строк.
>> В баше пришлось бы написать 10 строчек.Чтобы старт, стоп, рестарт, авто-рестарт при фейле, запуск от такого-то юзера,
# PROVIDE: git_daemon
# REQUIRE: DAEMON
# KEYWORD: shutdown#
# Add the following lines to /etc/rc.conf to enable git_daemon:
#
#git_daemon_enable="YES". /etc/rc.subr
name="git_daemon"
rcvar="git_daemon_enable"load_rc_config $name
: ${git_daemon_user:=git_daemon}
: ${git_daemon_group:=git_daemon}
: ${git_daemon_enable:=NO}
: ${git_daemon_directory:=/usr/local/git}
: ${git_daemon_flags:=--syslog --reuseaddr --detach}command="/usr/local/libexec/git-core/git-daemon"
command_args="${git_daemon_directory}"PATH="${PATH}:/usr/local/libexec/git-core"
run_rc_command "$1"
и чтобы дожидался поднятия сети
# PROVIDE: local_unbound
# REQUIRE: FILESYSTEMS netif resolv
# BEFORE: NETWORKING
# KEYWORD: shutdown
Но вы там держитесь!
> Функционирование многих сервисов системы зависит от корректной работы других сервисов ... Для разрешения этой проблемы, в начале каждого скрипта в комментарии включаются информация о зависимостях и другие метаданные. Программа rcorder(8) используется для разбора этих комментариев во время старта системы для определения порядка, в котором должны вызываться системные сервисы в соответствии с зависимостями.
> в комментарии
> в комментарииУх ты! Суперкруто. Прямо нанотехнологии какие-то. Метаданные. В комментах.
И да, мне тут обещали 10 строк (обещали со словом "буквально"), а у вас тут в 2 раза больше (даже без пустых).
А еще тут жаловались на очень сложный, неосиливаемый без гуглежа формат сервис-файлов. А тут я смотрю все гораздо проще и интуитивно понятнее:
:=
:
$
#
.
> Ух ты! Суперкруто. Прямо нанотехнологии какие-то. Метаданные. В комментах.И как, уже поменяли скучные и морально устаревшие круглые колеса на треугольные?
> И да, мне тут обещали 10 строк (обещали со словом "буквально"), а у вас тут в 2 раза больше
# PROVIDE: anacron
# REQUIRE: LOGIN#
# Add the following line to /etc/rc.conf to enable anacron:
#
# anacron_enable="YES"
#. /etc/rc.subr
name=anacron
rcvar=anacron_enableload_rc_config $name
: ${anacron_enable:=NO}
command="/usr/local/sbin/anacron"run_rc_command "$1"
> (даже без пустых).Т.е. как обычно подсчитывают LoC, вы тоже не в курсе.
> А еще тут жаловались на очень сложный, неосиливаемый без гуглежа формат сервис-файлов.
> А тут я смотрю все гораздо проще и интуитивно понятнее:
> :=
> :
> $
> #
> .man rc sh
> И как, уже поменяли скучные и морально устаревшие круглые колеса на треугольные?Избавились от костылей в виде метадат в камментах.
> Т.е. как обычно подсчитывают LoC, вы тоже не в курсе.
Прикинь. Ни разу не приходилось подсчитывать количества строк. Может быть ты этим занимаешься круглые сутки, доказывая работодателю свою необходимость и демонстрируя ему растущие графики количества строк написанного тобой баш-6ыдлокода, хз.
> man rc sh
То есть без мана для сись-вынита новые сервисы не оформишь?
>> И как, уже поменяли скучные и морально устаревшие круглые колеса на треугольные?
> Избавились от костылей в виде метадат в камментах.Ценой написания *овнокода-интерпретатора почти на 400 000 строк?
Ну че, профит полнейший конечно. Как минимум, для Шапки.
>> Т.е. как обычно подсчитывают LoC, вы тоже не в курсе.
> Прикинь. Ни разу не приходилось подсчитывать количества строк.Т.е. не знаешь, но все равно считаешь и что-то там заявляешь?
> Может быть ты этим занимаешься круглые сутки, доказывая работодателю свою необходимость и демонстрируя ему
> растущие графики количества строк написанного тобой баш-6ыдлокода, хз.Нет. Так же я не занимаюсь вангованием по аватаре и демагогией, при этом отличая sh от bash
>>> А тут я смотрю все гораздо проще и интуитивно понятнее:
>>> :=
>>> :
>>> $
>>> #
>>> .
>> man rc sh
> То есть без мана для сись-вынита новые сервисы не оформишь?Откуда мне знать? Может ты без гугла даже туалет найти не сможешь?
>А тут я смотрю все гораздо проще и интуитивно понятнее:
>:=
>:
>$
>#
>.Это голый sh, детка. Тут даже башизмов нет. Если и такое осилить не способен, то зачем тебе вообще лезть внутрь системы?
Вози мышкой в винде или хромеос.
> Это голый sh, детка. Тут даже башизмов нет. Если и такое осилить
> не способен, то зачем тебе вообще лезть внутрь системы?
> Вози мышкой в винде или хромеос.Это голый ини-файл, детка. Тут даже метадат в комментах нет. Если и такое осилить
не способен, то зачем тебе вообще лезть внутрь системы?
>> Это голый sh, детка. Тут даже башизмов нет. Если и такое осилить
>> не способен, то зачем тебе вообще лезть внутрь системы?
>> Вози мышкой в винде или хромеос.
> Тут даже метадат в комментах нет.Вы так говорите, как будто это что то плохое.
>> Это голый sh, детка. Тут даже башизмов нет. Если и такое осилить
>> не способен, то зачем тебе вообще лезть внутрь системы?
>> Вози мышкой в винде или хромеос.
> Это голый ини-файл, детка. Тут даже метадат в комментах нет. Если и
> такое осилить
> не способен, то зачем тебе вообще лезть внутрь системы?Ну например что бы при restart выполнять определённую команду, а не stop; start;
systemd например не поддерживает переопределение restart.
>systemd например не поддерживает переопределение restart.Наглое вранье.
>>systemd например не поддерживает переопределение restart.
> Наглое вранье.Докажи, покажи как в юните переопределить команду для restart
> Это голый ини-файл, детка.Знаем мы ваш ini файл:
[Service]
ExecStartPre=/bin/bash -c 'какой прекрасный systemd'
ExecStartPre=/bin/bash -c 'какой прекрасный я'
ExecStartPre=/bin/bash -c 'тут чистый ini без портянки на bash'
...
нехорошо детей обманывать. Это пять строчек. Одна - sed инлайнер, заменяющий в skeleton "daemon" на "git-&", и еще четыре - на тему provide/require/ вручную поменять, если в кои-то веки нужны небанальные (обычно только системным сервисам, а самодельным лишь бы не слишком рано запускаться)
>[оверквотинг удален]
> run_rc_command "$1"
>
похоже на фрю (там тоже примерно так), хотя я никогда не заморачивался и не пробовал в rc.conf писать подобное, а с systemd наоборот пяток сервисных портянок написал по приколу, ну да, стараемся как можем, потеем но держимся.
> похоже на фрю (там тоже примерно так),Хм … не удивительно, оттуда и взято.
> и чтобы дожидался поднятия сети.Аноним не слышал о RC? Мне жаль тебя.
ls -1 /etc/rc2.d/
README
S01motd
S01rsyslog
S02openvpn
S03bind9
S03dbus
S03docker
S03irqbalance
S03loadcpufreq
S03nodm
S03ntp
S03smartmontools
S03zram
S04bootlogs
S04cpufrequtils
S04cron
S04rsync
S04slim
S05rc.local
S05rmnologin> авто-рестарт при фейле
О, смотрите, ещё один знаток. Капсом, чтобы ты увидел: СИСТЕМА ИНИЦИАЛИЗАЦИИ ЭТИМ НЕ ДОЛЖНА ЗАНИМАТЬСЯ!
> Чтобы старт, стоп, рестарт
case "$1" in
start|status);;
restart|reload|force-reload)
your_daemon reload
;;
stop)
your_daemon stop
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
> СИСТЕМА ИНИЦИАЛИЗАЦИИ ЭТИМ НЕ ДОЛЖНА ЗАНИМАТЬСЯ!Да не бомби ты так. Я твою мыслю понял: если сись-вынит чего-то не поддерживает, то значит "это не нужно".
> your_daemon reload
> your_daemon stopНе-не, старт делается при помощи /usr/bin/node /home/user/script.js. Напиши для этого стоп, релоад и статус. Неужто придется лок-файлы создавать?
> если сись-вынит чего-то не поддерживает, то значит "это не нужно".а с чего ты решил, что sysvinit это не поддерживает? respawn в inittab был всегда
> если сись-вынит чего-то не поддерживает, то значит "это не нужно".А как ты думаешь что происходит когда люди делают logout из консоли? login на ней святым духом заново запускается?
>[оверквотинг удален]
> ;;
> stop)
> your_daemon stop
> ;;
> *)
> echo "Usage: $0 start|stop"
> >&2
> exit 3
> ;;
> esacдля этого нужно читать man sh, bash, etc...шелл скриптинг гайды всякие, а для системд нужно просто пару манов прочитать и скромную по длине портянку написать не залязя там во всякие ран левелы и десятки rc2.d и сколько их там? и в каждом по README.md и так далее..., вообще апологеты системд меня удивляют, чем отличается святая вера в инит и sh портянки от изучения systemd?
Нужно быть очень одарённым человеком что бы работать с *nix и не знать хотя бы минимума shell
> http-сервак на node.js ... 20 строк кодаДобавь к этому число строк в интерпретаторе этого js.
А количество строк линукс-кернела добавлять? А число строк библиотеки libev? А boost? Ну и далее по списку.
> А количество строк линукс-кернела добавлять? А число строк библиотеки libev? А boost?
> Ну и далее по списку.Да-не-ее... Он предлагает сравнивать к-во строк в _bash_-е и его "портянках" скриптов --- vs --- строк в s-d и его портянках фейлов.
Делать выводы из разницы. И нет не "больше лучще", и не "больше хуже".
Думать! //Осторожно! <==Оскорбление s-d фанатов намеренное.
Некоторым https://www.opennet.ru/openforum/vsluhforumID3/110582.html#158
вот GNU Emacs https://www.opennet.ru/openforum/vsluhforumID3/113043.html#18
нДравится. https://www.opennet.ru/openforum/vsluhforumID3/99103.html#63
https://www.opennet.ru/openforum/vsluhforumID3/105576.html#26
https://www.opennet.ru/openforum/vsluhforumID3/106694.html#114
Кстати говоря, Андрюха, а это где ты намерял 150к строчек для bash? Я вот в debian stretch замер сделал, там ansic 103530... Ну и кстати, я ещё хочу заметить, что в debian по умолчанию для init-скриптов используется всё же dash, а там и вовсе ansic 13125...
> Кстати говоря, Андрюха, а это где ты намерял 150к строчек для bash?
> Я вот в debian stretch замер сделал, там ansic 103530... НуФи, мерять еще. Копипастить же!
Прямо с blackduck ^W ohloh ^W openpub ^W openhub.com:https://www.openhub.net/p/bash/analyses/latest/languages_sum...
Не 150k, вроде...
111K Си https://www.opennet.ru/openforum/vsluhforumID3/113043.html#18 и 245К тотала.
...а вот https://www.opennet.ru/openforum/vsluhforumID3/110582.html#158 "Total C" 158K с "С Code" те же 111К. Там комментариев и пустых - на 47К, тоталом в файлах на Си и выходит.
> и кстати, я ещё хочу заметить, что в debian по умолчанию
> для init-скриптов используется всё же dash, а там и вовсе ansic
> 13125...
> https://www.openhub.net/p/bash/analyses/latest/languages_sum...Ясно. Ну, тогда хоть добавь к сравнению вот это вот:
https://www.openhub.net/p/dash/analyses/latest/languages_sum...Что б у systemd-шников совсем пригорало. :)
С башем-то они пытаются отвертеться, говорят, что к коду shell-скриптов на код bash добавить, раз уж мы с их юнитами код systemd считаем. А мы такие раз -- "а в debian dash используется". :)
>> https://www.openhub.net/p/bash/analyses/latest/languages_sum...
> Ясно. Ну, тогда хоть добавь к сравнению вот это вот:
>/dash/analyses/latest/languages_summaryЯ ж за GNU и GPL митингую. Не за позикс, нетбсд, пермиссив и sh-компатибилити. По мне, так и разрыва в 3 раза достаточно для Драмы.
> Что б у systemd-шников совсем пригорало. :)
> С башем-то они пытаются отвертеться, говорят, что к коду shell-скриптов на кодЭто были не они. То был чуть не я. Но глубоконаучный британско-учёный подход не встретил никакого понимания, [они не заблеснились, ой, беда--] как и любые аргументы ваааще. Прожлджаем тралить по линии отсутствия понималки.
> bash добавить, раз уж мы с их юнитами код systemd считаем.
> А мы такие раз -- "а в debian dash используется". :)Это не интересно.
> Прожлджаем тралить по линии отсутствия понималки.Ну, тоже позиция. Поддерживаю. :)
В чем смысл использовать sysvinit вместо openrc, кроме его примитивности?
Привычка.
В том, что openrc это надстройка над sysvinit.
Ок, пусть будет так. OpenRC же привносит полезные новшевства?Мой вопрос надо было бы точнее сформулировать: в чем смысл sysvinit если есть openrc или upstart?
Кроме субъективных причин типа привычки, я вижу только разве что минимальное потребление ресурсов, которое м.б. полезно во встраиваемых устройствах.
> Ок, пусть будет так. OpenRC же привносит полезные новшевства?кому и кобыла полезна(и systemd). Мне вот - бесполезные. "В чем смысл этого openrc", если и без него прекрасно можно обойтись?
> Мой вопрос надо было бы точнее сформулировать: в чем смысл sysvinit если есть openrc или upstart?
в том что ни тот ни другой не нужны на юниксе. Вообще. Ни для чего.
А винда у меня уже и так есть и неплохо работает. Для винды, разумеется, неплохо.
> кому и кобыла полезна(и systemd). Мне вот - бесполезные. "В чем смысл
> этого openrc", если и без него прекрасно можно обойтись?"полезность" vs "не делать" -- ложный выбор.
Ты путаешь sysvinit (демон в pid1), sysv-rv (набор скриптов) и openrc (замена sysv-rc с плюшками). Второе и третье используют первое.
Почему вместо? Второй нужно использовать вместе с первым, пока ещё.
> В чем смысл использовать sysvinit вместо openrc, кроме его примитивности?Смысл очень большой. Да и наши деды использовали sysvinit. Отказываясь от sysvinit, ты как бы говоришь, что наши деды ошибались, и проявляешь к ним неуважение.
За Духовные Скрепы троллишь?
> вместо openrcРукалицо.
man openrc
Плюсы и минусы СиськемД и Сись-в-инит в студию!
Когда ждать появления швятого Поттеринга с sysvinit-d?
О, подскажите, перепись хипстотыD \ фанатов новодела всякого тут проходит? :)
GNU sysinit - тоже новодел :)
> GNU sysinit - тоже новодел :)настолько, что его еще не написали.
linux systemV initd (c) Miquel van Smoorenburg не имел ни малейшего отношения к какому-то козлу рогатому.Ну в принципе, тоже "новодел", но это - с горя, никакого другого непатентованного не было на тот момент.
Шепотом: GNU Shepherd. Для прокачки эрудицыы, юзернеймы!
надо sysvinit forkнуть и переписать на rust
Лучше на питоне. А то не взлетит.
Хоботов, это мелко. На эрланге.
> Хоботов, это мелко. На эрланге.На эликсире тогда уж.
На brainfuck
> Лучше на питоне. А то не взлетит.За таким количеством хоботов нужен глаз да глаз. Надо на Common Lisp!
>> Лучше на питоне. А то не взлетит.
> За таким количеством хоботов нужен глаз да глаз. Надо на Common Lisp!"" --В этом есть известное изящество: Вы в загс, а Хоботов — в монастырь. ""
##https://ru.wikiquote.org/wiki/%D0%9F%D0%...
++http://www.lisperati.com/logo.html
++http://www.lisperati.com/different.jpg <- https://www.reddit.com/r/lisp/comments/24in2y/was_the_little.../
systemctl list-unit-files
Failed to list unit files: Connection timed outИ так на каждой машине, которая не перезагружалась больше 2-х месяцев.
Этому багу уже много лет. А воз и ныне там.
Зато много новых systemd-чегототам.
У systemd есть куда более критичные баги. Например то, что он существует.
NOTABUG WONTFIX
Ну вы это, держитесь там. Ни в коем случае не пробуйте альтернативу!
Скорее всего, это оно:
https://bugs.freedesktop.org/show_bug.cgi?id=95263
> Скорее всего, это оно:
> https://bugs.freedesktop.org/show_bug.cgi?id=95263Это эпичненько. "Поттеринг: Я нисаавсем понимаю, что это за код, и что он делает, и не могу воспроизвести ошибку. Но вот вам патч! Все: Да!111 нам надо бооооольше _такого_ кода."
И нет, это не может быть _та_ ошибка из #58, так как s-d _нужно_ перезагружать с каждым релизом и все эти ваши ^W их "не перезагружать >12 часов" явный же NOTABUG.
Предлагаемый Поттерингом патч вообще показывает его типично индусский подход с исправлением симптома, а не причины.
> systemctl list-unit-files
> Failed to list unit files: Connection timed out
> И так на каждой машине, которая не перезагружалась больше 2-х месяцев.не подтвердается:
Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.13.0-31-generic x86_64)
...
~$ uptime
02:43:53 up 80 days, 14:45, 1 user, load average: 0,00, 0,00, 0,00~$ systemctl list-unit-files
UNIT FILE STATE
proc-sys-fs-binfmt_misc.automount static
dev-hugepages.mount static
dev-mqueue.mount static
...
...
он просто не хотел учить bash...(sh) ;(
А про BSD инит забыли ?
уже впилили в Debian GNU/Linux?
BSD-init выпилили из Дебиана уже в версии 5, если не ошибаюсь
Эта дрянь не нужна. За баш-портянки в скриптах инициализации нужно бить молотком по пальцам. За каждую строку -- один удар.
слишком толсто, sysvinit это pid 1 и к скриптам он никакого отношения не имеетhttps://git.savannah.nongnu.org/cgit/sysvinit.git/tree/ где тут bash?