7. Deploy, Configure, and Maintain Systems
📘Red Hat Certified System Administrator (RHCSA – EX200)
1. Understanding Boot Targets in Linux (RHEL/CentOS/AlmaLinux)
In RHEL 7 and later, Linux uses systemd to manage services and the boot process.
- A target is like a “mode” that the system boots into.
- Each target defines what services start and which do not.
Think of targets as “system states” in IT terms:
| Target | Description | Common Use Case |
|---|---|---|
graphical.target | Full graphical desktop environment | Workstations or systems with GUI |
multi-user.target | Text-based login (no GUI) | Servers accessed via SSH |
rescue.target | Single-user mode for recovery | Fixing system problems |
emergency.target | Minimal system, root only | Deep troubleshooting or repairing disks |
Exam tip: You need to know graphical.target vs multi-user.target, because most servers use
multi-user.target.
2. Viewing the Current Default Boot Target
To check what target your system boots into by default, use:
systemctl get-default
Example:
$ systemctl get-default
graphical.target
- This means the system currently boots into GUI mode.
- For a server, you might want
multi-user.targetinstead.
3. Changing the Default Boot Target
To change the system’s default target, use:
systemctl set-default <target_name>
Example: Set server to boot into multi-user (no GUI):
sudo systemctl set-default multi-user.target
Verify the change:
systemctl get-default
# Output should now be multi-user.target
- This change is permanent – it will remain across reboots.
4. Switching Targets Without Rebooting
Sometimes you need to switch targets immediately without rebooting:
sudo systemctl isolate <target_name>
Example: Switch to rescue mode immediately:
sudo systemctl isolate rescue.target
- Note: Using
isolatechanges the current running target and stops services not needed by the new target.
5. Checking Which Targets Are Available
To list all systemd targets:
systemctl list-unit-files --type=target
You’ll see something like:
graphical.target enabled
multi-user.target enabled
rescue.target disabled
emergency.target disabled
- enabled means the target can be used normally.
- disabled typically means it’s only used manually in emergencies.
6. Example Scenarios in IT
- Server Boot to Text Mode for SSH Management
- Servers don’t need GUI, so you set default to
multi-user.target. - Commands: sudo systemctl set-default multi-user.target
sudo systemctl get-default
- Servers don’t need GUI, so you set default to
- Workstation Boot to GUI
- Workstations with desktop environments need GUI, so
graphical.targetis default. - Commands: sudo systemctl set-default graphical.target
- Workstations with desktop environments need GUI, so
- Rescue Mode for Disk Repair
- If a server fails to boot normally, you can boot into
rescue.targetusing GRUB or: sudo systemctl isolate rescue.target
- If a server fails to boot normally, you can boot into
7. Temporary Boot Target via GRUB
Sometimes you don’t want to change the default, but want to boot into a different target once:
- Reboot the system.
- At GRUB menu, press
eto edit the boot entry. - Find the line starting with
linuxorlinux16. - Add the target at the end:
systemd.unit=multi-user.target
- Press Ctrl+X to boot.
- This only affects the current boot; default remains unchanged.
8. RHCSA Exam Checklist for Boot Targets
To make sure you’re ready for the exam, practice these tasks:
- Check the current default boot target: systemctl get-default
- Change the default target permanently: sudo systemctl set-default multi-user.target
- Switch targets immediately without reboot: sudo systemctl isolate rescue.target
- List all available targets: systemctl list-unit-files –type=target
- Temporary boot target via GRUB (one-time):
- Edit GRUB at boot → append
systemd.unit=multi-user.target
- Edit GRUB at boot → append
Tip: In the exam, they may ask you to change the system to boot in a specific target and verify it. Always check with
systemctl get-default.
✅ Key Takeaways for Students
- Targets control what services run at boot.
graphical.target= GUI,multi-user.target= server mode.- Use
systemctl set-defaultfor permanent changes. - Use
systemctl isolateto change immediately without reboot. - Use GRUB for one-time boot targets.
- Always verify with
systemctl get-default.
