LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Virtualization and Cloud (https://www.linuxquestions.org/questions/linux-virtualization-and-cloud-90/)
-   -   When using cloud-init, what order are the users created in? (https://www.linuxquestions.org/questions/linux-virtualization-and-cloud-90/when-using-cloud-init-what-order-are-the-users-created-in-4175641434/)

sllinux 10-30-2018 10:27 AM

When using cloud-init, what order are the users created in?
 
I am using cloud-init to initialize a RHEL Atomic Host VM.

I have the following as my user-data file:

Code:

#cloud-config
groups:
  - ourgroup
users:
  - name: muser
    primary_group: ourgroup
    lock_passwd: false
    sudo: ALL=(ALL) NOPASSWD:ALL
    ssh_authorized_keys:
      - ssh-rsa [REDACTED]
  - name: auser
    primary_group: ourgroup
    passwd: [REDACTED]
    lock_passwd: false
    sudo: ALL=(ALL) NOPASSWD:ALL
ssh_pwauth: True

When the VM boots up for the first time using an ISO file generated from that user-data file, the users are created. From what I see in /etc/passwd, the "auser" user is created with UID 1000, and the "muser" user is created with UID 1001.

We are deploying some software on this VM that needs to know the UID of "muser" in advance prior to installation. (This is due to needing to create a Docker image on a machine that's different from the machine where the software will be installed.) Whenever a VM is deployed using that ISO file, will "muser" always be created after "auser" (and therefore "muser" will always have UID 1001)?

I thought maybe the users were created in either alphabetical order or in the reverse order in which they are listed in the user-data file, so I created another user-data file with 4 users to test that theory. But that theory failed, and I could not tell in what order cloud-init creates the users.

If no one knows what order the users are created in, can I at least assume that "muser" will always have a UID of 1001?

MensaWater 10-30-2018 11:42 AM

I haven't done cloud-init at all but this post seems to suggest you can specify uid (and maybe gid) in your config file so you always assign the ones you want rather than worrying about what it would pick at random. It does note you have to put quotes around the values specified.

berndbausch 10-30-2018 04:50 PM

Quote:

Originally Posted by MensaWater (Post 5920953)
I haven't done cloud-init at all but this post seems to suggest you can specify uid (and maybe gid) in your config file.

This is confirmed by the documentation.

Now, the users key has a list of users as value, which could mean that users are created in the list order. However, the documentation doesn’t mention this.

sllinux 10-30-2018 05:31 PM

Quote:

Originally Posted by MensaWater (Post 5920953)
I haven't done cloud-init at all but this post seems to suggest you can specify uid (and maybe gid) in your config file so you always assign the ones you want rather than worrying about what it would pick at random. It does note you have to put quotes around the values specified.

Thanks, adding uid worked, although as mentioned in that post, there is a bug so you have to put it in quotes like:

uid: "1001"

MensaWater 10-31-2018 08:30 AM

Glad I could help. If you don't mind, please go to thread tools and marked this as Solved. It helps others in future more quickly find posts with solutions.


All times are GMT -5. The time now is 03:48 PM.