I am using openSUSE 42.3 on WSL. During the last update I done (with sudo zypper refresh && sudo zypper update
), Bash was updated from version 4.3.42(1) to version 4.3-83.3.1.
I closed the Bash window (simply using exit
) and restarted Windows.
When Windows restarted, I re-opened the Bash window, and pressed Control+X+V. What Bash output is still the old version number.
GNU bash, version 4.3.42(1)-release (x86_64-suse-linux-gnu)
I checked the output of zypper info bash
, but it says version 4.3-83.3.1 is installed.
Loading repository data...
Reading installed packages...
Information for package bash:
-----------------------------
Repository : oss_update
Name : bash
Version : 4.3-83.3.1
Arch : x86_64
Vendor : openSUSE
Installed Size : 742.5 KiB
Installed : Yes (automatically)
Status : up-to-date
Source package : bash-4.3-83.3.1.src
Summary : The GNU Bourne-Again Shell
Description :
Bash is an sh-compatible command interpreter that executes commands
read from standard input or from a file. Bash incorporates useful
features from the Korn and C shells (ksh and csh). Bash is intended to
be a conformant implementation of the IEEE Posix Shell and Tools
specification (IEEE Working Group 1003.2).
I also checked the output of zypper lr -d
, but I don't see anything that would explain what is happening.
# | Alias | Enabled | Type |
---|---|---|---|
1 | devel_languages_go | Yes | rpm-md |
2 | devel_languages_php | Yes | rpm-md |
3 | oss | Yes | rpm-md |
4 | oss_update | Yes | rpm-md |
5 | server_php_extensions_php7 | Yes | rpm-md |
Why isn't the updated version of Bash being used?
I searched for any file with a name matching bash (with sudo find /[^m]* -name "bash" -type f
, where /[^m]*
is used to avoid the /mount directory, which is the only directory matching that pattern). The only file it finds is /bin/bash, for which the output of /bin/bash --version
is the following.
GNU bash, version 4.3.42(1)-release (x86_64-suse-linux-gnu) Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
How can Zypper think it installed an update for which I don't find the installed files?
As side note, I didn't alter the symbolic link Windows uses to start openSUSE, which means the Bash used from WSL is the one that for openSUSE is /bin/bash.