diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 4c4269d..e48bcf8 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -5,3 +5,18 @@ # Core Topics - [Getting Started](getting-started.md) - [RHCSA](rhcsa.md) + +# Practice Scenarios +- [Practice Scenarios v1](practice-scenarios/rhcsa_practice_scenarios.md) +- [Practice Scenarios v2](practice-scenarios/rhcsa_practice_scenarios_v2.md) +- [Practice Scenarios v3](practice-scenarios/rhcsa_practice_scenarios_v3.md) +- [Practice Scenarios v4](practice-scenarios/rhcsa_practice_scenarios_v4.md) +- [Practice Scenarios v5](practice-scenarios/rhcsa_practice_scenarios_v5.md) + +# My Solutions Portfolio +- [Introduction to Solutions](solutions/README.md) +- [User Management Solutions](solutions/user-management.md) +- [Storage Solutions](solutions/storage-management.md) +- [Network Solutions](solutions/networking.md) +- [Service Management Solutions](solutions/service-management.md) +- [Security Solutions](solutions/security.md) diff --git a/src/practice-scenarios/rhcsa_practice_scenarios.md b/src/practice-scenarios/rhcsa_practice_scenarios.md new file mode 100644 index 0000000..29b782f --- /dev/null +++ b/src/practice-scenarios/rhcsa_practice_scenarios.md @@ -0,0 +1,62 @@ +# RHCSA Practice Scenarios + +## Scenario 1: User and Permission Management +Task: +1. Create a new user called 'analyst1' with home directory '/home/analyst1' +2. Create a group called 'datateam' +3. Add 'analyst1' to 'datateam' +4. Create a directory '/data/reports' owned by 'datateam' with SGID set +5. Ensure members of 'datateam' can read/write, others can only read +6. Set password expiry for 'analyst1' to 90 days + +## Scenario 2: Storage Management +Task: +1. Create a new 2GB partition on /dev/sdb +2. Create a physical volume from this partition +3. Create a volume group called 'datavg' +4. Create a 1GB logical volume called 'datalv' +5. Format the logical volume with XFS filesystem +6. Mount it persistently at /mnt/data using UUID +7. Extend the logical volume by 500MB + +## Scenario 3: Service and Security Management +Task: +1. Configure chronyd to sync with time server 'time.example.com' +2. Configure firewall to allow HTTP (port 80) and HTTPS (port 443) +3. Create an SELinux policy to allow Apache to listen on port 8080 +4. Configure SSH to disable root login and only allow key-based authentication +5. Set up a cron job to run system updates every Sunday at 2 AM + +## Scenario 4: Container Management +Task: +1. Pull the latest nginx container image from registry.access.redhat.com +2. Create a persistent volume at /data/web +3. Run nginx container with the persistent volume mounted at /usr/share/nginx/html +4. Configure the container to start automatically on boot +5. Expose the container on port 8080 + +## Scenario 5: System Recovery and Maintenance +Task: +1. Reset root password using emergency mode +2. Identify and kill a process consuming excessive CPU +3. Configure system to boot into multi-user target by default +4. Configure autofs to automatically mount an NFS share +5. Create a backup of /etc using tar with bzip2 compression + +## Scenario 6: Shell Scripting +Create a script that: +1. Accepts a directory path as an argument +2. Finds all files larger than 100MB +3. Creates a report of these files including size and last modified date +4. Archives files older than 30 days into a tar.gz file +5. Logs all actions to /var/log/cleanup.log + +## Scenario 7: Network Configuration +Task: +1. Configure static IPv4 address: 192.168.1.100/24 +2. Configure static IPv6 address: 2001:db8:1234:5678::100/64 +3. Set hostname to 'rhcsa.example.com' +4. Configure DNS resolution using /etc/resolv.conf +5. Implement network access restrictions using firewalld zones + +Each scenario tests multiple objectives from the exam requirements. Would you like to work through any specific scenario with detailed steps? \ No newline at end of file diff --git a/src/practice-scenarios/rhcsa_practice_scenarios_v2.md b/src/practice-scenarios/rhcsa_practice_scenarios_v2.md new file mode 100644 index 0000000..12f6ae2 --- /dev/null +++ b/src/practice-scenarios/rhcsa_practice_scenarios_v2.md @@ -0,0 +1,75 @@ +# RHCSA Practice Scenarios - Version 2 + +## Scenario 1: System Access and File Management +Task: +1. Configure SSH to listen on port 2222 instead of default 22 +2. Create a user 'devops1' with custom shell /bin/bash +3. Set up password-less SSH authentication for 'devops1' +4. Create directory structure /opt/projects with subdirectories dev, test, prod +5. Configure appropriate permissions where only devops1 can access prod +6. Create both soft and hard links for important config files + +## Scenario 2: Storage Configuration +Task: +1. Create three 1GB partitions on /dev/sdc using GPT +2. Set up LVM using these partitions +3. Create a volume group named 'appvg' +4. Create two logical volumes: 'applv' (2GB) and 'logslv' (1GB) +5. Format applv with ext4 and logslv with xfs +6. Configure persistent mounts using labels +7. Add a new swap partition of 2GB + +## Scenario 3: Process and Service Management +Task: +1. Configure system to start in graphical.target +2. Set up Apache web server to start at boot +3. Create a systemd service for a custom application +4. Configure process nice levels for specific applications +5. Set up logging rotation for application logs +6. Configure journald for persistent logging + +## Scenario 4: Container Operations +Task: +1. Pull MariaDB container from registry.redhat.io +2. Configure persistent storage for database files +3. Create a pod with both MariaDB and phpMyAdmin +4. Configure container networking for internal communication +5. Set up automatic container restart policies +6. Create a systemd service file for the pod + +## Scenario 5: Security Implementation +Task: +1. Configure SELinux for a custom web application running on port 8443 +2. Set up firewalld rich rules to allow access only from specific IP range +3. Implement file access controls using ACLs +4. Configure sudo access for specific commands +5. Set up password complexity requirements +6. Configure SELinux boolean settings for web services + +## Scenario 6: Automation Script +Create a script that: +1. Monitors disk space usage +2. Sends alerts when filesystems exceed 80% usage +3. Automatically cleans up /tmp older than 7 days +4. Generates daily system health report +5. Uses getopts for command line options + +## Scenario 7: Network and Storage Troubleshooting +Task: +1. Diagnose and repair failed NFS mounts +2. Recover from a failed LVM configuration +3. Fix network connectivity issues +4. Restore correct SELinux contexts after file restoration +5. Configure autofs for user home directories +6. Set up network teaming for redundancy + +## Scenario 8: System Maintenance +Task: +1. Configure local repository for package management +2. Set up automated security updates +3. Configure logrotate for custom application logs +4. Create a backup strategy for system configuration +5. Schedule system maintenance tasks using cron and at +6. Configure time synchronization with multiple time sources + +Each scenario is designed to integrate multiple exam objectives and simulate real-world tasks. Would you like detailed steps for any particular scenario? \ No newline at end of file diff --git a/src/practice-scenarios/rhcsa_practice_scenarios_v3.md b/src/practice-scenarios/rhcsa_practice_scenarios_v3.md new file mode 100644 index 0000000..6aa7e04 --- /dev/null +++ b/src/practice-scenarios/rhcsa_practice_scenarios_v3.md @@ -0,0 +1,121 @@ +# RHCSA Practice Scenarios - Version 3 + +## Scenario 1: Advanced User Management +Task: +1. Create a departmental structure with groups: 'engineering', 'qa', and 'ops' +2. Add users 'eng1', 'eng2', 'qa1', 'ops1' to respective groups +3. Configure shared directory /opt/shared with: + - Engineering can read/write their directory + - QA can read engineering, read/write QA directory + - Ops can read/write all directories +4. Implement password policies: + - Minimum 12 characters + - Maximum age 60 days + - Warning 7 days before expiry + +## Scenario 2: Dynamic Storage Management +Task: +1. Set up a 4GB partition using GPT on /dev/sdd +2. Create a VDO volume with 3:1 compression ratio +3. Create LVM structure on top of VDO +4. Configure thin provisioning for development environments +5. Create a 2GB XFS filesystem with quota support +6. Implement user and group quotas +7. Configure automated filesystem growth triggers + +## Scenario 3: Boot Management and Recovery +Task: +1. Configure system with multiple boot targets +2. Create a custom boot target for minimal services +3. Configure GRUB2 with password protection +4. Set up system to boot with specific kernel parameters +5. Create a recovery procedure for: + - Forgotten root password + - Failed boot + - Corrupted GRUB +6. Configure crash dump collection + +## Scenario 4: Advanced Container Deployment +Task: +1. Create a multi-container application using podman +2. Configure container health checks +3. Set up container networking with port mapping +4. Implement container resource limits +5. Create persistent storage for containers +6. Configure logging drivers +7. Set up container monitoring + +## Scenario 5: Comprehensive Security Setup +Task: +1. Implement a complete SELinux security strategy: + - Custom policy module + - Port definitions + - File contexts + - Boolean settings +2. Configure firewalld with: + - Multiple zones + - Custom services + - Forward ports + - Rich rules +3. Set up SSH with: + - Custom port + - AllowUsers configuration + - Rate limiting + - Key-based authentication only + +## Scenario 6: System Automation +Create scripts for: +1. System inventory script that: + - Lists all installed packages + - Shows disk usage + - Reports running services + - Checks SELinux status +2. Backup script that: + - Uses tar with incremental backups + - Implements retention policy + - Verifies backup integrity + - Logs all operations + +## Scenario 7: Network Services Configuration +Task: +1. Configure network with: + - Bonded interface with active-backup + - VLAN configuration + - Static routes +2. Set up DNS resolution with: + - Multiple DNS servers + - Search domains + - Local host entries +3. Implement network security with: + - TCP Wrappers + - IPtables rules + - Fail2ban configuration + +## Scenario 8: Advanced File System Management +Task: +1. Create a stratis storage pool +2. Configure automated NFS mounts with autofs +3. Set up ACL configurations for: + - Default permissions + - User-specific access + - Group collaboration +4. Implement file system encryption +5. Configure file system compression +6. Set up file system snapshots + +## Scenario 9: Service Management and Monitoring +Task: +1. Configure systemd services with: + - Dependencies + - Custom environment files + - Restart policies +2. Set up service monitoring with: + - Custom status checks + - Email notifications + - Automatic recovery +3. Implement logging with: + - Remote syslog + - Custom journald configuration + - Log forwarding + +Each scenario integrates multiple exam objectives and provides real-world challenges. Would you like detailed steps for any particular scenario? \ No newline at end of file diff --git a/src/practice-scenarios/rhcsa_practice_scenarios_v4.md b/src/practice-scenarios/rhcsa_practice_scenarios_v4.md new file mode 100644 index 0000000..3758841 --- /dev/null +++ b/src/practice-scenarios/rhcsa_practice_scenarios_v4.md @@ -0,0 +1,155 @@ +# RHCSA Practice Scenarios - Version 4 + +## Scenario 1: Disaster Recovery Planning +Task: +1. Create a backup strategy for: + - System configuration files (/etc) + - User home directories + - Custom application data +2. Implement backup script using: + - tar with exclude patterns + - Different compression methods (gzip vs bzip2) + - Verification checksums +3. Configure backup rotation: + - Daily incremental + - Weekly full + - Monthly archives +4. Test recovery procedures + +## Scenario 2: Advanced Storage Architecture +Task: +1. Create a tiered storage setup: + - Fast SSD partition for databases (/dev/nvme0n1) + - HDD partition for archives (/dev/sdb) +2. Configure LVM: + - Create volume group 'datavg' spanning both devices + - Create logical volumes with different stripe sizes + - Implement LVM caching using SSD +3. Set up filesystem: + - XFS for database volume with optimal parameters + - Ext4 for archive volume with large file support +4. Configure automated storage monitoring + +## Scenario 3: Multi-User Environment Setup +Task: +1. Create departmental structure: + - Research team (researchers, analysts) + - IT team (admins, support) + - Management (managers, directors) +2. Configure shared workspace: + - /projects/research (SGID, collaborative) + - /projects/it (restricted access) + - /projects/management (confidential) +3. Implement access controls: + - File ACLs for specific user access + - Umask settings per department + - Special permissions for project leads + +## Scenario 4: Service High Availability +Task: +1. Configure critical services: + - Apache web server with custom configuration + - MariaDB database with specific port + - Custom application service +2. Implement service monitoring: + - Create systemd service files with dependencies + - Configure service recovery options + - Set up notification for service failures +3. Create failover procedures: + - Service restart automation + - Backup service configuration + - Recovery documentation + +## Scenario 5: Container Orchestration +Task: +1. Set up development environment: + - Create pod with multiple containers + - Configure inter-container networking + - Set up shared storage volumes +2. Implement container security: + - SELinux contexts for containers + - Resource limitations + - Network isolation +3. Create deployment automation: + - Container health checks + - Automatic updates + - Backup procedures + +## Scenario 6: Network Security Implementation +Task: +1. Configure secure network access: + - Set up SSH jump host + - Implement port knocking + - Configure fail2ban +2. Set up firewall rules: + - Create custom zones + - Configure service-specific rules + - Implement rate limiting +3. Monitor network security: + - Configure logging + - Set up alerts + - Create security reports + +## Scenario 7: System Performance Tuning +Task: +1. Optimize system performance: + - Configure tuned profiles + - Adjust process priorities + - Set resource limits +2. Monitor system resources: + - Create monitoring scripts + - Set up performance alerts + - Configure resource quotas +3. Implement performance logging: + - Configure performance metrics + - Create trending reports + - Set up automated analysis + +## Scenario 8: Automated System Maintenance +Create scripts for: +1. System health check: + - Disk space monitoring + - Service status verification + - Log analysis + - Performance metrics collection +2. Maintenance tasks: + - Log rotation and cleanup + - Temporary file cleanup + - Cache clearing + - System updates +3. Reporting: + - Daily status emails + - Weekly performance reports + - Monthly trend analysis + +## Scenario 9: SELinux Management +Task: +1. Configure SELinux for custom application: + - Create custom policy module + - Set up file contexts + - Configure port labels +2. Troubleshoot SELinux issues: + - Analyze audit logs + - Debug policy violations + - Create policy fixes +3. Implement SELinux best practices: + - Boolean management + - Context verification + - Policy testing + +## Scenario 10: Advanced File System Operations +Task: +1. Implement advanced storage features: + - Configure deduplication + - Set up compression + - Enable quotas +2. Create filesystem snapshots: + - LVM snapshots + - Filesystem-level snapshots + - Backup integration +3. Configure automated maintenance: + - Periodic defragmentation + - Integrity checking + - Performance optimization + +Each scenario tests multiple exam objectives while presenting realistic system administration challenges. \ No newline at end of file diff --git a/src/practice-scenarios/rhcsa_practice_scenarios_v5.md b/src/practice-scenarios/rhcsa_practice_scenarios_v5.md new file mode 100644 index 0000000..937bc44 --- /dev/null +++ b/src/practice-scenarios/rhcsa_practice_scenarios_v5.md @@ -0,0 +1,168 @@ +# RHCSA Practice Scenarios - Version 5 + +## Scenario 1: Emergency System Recovery +Task: +1. Recover from failed boot scenarios: + - Reset root password without boot media + - Repair corrupted fstab entries + - Fix incorrect GRUB configuration +2. Implement recovery procedures for: + - Broken network configuration + - Failed LVM setup + - Corrupted file permissions +3. Create emergency documentation: + - Recovery steps for each scenario + - Required commands and procedures + - Verification methods + +## Scenario 2: Advanced Storage Integration +Task: +1. Configure multi-level storage: + - Set up /dev/sdc with 3 partitions (GPT) + - Create RAID1 using /dev/sdd1 and /dev/sde1 + - Implement LVM on top of RAID +2. Configure storage hierarchy: + - /apps (XFS, 10GB) + - /data (Ext4, 20GB) + - /backup (XFS with quota) +3. Implement automated management: + - Storage monitoring + - Alert system + - Expansion procedures + +## Scenario 3: Comprehensive User Environment +Task: +1. Set up development environment: + - Create users: dev1, dev2, dev3 + - Configure groups: developers, testers, deployers + - Set up project directories with appropriate permissions +2. Implement access controls: + - Configure sudo access per group + - Set up restricted shells where needed + - Create shared directories with SGID +3. Configure user environment: + - Custom shell profiles + - Group-specific environment variables + - Access control lists + +## Scenario 4: Service Integration +Task: +1. Configure web services: + - Apache with custom virtual hosts + - Nginx as reverse proxy + - PHP-FPM integration +2. Implement security measures: + - SELinux contexts for web services + - Custom firewall rules + - SSL certificate configuration +3. Set up monitoring: + - Service status checks + - Resource usage monitoring + - Log analysis + +## Scenario 5: Container Development Environment +Task: +1. Create development containers: + - Frontend container (Nginx) + - Backend container (Python) + - Database container (PostgreSQL) +2. Configure container networking: + - Internal network for container communication + - Port mapping for external access + - DNS resolution between containers +3. Implement persistence: + - Volume mounts for data + - Configuration persistence + - Log management + +## Scenario 6: Network Security Hardening +Task: +1. Implement secure access: + - Configure SSH with security best practices + - Set up IP-based access controls + - Implement connection rate limiting +2. Configure advanced firewall: + - Multiple zone configuration + - Custom service definitions + - Rich rules for complex scenarios +3. Set up monitoring: + - Failed access attempts + - Service availability + - Network performance + +## Scenario 7: Automated System Administration +Create automation for: +1. User management: + - Bulk user creation/modification + - Group membership management + - Password policy enforcement +2. System maintenance: + - Automated updates + - Security scans + - Performance optimization +3. Reporting system: + - System health reports + - Security audit reports + - Resource utilization trends + +## Scenario 8: Storage Performance Optimization +Task: +1. Optimize storage performance: + - Configure I/O scheduling + - Implement disk caching + - Set up read-ahead values +2. Monitor storage metrics: + - I/O statistics + - Throughput measurements + - Latency monitoring +3. Implement improvements: + - Performance tuning + - Resource allocation + - Bottleneck resolution + +## Scenario 9: Security Compliance +Task: +1. Implement security policies: + - Password complexity requirements + - Account lockout policies + - Session timeout settings +2. Configure SELinux: + - Custom policy modules + - Port definitions + - File contexts +3. Set up security monitoring: + - Audit configuration + - Log analysis + - Compliance reporting + +## Scenario 10: System Backup and Recovery +Task: +1. Implement backup strategy: + - System configuration backup + - User data backup + - Database backup +2. Configure automation: + - Scheduled backups + - Verification procedures + - Retention policies +3. Create recovery procedures: + - Full system recovery + - Individual file recovery + - Service restoration + +## Scenario 11: Performance Monitoring and Tuning +Task: +1. Configure system monitoring: + - CPU usage tracking + - Memory utilization + - I/O performance +2. Implement tuning: + - Process priority adjustment + - Resource limits + - System profile optimization +3. Set up reporting: + - Performance metrics + - Threshold alerts + - Trend analysis + +Each scenario integrates multiple exam objectives while presenting realistic administrative challenges. \ No newline at end of file diff --git a/src/practice-scenarios/scenarios.md b/src/practice-scenarios/scenarios.md new file mode 100644 index 0000000..937bc44 --- /dev/null +++ b/src/practice-scenarios/scenarios.md @@ -0,0 +1,168 @@ +# RHCSA Practice Scenarios - Version 5 + +## Scenario 1: Emergency System Recovery +Task: +1. Recover from failed boot scenarios: + - Reset root password without boot media + - Repair corrupted fstab entries + - Fix incorrect GRUB configuration +2. Implement recovery procedures for: + - Broken network configuration + - Failed LVM setup + - Corrupted file permissions +3. Create emergency documentation: + - Recovery steps for each scenario + - Required commands and procedures + - Verification methods + +## Scenario 2: Advanced Storage Integration +Task: +1. Configure multi-level storage: + - Set up /dev/sdc with 3 partitions (GPT) + - Create RAID1 using /dev/sdd1 and /dev/sde1 + - Implement LVM on top of RAID +2. Configure storage hierarchy: + - /apps (XFS, 10GB) + - /data (Ext4, 20GB) + - /backup (XFS with quota) +3. Implement automated management: + - Storage monitoring + - Alert system + - Expansion procedures + +## Scenario 3: Comprehensive User Environment +Task: +1. Set up development environment: + - Create users: dev1, dev2, dev3 + - Configure groups: developers, testers, deployers + - Set up project directories with appropriate permissions +2. Implement access controls: + - Configure sudo access per group + - Set up restricted shells where needed + - Create shared directories with SGID +3. Configure user environment: + - Custom shell profiles + - Group-specific environment variables + - Access control lists + +## Scenario 4: Service Integration +Task: +1. Configure web services: + - Apache with custom virtual hosts + - Nginx as reverse proxy + - PHP-FPM integration +2. Implement security measures: + - SELinux contexts for web services + - Custom firewall rules + - SSL certificate configuration +3. Set up monitoring: + - Service status checks + - Resource usage monitoring + - Log analysis + +## Scenario 5: Container Development Environment +Task: +1. Create development containers: + - Frontend container (Nginx) + - Backend container (Python) + - Database container (PostgreSQL) +2. Configure container networking: + - Internal network for container communication + - Port mapping for external access + - DNS resolution between containers +3. Implement persistence: + - Volume mounts for data + - Configuration persistence + - Log management + +## Scenario 6: Network Security Hardening +Task: +1. Implement secure access: + - Configure SSH with security best practices + - Set up IP-based access controls + - Implement connection rate limiting +2. Configure advanced firewall: + - Multiple zone configuration + - Custom service definitions + - Rich rules for complex scenarios +3. Set up monitoring: + - Failed access attempts + - Service availability + - Network performance + +## Scenario 7: Automated System Administration +Create automation for: +1. User management: + - Bulk user creation/modification + - Group membership management + - Password policy enforcement +2. System maintenance: + - Automated updates + - Security scans + - Performance optimization +3. Reporting system: + - System health reports + - Security audit reports + - Resource utilization trends + +## Scenario 8: Storage Performance Optimization +Task: +1. Optimize storage performance: + - Configure I/O scheduling + - Implement disk caching + - Set up read-ahead values +2. Monitor storage metrics: + - I/O statistics + - Throughput measurements + - Latency monitoring +3. Implement improvements: + - Performance tuning + - Resource allocation + - Bottleneck resolution + +## Scenario 9: Security Compliance +Task: +1. Implement security policies: + - Password complexity requirements + - Account lockout policies + - Session timeout settings +2. Configure SELinux: + - Custom policy modules + - Port definitions + - File contexts +3. Set up security monitoring: + - Audit configuration + - Log analysis + - Compliance reporting + +## Scenario 10: System Backup and Recovery +Task: +1. Implement backup strategy: + - System configuration backup + - User data backup + - Database backup +2. Configure automation: + - Scheduled backups + - Verification procedures + - Retention policies +3. Create recovery procedures: + - Full system recovery + - Individual file recovery + - Service restoration + +## Scenario 11: Performance Monitoring and Tuning +Task: +1. Configure system monitoring: + - CPU usage tracking + - Memory utilization + - I/O performance +2. Implement tuning: + - Process priority adjustment + - Resource limits + - System profile optimization +3. Set up reporting: + - Performance metrics + - Threshold alerts + - Trend analysis + +Each scenario integrates multiple exam objectives while presenting realistic administrative challenges. \ No newline at end of file diff --git a/src/solutions/README.md b/src/solutions/README.md new file mode 100644 index 0000000..5cc7a08 --- /dev/null +++ b/src/solutions/README.md @@ -0,0 +1,66 @@ +# My RHCSA Practice Solutions Portfolio + +Welcome to my RHCSA practice solutions portfolio. This section documents my hands-on experience solving various Linux system administration scenarios. Each solution demonstrates my practical skills and approach to real-world problems. + +## How to Navigate This Portfolio + +This portfolio is organized by major RHCSA exam objectives: +- User Management +- Storage Management +- Networking +- Service Management +- Security + +Each section contains detailed solutions that include: +1. **Scenario Description**: The original problem statement +2. **Environment Setup**: Details about the testing environment +3. **Solution Approach**: Step-by-step problem-solving methodology +4. **Commands Used**: Key commands with explanations +5. **Verification**: How I verified the solution works +6. **Key Learnings**: Important takeaways from the exercise + +## Solution Template + +When documenting a solution, I follow this format: + +```markdown +# Scenario Title + +## Original Problem +[Description of the scenario] + +## Environment +- OS Version: +- Initial State: +- Required Outcome: + +## Solution Steps +1. Step 1 + ```bash + # Command used + ``` + Explanation of what this command does + +2. Step 2 + ```bash + # Command used + ``` + Explanation of what this command does + +## Verification +Commands used to verify the solution works correctly + +## Key Learnings +- Learning point 1 +- Learning point 2 + +## Additional Notes +Any extra information or alternative approaches +``` + +## Skills Demonstrated +- System Administration +- Problem-Solving +- Documentation +- Best Practices Implementation +- Security Awareness \ No newline at end of file diff --git a/src/solutions/user-management.md b/src/solutions/user-management.md new file mode 100644 index 0000000..4fcbcc2 --- /dev/null +++ b/src/solutions/user-management.md @@ -0,0 +1,46 @@ +# User Management Solutions + +This section contains my solutions to various user management scenarios from the practice exercises. + +## Scenario: Creating Users with Specific Requirements + +### Original Problem +From Practice Scenarios v3: Create a user named 'john' with a custom shell and home directory. + +### Environment +- OS Version: Rocky Linux 8.x +- Initial State: No user 'john' exists +- Required Outcome: User 'john' created with specific requirements + +### Solution Steps +1. Create the user with specific requirements + ```bash + # Create user with custom home directory + sudo useradd -m -d /custom/home/john -s /bin/bash john + + # Set password + sudo passwd john + ``` + This creates the user 'john' with a custom home directory and bash shell + +2. Verify user creation + ```bash + # Check user entry in /etc/passwd + grep john /etc/passwd + + # Verify home directory + ls -la /custom/home/john + ``` + +### Key Learnings +- Understanding of useradd command options +- Importance of verifying user creation +- Best practices for user management + +## Skills Demonstrated +- User Account Management +- Command Line Proficiency +- Security Best Practices +- System Verification + +[Additional scenarios will be documented here as they are completed] \ No newline at end of file