post_install() { [ -f var/log/lastlog ] || : >var/log/lastlog [ -f var/log/wtmp ] || : >var/log/wtmp [ -f var/log/btmp ] || { : >var/log/btmp && chmod 600 var/log/btmp; } # workaround for bug #7194 # readded due to bug #9465 # please do not remove! chmod 1777 var/spool/mail tmp var/tmp } # args: <group> [options] _addgroup() { if ! getent group "$1" >/dev/null; then groupadd "$@" >/dev/null fi } # args: <group> [options] _adduser() { if ! getent passwd "$1" >/dev/null; then useradd "$@" >/dev/null fi } post_upgrade() { post_install _addgroup optical -g 93 _addgroup audio -g 92 _addgroup video -g 91 _addgroup floppy -g 94 _addgroup storage -g 95 _addgroup log -g 19 _addgroup utmp -g 20 _addgroup power -g 98 _addgroup network -g 90 _addgroup games -g 50 _addgroup uucp -g 14 _addgroup http -g 33 _adduser http -u 33 -d /srv/http -g http -s /bin/false _addgroup scanner -g 96 _addgroup rfkill -g 24 _addgroup lock -g 54 # sync gshadow to group (fixes FS#19869 if ! grep -q '^lock:' etc/gshadow; then grpconv >/dev/null fi if ! grep -q '^include /etc/ld.so.conf.d/\*.conf$' etc/ld.so.conf; then echo 'include /etc/ld.so.conf.d/*.conf' >> etc/ld.so.conf fi # set "Last password change" > 0; otherwise su $user wont work for user in bin daemon mail ftp http nobody; do if LANG=C chage -l ${user} | grep -q 'password must be changed'; then chage -d 14871 ${user} fi done }