добрый день
решил обновить BASH после «выхода в свет» недавно обнаруженной ДЫРЫ, точнее, присутствующей все время, и только недавно пристально обратившей на себя внимание
http://habrahabr.ru/company/mailru/blog/238475/ http://habrahabr.ru/post/238021/ etc...
патченный БАШ / bash - стал вести себя странно с оператором «set -e» точнее, стал выбрасывать из скрипта по непонятным причинам, не смотря на то, что оператор, на котором происходил выход из скрипта - отрабатывал без ошибок
пример, скрипт монтирования (дан только как пример, не для пристального внимания)
раньше, т.е. все время - работал без проблем, а сейчас вываливается из скрипта после команды монтирования, и т.к. у меня после монитрования идут еще другие команды - то они не выполняются
ФОРУМ «портит» и пишет в одну строку, как «НОРМАЛЬНО» добавить текст скрипта я не знаю (можете подсказать) 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 xxxxx -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