[Buildroot] [PATCH 2018.02.x] Revert "package/bash: add /bin/bash to /etc/shells"
Romain Naour
romain.naour at smile.fr
Tue Apr 17 10:17:36 UTC 2018
Hi Arnout,
Le 17/04/2018 à 12:01, Arnout Vandecappelle (Essensium/Mind) a écrit :
> Commit 4d279697af added /bin/bash to /etc/shells. In the default
> skeleton, however, /etc/shells doesn't exist, so in fact it creates
> this file, containing only /bin/bash. Therefore, when bash is selected,
> /bin/sh does not appear in /etc/shells and bash is the only shell
> allowed. Since /bin/sh is the shell that is used for root in the
> default skeleton's /etc/passwd, root is no longer able to log in.
>
> The proper solution is to add all available shells to /etc/shells. For
> now, however, just revert commit 4d279697af as a stop-gap measure. That
> way, the default situation still works, and only people who update
> /etc/passwd with additional logins but don't update /etc/shells will
> suffer.
This issue appear with dropbear as far I know.
>
> This reverts commit 4d279697afbf8fb295274784103be2b837113d5e.
>
> Fixes: https://bugs.busybox.net/show_bug.cgi?id=10896
>
> Cc: Romain Naour <romain.naour at smile.fr>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
> ---
> This is for the 2018.02.x branch; master should take the series at
> http://patchwork.ozlabs.org/project/buildroot/list/?series=24357
> I believe that series is too invasive for the 2018.02.x branch.
Agree, the work on /etc/shells is not complete without the entire series.
I don't know if there is any blocker for this series.
Hopefully it will be merged for 2018.05 :)
Acked-by: Romain Naour <romain.naour at smile.fr>
Best regards,
Romain
> ---
> package/bash/bash.mk | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/package/bash/bash.mk b/package/bash/bash.mk
> index e9384911a0..6e58f0fd64 100644
> --- a/package/bash/bash.mk
> +++ b/package/bash/bash.mk
> @@ -39,14 +39,10 @@ BASH_CONF_ENV += bash_cv_getenv_redef=yes
> endif
> endif
>
> -# Add /bin/bash to /etc/shells otherwise some login tools like dropbear
> -# can reject the user connexion. See man shells.
> define BASH_INSTALL_TARGET_CMDS
> $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
> DESTDIR=$(TARGET_DIR) exec_prefix=/ install
> rm -f $(TARGET_DIR)/bin/bashbug
> - grep -qsE '^/bin/bash' $(TARGET_DIR)/etc/shells \
> - || echo "/bin/bash" >> $(TARGET_DIR)/etc/shells
> endef
>
> $(eval $(autotools-package))
>
More information about the buildroot
mailing list