nixp.ru v3.0

18 января 2017,
среда,
21:17:31 MSK

DevOps с компанией «Флант»
sunjob написал 11 ноября 2014 года в 04:41 (3015 просмотров) Ведет себя неопределенно; открыл 8 тем в форуме, оставил 44 комментария на сайте.

добрый день

решил обновить BASH после «выхода в свет» недавно обнаруженной ДЫРЫ, точнее, присутствующей все время, и только недавно пристально обратившей на себя внимание

http://habrahabr.ru/company/mailru/blog/238475/
http://habrahabr.ru/post/238021/
etc…

патченный БАШ / bash — стал вести себя странно с оператором «set -e»
точнее, стал выбрасывать из скрипта по непонятным причинам, не смотря на то, что оператор, на котором происходил выход из скрипта — отрабатывал без ошибок

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

cut —>

#/bin/sh
clear; set -e
HOST=xxx.xxx.xxx.xxx
PTR=~/tmp/mnt_${HOST}
(
mkdir -p ${PTR}
sudo umount -l ${PTR} > /dev/null
)
sshfs root@${HOST}:/ ${PTR} -p 18439 -o allow_other

…<blah blah blah> другие команды

cut —>

сначало установил самый последний БАШ
bash-4.3.0 patch to 4.3.30

и заметил, что перестали нормально работать slackBuild-скрипты, которые раньше нормально отрабатывали

подумал, что навый БАШ непереваривает старые оси, ладно, установил заплаты на «свой родной баш»
bash-3.2.48 patch to 3.2.57

и та же самая история, slackBuild-скрипты перестали отрабатывать… доходят до команды make — и вываливаются, несмотря на то, что сама команда отрабатывает без ошибок

в конечном итоге перестали работать около 100 пользовательских баш-скриптов
откатился на старый-дырявый баш

на десктопе такой откат — не существеннен, а вот на сервере…

что то случилось в мире опенсорса пока я отсутствовал? :о)
какие будут комментарии?

заранее спасибо

slackware 12.2
kernel 2.6.32.63-smp
kde-tde 3.5.12

bash source
http://ftp.gnu.org/gnu/bash/

bash-3.2.48
with patches: bash32-049 — bash32-057

bash-4.3
with patches: bash43-001 — bash43-030

sunjob

ОБРАЩЕНИЕ МОДЕРАТОРАМ

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

спасибо

rgo
я не могу редактировать свой топик, то не вижу смысла общаться в данном форуме


лоооол. успехов.

sunjob

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

и вам тех же самых успехов

rgo
и шо тут такого лолно-непонятного?

Я ведь ничего не говорил про «непонятное». Я говорил про смешное. Непонятностей нет, ваша позиция кристалльно понятна. Её можно охарактеризовать фразами:
«в чужой монастырь со своим уставом»
«рюшечки важнее решения проблемы»
«моё особо ценное мнение, которое все должны знать».
И всё это вместе и одновременно. Это очень смешно, если наблюдать со стороны.

А вообще, если по-теме, проблема сильно похожа на баг, и посему вам следует заняться изучением того, в какие моменты падают скрипты. Допустим, the changes between this version, bash-4.3-release, and
the previous version, bash-4.3-rc2.

llll. Fixed a bug that caused the -e option to be re-enabled using `set -e'
even when executing in a context where -e is ignored.

А в качестве временного решения (которое можно и перманентно использовать), я бы посоветовал отказаться от симлинка /bin/sh->/bin/bash. Идите путём того же дебиана, и используйте, например, dash.

sunjob

ну и фантазия у вас… чихает она что ли? :о)

спасибо за коммент «по делу»
проблема решена (правда, на другом форуме…)

rgo
ну и фантазия у вас…

Да, она тренированная, очень точно описывает реальность.

проблема решена

Мои поздравления.

fhunter

А логи/код возврата/что-нибудь есть?
А /bin/sh это точно bash?

sunjob

добрый день

на этом форуме я не могу отредактировать топик, поэтому вопросы буду обсуждаться на дургих форумах

http://unixforum.org/index.php?showtopic=137953
http://linuxforum.ru/viewtopic.php?id=36686
http://www.linux.org.ru/forum/admin/11024286

sunjob

!!! МОДЕРАТОРЫ !!!
проблема решена, пожалуйста, удалите топик
спасибо

sunjob

.

rgo

Нет, пускай он живёт вечно. В назидание потомкам.

sunjob

ну да нехай живет, ежели так … :о)

Дмитрий Шурупов

Да пусть висит себе…

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

sunjob

да я не против :о)
просто привык именно «обсуждать тему», поэтому обычно при появлении новых деталей, уточнений и/или решений сразу добавляю в топик
так, когда кто то прочитал топик — сразу в теме и не надо перечитывать всю переписку (которая порой состоит из понтов и писькомеров) … т.е. тут просто индивидуальный подход
все имхо, спасибо

rgo

А если не секрет, где это вы привыкли обсуждать тему именно так? Я довольно много различных форумов обживал, и ни на одном не припомню подобного. Борьбу за запрет редактирования я видел и не раз (как минимум дважды). А вот борьбу за возможность редактирования я вижу впервые… Это же элементарно неудобно: добавление новых сообщений легко отслеживается через почту, куда они прилетают, а вот редактирование/удаление постов никак не отображается в почте. Да и перечитывать каждый раз топик, в поисках того, что было отредактировано — то ещё «удовольствие.»

fhunter

Ещё от себя добавлю что запрет редактирования делают обычно для защиты от спама.

sunjob

тема, более полно рассмотрена тут
http://unixforum.org/index.php?showtopic=137953

коротко, можно сказать, что в основном, были «виновны» sshfs (так же обновленные)
выкладки по решению:

- установить новый «util-linux-2.19»
- пересобрать «fuse-2.8.5» с опцией разрешающей работу с «mtab»
- пересобрать «sshfs-fuse-2.5»

спасибо за внимание, не наступайте на мои грабли, удачи :о)

rgo

А slackBuild скрипты почему перестали работать? Им-то какое дело до mtab?

sunjob

включите вашу тренированную фантазию, которая точно описывает реальность :о)))

rgo

Моя тренированная фантазия подсказывает мне, что вы-таки сфейлились описать проблему. С редактированием или без, но не смогли. Либо у вас патченные slackBuild скрипты и вы об этом стыдливо умолчали, либо эти скрипты не отрабатывали по причинам незамеченной вами несостоятельности окружения на момент запуска — типа непримонтированных fs.
Правда она же мне подсказывает, что есть некоторая вероятность (близкая к нулю), что slackBuild скрипты штатно могут заниматься монтированием всякой хрени, или может быть вы запускаете эти slackBuild скрипты косвенным образом, через другие штатные слаковские скрипты, которые в свою очередь и занимаются этой пургой. И вопрос я задаю именно для того, чтобы проверить эту вероятность. Не то, чтобы мне эта информация как-то нужна была (была б нужна, я бы пошёл почитал документацию на слакварь), но всё же любопытно.

sunjob

вы абсолютно правы, пойдите почитайте документацию на слакварь

rgo
Не то, чтобы мне эта информация как-то нужна была (была б нужна, я бы пошёл почитал документацию на слакварь), но всё же любопытно.

Вам надо, вы и читайте. Я слакварью не пользовался лет 7-8 наверное, не горю желанием возобновлять знакомство, поэтому мой интерес к слаквари — это праздное любопытство по старой памяти.

sunjob

мы так и поняли, что у вас праздное любопятство… :о)

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.