How to create virtual usb key












0















I have a service that manages a USB key (format, mount/umount, read/write, check space) coded in Python 2. This service call system to manage the device (mount/umount, mkfs, state) and monitor /proc/mounts to check mounting status.



There are some tests to check the service behaviour, but I am unable to test the service without a real USB key but it's an issue for Jenkins slaves.



I tried to mount the loop device, but this technic require to modify the service to manage this specific device.




  • Do you know some technics to create a virtual device that behaves as a USB key?

  • Do you know a way to test this kind of service ?










share|improve this question



























    0















    I have a service that manages a USB key (format, mount/umount, read/write, check space) coded in Python 2. This service call system to manage the device (mount/umount, mkfs, state) and monitor /proc/mounts to check mounting status.



    There are some tests to check the service behaviour, but I am unable to test the service without a real USB key but it's an issue for Jenkins slaves.



    I tried to mount the loop device, but this technic require to modify the service to manage this specific device.




    • Do you know some technics to create a virtual device that behaves as a USB key?

    • Do you know a way to test this kind of service ?










    share|improve this question

























      0












      0








      0








      I have a service that manages a USB key (format, mount/umount, read/write, check space) coded in Python 2. This service call system to manage the device (mount/umount, mkfs, state) and monitor /proc/mounts to check mounting status.



      There are some tests to check the service behaviour, but I am unable to test the service without a real USB key but it's an issue for Jenkins slaves.



      I tried to mount the loop device, but this technic require to modify the service to manage this specific device.




      • Do you know some technics to create a virtual device that behaves as a USB key?

      • Do you know a way to test this kind of service ?










      share|improve this question














      I have a service that manages a USB key (format, mount/umount, read/write, check space) coded in Python 2. This service call system to manage the device (mount/umount, mkfs, state) and monitor /proc/mounts to check mounting status.



      There are some tests to check the service behaviour, but I am unable to test the service without a real USB key but it's an issue for Jenkins slaves.



      I tried to mount the loop device, but this technic require to modify the service to manage this specific device.




      • Do you know some technics to create a virtual device that behaves as a USB key?

      • Do you know a way to test this kind of service ?







      linux usb debian python






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jan 31 at 9:57









      chepseskafchepseskaf

      1841211




      1841211






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Reading an artcle about Linux-USB Gadget API Framework, I found a way to mount a device as if it was a USB key using loop device (here):





          1. create a virtual drive :



            fallocate -l 128M /tmp/virtual_drive.img



          2. attach this as loop device:



            sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0



          Then this virtual device is used as-is by the service.






          share|improve this answer


























          • USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

            – Attie
            Feb 21 at 12:25








          • 1





            @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

            – chepseskaf
            Feb 22 at 7:26












          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "3"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1400473%2fhow-to-create-virtual-usb-key%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          0














          Reading an artcle about Linux-USB Gadget API Framework, I found a way to mount a device as if it was a USB key using loop device (here):





          1. create a virtual drive :



            fallocate -l 128M /tmp/virtual_drive.img



          2. attach this as loop device:



            sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0



          Then this virtual device is used as-is by the service.






          share|improve this answer


























          • USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

            – Attie
            Feb 21 at 12:25








          • 1





            @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

            – chepseskaf
            Feb 22 at 7:26
















          0














          Reading an artcle about Linux-USB Gadget API Framework, I found a way to mount a device as if it was a USB key using loop device (here):





          1. create a virtual drive :



            fallocate -l 128M /tmp/virtual_drive.img



          2. attach this as loop device:



            sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0



          Then this virtual device is used as-is by the service.






          share|improve this answer


























          • USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

            – Attie
            Feb 21 at 12:25








          • 1





            @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

            – chepseskaf
            Feb 22 at 7:26














          0












          0








          0







          Reading an artcle about Linux-USB Gadget API Framework, I found a way to mount a device as if it was a USB key using loop device (here):





          1. create a virtual drive :



            fallocate -l 128M /tmp/virtual_drive.img



          2. attach this as loop device:



            sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0



          Then this virtual device is used as-is by the service.






          share|improve this answer















          Reading an artcle about Linux-USB Gadget API Framework, I found a way to mount a device as if it was a USB key using loop device (here):





          1. create a virtual drive :



            fallocate -l 128M /tmp/virtual_drive.img



          2. attach this as loop device:



            sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0



          Then this virtual device is used as-is by the service.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Feb 22 at 7:31

























          answered Feb 21 at 11:52









          chepseskafchepseskaf

          1841211




          1841211













          • USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

            – Attie
            Feb 21 at 12:25








          • 1





            @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

            – chepseskaf
            Feb 22 at 7:26



















          • USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

            – Attie
            Feb 21 at 12:25








          • 1





            @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

            – chepseskaf
            Feb 22 at 7:26

















          USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

          – Attie
          Feb 21 at 12:25







          USB Gadgets and losetup aren't really related... From your question, I'd suggest that losetup alone doesn't achieve what you're after - emulating a USB mass storage device.

          – Attie
          Feb 21 at 12:25






          1




          1





          @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

          – chepseskaf
          Feb 22 at 7:26





          @Attie I am agree with you: what I meant was that by reading an article on USB gadget, I realized that losetup was enough. I was able to simplify the procedure without going as far as emulating the USB key.

          – chepseskaf
          Feb 22 at 7:26


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Super User!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1400473%2fhow-to-create-virtual-usb-key%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Plaza Victoria

          Puebla de Zaragoza

          Musa