LINUX.ORG.RU

Изменение /bin/sh по умолчанию в Debian

 , ,


0

0

Luk Claes внес в Debian'овский пакет dash важное изменение: начиная с версии 0.5.5.1-2.2, символическая ссылка /bin/sh указывает по умолчанию именно на dash. Как следствие, теперь dash является пакетом "обязательного" приоритета. Возможность выбора других вариантов для /bin/sh (например, bash) реализована через dpkg-divert. Преимущество dash - более быстрое исполнение скриптов.

Изменение затронуло только неинтерактивный интерпретатор для скриптов, начинающихся со строки "#!/bin/sh". Интерактивным интерпретатором командной строки для пользователей по умолчанию остается /bin/bash.

>>> Подробности

★★★★★

Проверено: boombick ()

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

>В качестве /bin/sh - да.
Ну и глупо.

>У вас глючная сборка libastral :D

Нет. Это libvanga.so.2 - содержит функции предсказания будущего. libastral.so используется для получения информации из астрала, а это не то же самое. И тем более не надо путать их с libtelepatia :D

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

POSIX - стандарт де-юре.
bash - стандарт де-факто.

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

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

>Де-факто bash практически выпилен. И поделом.

С тем же успехом можно сказать, что и Linux из дебиана выпилен. Только вот мужики-то не знают...

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

У пользователей bash останется в качестве интерактивного шелла. Что тебя не устраивает? Ты часто пишешь системные скрипты с башизмами?

gotf
()
Ответ на: комментарий от nnz

> Только вот мужики-то не знают...

Только вот слоупоки-то не знают... Fixed.

> С тем же успехом можно сказать, что и Linux из дебиана выпилен.


В experimental поменяли дефолтное ядро? :)

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

> Что тебя не устраивает?

Да всё его устраивает. Троллит он, развлекается :)

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

Наконец, при вызове как /bin/sh, bash переходит в режим POSIX-совместимости, поэтому, если dash быстрее -- не один ли черт, что использовать для скриптов?

gotf
()
Ответ на: комментарий от Manhunt

>Только вот слоупоки-то не знают... Fixed.

Толсто.

>В experimental поменяли дефолтное ядро? :)


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

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

>Наконец, при вызове как /bin/sh, bash переходит в режим POSIX-совместимости, поэтому, если dash быстрее -- не один ли черт, что использовать для скриптов?

Не один. Ибо (имхо) велосипеды - зло. Особенно кривые велосипеды.

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

> Ибо (имхо) велосипеды - зло. Особенно кривые велосипеды.

Согласен. Поэтому неплохо бы со временем изжить bash полностью, а не только из скриптов.

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

Толсто :) dash - эффективная замена sh, также как и bash. Выходит, они оба - велосипеды. Разница всего лишь в том, что dash заменяет sh несколько более эффективно. Других отличий нет.

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

>Толсто :) dash - эффективная замена sh, также как и bash. Выходит, они оба - велосипеды. Разница всего лишь в том, что dash заменяет sh несколько более эффективно. Других отличий нет.

Лично я уже давно не видел того-самого-sh. В наше время sh - это всего лишь режим работы bash. Создавать замену для _режима_, да еще велосипед, да еще кривой - имхо бессмысленно.

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

>Согласен. Поэтому неплохо бы со временем изжить Linux полностью, а не только из дебиана.

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

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

>>Создавать замену для _режима_, да еще велосипед, да еще кривой - имхо бессмысленно.

Не кривой. dash не содержит в себе "лишних" функций и даст выигрыш в скорости при множественных его вызовах. Можно считать его тем-самым-sh. Кстати, man dash откроет страницу man sh, что как бы намекает.

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

>Не кривой.

Тогда откуда проблемы с пересборкой ядра?

>выигрыш в скорости при множественных его вызовах


Сколько? 2-3%? И это ценой кучи проблем из-за его недопиленности?

>Можно считать его тем-самым-sh.


Врать себе - так по полной. Что мешает считать тем-самым-sh баш, вызванный по симлинку /bin/sh?

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

>>Тогда откуда проблемы с пересборкой ядра?

В убунте и не такое бывает :)

>>Сколько? 2-3%?

Почему бы и нет?

>>И это ценой кучи проблем из-за его недопиленности?

Ссылки на баги в студию.

>>Что мешает считать тем-самым-sh баш, вызванный по симлинку /bin/sh?

Ничего.

gotf
()

Пожалуй, надо бросать дебиан и уходить, пока не поздно.

Сначала они glibc убрать решили, теперь баш на свой велосипед меняют... Ради чего? Стандартам соответствовать? Загонять живую систему в прокрустово ложе ценой болезненных ампутаций?

Давайте не будем лгать себе. Просто у кого-то в дебиановском сообществе взыграло ЧСВ, и он решил сделать свой собственный unix, с блекждеком и шлюхами, и впарить его людям взамен GNU/Linux.

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

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

>>Пожалуй, надо бросать дебиан и уходить, пока не поздно.

Счастливого пути ;D

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

>В убунте и не такое бывает :)

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

>Почему бы и нет?


Почему бы не бросить квартиру, работу и семью и не переехать в провинцию, потому что там платят на 10 рублей больше (на фоне 60 штук)? Если кому-то просто нравится ломать, ему это решение подойдет. Однако даже ребенку понятно, что мифический выигрыш в скорости - не причина, а формальный повод.

>Ссылки на баги в студию.


