I have uploaded preseed for T/X/A. It is now waiting on the SRU verification team approval for the new packages to start building in $RELEASE-proposed.
** Description changed: + [Special notes] + + Rebuilding debian-installer will be necessary in order to get a new + mini.iso (Minimal ISO image of Ubuntu) containing this particular fix. + + Despite the fact that a full ISO are no longer built for some of the + affected stable releases, one can use what is called a minimal ISO image + (mini.iso) of Ubuntu. This mini.iso uses a text-based installer, + resulting in a smaller image. The minimal ISO image will download + packages from online archives at installation time instead of providing + them on the install media itself. + [Impact] This is the same issue reported in https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202 However that is marked as 'Fix Released' and the issue is still occurring so it seems best to just open a new bug according to Eric's comment. The present hostname preseed regex looks like: if ! echo "$RET" | grep -q 'ubuntu'; then ... /bin/sed -i "s/$CURRENT_HOSTNAME/$NETCFG_HOSTNAME/" /etc/hosts ... fi There are still multiple problems with them according to Peter's comment (https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202/comments/64) and Mathieu's comment (https://bugs.launchpad.net/ubuntu/+source/preseed/+bug/1452202/comments/93). - The default hostname is 'ubuntu', and is the value you will get if nothing is preseeded -- we *do* need to skip it in this case, although the grep may need to be more precise. A name like 'ubuntuxenial' should match this grep. - The sed needs to be fixed to more appropriately catch for the exact string, rather than any substring -- ie. it should not match 'ipv6-allnodes' if the name received from DHCP was 'node'. It should only match and replace for 'node'. So the fix will try to: 1) Keep the if statement and add the -w option to grep to be more robust 2) Modify the sed cmd with word boundaries (\b) to be more robust as well. [Test Case] Install Ubuntu using a preseed[1] file[2] and add the following line in the preseed recipe : d-i netcfg/hostname string <HOSTNAME> Change the HOSTNAME to see if the hostname in /etc/hosts can be updated correctly. [1] - url=http://<WEB_SERVER>/<PRESEED_FILE> [2] - https://help.ubuntu.com/lts/installation-guide/example-preseed.txt [Regression Potential] * none expected, the actual changes are as follows: - if ! echo "$RET" | grep -q 'ubuntu'; then + if ! echo "$RET" | grep -qw 'ubuntu'; then ... - /bin/sed -i "s/$CURRENT_HOSTNAME/$NETCFG_HOSTNAME/" /etc/hosts + /bin/sed -i "s/\b${CURRENT_HOSTNAME}\b/${NETCFG_HOSTNAME}/g" /etc/hosts In other words, we simply make it more robust to select only pattern containing matches that form whole word... catching 'ubuntu' hostname as-is but not catching pattern where ubuntu is part of the user chosen hostname as follow : "sometextubuntu" "sometextubuntusometext" "ubuntusometext" ... [Original Description] ** Tags removed: sts-sponsor-slashd ** Tags added: sts-sponsor-slashd-done -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1745531 Title: [SRU] Reinforce hostname preseed regex To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/debian-installer/+bug/1745531/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs