istepaniuk/nvetcli
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
WARNING ======= This is a fork of the original nvmetcli project. The upstream project has not been updated in years and it depends on python2, which makes it very hard to install on Debian 13. I forked https://git.infradead.org/?p=users/hch/nvmetcli.git, which has also a mirror on Github: https://github.com/hreinecke/nvmetcli) Then I: - Hacked the Debian control file to make it installable on Debian 13 - Added a Dockerfile to build the .deb a docker image - Minor modifications to make it work on Python3 with Debian's configshell_fb - Applied the remove_six.patch from SuSE by Matej Cepl to remove 'six' module In other words: I have no idea what I'm doing. Use this at your OWN RISK. The resulting .deb is on the releases page of this repository. nvmetcli ======== This contains the NVMe target admin tool "nvmetcli". It can either be used interactively by invoking it without arguments, or it can be used to save, restore or clear the current NVMe target configuration. Installation ------------ Please install the configshell-fb package from https://github.com/open-iscsi/configshell-fb first. nvmetcli can be run directly from the source directory or installed using setup.py. Common Package Dependencies and Problems ----------------------------------------- Python3 is supported. nvmetcli uses the 'pyparsing' package -- running nvmetcli without this package may produce hard-to-decipher errors. Usage ----- Look at Documentation/nvmetcli.txt for details. Example NVMe Target .json files -------------------------------------- To load the loop + explicit host version above do the following: ./nvmetcli restore loop.json Or to load the rdma + no host authentication version do the following after you've ensured that the IP address in rdma.json fits your setup: ./nvmetcli restore rdma.json Or to load the fc + no host authentication version do the following after you've ensured that the port traddr FC address information in fc.json fits your setup: ./nvmetcli restore fc.json Or to load the tcp + no host authentication version do the following after you've ensured that the IP address in tcp.json fits your setup: ./nvmetcli restore tcp.json These files can also be edited directly using your favorite editor. Testing ------- nvmetcli comes with a testsuite that tests itself and the kernel configfs interface for the NVMe target. To run it make sure you have nose2 and the coverage plugin for it installed and simple run 'make test'. To run all the tests you also need some test block devices or files. Default is to use /dev/ram0 and /dev/ram1. You can override default with environmental variable eg. NVMET_TEST_DEVICES="/dev/sdk,/dev/sdj" make test . Development ----------------- Please send patches and bug reports to linux-nvme@lists.infradead.org for review and acceptance.