bash⚓︎
Усовершенствованная и модернизированная вариация командной оболочки Bourne shell. Этот пакет выполняет требования стандарта LSB Core для обеспечения интерфейса Bourne Shell в системе. Он был выбран из числа других оболочек из-за широкого распространения и возможностей, которые выходят далеко за пределы базовых функций программ-оболочек.
Версия: 5.1.16
Размер: 10.04Mb
Приоритет: Необходимый
Оригинальное расположение: https://ftp.gnu.org/gnu/bash/bash-5.1.16.tar.gz
Ссылка для загрузки: https://lx4u.ru/downloads/packages/bash-5.1.16.tar.gz
MD5: c17b20a09fc38d67fb303aeb6c130b4e
Домашняя страница: https://www.gnu.org/software/bash
SBU (Сборка временной системы): 0.3
SBU: 0.3
Подготовка⚓︎
Для многоядерных процессоров внесите исправление, которое устраняет проблему "состояния гонки" при использовании нескольких ядер.
sed -i '/^bashline.o:.*shmbchar.h/a bashline.o: ${DEFDIR}/builtext.h' Makefile.in
Настройка⚓︎
./configure --prefix=/usr \
--without-bash-malloc \
--with-installed-readline
Значения параметров⚓︎
--without-bash-malloc
- этот параметр отключает использование функции выделения памяти (malloc) Bash, которая вызывает ошибки сегментации. Отключив эту опцию, Bash будет использовать функции malloc из libc, которые более стабильны.
--with-installed-readline
- указывает на то, что следует задействовать ранее установленную библиотеку readline, вместо использования внутренней.
Сборка⚓︎
make
Тестирование⚓︎
Для корректного выполнения тестов, сделайте пользователя tester
владельцем каталога и запустите тесты от пользователя tester
. Кроме того, для запуска тестов требуется пакет expat
.
su -s /usr/bin/expect tester << EOF
set timeout -1
spawn make tests
expect eof
lassign [wait] _ _ _ value
exit $value
EOF
Установка⚓︎
make install
При раздельной структуре каталогов⚓︎
Создайте ссылку на нужный бинарный файл.
mv -vf /usr/bin/bash /bin
bash
должен находиться в /bin
. Для упрощённой структуры этого делать не требуется.
Запуск новой сессии⚓︎
Запустите bash
(заменив тот, который в настоящее время выполняется):
exec /bin/bash --login +h
Установленные файлы⚓︎
Программы: bash
, bashbug
и sh
(ссылка на bash
)
Директории: /usr/include/bash
, /usr/lib/bash
и /usr/share/doc/bash