2.4 KiB
Linux – Users & Ownership (Day 3)
What are Users in Linux?
Linux is a multi-user system. Each file and process runs under a specific user.
This prevents:
- accidental damage
- security issues
- one app affecting another
Why Users Matter in DevOps?
Applications never run as root in production. Each service has its own user for safety.
DevOps engineers:
- create users
- assign ownership
- control access
User Types
- root → superuser (full access)
- normal user → regular work
- system user → runs services (nginx, docker)
Check Current User
whoami
View All Users
cat /etc/passwd
Create a New User
sudo useradd devuser
Set password:
sudo passwd devuser
Switch User
su devuser
Exit user
exit
Groups in Linux
Users belong to groups. Groups help manage permissions easily.
Check groups:
groups
Add user to group:
sudo usermod -aG sudo devuser
File Ownership
Each file has:
owner
group
Check ownership:
ls -l
Change Ownership (chown)
sudo chown devuser file.txt
sudo chown devuser:devuser file.txt
Change Group Only
sudo chgrp devuser file.txt
Real DevOps Scenario
Application folder:
owned by app user
not by root
correct permissions
Example:
sudo mkdir /var/myapp
sudo chown devuser:devuser /var/myapp
sudo chmod 755 /var/myapp
Common Mistakes
Running apps as root
Wrong ownership causing permission denied
Using sudo unnecessarily
DevOps Rule
❌ root everywhere ✅ least privilege access
Exit user:
exit
Groups in Linux
Users belong to groups. Groups help manage permissions easily.
Check groups:
groups
Add user to group:
sudo usermod -aG sudo devuser
File Ownership
Each file has:
owner
group
Check ownership:
ls -l
Change Ownership (chown)
sudo chown devuser file.txt
sudo chown devuser:devuser file.txt
Change Group Only
sudo chgrp devuser file.txt
Real DevOps Scenario
Application folder:
owned by app user
not by root
correct permissions
Example:
sudo mkdir /var/myapp sudo chown devuser:devuser /var/myapp sudo chmod 755 /var/myapp
Common Mistakes
Running apps as root
Wrong ownership causing permission denied
Using sudo unnecessarily
DevOps Rule
❌ root everywhere ✅ least privilege access