$ mkdir /tmp/b below cmd output started 2017 Sat Oct 28 01:31:25 PM PDT above cmd output done 2017 Sat Oct 28 01:31:25 PM PDT dstromberg@zareason2:~ x86_64-unknown-linux-gnu 31848 $ cd /tmp/b below cmd output started 2017 Sat Oct 28 01:31:27 PM PDT above cmd output done 2017 Sat Oct 28 01:31:27 PM PDT dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848 $ # You can get bash from https://ftp.gnu.org/gnu/bash/ above cmd output done 2017 Sat Oct 28 01:31:33 PM PDT dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848 $ wget https://ftp.gnu.org/gnu/bash/bash-4.4.12.tar.gz below cmd output started 2017 Sat Oct 28 01:31:35 PM PDT --2017-10-28 13:31:35-- https://ftp.gnu.org/gnu/bash/bash-4.4.12.tar.gz Resolving ftp.gnu.org (ftp.gnu.org)... 2001:4830:134:3::b, 208.118.235.20 Connecting to ftp.gnu.org (ftp.gnu.org)|2001:4830:134:3::b|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 9463431 (9.0M) [application/x-gzip] Saving to: 'bash-4.4.12.tar.gz' bash-4.4.12.tar.gz 100%[====================================================>] 9.02M 5.36MB/s in 1.7s 2017-10-28 13:31:38 (5.36 MB/s) - 'bash-4.4.12.tar.gz' saved [9463431/9463431] above cmd output done 2017 Sat Oct 28 01:31:38 PM PDT dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848 $ tar xfp bash-4.4.12.tar.gz below cmd output started 2017 Sat Oct 28 01:31:43 PM PDT above cmd output done 2017 Sat Oct 28 01:31:44 PM PDT dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848 $ cd bash-4.4.12 && ./configure > configure.output 2>&1 && make > make.output 2>&1 below cmd output started 2017 Sat Oct 28 01:32:09 PM PDT above cmd output done 2017 Sat Oct 28 01:33:31 PM PDT dstromberg@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 31848 $ sudo below cmd output started 2017 Sat Oct 28 01:33:54 PM PDT [sudo] password for dstromberg: above cmd output done 2017 Sat Oct 28 01:33:59 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $ make install > make-install.output 2>&1 below cmd output started 2017 Sat Oct 28 01:34:08 PM PDT above cmd output done 2017 Sat Oct 28 01:34:12 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $ if ! fgrep -x /usr/local/bin/bash /etc/shells; then echo /usr/local/bin/bash >> /etc/shells; fi below cmd output started 2017 Sat Oct 28 01:35:25 PM PDT /usr/local/bin/bash above cmd output done 2017 Sat Oct 28 01:35:25 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $ chsh -s /usr/local/bin/bash below cmd output started 2017 Sat Oct 28 01:36:21 PM PDT above cmd output done 2017 Sat Oct 28 01:36:21 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $ # Log out and back in, leaving at least one preexisting shell open - in case there's a problem to fix above cmd output done 2017 Sat Oct 28 01:36:44 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $ # This shell is still your old one, but when you log in anew, those shells should be (the new) bash. above cmd output done 2017 Sat Oct 28 01:36:56 PM PDT root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641 $