mkdir stürzt Bash ab

mkdir stürzt Bash ab

Ich versuche, ein Verzeichnis in meinem Home-Verzeichnis zu erstellen, aber die Shell selbst stürzt ständig ab. Ich habe die Berechtigung, in das Verzeichnis zu schreiben. Ich kann per Touch Dateien im Verzeichnis erstellen. Ich kann Verzeichnisse in csh erstellen. Wenn ich es mit Bash versuche, erhalte ich einen ziemlich großen Core Dump (~59 M), aber da Bash die Binärdatei ist, ist der Backtrace nicht sehr hilfreich (nur viele „execute_command_internal()“-Aufrufe). Der Name des Verzeichnisses, das ich erstelle, scheint keine Rolle zu spielen. Ich kann es in anderen Verzeichnissen versuchen und erhalte dasselbe seltsame Verhalten. Ich kann su verwenden, um einen anderen Benutzer zu emulieren, der Verzeichnisse in meinem Verzeichnis erstellen kann (sobald ich die Berechtigungen entsprechend eingerichtet habe), aber ich kann es nicht selbst tun, ohne dass Bash abstürzt. Ich habe versucht, den Computer neu zu starten.

Ich bin wirklich verblüfft. Hat jemand eine Idee, was das sein könnte oder was ich sonst noch tun kann, um das Problem zu beheben?

Xubuntu 14.04, Bash 4.3.11(1)-Version

BEARBEITEN: BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extglob:extquote:force_fignore:histaappend:interactive_comments:login_shell:progcomp:promptvars:sourcepath

Der Befehl lautet einfach mkdir aoder so ähnlich.

BEARBEITEN 2:

ldd /bin/mkdirergibt:

linux-vdso.so.1 =>  (0x00007ffff55fd000)
libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007fadc606a000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fadc5ca4000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fadc5a65000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fadc5861000)
/lib64/ld-linux-x86-64.so.2 (0x00007fadc62ab000)

Antwort1

Ich bin ein Idiot.

Ich hatte irgendwo eine Bash-Funktion kopiert, die so aussah:

md() 
{
    [ $# -eq 0 ] && { echo "$0 dirname [permissions]"; return; }
    [ -d "$1" ] && { echo "%1 already exists!"; return; }
    mkdir -m ${2:-0755} -p "$1"
}

Das Problem bestand darin, dass ich zuvor einen Alias ​​wie diesen hatte. alias md="mkdir"Als Bash die neue Bash-Funktion analysierte, erweiterte es md() zu mkdir(), wodurch die Funktion unendlich rekursiv wurde und die Shell abstürzte.

verwandte Informationen