Баги со сборкой ядра уже есть. И будут новые, я гарантирую это.

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

>Чушь. Слишком толсто.

"О нет, нет, я не могу в это поверить! Так не может быть! Не может!"

Ваша реплика продиктована не рассудком, а эмоциями. Вы можете ее аргументировать?

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

>Н-да, Вам, пожалуй, скатертью дорожка.

С MS-DOS ушел, с винды ушел, теперь вот с дебиана уходить... Ну что поделать.
Однако цепочка получается вполне красноречивая :)

Да и не один я уйду. Особенно когда все эти велосипеды рипнутся.

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

Сколько раз собирал с dash в сиде ядро - и ванильное, и дебиановское - ничего не падало. ЧЯДНТ?

kapsh
()
Ответ на: комментарий от nnz

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

То есть удолбыши -- это те, кто отлавливает глючные скрипты, а не те, кто их пишет?

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

Ворчание типичного старпёра - ой всё плохо, молодёжь уже не та, всё что в моей молодости было - всё повыкидывали, своё понапридумывали, etc

kapsh
()
Ответ на: комментарий от kss

>То есть удолбыши -- это те, кто отлавливает глючные скрипты, а не те, кто их пишет?

Я наивно полагал, что это те, кто по своей прихоти объявляет нормальные скрипты глючными.

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

>Я наивно полагал, что это те, кто по своей прихоти объявляет нормальные скрипты глючными.

Если в скрипте написано, что он интерпретируется /bin/sh, а на деле ему для этого нужен bash, то -- он не нормальный, а глючный. А с твоей логикой можно начать требовать писать питоновские и перловские проги на баше, а для того, чтобы они исполнялись ставить симлинки на питон и перл с баша.

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

>>Вы можете ее аргументировать?

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

gotf
()
Ответ на: комментарий от kss

>Если в скрипте написано

На заборе тоже написано.

А по твоей логике dash тоже получается глюкодромом - ведь в скриптах написано /bin/sh, а выполняется /bin/dash. С твоей логикой можно начать требовать писать питоновские и перловские проги на дэше, а для того, чтобы они исполнялись ставить симлинки на питон и перл с дэша.

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

>Мое личное мнение не нуждается в аргументах

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

>сложно перенаправить одну символическую ссылку?


Дальше - больше. <p mode="vanga">После включения dash в stable необходимость его соответствия POSIX внезапно отпадет, и в него начнут добавлять свои функции. От этого он станет тяжелым и, разумеется, ни с чем не совместимым. Все скрипты в дебиане начнут с матами переводить на него, от чего, естественно, будут страдать пользователи. А потом внезапно выяснится, что автор забил на это проект и поддерживать его некому, и проект рипнется.</p>

>Сейчас меня все устраивает.


Умному человеку обычно свойственно видеть дальше собственного ху^Wноса.

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

>>>навряд ли dash будет более компактен ) с Glibc-ом то в памяти )...

Я так понимаю, что кроме этого баша в "системе" не запускается больше ничего ? 8) Иначе снова этот проклятый glibc залезет в память... 8))

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

>А по твоей логике dash тоже получается глюкодромом - ведь в скриптах написано /bin/sh, а выполняется /bin/dash.

По моей логике глюкодром получается не потому ,что исполняет bash, а потому, что программа содержит вещи, для которых нужен исключительно баш, хотя задекларировано, что это не так. Если нужен баш, то пускай и стоит #!/bin/bash Вот скажи, если у тебя в программе на Си не будет подключен нужный хедер, то ты как, тоже материть компилятор или все-таки признаешь, что программа с ошибкой?

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

>>Умному человеку обычно свойственно видеть дальше собственного ху^Wноса.

Не волнуйся, в вопросах действительно значимых я смотрю дальше своего ху^Wноса ;)

gotf
()

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

John_Wehin
()
Ответ на: комментарий от Sylvia

> навряд ли dash будет более компактен ) с Glibc-ом то в памяти )

Ubuntu 8.04

$ file dash dash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped

$ file bash bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped

$ ls -l *sh -rwxr-xr-x 1 root root 702160 2008-05-12 22:33 bash -rwxr-xr-x 1 root root 79988 2009-03-09 16:03 dash

при динамическом линковании - всего-то в 10 раз :D

really_localhost
()
Ответ на: комментарий от gotf

>Башизмы выходят за рамки POSIX.

GNU/Linux выходит за рамки POSIX.

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

>По моей логике глюкодром получается не потому ,что исполняет bash, а потому, что программа содержит вещи, для которых нужен исключительно баш, хотя задекларировано, что это не так. Если нужен баш, то пускай и стоит #!/bin/bash

Учимся читать. Хоть man bash, хоть этот тред. Если баш запускать через /bin/sh, он будет работать строго по posix.

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

>при динамическом линковании - всего-то в 10 раз :D

1. Какая разница? Все равно нормальный шелл придется ставить.
2. Это он сейчас такой маленький. Как я уже предсказывал, скоро они забьют на POSIX, и начнут превращать dash в нечто совершенно несовместимое и очень тяжелое. Иначе в их нынешних действиях нет никакого смысла.

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

>Не волнуйся, в вопросах действительно значимых я смотрю дальше своего ху^Wноса ;)

По твоим репликам этого не заметно :)

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

>и до сих пор нельзя через скрипт проверить статус сервиса (ps вариант)

invoke-rc.d service status?

Pavval ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.