Bug #9275

Can "Clone & Upgrade" to a small device which does not have Tails installed

Added by kytv 2015-04-23 14:19:04 . Updated 2015-04-24 03:15:27 .

Status:
Duplicate
Priority:
Normal
Assignee:
Category:
Installation
Target version:
Start date:
2015-04-23
Due date:
% Done:

0%

Feature Branch:
Type of work:
Code
Blueprint:

Starter:
0
Affected tool:
Installer
Deliverable for:

Description

While doing some testing on Feature #9129 I found that “Clone & Install” will not work with a 2GB device. This is expected because Bug #6538 fixed that. Indeed, when running with --verbose the message Skipping too small device is sent to stderr.

“Clone & Upgrade”, however, will proceed with formatting. This was reproduced with a freshly created 2GB disk image with a GPT partition table, and a vfat file system in the experimental branch.

As expected, the installation fails.

$ liveusb-creator-launcher --verbose
Bus::open: Can not get ibus-daemon's address. 
IBusInputContext::createInputContext: no connection to ibus-daemon 
[creator:1213] extlinux not found! Only FAT filesystems will be supported
[creator:666] Skipping device '/org/freedesktop/UDisks/devices/sr0' connected to 'scsi' interface
[creator:713] {'bootable': False,
 'device': '/dev/sda',
 'free': None,
 'fstype': '',
 'fsversion': '',
 'is_optical': False,
 'label': u'',
 'model': u'QEMU HARDDISK',
 'mount': None,
 'mounted_partitions': set(),
 'parent': None,
 'parent_size': None,
 'parent_udi': None,
 'size': 2147483648L,
 'udi': '/org/freedesktop/UDisks/devices/sda',
 'uuid': '',
 'vendor': u'QEMU'}
[creator:713] {'bootable': False,
 'device': '/dev/sda1',
 'free': 1603L,
 'fstype': 'vfat',
 'fsversion': 'FAT32',
 'is_optical': False,
 'label': u'Tails',
 'model': u'QEMU HARDDISK',
 'mount': u'/media/C368-5967',
 'mounted_partitions': set(),
 'parent': '/dev/sda',
 'parent_size': 2147483648L,
 'parent_udi': '/org/freedesktop/UDisks/devices/sda',
 'size': 2147353088,
 'udi': '/org/freedesktop/UDisks/devices/sda1',
 'uuid': 'C368-5967',
 'vendor': u'QEMU'}
