aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-10-25 17:22:46 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-10-25 17:22:46 +0000
commit29835cb287ae3b59eeaf6aee792f8938ded28313 (patch)
tree55e662d8951c9c3bceee0e03ec7be1bc5eab1546 /package/base-files
parent02bd4afb8c33c7ff04fed3f803ed3a2f9a26e8d7 (diff)
downloadupstream-29835cb287ae3b59eeaf6aee792f8938ded28313.tar.gz
upstream-29835cb287ae3b59eeaf6aee792f8938ded28313.tar.bz2
upstream-29835cb287ae3b59eeaf6aee792f8938ded28313.zip
base-files: add /etc/shadow to list of essential files to keep in sysupgrade (bug 18206)
Based on bug #18206 sysupgrade can lead to loss of password information in certain situations. Most likely all users who will upgrade from versions r43017-43040, will lose their current passwords. :-( https://dev.openwrt.org/ticket/18206 Currently /etc/shadow is defined as a conffile in base-files: https://dev.openwrt.org/browser/trunk/package/base-files/Makefile#L37 But it is not defined in the default list of essential files to keep in sysupgrade: https://dev.openwrt.org/browser/trunk/package/base-files/files/lib/upgrade/keep.d/base-files-essential If exporting conffiles info fails, /etc/shadow can get lost. Shadow passwords are now the default, so saying that preserving /etc/passwd is essential while /etc/shadow is not, makes no sense. The attached patch adds /etc/shadow to the list of essential files. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43061 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/files/lib/upgrade/keep.d/base-files-essential1
1 files changed, 1 insertions, 0 deletions
diff --git a/package/base-files/files/lib/upgrade/keep.d/base-files-essential b/package/base-files/files/lib/upgrade/keep.d/base-files-essential
index 2c611d29b4..978d4b58bc 100644
--- a/package/base-files/files/lib/upgrade/keep.d/base-files-essential
+++ b/package/base-files/files/lib/upgrade/keep.d/base-files-essential
@@ -4,6 +4,7 @@
/etc/group
/etc/passwd
/etc/profile
+/etc/shadow
/etc/shells
/etc/sysctl.conf
/etc/rc.local