Na Ubuntu 13.10, když otevřu nový terminál, se mi někdy zobrazí následující výstup na terminálu:
bash: /etc/bash.bashrc: Permission denied
Oprávnění by však měla být v pořádku:
>ls -l /etc/bash.bashrc -rwxr-xr-x 1 root root 2177 Mär 30 2013 /etc/bash.bashrc*
V čem je problém? Jak to mohu opravit? Jaký je účel souboru /etc/bash.bashrc
a kde přesně se volá?
Obsah tohoto souboru:
# 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 ! shopt -oq posix; then # if [ -f /usr/share/bash-completion/bash_completion ]; then # . /usr/share/bash-completion/bash_completion # elif [ -f /etc/bash_completion ]; then # . /etc/bash_completion # fi #fi # sudo hint if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; 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/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/lib/command-not-found -- "$1" return $? elif [ -x /usr/share/command-not-found/command-not-found ]; then /usr/share/command-not-found/command-not-found -- "$1" return $? else printf "%s: command not found\n" "$1" >&2 return 127 fi } fi
Komentáře
Odpověď
Zkuste: chmod 0755 /etc
jako root. Mohli jste narazit na problém s nesprávným oprávněním adresáře / etc. Vraťte také oprávnění souboru bash.bashrc na jejich původní oprávnění chmod 644 /etc/bash.bashrc
.
Odpověď
Stalo se to u uživatele Samba AD, takže jsem odstranil a znovu vytvořil stejné uživatelské informace. v konzole AD. Přejmenoval jsem pouze domovský adresář mv /home/domain/user /home/domain/user.ex
předpokládal, že samotný domovský adresář může být ovlivněn a způsobí, že se uživatel přihlásí čerstvý, a poté přesunul celý obsah zpět do nového domovského adresáře z přejmenovaného domovského adresáře. mv /home/domain/user.ex/* home/domain/user
Proto byl domovský adresář obnoven na sklad a abrt-cli status" timed out
chyba také zmizela.
-rw-r--r-- 1 root root 8871 jul 11 04:52 /etc/bash.bashrc
/etc
?