<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'DejaVu Sans Mono'; font-size:9pt; font-weight:400; font-style:normal;">On Friday 06 March 2009 21:08:24 Daniel Baumann wrote:<br>
&gt; Package: initscripts<br>
&gt; Severity: wishlist<br>
&gt; Tags: patch<br>
&gt; Owner: debian-live@lists.debian.org<br>
&gt; <br>
&gt; Hi,<br>
&gt; <br>
&gt; /etc/init.d/umountfs unmounts both temporary and local filesystems.<br>
&gt; however, in case of a live system, trying to unmount /cow, /live* or<br>
&gt; /filesystem* will not work and therefore results in an (end-user<br>
&gt; confusing) warning, that the respective fs could not have been unmounted<br>
&gt; because it's busy.<br>
&gt; <br>
&gt; In the latest version of live-initramfs we do workaround this at runtime<br>
&gt; by patching the script. However, it would be nice if this could be<br>
&gt; improved and integrated into the umountfs script itself.<br>
&gt; <br>
&gt; Note that the namespace (/live*, /filesystem* etc.) is stable, it is<br>
&gt; already part of some excluding/including mechanisms in gnome-vfs and<br>
&gt; live-installer. so you don't have to fear that even if you hardcode it,<br>
&gt; that you don't need to change it soon again. However, if you would<br>
&gt; prefere something with an exclude mechanism by sourcing from another<br>
&gt; file that would be only there on live-systems, that's fine too. Please<br>
&gt; let me know what you'd prefere.<br>
&gt; <br>
&gt; Anyway, here is what we do currently:<br>
&gt; <br>
&gt; sed -i  -e 's#pioodl $TMPFS_MTPTS)#pioodl $TMPFS_MTPTS | sed -e "s@\\<br>
&gt; @\\n@" | grep -v ^/live)#' \<br>
&gt;         -e 's#pioodl $REG_MTPTS)#pioodl $REG_MTPTS | sed -e "s@\\ @\\n@"<br>
&gt; | grep -v ^/live | grep -v ^/filesystem) /#' \<br>
&gt; /etc/init.d/umountfs<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>How about something like:<br>
---<br>
--- debian/initscripts/etc/init.d/umountfs        (revision 1331)<br>
+++ debian/initscripts/etc/init.d/umountfs        (working copy)<br>
@@ -79,6 +79,10 @@<br>
                                 continue<br>
                         fi<br>
                         ;<br>
+                  /filesystem*|/live*)<br>
+                        # used by live-initramfs<br>
+                        continue<br>
+                        ;<br>
                 esac<br>
                 case "$FSTYPE" in <br>
                   proc|procfs|linprocfs|devfs|sysfs|usbfs|usbdevfs|devpts)<br>
---<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>&gt; <br>
&gt; in the second replace, we also add '/' so that $REG_MTPTS is never<br>
&gt; empty. it would be nice if you can make the whole unmounting of local<br>
&gt; filesystems conditional, so that the script doesn't try to do anything<br>
&gt; when there's nothing to unmount.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>I do not know why adding / to REG_MTPTS helps. What is the rationale for it?<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Thanks, Kel.</p></body></html>