[creator:666] Skipping device '/org/freedesktop/UDisks/devices/loop0' connected to '' interface
[creator:732] {'/dev/sda': set(['/org/freedesktop/UDisks/devices/sda1'])}
[gui:408] drives: {'/dev/sda1': {'size': 2147353088, 'is_optical': False, 'vendor': u'QEMU', 'fsversion': 'FAT32', 'parent': '/dev/sda', 'bootable': False, 'mount': u'/media/C368-5967', 'parent_size': 2147483648L, 'mounted_partitions': set([]), 'free': 1603L, 'label': u'Tails', 'fstype': 'vfat', 'parent_udi': '/org/freedesktop/UDisks/devices/sda', 'device': '/dev/sda1', 'model': u'QEMU HARDDISK', 'udi': '/org/freedesktop/UDisks/devices/sda1', 'uuid': 'C368-5967'}}
[gui:536] Partition is FAT32; Restricting overlay size to 4G
DEBUG:liveusb.creator:Partition is FAT32; Restricting overlay size to 4G
[creator:559] /dev/sda1 selected: {'size': 2147353088, 'is_optical': False, 'vendor': u'QEMU', 'fsversion': 'FAT32', 'parent': '/dev/sda', 'bootable': False, 'mount': u'/media/C368-5967', 'parent_size': 2147483648L, 'mounted_partitions': set([]), 'free': 1603L, 'label': u'Tails', 'fstype': 'vfat', 'parent_udi': '/org/freedesktop/UDisks/devices/sda', 'device': '/dev/sda1', 'model': u'QEMU HARDDISK', 'udi': '/org/freedesktop/UDisks/devices/sda1', 'uuid': 'C368-5967'}
DEBUG:liveusb.creator:/dev/sda1 selected: {'size': 2147353088, 'is_optical': False, 'vendor': u'QEMU', 'fsversion': 'FAT32', 'parent': '/dev/sda', 'bootable': False, 'mount': u'/media/C368-5967', 'parent_size': 2147483648L, 'mounted_partitions': set([]), 'free': 1603L, 'label': u'Tails', 'fstype': 'vfat', 'parent_udi': '/org/freedesktop/UDisks/devices/sda', 'device': '/dev/sda1', 'model': u'QEMU HARDDISK', 'udi': '/org/freedesktop/UDisks/devices/sda1', 'uuid': 'C368-5967'}
[creator:837] Entering unmount_device for '/dev/sda1'
DEBUG:liveusb.creator:Entering unmount_device for '/dev/sda1'
[creator:840] {'bootable': False,
 'device': '/dev/sda1',
 'free': 1603L,
 'fstype': 'vfat',
 'fsversion': 'FAT32',
 'is_optical': False,
 'label': u'Tails',
 'model': u'QEMU HARDDISK',
 'mount': u'/media/C368-5967',
 'mounted_partitions': set(),
 'parent': '/dev/sda',
 'parent_size': 2147483648L,
 'parent_udi': '/org/freedesktop/UDisks/devices/sda',
 'size': 2147353088,
 'udi': '/org/freedesktop/UDisks/devices/sda1',
 'uuid': 'C368-5967',
 'vendor': u'QEMU'}
DEBUG:liveusb.creator:{'bootable': False,
 'device': '/dev/sda1',
 'free': 1603L,
 'fstype': 'vfat',
 'fsversion': 'FAT32',
 'is_optical': False,
 'label': u'Tails',
 'model': u'QEMU HARDDISK',
 'mount': u'/media/C368-5967',
 'mounted_partitions': set(),
 'parent': '/dev/sda',
 'parent_size': 2147483648L,
 'parent_udi': '/org/freedesktop/UDisks/devices/sda',
 'size': 2147353088,
 'udi': '/org/freedesktop/UDisks/devices/sda1',
 'uuid': 'C368-5967',
 'vendor': u'QEMU'}
