- Introduction
- Task 1: System Monitoring Setup
- Task 2: User Management and Access Control
- Task 3: Backup Configuration for Web Servers
- Overall Report and Presentation
This repository contains implementation details for three system administration tasks:
- System Monitoring Setup
- User Management and Access Control
- Backup Configuration for Web Servers
Each task includes step-by-step implementation, configurations, relevant logs, and screenshots.
To configure a monitoring system that ensures the development environment’s health, performance, and capacity planning.
- Install Monitoring Tools
- Installed
htopfor real-time system performance tracking. - Used
dfanddufor disk usage monitoring.
- Installed
- Configure System Metrics Logging
- Created a script to log CPU, memory, and process usage.
- Set up
cronto run the script every 1 minute.
- Process Monitoring
- Identified resource-intensive processes
- Logging and Reporting
- Configured log output to system_monitor.log.
- Implemented a reporting structure for periodic review.
-
Log files containing system performance snapshots.

-
Screenshots of the monitoring setup in action.
-
cron setup
To set up user accounts and configure secure access controls for new developers.
- User Account Creation
- Created user accounts for Sarah and Mike using
useradd. - Set up secure passwords using
passwd.
- Created user accounts for Sarah and Mike using
- Directory Setup
- Created isolated working directories:
/home/sarah/workspace/home/mike/workspace
- Set permissions using
chownandchmodto restrict access.
- Created isolated working directories:
- Enforce Password Policies
- Configured password expiration and complexity using
chageandpasswd.
- Configured password expiration and complexity using
-
Confirmation of user creation and Screenshots of permission settings.
-
Verification of password policy enforcement.
To automate backups for Apache and Nginx web servers for data integrity and recovery.
- Backup Script Development
- Created a backup script to archive the following:
- Apache:
/etc/apache2/and/var/www/html/ - Nginx:
/etc/nginx/and/usr/share/nginx/html/
- Apache:
- Compressed the backup files with timestamped filenames.
- Created a backup script to archive the following:
- Cron Job Scheduling
- Scheduled backups using
cronto run every Sunday after 12:00 AM.
- Scheduled backups using
- Backup Integrity Verification
- Implemented a check to list the contents of the compressed files after creation.
- Logged verification results in backup_YYYY-MM-DD-HH-MM-SS.log.
-
Backup files stored in
/backups/.
-
Cron job configuration output.
-
Verification log demonstrating backup integrity.
- Clone the repository:
git clone https://github.com/Avinjay/Linux_assignment.git cd Linux_assignment - Review the scripts for monitoring, user management, and backups.
- Execute scripts as needed following the documented steps.
- Avinjay (avinjaymewada25@gmail.com)
This README serves as a comprehensive guide for setting up and managing essential system administration tasks efficiently.