Error when adding new user (EC2 AMI instance)

Kimmo Karhu's picture


I have successfully launched my EC2 instance and I am able to access it using ssh connection.

If I try to create a new user account I get the following error:

# sudo adduser test
Adding user `test' ...
Adding new group `test' (1001) ...
groupadd: cannot rewrite group file
adduser: `/usr/sbin/groupadd -g 1001 test' returned error code 10. Exiting.

If I check the permissions for /etc/group it gives me:

# ls -la /etc/group
lrwxrwxrwx 1 root root 14 Dec 15 12:59 /etc/group -> /vol/etc/group

I am using EBS volume that I have attached to my instance. I don't know if this is causing the problems somehow.

Any idea?



Alon Swartz's picture

Are you using the ebsmount-scripts? If so, then you hit an awful bug.
Please note that the ebsmount-scripts are experimental. You can only go so far with mount binds and symlinks...

Depending on your use-case, you might want to remove some ebsmount scripts that cause problems, and instead leverage inithooks to set up the required configuration next time you attach the ebs.

BTW, we are working on a much better and more stable way to support persistence on Amazon EC2, namely EBS backed instances which Amazon recently released support for.

Thanks for bearing with our first batch of EC2 builds, and helping fix the issues.
If you find any other issues with the ebsmount-scripts, please let us know so we can issue updates so others aren't effected, atleast until we have support for EBS backed instances.
Kimmo Karhu's picture


Yes, I am using ebsmount-scripts. I am not that professional with Linux so I think I will leave it as it is and wait for the easier-to-use solution that you are working on. For the time being, I can survive without adding new users.

Otherwise my instance seems to work now ok. If I run into any problems, I will let you know.



andy west's picture

I have the same issue. I installed postgres on the image on the mounted drive (/vol/PostgreSQL/8.4/) because I wanted Apache/Tomcat/Postgres on the same image (plus we are using Postgres 8.4 and you guys don't yet have an image for it.

When postgres installs it tries to create a user 'postgres' and fails...manually trying to create the user also fails. So I cannot start postgres. :(





Igor's picture

I am also running an EC2 AMI instance, with the ejabberd appliance. After executing the ebsmount-scripts, the group file (and others?) gets locked. Is there a timeframe for the fix? And could you please provide more detailed information on how to switch from ebsmount-scripts to inithooks (I read the README file, but got lost). Thanks!

Alon Swartz's picture

I have a couple of ideas how to fix the user/group issue, I'll update this thread once the fix is released. Again, thanks for bearing with our first batch of EC2 builds, and helping fix the issues.
Igor's picture

 Thanks, looking forward to it!

Alon Swartz's picture

I've pushed out the fix so the ebsmount-scripts don't mess with /etc/passwd|shadow|group, so you will be able to manipulate users and groups. Thanks to everyone who reported the issues.

As you know, instances are not persistent, so any changes you make (that are not handled by the ebsmount-scripts) will be lost when the instance is terminated.

As I mentioned before, I had a couple of ideas how to deal the specific use case of users and groups, and more generally I was planning on adding some sort of overlay functionality, but I have decided against it.

Why? Because it would not be elegant, not be very stable or flexible or powerful, and frankly not something that I would like to use myself. In other words - half-assed. We like to build stuff that kicks-ass!. So, I have decided to focus on the real solution that we are working very hard on, which will solved all these issues in a way they should be solved, and includes other really cool and useful functionality. More on this to come...

I hope honesty and bluntness is appreciated.

Post new comment