Activity log for bug #2049529

Date Who What changed Old value New value Message
2024-01-16 17:35:49 Skia bug added bug
2024-01-17 10:11:51 Skia description Hi, I was digging into fixing `autopkgtest`'s `unshare` testsuite, and the rabbit hole led me here. Here is a very quick reproducer, first: Start a fresh Ubuntu VM. Here is a quick path, but other ways should do fine: ``` $ cd /tmp $ autopkgtest-buildvm-ubuntu-cloud -a amd64 -r noble $ kvm -m 1G -snapshot -hda autopkgtest-noble-amd64.img ``` Now in the VM: ``` $ sudo apt install -y mmdebstrap $ mmdebstrap noble /tmp/rootfs [...] $ sudo useradd --create-home --root /tmp/rootfs user1 can't open /dev/null: No such file or directory ``` The line `can't open /dev/null: No such file or directory` is printed on `stderr`, and that's unexpected by the part of the code I was debugging in the first place. Digging a bit led me to that line that does the printing: https://git.launchpad.net/ubuntu/+source/shadow/tree/debian/patches/1015_add_zsys_support.patch#n69 There seem to me that there are multiple issues with that patch: * Why try to call `zsysctl` in every case without first checking that it would be relevant: ZFS is not even installed on the VM we just created, less alone it has any ZFS volume/pool/whatever. * Obviously, when creating a user in a `chroot`, `/dev/null` won't exist unless mapped, and `useradd` is perfectly aware of that, because it even does the `chroot` call itself! But why even try to mess with ZFS in the `chroot` case in the first place? From what history @brian-murray told me, this patch was part of some ZFS experimentation in the past. Maybe that experimentation is now finished, and that patch could be dropped? At the very least it needs improvements, imho. Hi, I was digging into fixing `autopkgtest`'s `unshare` testsuite, and the rabbit hole led me here. Here is a very quick reproducer, first: Start a fresh Ubuntu VM. Here is a quick path, but other ways should do fine: ``` $ cd /tmp $ autopkgtest-buildvm-ubuntu-cloud -a amd64 -r noble $ kvm -m 1G -snapshot -hda autopkgtest-noble-amd64.img ``` Now in the VM: ``` $ sudo apt install -y mmdebstrap $ mmdebstrap noble /tmp/rootfs [...] $ sudo useradd --create-home --root /tmp/rootfs user1 can't open /dev/null: No such file or directory ``` The line `can't open /dev/null: No such file or directory` is printed on `stderr`, and that's unexpected by the part of the code I was debugging in the first place. Digging a bit led me to that line that does the printing: https://git.launchpad.net/ubuntu/+source/shadow/tree/debian/patches/1015_add_zsys_support.patch#n69 There seem to me that there are multiple issues with that patch: * Why try to call `zsysctl` in every case without first checking that it would be relevant: ZFS is not even installed on the VM we just created, less alone it has any ZFS volume/pool/whatever. * Obviously, when creating a user in a `chroot`, `/dev/null` won't exist unless mapped, and `useradd` is perfectly aware of that, because it even does the `chroot` call itself! But why even try to mess with ZFS in the `chroot` case in the first place? From what history @brian-murray told me, this patch was part of some ZFS experimentation in the past. Maybe that experimentation is now finished, and that patch could be dropped? At the very least it needs improvements, imho. EDIT: Just for context on why this issue appears only now: I was trying to fix the `unshare` testsuite in `autopkgtest`, which is pretty recent (2022) (https://salsa.debian.org/ci-team/autopkgtest/-/commit/d1671f94f68bce9a0c6793310a9f8b79b4e919a5) even upstream on Debian, and has never worked yet on Ubuntu.
2024-01-18 16:21:12 Julian Andres Klode tags rls-nn-incoming foundations-todo
2024-01-18 16:21:20 Julian Andres Klode nominated for series Ubuntu Noble
2024-01-18 16:21:20 Julian Andres Klode bug task added shadow (Ubuntu Noble)
2024-01-18 16:51:42 Brian Murray shadow (Ubuntu Noble): status New Confirmed
2024-01-18 16:51:46 Brian Murray shadow (Ubuntu Noble): importance Undecided High
2024-04-24 13:32:49 Paride Legovini bug task added adduser (Ubuntu)
2024-04-24 13:35:08 Paride Legovini summary Extra ZFS-related log line with `useradd -m -R /path` Ubuntu delta causes `can't open /dev/null: No such file or directory` errors in minimal environments (chroot/unshare)
2024-04-24 13:37:27 Paride Legovini adduser (Ubuntu Noble): status New Confirmed