[creator:847] Unmounting mounted filesystems on '/dev/sda1'
INFO:liveusb.creator:Unmounting mounted filesystems on '/dev/sda1'
[creator:852] Unmounting '/org/freedesktop/UDisks/devices/sda1' on '/dev/sda1'
DEBUG:liveusb.creator:Unmounting '/org/freedesktop/UDisks/devices/sda1' on '/dev/sda1'
[creator:799] Calling /org/freedesktop/UDisks/devices/sda1.FilesystemMount(vfat, [], ...)
DEBUG:liveusb.creator:Calling /org/freedesktop/UDisks/devices/sda1.FilesystemMount(vfat, [], ...)
[creator:830] Mounted /dev/sda1 to /media/Tails 
DEBUG:liveusb.creator:Mounted /dev/sda1 to /media/Tails 
[gui:536] Partition is FAT32; Restricting overlay size to 4G
DEBUG:liveusb.creator:Partition is FAT32; Restricting overlay size to 4G
[creator:485] Removing existing Live OS
INFO:liveusb.creator:Removing existing Live OS
[creator:489] Considering /media/Tails/.disk
DEBUG:liveusb.creator:Considering /media/Tails/.disk
[creator:489] Considering /media/Tails/EFI
DEBUG:liveusb.creator:Considering /media/Tails/EFI
[creator:489] Considering /media/Tails/live
DEBUG:liveusb.creator:Considering /media/Tails/live
[creator:943] Verifying filesystem...
INFO:liveusb.creator:Verifying filesystem...
[creator:397] freebytes = 2143145984
DEBUG:liveusb.creator:freebytes = 2143145984
[creator:398] source size = 1277226568
DEBUG:liveusb.creator:source size = 1277226568
[creator:400] overlaysize = 0
DEBUG:liveusb.creator:overlaysize = 0
[creator:148] Extracting live image to the target device...
INFO:liveusb.creator:Extracting live image to the target device...
INFO:liveusb.creator:Extracting live image to the target device...
[creator:155] Wrote to device at 1 MB/sec
INFO:liveusb.creator:Wrote to device at 1 MB/sec
[creator:1161] Resetting Master Boot Record of /dev/sda
INFO:liveusb.creator:Resetting Master Boot Record of /dev/sda
[creator:329] cat /media/Tails/utils/mbr/mbr.bin > /dev/sda
DEBUG:liveusb.creator:cat /media/Tails/utils/mbr/mbr.bin > /dev/sda
[creator:892] Updating properties of system partition /dev/sda1
INFO:liveusb.creator:Updating properties of system partition /dev/sda1
[gui:270] org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/liveusb/gui.py", line 244, in run
    self.live.update_system_partition_properties()
  File "/usr/lib/python2.7/dist-packages/liveusb/creator.py", line 901, in update_system_partition_properties
    system_partition.PartitionModify(partition_type, label, flags)
  File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 70, in __call__
    return self._proxy_method(*args, **keywords)
  File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib/python2.7/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
ERROR:liveusb.creator:org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/liveusb/gui.py", line 244, in run
    self.live.update_system_partition_properties()
  File "/usr/lib/python2.7/dist-packages/liveusb/creator.py", line 901, in update_system_partition_properties
    system_partition.PartitionModify(partition_type, label, flags)
  File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 70, in __call__
    return self._proxy_method(*args, **keywords)
  File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib/python2.7/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Subtasks


Related issues

Is duplicate of Tails - Feature #5623: Tails Installer should refuse upgrading a device that hasn't Tails installed Resolved

History

#1 Updated by kytv 2015-04-23 14:21:11

Note, this was only printed once. It is printed twice, above, due to a copy & paste error on my part.

INFO:liveusb.creator:Extracting live image to the target device...
INFO:liveusb.creator:Extracting live image to the target device...

#2 Updated by intrigeri 2015-04-23 15:17:07

Kill Your TV: isn’t this essentially a duplicate of Feature #5623? Granted, Feature #5623 is about “Upgrade from ISO”, while you’re reporting something similar for “Clone & Upgrade”. My understanding is that, at least UX-wise, it’s the very same problem: Tails Installer should refuse “upgrading” a stick that hasn’t Tails installed, right?

If we agree on that, I can merge both tickets, clarify their title + description + goals, and ask kurono if he wants to give it a try.

> * Target version: Tails_1.5

I’m curious why you think that this problem is urgent. Note that Feature #5623 has been known since more than 2 years, and I guess that this one has been in Tails Installer forever as well.

#3 Updated by kytv 2015-04-23 16:24:03

  • Target version deleted (Tails_1.5)

Sure, they can be merged, and no this is not an urgent problem either.

IMHO this both Feature #5623 & Bug #6538 (Bug #6538 because it’ll merrily try to install to a device which is smaller than 4GB, and Feature #5623 since it doesn’t check whether Tails is on the device before continuing).

Of course Feature #5623 could be updated to reflect both of these cases. Whatever is decided is perfectly fine with me, I just wanted to document this in case it wasn’t yet known.

#4 Updated by intrigeri 2015-04-24 03:15:27

  • Status changed from New to Duplicate

Updated Feature #5623 to reflect the general problem at hand.

#5 Updated by BitingBird 2015-04-24 04:48:08

  • is duplicate of Feature #5623: Tails Installer should refuse upgrading a device that hasn't Tails installed added