Giter VIP home page Giter VIP logo

drobo-utils's People

Contributors

bit avatar bramus avatar coldiron avatar gregbaker avatar petersilva avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

drobo-utils's Issues

diagnostics dump is busted.

fractal% sudo ./drobom diag
Dumping Diagnostics...
Traceback (most recent call last):
File "./drobom", line 381, in
f = d.dumpDiagnostics()
File "/home/peter/src/drobo-utils/Drobo.py", line 694, in dumpDiagnostics
df.write(d)
TypeError: write() argument must be str, not bytes
fractal%

Fonts too Small

from @oblongau
the computer this is running on has a high resolution screen (3840 x 2160) so the GUI is quite small and the text too small to be easily readable. The window can be resized but the text size does not change.
How would that be fixed? Any pointers as to where to look would be appreciated. (Should this question be given its own issue?)
Thanks.

port to python 3 (commandline only)

After I upgraded to ubuntu 20.10 and realised I can't just apt-get install drobo-utils anymore.
In the readme you list that the tool is abandoned because it uses an outdated library (qt4) and that it still uses python2. Thanks a lot for supporting this tool over the years, very much appreciated ๐Ÿค— .

I was wondering how much effort it might be to port the command line part of drobo-utils to python3 (I may be able to do it).

It looks like all the code needed for command line usage is in Drobo.py, DroboIOctl.py and drobom ๐Ÿค”.
DroboIOctl.py is using ctypes (which I've never used before, so scares me a little bit).

Does the command line part have any dependencies besides python3?
Where do you see other potential porting problems?

Any chance of adding support for Drobo 8D?

I spoke to Drobo tech support and specifically asked if the Drobo 8D which is built only to work with MacOS could work with linux if it was reformatted in ext3. I was told, yes, it would work under linux in that case but would not be supported under the warranty.

I said fine and bought myself one, then ordered 3 18TB Enterprise drives and a 512GB SSD for cache support to fill it and hooked it up to my linux box.

...and big surprise, I got nothing!

Linux detects it as three thunderbolt bridges on the pci bus and a SCSI storage controller according to the lspci command:

XX:XX.X PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
XX:XX.X PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
XX:XX.X PCI bridge: Intel Corporation JHL6540 Thunderbolt 3 Bridge (C step) [Alpine Ridge 4C 2016] (rev 02)
XX:XX.X SCSI storage controller: Device 4452:3844 (rev 08)

I have installed Docker OS-X and with some trial and error, managed to pass the TB controller and scsi storage controller over to the virtualized MacOS and from there I installed the Drobo dashboard and was able to see the 8D, which I then set up with dual disk redundancy and formatted as a 128TB HFS+ Volume.

Back to linux after that and still nothing.

I have plugged in another Thunderbolt drive to the pass-through port on the back of the 8D, that device showed up instantly and auto mounted in linux.

Back to the virtualized MacOS where I managed to delete the Mac GUID partitions using e2fsprogs and create a 4TB ext3 partition on the drobo. I came back to linux and still, zilch! ...nothing but the list of devices including the SCSI storage controller as before.

So what I am trying to figure out is what is the special sauce/alchemy that Drobo has done with this device that makes it visible only to MacOS and how can we replicate it under linux?

@petersilva any interest in investigating this one?

Running Debian Bullseye with kernel 5.16.0-rc8-amd64
Intel Core i71195G7 with 16GB RAM and an 8TB local NVME SSD

Drobo 8D
Firmware: 4.2.3 [12.14.116068]
Active Interface: Thunderbolt

Dashboard version: 3.6.1 [115880](on MacOS Monterey - Docker OS-X )

Error attempting to see status of Drobo S

First, thanks to Peter Silva for pointing me to github after I found the old drobo-utils on Sourceforge.

So, using: Drobo S, connected by USB cable. Linux Mint 20.1 (based on Ubuntu 20.04). The Drobo mounts fine and files can be transferred to it. But running "sudo ./drobom view" or "sudo ./drobom status" is as follows;

$ sudo ./drobom view
Traceback (most recent call last):
File "./drobom", line 344, in
l = Drobo.DiscoverLUNs(debug, vendor_string)
File "/home/janette/Downloads/drobo-utils/Drobo.py", line 1462, in DiscoverLUNs
d = Drobo(potential, DEBUG)
File "/home/janette/Downloads/drobo-utils/Drobo.py", line 304, in init
cfg = self.GetSubPageConfig()
File "/home/janette/Downloads/drobo-utils/Drobo.py", line 1097, in GetSubPageConfig
result = self.__getsubpage(0x01, 'BBBQ')
File "/home/janette/Downloads/drobo-utils/Drobo.py", line 462, in __getsubpage
cmdout = self.fd.get_sub_page(paklen, modepageblock, 0, DEBUG)
File "/home/janette/Downloads/drobo-utils/DroboIOctl.py", line 201, in get_sub_page
raise IOError("io_hdr status is: %x" % io_hdr.status)
OSError: io_hdr status is: 2

Running "sudo ./drobom -v 128 $* view" as a test brings up the demonstration GUI.

Any ideas?

Thanks.

Doesn't recognize Drobo S

On Raspbian, the drobom command does not recognize the Drobo S.

$ sudo drobom list
No Drobos discovered

I believe it may be something to do with the vendor string:

$ sudo drobom -v 16 status
examining: /dev/sda
id: (0, 0, 0, 0, 'USB 3.0 ')
rejected: vendor is USB 3.0 (not from DRI)
examining: /dev/sdb
id: (0, 0, 0, 1, 'USB 3.0 ')
rejected: vendor is USB 3.0 (not from DRI)
returning list: []
No Drobos discovered

fwupgrade broken.

fractal% sudo ./drobom fwupgrade
looking for firmware for: armmarvell 1.254.30359 hw version: b'1.00'
This Drobo should be running: raptor/firmware/armmarvell/v1.4.2.tdz
looking for: /root/.drobo-utils/armmarvell_1.00_v1.4.2.tdz
local copy already present: /root/.drobo-utils/armmarvell_1.00_v1.4.2.tdz
Reading Firmware from = /root/.drobo-utils/armmarvell_1.00_v1.4.2.tdz
validateFirmware start...
Traceback (most recent call last):
File "./drobom", line 427, in
if d.updateFirmwareRepository():
File "/home/peter/src/drobo-utils/Drobo.py", line 1004, in updateFirmwareRepository
good = self.PickFirmware(localfw)
File "/home/peter/src/drobo-utils/Drobo.py", line 749, in PickFirmware
good = self.validateFirmware()
File "/home/peter/src/drobo-utils/Drobo.py", line 915, in validateFirmware
self.fwhdr = struct.unpack('>ll4sl16slllll256sl', self.fwdata[0:312])
AttributeError: 'Drobo' object has no attribute 'fwdata'
fractal%

TypeError: startswith first arg must be bytes or a tuple of bytes, not str

Running latest master, I'm getting this error message. I tried it running with python 2.7 and python 3.9. Getting the exception with both.

sudo ./drobom status
Traceback (most recent call last):
  File "/home/sunbox/drobo-utils-code/./drobom", line 316, in <module>
    l = Drobo.DiscoverLUNs(debug,vendor_string)
  File "/home/sunbox/drobo-utils-code/Drobo.py", line 1427, in DiscoverLUNs
    for potential in DroboIOctl.drobolunlist(DEBUG,vendorstring):
  File "/home/sunbox/drobo-utils-code/DroboIOctl.py", line 322, in drobolunlist
    if ( id[4].lower().startswith("trusted") or \
TypeError: startswith first arg must be bytes or a tuple of bytes, not str

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.