You already know how to run systems. This is a translation guide, not a reboot.
rwxr-xr-- actually mean something when we get there.
Same job. Different shell.
| Windows | RHEL | What it does |
|---|---|---|
| services.msc / sc.exe | systemctl | Start, stop, enable services |
| Event Viewer | journalctl | Read system + service logs |
| Task Manager | top / ps | See what's running |
| Registry | /etc config files | System & app configuration |
| Run as administrator | sudo | Elevate for one command |
| C:\Users\jim | /home/jim | Your home directory |
| PowerShell | bash + pipes | Scripting & composition |
| Group Policy (GPO) | Ansible | Enforce config at scale |
| WSUS / SCCM | Satellite + Insights | Patch, inventory, advise |
| Active Directory | IdM / SSSD join | Central identity |
Everything hangs off /. Disks, network shares, USB sticks — they all mount into a single tree.
/ root of everything /etc config files (your "registry") /home user home directories /var/log logs /opt optional / vendor apps /usr system programs & libraries /tmp scratch space
/etc/hosts — absolute, always the same place.
./hosts — relative, means "hosts in my current dir."
~ — your home directory shortcut.
Case-sensitive. /etc/Passwd ≠ /etc/passwd.
Tab completion is your friend. Type the first few letters, hit Tab.
pwd where am I? ls list files here ls -lah long format, all, human-readable cd /var/log change directory cd ~ go home cd - go back to last dir cat file.txt print the whole file less file.log page through a big file (q to quit) head -20 file first 20 lines tail -f file.log follow a log as it grows grep "error" file.log search for a pattern
The pipe | is your superpower: ps aux | grep nginx — list all processes, keep the ones matching "nginx."
Open the terminal (bottom-left 💻 button). On the lab bastion you'll be studentN; on your own box you're already you. Either way, walk through these.
pwd whoami id
ls ls -lah ls -lah ~/practice
cd ~/practice cat hello.txt cat README.txt
ls /etc | head -20 cat /etc/os-release tail -5 /var/log/messages # may say permission denied — good, we'll fix that later
cat /etc/passwd | grep student
mkdir projects make a directory mkdir -p a/b/c make the whole path cp file.txt backup.txt copy cp -r dir/ backup/ copy a directory recursively mv old.txt new.txt move or rename (same command) rm file.txt delete (no recycle bin — it's gone) rm -rf dir/ delete a directory and everything in it ln -s /long/path short symbolic link (shortcut) touch newfile create empty file / update timestamp
rm is immediate. rm -rf / is how careers end. Always ls before you rm -rf.
cd ~/practice mkdir -p projects/secu/notes ls -R projects
touch projects/secu/empty.txt echo "my first linux file" > projects/secu/notes/day1.txt cat projects/secu/notes/day1.txt
cp projects/secu/notes/day1.txt projects/secu/notes/day1-backup.txt mv projects/secu/notes/day1.txt projects/secu/notes/monday.txt ls projects/secu/notes
nano projects/secu/notes/monday.txt
rm projects/secu/empty.txt rm -r projects/secu/notes ls projects/secu
id who am I? whoami just my name useradd alice create user passwd alice set password userdel alice delete /etc/passwd the user database
groups my groups
groupadd devs create group
usermod -aG devs alice
add alice to devs
/etc/group the group database
Every user has one primary group and zero or more supplementary groups. Think AD: user + security groups. Same idea.
-rwxr-xr-- 1 jim wheel 4096 Apr 14 10:15 script.sh │└┬┘└┬┘└┬┘ │ │ │ │ │ │ │ group that owns it │ │ │ │ user that owns it │ │ │ everyone else's permissions │ │ group's permissions │ owner's permissions file type (- = file, d = dir, l = link)
chmod 755 script.sh chmod +x script.sh chown alice:devs file chgrp devs file
Per command, not a session. You stay as you. Every elevation logged in /var/log/secure. Root login disabled by default — a feature.
Three things differ between you and root:
cat /etc/shadow fails for you, works for root.systemctl start, useradd, dnf install./usr/sbin was root-only; on RHEL 10 it's everyone's, so you'll see the real "Permission denied" instead.ls -l /etc/passwd ls -l /etc/shadow ls -l /usr/bin/passwd
Notice: anyone can read passwd. Only root can read shadow. That's the whole security model in two lines.
cat /etc/shadow
cd ~/practice echo "secret" > mine.txt ls -l mine.txt chmod 600 mine.txt ls -l mine.txt chmod +x mine.txt ls -l mine.txt
sudo cat /etc/shadow | head -3 sudo systemctl status sshd
sudo tail -20 /var/log/secure
You asked for command line, so that's what we did. But real talk — the management stack is every bit as capable as what you run on the Windows side.
Patch, provision, configure fleets. The RHEL analogue to SCCM/WSUS for servers — content views, lifecycle environments, the works.
One control plane for Linux and Windows and network gear. Think GPO, but it actually works cross-platform.
Proactive advisor. Flags CVEs, misconfigs, and drift before they page you. Included with every RHEL subscription.
Servers as versioned, signed images. Golden image, git-native. Roll forward, roll back, done.
access.redhat.com knowledge base, learn.redhat.com. The CLI is the foundation. The platform is how you actually run it.
You're experienced admins. The primitives are familiar. The rest is vocabulary.