diff options
author | Frederick Grose <fgrose@sugarlabs.org> | 2013-01-26 04:40:44 (GMT) |
---|---|---|
committer | Frederick Grose <fgrose@sugarlabs.org> | 2013-01-26 04:40:44 (GMT) |
commit | 529fa75cfc837c8119b273eddded12e4cde4b3a7 (patch) | |
tree | 25f139a725d8b0ad2491c41bbf882f76f9b2e3e4 | |
parent | 51a6c8e96699ca7ab9d006a22eb5323a6a76f120 (diff) |
For temporary mount points use /run/media (a tmpfs) instead of /media as
/media is no longer a tmpfs in Fedora 18.
Delete /etc/mtab before symlinking it to /proc/self/mounts.
Simplify writing to /proc/sys/vm/drop_caches.
If editing a booted LiveOS with a home.img, create a flag file to
force a home fsck.
-rwxr-xr-x | editliveos/editliveos.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/editliveos/editliveos.py b/editliveos/editliveos.py index 8edcb35..5746d47 100755 --- a/editliveos/editliveos.py +++ b/editliveos/editliveos.py @@ -250,7 +250,7 @@ class LiveImageEditor(LiveImageCreator): makedirs(self._ImageCreator_instroot) makedirs(self._LoopImageCreator__imagedir) makedirs(self._ImageCreator_outdir) - self.mntdir = tempfile.mkdtemp(dir='/media') + self.mntdir = tempfile.mkdtemp(dir='/run/media') ops = None if self.src_type == 'live': @@ -868,9 +868,9 @@ class LiveImageEditor(LiveImageCreator): self._ImageCreator__create_selinuxfs(force=True) shutil.copy2('/etc/resolv.conf', os.path.join(self._instroot, 'etc', 'resolv.conf')) - if not os.path.exists('/etc/mtab'): - os.symlink('/proc/self/mounts', os.path.join(self._instroot, - 'etc', 'mtab')) + mtab = os.path.join(self._instroot, 'etc', 'mtab') + os.remove(mtab) + os.symlink('/proc/self/mounts', mtab) def _brand(self, isodir): @@ -1033,7 +1033,6 @@ class LiveImageEditor(LiveImageCreator): ('etc', 'X11', 'xorg.conf.d'), ('mnt',), ('root',), - ('tmp',), ('var', 'lib', 'AccountsService', 'users'), ('var', 'lib', 'dhclient'), ('var', 'lib', 'gdm'), @@ -1357,8 +1356,9 @@ class LiveImageEditor(LiveImageCreator): tbl = get_dm_table(node) logging.info('retargeting %s to %s' % ('live-rw', tbl)) call(['sync']) - with open('/proc/sys/vm/drop_caches', 'w') as f: - f.write('3') + f = open('/proc/sys/vm/drop_caches', 'w') + f.write('3') + f.close() call(self.dmsetup_cmd + ['suspend', 'live-rw']) call(self.dmsetup_cmd + ['suspend', node]) call(self.dmsetup_cmd + ['reload', 'live-rw', '--table', tbl]) @@ -1392,6 +1392,11 @@ class LiveImageEditor(LiveImageCreator): print 'Restoring secluded files to the refresh...' restore_from_tar(self.liveosmnt.mountdir) [os.remove(f) for f in self.seclude_tar] + if self.src_type == 'live' and os.path.exists(self.home_img): + # Tag for forcing a home fsck. + fd = open(os.path.join(self.liveosmnt.mountdir, + 'forcehomefsck'), 'w') + fd.close() if hasattr(self, 'newhome_img'): self.newhomemnt.cleanup() |