File “/opt/rockstor/src/rockstor/rest_framework_custom/generic_view.py”, line 41, in _handle_exception
yield
File “/opt/rockstor/src/rockstor/storageadmin/views/disk.py”, line 320, in post
return self._update_disk_state()
File “/opt/rockstor/eggs/Django-1.8.16-py2.7.egg/django/utils/decorators.py”, line 145, in inner
return func(*args, **kwargs)
File “/opt/rockstor/src/rockstor/storageadmin/views/disk.py”, line 265, in _update_disk_state
p.uuid = btrfs_uuid(dob.name)
File “/opt/rockstor/src/rockstor/fs/btrfs.py”, line 1000, in btrfs_uuid
[BTRFS, ‘filesystem’, ‘show’, ‘/dev/disk/by-id/%s’ % disk])
File “/opt/rockstor/src/rockstor/system/osi.py”, line 110, in run_command
raise CommandException(cmd, out, err, rc)
CommandException: Error running a command. cmd = /sbin/btrfs filesystem show /dev/disk/by-id/sda3. rc = 1. stdout = [’’]. stderr = [‘ERROR: not a valid btrfs filesystem: /dev/disk/by-id/sda3’, ‘’]
@Rupert_Chandler Welcome to the Rockstor community forum. Your reported error is down to Rockstor’s requiring serial numbers for each of it’s devices. If you ensure that your hyper visor makes this provision then all should be well. It is because we depend on by-id names and they are not generated by udev unless a unique serial is available for every attached disk. Such as is the case with real hardware. We do have an open issue to address this within our docs under the minimum system requirements section:
The technical explanation as to why we do this is also available in our wiki technical manual section intended for developers:
Subtitled “Rockstor’s Serial Obsession”.
Hope that helps and we do plan to improve the message in this scenario in the near future.