I started to look at this problem from scratch since it's been a while
since I have reported it....

It seems to go into emergency mode due to a failed attempt to start unit
"tmp.mount" :

# /var/log/boot.log 
65 emergency.target: Enqueued job emergency.target/start as 159 
66 tmp.mount: Unit entered failed state. 

Adding "systemd.mask=tmp.mount" in /tftpboot/pxelinux.cfg/default as a
parameter did the trick to workaround the behaviour :

APPEND initrd=bionic-desktop-amd64/initrd root=/dev/nfs boot=casper
netboot=nfs nfsroot=192.168.100.2:/bionic-desktop-amd64 splash
systemd.mask=tmp.mount systemd.debug-shell=1 systemd.log_level=debug
systemd.log_target=console console=ttyS0,38400 console=tty1 --


Note: 
- I did the test by curiosity w/ Artful/17.10 (systemd-234) and it works, so 
it's possibly something between v234 and v237 which introduced the behaviour 
for tmp.mount, a change in mount, ...
- Problem is also reproducible in Cosmic, and journalctl was a little bit more 
verbose in Cosmic than it was for Bionic in my testing : 

$ journalctl -a -u tmp.mount 
-- Logs begin at Wed 2018-10-10 20:15:36 UTC, end at Wed 2018-10-10 20:15:43 
UTC. -- 
Oct 10 20:15:36 ubuntu systemd[1]: tmp.mount: Directory /tmp to mount over is 
not empty, mounting anyway. 
Oct 10 20:15:36 ubuntu systemd[1]: Mounting /tmp... 
Oct 10 20:15:36 ubuntu systemd[1]: tmp.mount: Mount process finished, but there 
is no mount. 
Oct 10 20:15:36 ubuntu systemd[1]: tmp.mount: Failed with result 'protocol'. 
Oct 10 20:15:36 ubuntu systemd[1]: Failed to mount /tmp. 


# src/core/mount.c 
802 static void mount_enter_dead(Mount *m, MountResult f) { 
803 assert(m); 
804 
805 if (m->result == MOUNT_SUCCESS) 
806 m->result = f; 
807 
808 if (m->result != MOUNT_SUCCESS) 
809 log_unit_warning(UNIT(m), "Failed with result '%s'.", 
mount_result_to_string(m->result)); 
...
1282 switch (m->state) { 
1283 
1284 case MOUNT_MOUNTING: 
1285 /* Our mount point has not appeared in mountinfo. Something went wrong. */ 
1286 
1287 if (f == MOUNT_SUCCESS) { 
1288 /* Either /bin/mount has an unexpected definition of success, 
1289 * or someone raced us and we lost. */ 
1290 log_unit_warning(UNIT(m), "Mount process finished, but there is no 
mount."); 
1291 f = MOUNT_FAILURE_PROTOCOL; 
1292 } 

and m->result is indeed equalt to "MOUNT_FAILURE_PROTOCOL" ^

1955 [MOUNT_FAILURE_PROTOCOL] = "protocol",

I'll try to instrument things and create a custom ISO for further
debugging/testing. This is where am at the moment.

- Eric

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1755863

Title:
  netbooting the bionic live CD over NFS goes straight to maintenance
  mode :

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/casper/+bug/1755863/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to