9

I accidentally overwrote the /etc/bash.bashrc file.

Please give me the default content in that file to restore, or the file itself.

1

6 Answers 6

8

If you overwrote your bash the best way is to copy it again from your system itself instead of someone else:

rm ~/.bashrc
cp /etc/skel/.bashrc ~/
1
  • 5
    OP is asking about /etc/bash.bashrc, not ~/.bashrc
    – wjandrea
    Jul 26, 2016 at 2:59
6

My /etc/bash.bashrc file is the following:

# System-wide .bashrc file for interactive bash(1) shells.

# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
#    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
#    ;;
#*)
#    ;;
#esac

# enable bash completion in interactive shells
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi

# sudo hint
if [ ! -e "$HOME/.sudo_as_admin_successful" ]; then
    case " $(groups) " in *\ admin\ *)
    if [ -x /usr/bin/sudo ]; then
    cat <<-EOF
    To run a command as administrator (user "root"), use "sudo <command>".
    See "man sudo_root" for details.

    EOF
    fi
    esac
fi

# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found ]; then
    function command_not_found_handle {
            # check because c-n-f could've been removed in the meantime
                if [ -x /usr/lib/command-not-found ]; then
           /usr/bin/python /usr/lib/command-not-found -- $1
                   return $?
                elif [ -x /usr/share/command-not-found ]; then
           /usr/bin/python /usr/share/command-not-found -- $1
                   return $?
        else
           return 127
        fi
    }
fi

However, you could also just boot from a live CD and copy the live CD file onto your hard-disc i.e.

sudo mkdir /mnt/tempmount
sudo mount -t ext4 /dev/sda1 /mnt/tempmount
sudo cp /etc/bash.bashrc /mnt/tempmount/etc/bash.bashrc

Change /dev/sda1 for whatever partition your ubuntu is installed on.

3
  • 5
    Or you can download the bash package, extract it via Nautilus, and find the file there. packages.ubuntu.com/maverick/i386/bash/download
    – arrange
    Aug 2, 2011 at 21:15
  • 1
    that's looks like a good answer - why not add one?
    – fossfreedom
    Aug 2, 2011 at 21:21
  • well, it's much much easier to copy the source you posted here I guess... ;) It's just an alternative approach for reference.
    – arrange
    Aug 2, 2011 at 21:25
3

Get it from the Bash package

  1. Download the Bash package:

    apt-get download bash
    

    Or manually download it from https://packages.ubuntu.com/bionic/amd64/bash/download

    • For other Ubuntu versions, swap out "bionic" for your version name.
  2. Browse the .deb file using Archive Manager
  3. Extract /etc/bash.bashrc
    • You can also find ~/.bashrc under /etc/skel/.bashrc.

Source: arrange's comment

0

Copying the root .bashrc into my folder was the easiest solution for me.

 sudo cp /root/.bashrc ~ 
1
  • 1
    This, however, requires root privileges. Jan 12, 2014 at 19:54
0

This is a very late answer, but it may help someone.

Your Linux distribution is responsible for customizing this, so get it from their bash package. There is a way to force reinstall the bash package which is different depending on which package manager your distro uses. You did not specify which distribution so we can't really determine which one you may have in order to provide more specific instructions.

My suggestion would be to use your favorite search engine with a query like "[package manager] force install package" to find the specific instructions, and adapt those to the bash package. For example, for yum or dnf you'd redownload the .rpm package (or find it in the cache) then use a special rpm invocation to do this, or for apt you'd use a special apt-get command to force reinstall. There are many package managers though and they are not generally interchangeable - this will definitely be specific to your Linux distribution.

You can find the example bash startup files here, in the official git repo for bash:

https://git.savannah.gnu.org/cgit/bash.git/tree/examples/startup-files

-2

In addition to the the information given by Braiam, you can copy the contents of the following .bashrc file as commented in How to restore .bashrc file?

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .