Bug 30374

Summary: _verbose_break before chainloading installed system
Product: Z_Univention Corporate Client (UCC) Reporter: Janis Meybohm <meybohm>
Component: Image managementAssignee: Erik Damrose <damrose>
Status: CLOSED WORKSFORME QA Contact: Moritz Muehlenhoff <jmm>
Severity: normal    
Priority: P5 CC: gohmann, jmm
Version: unspecifiedKeywords: interim-2
Target Milestone: UCC 2.0   
Hardware: Other   
OS: Linux   
What kind of report is it?: --- What type of bug is this?: ---
Who will be affected by this bug?: --- How will those affected feel about the bug?: ---
User Pain: Enterprise Customer affected?:
School Customer affected?: ISV affected?:
Waiting Support: Flags outvoted (downgraded) after PO Review:
Ticket number: Bug group (optional): Cleanup
Max CVSS v3 score:

Description Janis Meybohm univentionstaff 2013-02-11 08:53:13 CET
There should be a _verbose_break before init chainloads into the installed system (because at this point all steps "should" be done):

Index: conffiles/usr/share/initramfs-tools/init                                                                                                                                        
===================================================================                                                                                                                    
--- conffiles/usr/share/initramfs-tools/init    (Revision 38960)                                                                                                                       
+++ conffiles/usr/share/initramfs-tools/init    (Arbeitskopie)                                                                                                                         
@@ -301,6 +301,11 @@                                                                                                                                                                                                                                                           
 unset resume                                                                                                                                                                                                                                                                  
 unset resume_offset                                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                                                               
+[ "$quiet" != "y" ] && log_begin_msg "Will now chain to real filesystem"                                                                                                                                                                                                      
+echo "exec run-init ${rootmnt} ${init} --verbose "$@" ${recovery:+--startup-event=recovery} <${rootmnt}/dev/console >${rootmnt}/dev/console 2>&1"                                                                                                                             
+[ "$quiet" != "y" ] && log_end_msg                                                                                                                                                                                                                                            
+_verbose_break                                                                                                                                                                                                                                                                
+                                                                                                                                                                                                                                                                              
 # Chain to real filesystem                                                                                                                                                                                                                                                    
 exec run-init ${rootmnt} ${init} "$@" <${rootmnt}/dev/console >${rootmnt}/dev/console                                                                                                                                                                                         
 panic "Could not execute run-init.
Comment 1 Erik Damrose univentionstaff 2014-04-23 15:41:36 CEST
I think we rather not patch initramfs-tools or bring our own init script, because we would have to check it for updates every time the base package gets updated.

The init script itself already has the desired functionality built-in: Adding break=init to an UCC clients start parameters spawns a shell at the end of the init script, thanks to the 'maybe_break init' line. One could also break at other points in the script.

This works for UCC 1 and 2. 

We could decide to document this in the UCC manual if that feature is demanded frequently.
Comment 2 Moritz Muehlenhoff univentionstaff 2014-04-24 09:44:07 CEST
(In reply to Erik Damrose from comment #1)
> I think we rather not patch initramfs-tools or bring our own init script,
> because we would have to check it for updates every time the base package
> gets updated.

Agreed. We patched initramfs-tools in UCC 1.0 and it causes a huge workload when synching mirrors.

> We could decide to document this in the UCC manual if that feature is
> demanded frequently.

I filed Bug 34627 for that.
Comment 3 Moritz Muehlenhoff univentionstaff 2014-06-12 09:19:35 CEST
UCC 2.0 has been released:
 http://docs.univention.de/release-notes-ucc-2.0.html

If this error occurs again, please use "Clone This Bug".