[EMAIL PROTECTED] wrote:
Andrew, I will be glad to contribute questions to the FAQ-O-MATIC ;-)
Sebastien thank you for your help also!
I've been trying out that debconf-communicate for a few days now but can't seem to get it to work
(even though passwd && base-passwd are installed, the items aren't available in
/var/cache/debconf/*.dat)... Any ideas why this is happening? Is there a way to get debconf to
'rebuild' these caches correctly or should we be using debconf-copydb? Anyone else having this
problem?
i've got the same problem ... :)
Seems like the package passwd was not configured when running the script
Modify DEFAULT/S10 like this
#! /bin/sh
if ifclass MD5; then
#Force configuration of the package
$ROOTCMD dpkg-reconfigure -fnoninteractive passwd
echo "set passwd/md5 true" | $ROOTCMD debconf-communicate
echo "set passwd/shadow true" | $ROOTCMD debconf-communicate
$ROOTCMD dpkg-reconfigure -fnoninteractive passwd
fi
exit 0
shell.log:
===== shell: DEFAULT/S10 =====
10 passwd/md5 doesn't exist
10 passwd/shadow doesn't exist
DEFAULT/S10: OK.
(Freshly installed system ssh session before rebooting):
Testbox:~# chroot /tmp/target
root@Testbox:/ [1]#
root@Testbox:/ [1]# dpkg --get-selections |grep passwd
base-passwd install
passwd install
root@Testbox:/ [2]#
root@Testbox:/ [2]# dpkg --get-selections |grep debconf
debconf install
debconf-utils install
root@Testbox:/ [3]#
root@Testbox:/ [3]# debconf-show passwd
root@Testbox:/ [4]# debconf-show debconf
debconf/frontend: Dialog
debconf/showold: false
debconf/priority: medium
root@Testbox:/ [5]# cd /var/cache/debconf/
root@Testbox:/var/cache/debconf [6]# ls -la
total 696
-rw------- 1 root root 35671 Feb 6 12:44 config.dat
-rw------- 1 root root 35671 Feb 6 12:43 config.dat-old
-rw-r--r-- 1 root root 308035 Feb 6 12:44 templates.dat
-rw-r--r-- 1 root root 308035 Feb 6 12:43 templates.dat-old
root@Testbox:/var/cache/debconf [7]#
As you can see, some packages are registered inside the debconf cache whilst others aren't,
even though they _are_ installed and do have debconf support. I cant discern exactly what is
causing this, perhaps nfsroot/fcopied packages/files aren't registered, or maybe debconf isn't
being installed when it should? mysql-server for instance is installed when defined in one of my
package_config classes, and the items are available, so is ssh, but still passwd isn't.
I've done a grep for 'passwd' in /usr/lib/fai/[^n]* and /usr/share/fai and /usr/local/share/fai and I
can't seem to find where 'passwd' is being defined as to be installed onto the new system or
nfsroot. I imagine this has to do with either the debootstrap mechanism or it is a depedency
somewhere. Maybe packages that are defined this way won't be able to communicate with
debconf?
Regards,
Senaque
---
E-MAIL: [EMAIL PROTECTED]
IRC: #FAI @ irc.freenode.net
WWW: http://www.sf.net/users/senaque/