What to put in /etc/subu,gid to run unprivileged containers?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I'm trying to run an unprivileged Vagrant box using LXD, but I can't get the ID mappings to work.




First try:



$ sudo rm /etc/subu,gid
$ echo "root:1000000:65536" | sudo tee /etc/subu,gid
root:1000000:65536
$ sudo systemctl restart lxd
$ vagrant destroy -f
$ vagrant up

==> default: Machine has not been created yet, starting...
==> default: The host machine does not support LXD synced folders.
==> default:
==> default: To use this feature, you must first configure ID mappings for the
==> default: current user in /etc/subuid and /etc/subgid. For more information,
==> default: refer to `vagrant lxd shadow --help`.
==> default:
==> default: Importing LXC image...
==> default: Waiting for machine to boot. This may take a few minutes...
/home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address': undefined method `' for nil:NilClass (NoMethodError)




OK, let's follow the advice:



$ vagrant lxd shadow --help
In order to use shared folders, you must first add the effective user
and group ID (which are currently 1000 and 1000) to the host machine's
subuid(5) and subgid(5) files:

$ echo root:1000:1 | sudo tee -a /etc/subuid
$ echo root:1000:1 | sudo tee -a /etc/subgid

For more information about these commands, and user/group ID mapping in
general, refer to this article:

https://insights.ubuntu.com/2017/06/15/custom-user-mappings-in-lxd-containers/
$ sudo rm /etc/subu,gid
$ echo root:1000:1 | sudo tee -a /etc/subuid
root:1000:1
$ echo root:1000:1 | sudo tee -a /etc/subgid
root:1000:1
$ sudo systemctl restart lxd
$ vagrant destroy -f
$ vagrant up

==> default: Waiting for machine to boot. This may take a few minutes...
/home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address'Root: undefined method `' for nil:NilClass (NoMethodError)


sharee



I tried the same as the previous but a count of 1000 instead of just 1, and got the following result:




The underlying error message was: Create container: Create LXC container: LXD doesn't have a uid/gid allocation. In this mode, only privileged containers are supported




Now what can I try? What nothing seems to explain is which username/UID should be in the first column - the user running the Vagrant command? The UID of the user inside the container? Always "root", even when running unprivileged containers? Ditto for the second and third columns. Some sources seem to think that the second number should start at 100,000 or 1,000,000. Some sources put 1 for the third number and others put 65,536. Even man subuid doesn't really explain how and why it should be used for people unfamiliar with "subordinate user IDs."










