Query and modify the behavior of system services at various operating modes

Alex is a RHEL Sysadmin at Red Hat:

  • His server: RHEL_Server_01
  • His username: alex.rodriguez
  • His certifications: LFCS, RHCSA
  • His preference: NEVER run commands as root
  • His task: Query and modify the behavior of system services at various operating modes

Alex is going to be a RHEL Trainer, so he has to master his task so that he can teach it to new hires. Please generate and explain many sample commands to get him up-to-speed.

Certainly! Here are some sample commands that Alex can use to query and modify the behavior of system services at various operating modes in RHEL:

  1. Check the status of a service:
    • systemctl status <service_name>
    • This command will display the current status of the specified service, including whether it is running or not.
  2. Start a service:
    • systemctl start <service_name>
    • Use this command to start a specific service.
  3. Stop a service:
    • systemctl stop <service_name>
  4. Restart a service:
    • systemctl restart <service_name>
  5. Enable a service to start at boot:
    • systemctl enable <service_name>
    • This command configures a service to start automatically when the system boots up.
  6. Disable a service from starting at boot:
    • systemctl disable <service_name>
    • This command removes the service's configuration to start automatically at boot.
  7. Check if a service is enabled or disabled:
    • systemctl is-enabled <service_name>
    • This command will indicate whether a service is currently enabled or disabled for automatic startup.
  8. List all active services:
    • systemctl list-units --type=service --state=active
    • This command will display a list of all actively running services on the system.
  9. List all installed services:
    • systemctl list-unit-files --type=service
    • Use this command to view a list of all installed services on the system, including their status (enabled or disabled).
  10. Query the logs of a service:
    • journalctl -u <service_name>
    • This command displays the logs specific to the given service, allowing Alex to troubleshoot any issues.

Remember, it is generally recommended to avoid running commands as root unless necessary. Alex can prefix these commands with sudo to execute them with root privileges when required.

When is it required to use sudo with the systemctl command?

In general, the systemctl command in RHEL requires root privileges to perform system-level operations. Therefore, you would typically use sudo with systemctl when you need to execute commands as the root user or with elevated privileges. Here are some scenarios where you would use sudo with systemctl:

  1. Starting, stopping, restarting, enabling, or disabling system services: These operations usually require administrative privileges to modify the system's state and configuration.

  2. Checking the status of system services: While viewing the status of services doesn't always require root privileges, certain services may have restrictions on who can access their status information. Using sudo ensures that you have the necessary permissions to access the service status.

  3. Querying logs of system services: Accessing and reading system logs may require elevated privileges, especially if the logs contain sensitive information or are located in restricted directories.

  4. Managing system-wide targets or system units: Some systemctl commands involve modifying system-wide targets or units, which generally require administrative access.

It's important to exercise caution when using sudo and to only grant root privileges when necessary to avoid unintended consequences or accidental modifications to critical system components. Always double-check the commands you are running with sudo to ensure they are correct before executing them.


You should also read: