Re: Missing objects in targetcli

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/05/13 20:27, Nicholas A. Bellinger wrote:
On Thu, 2013-05-02 at 09:58 +0200, Jonas Israelsson wrote:
On 02/05/13 02:54, Nicholas A. Bellinger wrote:
Hi Jonas,

On Wed, 2013-05-01 at 20:37 +0200, Jonas Israelsson wrote:
Greetings,

first of all I am not sure if this is the right place to post user
questions about targetcli. If not, please point me in the right direction.

To the problem now. I'm on opensuse 12.3 64-bit, while all kernel
modules seem included I had (as stated by documentation) to download and
build targetcli myself. Here I believe something is or went wrong. While
targetcli starts without any errors or warnings the object-tree seem
incomplete. For instance, from examples in the documentation I see when
starting targetcli it says

Using ib_srpt fabric module.
Using qla2xxx fabric module.
Using iscsi fabric module.
Using loopback fabric module.

This never happens, nor are any of those nodes available to configure.
Furthermore I believe I read, when starting targetcli it should via
rtslib fire up the modules needed, that does not happen either.

  From what I can tell, OpenSuse incorrectly switched to the bogus
upstream version of rtslib on PYPI here: (CC'ing hare + saschpe)

https://build.opensuse.org/package/view_file?expand=1&file=python-rtslib.changes&package=python-rtslib&project=openSUSE%3AFactory

This version has since been removed from PYPI, and is/was not compatible
with the upstream targetcli either..

So, I'd recommend removing the default rtslib-2.1.fb27 package, and
installing rtslib.git + lio-utils.git from git.risingtidesystems.com
instead.

hare & saschpe, can you remove this version from the OpenSuse repo's,
and include the correct upstream, please..?
Hi Nicholas and thank you for looking into this.

Sorry I should have mentioned that I did install both rtslib and
configshell from git as well.  Tried now just-to-test and installed the
rts-library  from opensuse repositories and with that targetcli does not
start..

muraren:/home/isrjo/rtslib # zypper install python-rtslib
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW package is going to be installed:
    python-rtslib

1 new package to install.
Overall download size: 49.1 KiB. After the operation, additional 246.4
KiB will be used.
Continue? [y/n/?] (y): y
Retrieving package python-rtslib-2.1.fb27-1.1.noarch (1/1),  49.1 KiB
(246.4 KiB unpacked)
Retrieving: python-rtslib-2.1.fb27-1.1.noarch.rpm
............................................................................................[done]
(1/1) Installing: python-rtslib-2.1.fb27-1.1
.................................................................................................[done]

muraren:/home/isrjo/rtslib # targetcli
Traceback (most recent call last):
    File "/usr/bin/targetcli", line 24, in <module>
      from targetcli import UIRoot
    File "/usr/lib/python2.7/site-packages/targetcli/__init__.py", line
18, in <module>
      from ui_root import UIRoot
    File "/usr/lib/python2.7/site-packages/targetcli/ui_root.py", line
24, in <module>
      from ui_target import UIFabricModule
    File "/usr/lib/python2.7/site-packages/targetcli/ui_target.py", line
21, in <module>
      from ui_backstore import dedup_so_name
    File "/usr/lib/python2.7/site-packages/targetcli/ui_backstore.py",
line 22, in <module>
      from rtslib import FileIOBackstore, IBlockBackstore
ImportError: cannot import name FileIOBackstore


Yes, this is the breakage / incompatibility I was originally talking
about.

muraren:/home/isrjo/rtslib # zypper remove python-rtslib
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following package is going to be REMOVED:
    python-rtslib

1 package to remove.
After the operation, 246.4 KiB will be freed.
Continue? [y/n/?] (y): y
(1/1) Removing python-rtslib-2.1.fb27-1.1
....................................................................................................[done]



muraren:/home/isrjo/rtslib # ./setup.py install
running install
running build
running build_py
running install_lib
copying build/lib/rtslib/utils.py -> /usr/lib/python2.7/site-packages/rtslib
copying build/lib/rtslib/node.py -> /usr/lib/python2.7/site-packages/rtslib
copying build/lib/rtslib/tcm.py -> /usr/lib/python2.7/site-packages/rtslib
copying build/lib/rtslib/target.py ->
/usr/lib/python2.7/site-packages/rtslib
copying build/lib/rtslib/__init__.py ->
/usr/lib/python2.7/site-packages/rtslib
copying build/lib/rtslib/root.py -> /usr/lib/python2.7/site-packages/rtslib
byte-compiling /usr/lib/python2.7/site-packages/rtslib/utils.py to utils.pyc
byte-compiling /usr/lib/python2.7/site-packages/rtslib/node.py to node.pyc
byte-compiling /usr/lib/python2.7/site-packages/rtslib/tcm.py to tcm.pyc
byte-compiling /usr/lib/python2.7/site-packages/rtslib/target.py to
target.pyc
byte-compiling /usr/lib/python2.7/site-packages/rtslib/__init__.py to
__init__.pyc
byte-compiling /usr/lib/python2.7/site-packages/rtslib/root.py to root.pyc
running install_egg_info
Removing /usr/lib/python2.7/site-packages/rtslib-GIT_VERSION-py2.7.egg-info
Writing /usr/lib/python2.7/site-packages/rtslib-GIT_VERSION-py2.7.egg-info

You'll want to build the rtslib RPMs for this..  Just doing setup.py
installs the python code, but not the fabric specs in rtslib.git/specs
to determine the active fabrics that should go into /var/target/fabric/
Hmmm... I honestly thought I had done everything by the book, apparently not. I have now built and installed the rpm-package and you are absolutely right, the modules now load and the tree looks complete.

Nicholas, you're an absolute star!

Many thanks from
Jonas
--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux