On Linux, the whole “users and permissions” thing is one of the first concepts you have to internalize. A user is basically any account registered on the system, and permissions decide what that account can execute, read, or modify.
Here’s the quick breakdown:
- Regular user – the daily driver account. Limited privileges, only touches files or commands granted by the system or the user.
- Superuser/root – the boss of the OS. Root can touch anything, anywhere, any time. Use it wisely.
Then we have groups. Think of a group as a bundle of users that share the same permissions. Handy when you want multiple people (or processes) to access the same files or manage the same service.
Want to create a new group? Use groupadd:
$ groupadd webadmin
Need to plug a user into that group?
$ usermod -aG webadmin user1
Once the user is inside the group, they inherit whatever access the group has. So if a directory is locked down to webadmin, anyone in that group instantly gets the green light.