share|improve this question






























    0















    I'm trying to run an unprivileged Vagrant box using LXD, but I can't get the ID mappings to work.




    First try:



    $ sudo rm /etc/subu,gid
    $ echo "root:1000000:65536" | sudo tee /etc/subu,gid
    root:1000000:65536
    $ sudo systemctl restart lxd
    $ vagrant destroy -f
    $ vagrant up

    ==> default: Machine has not been created yet, starting...
    ==> default: The host machine does not support LXD synced folders.
    ==> default:
    ==> default: To use this feature, you must first configure ID mappings for the
    ==> default: current user in /etc/subuid and /etc/subgid. For more information,
    ==> default: refer to `vagrant lxd shadow --help`.
    ==> default:
    ==> default: Importing LXC image...
    ==> default: Waiting for machine to boot. This may take a few minutes...
    /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address': undefined method `' for nil:NilClass (NoMethodError)




    OK, let's follow the advice:



    $ vagrant lxd shadow --help
    In order to use shared folders, you must first add the effective user
    and group ID (which are currently 1000 and 1000) to the host machine's
    subuid(5) and subgid(5) files:

    $ echo root:1000:1 | sudo tee -a /etc/subuid
    $ echo root:1000:1 | sudo tee -a /etc/subgid

    For more information about these commands, and user/group ID mapping in
    general, refer to this article:

    https://insights.ubuntu.com/2017/06/15/custom-user-mappings-in-lxd-containers/
    $ sudo rm /etc/subu,gid
    $ echo root:1000:1 | sudo tee -a /etc/subuid
    root:1000:1
    $ echo root:1000:1 | sudo tee -a /etc/subgid
    root:1000:1
    $ sudo systemctl restart lxd
    $ vagrant destroy -f
    $ vagrant up

    ==> default: Waiting for machine to boot. This may take a few minutes...
    /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address'Root: undefined method `' for nil:NilClass (NoMethodError)


    sharee



    I tried the same as the previous but a count of 1000 instead of just 1, and got the following result:




    The underlying error message was: Create container: Create LXC container: LXD doesn't have a uid/gid allocation. In this mode, only privileged containers are supported




    Now what can I try? What nothing seems to explain is which username/UID should be in the first column - the user running the Vagrant command? The UID of the user inside the container? Always "root", even when running unprivileged containers? Ditto for the second and third columns. Some sources seem to think that the second number should start at 100,000 or 1,000,000. Some sources put 1 for the third number and others put 65,536. Even man subuid doesn't really explain how and why it should be used for people unfamiliar with "subordinate user IDs."










    share|improve this question


























      0












      0








      0








      I'm trying to run an unprivileged Vagrant box using LXD, but I can't get the ID mappings to work.




      First try:



      $ sudo rm /etc/subu,gid
      $ echo "root:1000000:65536" | sudo tee /etc/subu,gid
      root:1000000:65536
      $ sudo systemctl restart lxd
      $ vagrant destroy -f
      $ vagrant up

      ==> default: Machine has not been created yet, starting...
      ==> default: The host machine does not support LXD synced folders.
      ==> default:
      ==> default: To use this feature, you must first configure ID mappings for the
      ==> default: current user in /etc/subuid and /etc/subgid. For more information,
      ==> default: refer to `vagrant lxd shadow --help`.
      ==> default:
      ==> default: Importing LXC image...
      ==> default: Waiting for machine to boot. This may take a few minutes...
      /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address': undefined method `' for nil:NilClass (NoMethodError)




      OK, let's follow the advice:



      $ vagrant lxd shadow --help
      In order to use shared folders, you must first add the effective user
      and group ID (which are currently 1000 and 1000) to the host machine's
      subuid(5) and subgid(5) files:

      $ echo root:1000:1 | sudo tee -a /etc/subuid
      $ echo root:1000:1 | sudo tee -a /etc/subgid

      For more information about these commands, and user/group ID mapping in
      general, refer to this article:

      https://insights.ubuntu.com/2017/06/15/custom-user-mappings-in-lxd-containers/
      $ sudo rm /etc/subu,gid
      $ echo root:1000:1 | sudo tee -a /etc/subuid
      root:1000:1
      $ echo root:1000:1 | sudo tee -a /etc/subgid
      root:1000:1
      $ sudo systemctl restart lxd
      $ vagrant destroy -f
      $ vagrant up

      ==> default: Waiting for machine to boot. This may take a few minutes...
      /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address'Root: undefined method `' for nil:NilClass (NoMethodError)


      sharee



      I tried the same as the previous but a count of 1000 instead of just 1, and got the following result:




      The underlying error message was: Create container: Create LXC container: LXD doesn't have a uid/gid allocation. In this mode, only privileged containers are supported




      Now what can I try? What nothing seems to explain is which username/UID should be in the first column - the user running the Vagrant command? The UID of the user inside the container? Always "root", even when running unprivileged containers? Ditto for the second and third columns. Some sources seem to think that the second number should start at 100,000 or 1,000,000. Some sources put 1 for the third number and others put 65,536. Even man subuid doesn't really explain how and why it should be used for people unfamiliar with "subordinate user IDs."










      share|improve this question
















      I'm trying to run an unprivileged Vagrant box using LXD, but I can't get the ID mappings to work.




      First try:



      $ sudo rm /etc/subu,gid
      $ echo "root:1000000:65536" | sudo tee /etc/subu,gid
      root:1000000:65536
      $ sudo systemctl restart lxd
      $ vagrant destroy -f
      $ vagrant up

      ==> default: Machine has not been created yet, starting...
      ==> default: The host machine does not support LXD synced folders.
      ==> default:
      ==> default: To use this feature, you must first configure ID mappings for the
      ==> default: current user in /etc/subuid and /etc/subgid. For more information,
      ==> default: refer to `vagrant lxd shadow --help`.
      ==> default:
      ==> default: Importing LXC image...
      ==> default: Waiting for machine to boot. This may take a few minutes...
      /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address': undefined method `' for nil:NilClass (NoMethodError)




      OK, let's follow the advice:



      $ vagrant lxd shadow --help
      In order to use shared folders, you must first add the effective user
      and group ID (which are currently 1000 and 1000) to the host machine's
      subuid(5) and subgid(5) files:

      $ echo root:1000:1 | sudo tee -a /etc/subuid
      $ echo root:1000:1 | sudo tee -a /etc/subgid

      For more information about these commands, and user/group ID mapping in
      general, refer to this article:

      https://insights.ubuntu.com/2017/06/15/custom-user-mappings-in-lxd-containers/
      $ sudo rm /etc/subu,gid
      $ echo root:1000:1 | sudo tee -a /etc/subuid
      root:1000:1
      $ echo root:1000:1 | sudo tee -a /etc/subgid
      root:1000:1
      $ sudo systemctl restart lxd
      $ vagrant destroy -f
      $ vagrant up

      ==> default: Waiting for machine to boot. This may take a few minutes...
      /home/username/.vagrant.d/gems/2.6.1/gems/vagrant-lxd-0.3.4/lib/vagrant-lxd/driver.rb:429:in `block (2 levels) in ipv4_address'Root: undefined method `' for nil:NilClass (NoMethodError)


      sharee



      I tried the same as the previous but a count of 1000 instead of just 1, and got the following result:




      The underlying error message was: Create container: Create LXC container: LXD doesn't have a uid/gid allocation. In this mode, only privileged containers are supported




      Now what can I try? What nothing seems to explain is which username/UID should be in the first column - the user running the Vagrant command? The UID of the user inside the container? Always "root", even when running unprivileged containers? Ditto for the second and third columns. Some sources seem to think that the second number should start at 100,000 or 1,000,000. Some sources put 1 for the third number and others put 65,536. Even man subuid doesn't really explain how and why it should be used for people unfamiliar with "subordinate user IDs."







      vagrant lxd vagrant-lxd






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 8 at 12:29







      l0b0

















      asked Mar 8 at 12:20









      l0b0l0b0

      28.8k19122249




      28.8k19122249




















          0






          active

          oldest

          votes












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "106"
          ;
          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: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          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%2funix.stackexchange.com%2fquestions%2f505123%2fwhat-to-put-in-etc-subu-gid-to-run-unprivileged-containers%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Unix & Linux Stack Exchange!


          • 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%2funix.stackexchange.com%2fquestions%2f505123%2fwhat-to-put-in-etc-subu-gid-to-run-unprivileged-containers%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

          How to check contact read email or not when send email to Individual?

          Displaying single band from multi-band raster using QGIS

          How many registers does an x86_64 CPU actually have?