![]() ![]() com/2017/ 09/creating- ubuntu- pen-drives- with-persistenc e/ Creating a non-fat32 persistent partition is, therefore, the prime goal for most regular users of such pen-drives, which is what we are going to focus upon in the remainder of this article. While there are tools, like Universal USB Installer, available for creating Ubuntu pen-drives with persistence, the 4GB cap they place on the persistent files under a fat32 file system would severely restrict a regular computer user. ![]() Note that this bug is indeed very problematic for Windows users, and will become even more so as the current Windows recommended tool for Ubuntu installtion media (Rufus) is about to introduce persistent partition. it may do ro -> rw but not rw -> ro) and optionally return the existing mountpoint of an already mounted devices, so that find_cow_device() can determine if it should umount the device or not. In other words, the bug is: find_cow_device() can and DOES unmount legitimate devices it has no business of unmounting.Įrgo, find_cow_device() must be fixed, possibly by keeping history of already mounted devices in try_mount() and using a new restore_mount() call instead of the unconditional umount currently used.Īlternatively, try_mount device should not degrade write access (i.e. Because /cdrom has become unavailable, all kind of bad things happen, starting with the casper script complaining. instead of being remounted to the mountpoint it was using (/cdrom) when we entered the function call.ħ. dev/sdb1 is now **UNCONDITIONALLY** unmounted. We now look for a 'casper-rw' on the newly mounted /dev/sdb1, and don't find it, since it doesn't exist.Ħ. To look for that file, the first thing that the script issues is 'try_mount' which succeeds at remounting /dev/sdb1 "rw".ĥ. Because we are processing the vfat partition, we don't find label 'casper-rw', so we proceed to look for a 'casper-rw' file.Ĥ. As we are processing all (non floppy) block devices, we start processing /dev/sdb*, and therefore start to look at /dev/sdb1.ģ. dev/sdb1 is *ALREADY mounted (as /cdrom) when we enter find_cow_device(), as it was mounted during the init process.Ģ. It actually doesn't matter if you actually have a persistent partition or not, as it will fail even with a single vfat partition (which I tested with GPT/FAT32 single partition drive and ubuntu- 19.04-desktop- amd64.iso after adding 'persistent' to the "Try Ubuntu without installing" in grub.cfg:ġ. The following is an alternate description of what happens, so that it may helps dev assess the seriousness of the issue:įor this example, I will assume that you have extracted the installation media on a vfat image (say /dev/sdb1). This is a pretty serious and rather obvious bug, once you understand what's going on.Īs pointed out by whom I will mostly be paraphrasing here, the gist of it is: /usr/share/ initramfs- tools/scripts/ casper- helpers may unmount a previously mounted device, that it should *NOT* leave unmounted on exit. ![]() net/ubuntu/ +source/ casper/ +bug/1489855 (see last post by Akeo (author of Rufus) Read this error "Change to mount sequence order breaks persistence on casper-rw partitions" Again and as described above, the pen drive is no longer bootable. I also tried to shrink SBROOT using gparted to create a new partition with the label "casper-rw". I don't have persistence problem if systemback produces only one partition. I can see the word "persistent" during the GRUB IPL ( Pressing 'E' exposes the boot parameters) but the live pen defaults to read only. I then added 'persistent' to both syslinux.cfg and grub.cfg that's found in the SBLIVE partition using an editor. I created a casper-rw file, formatted it with mkfs.ext4 and then put it in SBROOT partition. I also have 'persistence' problem when there are 2 partitions SBROOT and SBLIVE. I tried re-partitioning the above using gparted and gparted somehow messes up something that makes the USB drive not-bootable anymore. SBLIVE is usually usually very small (104MB) and SBROOT takes the rest of the free space in the drive. I do notice that Systemback produces two partitions if squashfs image is greater than FAT32's 4GB file size. I also have another problem that's related to repartitioning: ![]() Is there a way to tell systemback OR systemback-cli to partition the way it is explained above and then write the image to the pen drive? The second partition will then be dedicated for persistent storage. I like the first partition to contain all what systemback needs to run. Let say for example that given a 64GB USB pen drive, I wish to create 2 partitions. Thanks for responding and I'm sorry if I were not clear. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |