6.35. Bash-5.0

Bash 패키지에는 Bourne-Again SHell이 포함되어 있다.

예상 빌드 시간: 1.9 SBU
필요 디스크 공간: 62 MB

6.35.1. Bash 설치

업스트림 수정 사항 몇 가지를 적용한다:

patch -Np1 -i ../bash-5.0-upstream_fixes-1.patch

Bash 컴파일을 준비한다:

./configure --prefix=/usr                    \
            --docdir=/usr/share/doc/bash-5.0 \
            --without-bash-malloc            \
            --with-installed-readline

Configure 옵션의 의미:

--with-installed-readline

Bash가 자체에 내장된 readline 대신 이미 시스템에 설치된 readline 라이브러리를 사용하도록 지시한다.

패키지를 컴파일한다:

make

테스트 스위트를 실행하지 않을 것이라면 패키지 설치로 이동하라.

테스트를 준비하려면, nobody 유저에게 소스 트리에 쓰기 권한을 부여하라:

chown -Rv nobody .

이제 nobody 유저로 테스트를 실행하라:

su nobody -s /bin/bash -c "PATH=$PATH HOME=/home make tests"

패키지를 설치하고 기본 실행 파일을 /bin으로 이동하라:

make install
mv -vf /usr/bin/bash /bin

새로 컴파일된 bash 프로그램을 실행한다(현재 실행 중인 프로그램 대체):

exec /bin/bash --login +h
[참고]

참고

이 매개 변수는 bash 프로세스를 대화형 로그인 셸로 만들고 해싱을 비활성화한 채로 유지해서 새로운 프로그램을 사용할 수 있게 한다.

6.35.2. Bash의 내용

설치된 프로그램들: bash, bashbug, sh (bash로 링크)
설치된 디렉토리들: /usr/include/bash, /usr/lib/bash, /usr/share/doc/bash-5.0

요약

bash

널리 사용되는 명령어 인터프리터; 명령줄을 실행하기 전에 주어진 명령에 대해 다양한 종류의 확장 및 대체 작업을 수행하는 강력한 인터프리터

bashbug

사용자가 bash에 관련된 표준 형식의 버그 리포트를 작성하고 메일로 보낼 수 있도록 지원하는 셸 스크립트

sh

bash 프로그램에 대한 심볼릭 링크; sh로 호출되면, bash는 POSIX 표준을 준수하면서 가능한 한 과거 버전의 sh의 시작 동작을 모방한다