Complete Linux system optimization suite with tmpfs, zram, and German locale support
- Fixed missing setup_tmpfs() function that was causing silent failures - Added comprehensive system scanning for browsers, IDEs, gaming caches - Implemented detailed optimization information display for transparency - Added German locale compatibility for 'free' command (Speicher: vs Mem:) - Fixed division by zero errors in RAM calculations - Created tmpfs-info.sh helper script for detailed status reporting - Enhanced scanning to work on already-optimized systems - Added comprehensive optimization breakdowns with purpose explanations
This commit is contained in:
113
README.md
Normal file
113
README.md
Normal file
@@ -0,0 +1,113 @@
|
||||
# Linux System Tuning Suite
|
||||
|
||||
🚀 **Intelligent system optimization toolkit for Linux desktop systems**
|
||||
|
||||
This repository provides automated system tuning based on hardware detection, usage patterns, and best practices for tmpfs, overlay filesystems, and kernel parameter optimization.
|
||||
|
||||
## ✨ **NEW: One-Button Optimizer**
|
||||
|
||||
🎯 **Quick Start:** `sudo ./one-button-optimizer.sh`
|
||||
|
||||
The **one-button optimizer** is an intelligent, interactive system optimizer that:
|
||||
|
||||
- 🔍 **Analyzes current optimizations** and detects suboptimal configurations
|
||||
- 🤔 **Prompts for user choice** on each optimization
|
||||
- 🎯 **Applies only selected optimizations** - no forced changes
|
||||
- ✅ **Recognizes existing optimal configurations** and leaves them alone
|
||||
- ⚙️ **Handles mixed scenarios** where some optimizations exist but aren't ideal
|
||||
|
||||
### Quick Tools
|
||||
|
||||
- `./one-button-optimizer.sh` - **Main interactive optimizer** (recommended)
|
||||
- `./quick-status-check.sh` - **Quick system status** overview (no changes)
|
||||
- `./tmpfs-info.sh` - **Detailed tmpfs information** and configuration guide
|
||||
- `./launcher.sh` - **Auto-sudo launcher** for the optimizer
|
||||
|
||||
## 🎯 Features
|
||||
|
||||
- **Hardware Detection**: Automatically detects RAM, CPU, storage configuration
|
||||
- **Usage Analysis**: Identifies frequently accessed files and directories
|
||||
- **Intelligent Tuning**: Applies optimizations based on system characteristics
|
||||
- **Interactive Mode**: User control over what gets optimized
|
||||
- **Suboptimal Detection**: Finds and offers to fix existing but suboptimal configs
|
||||
- **Modular Design**: Easy to customize and extend
|
||||
- **Safe Deployment**: Backup and rollback capabilities
|
||||
- **Multi-Distribution**: Works across different Linux distributions
|
||||
|
||||
## 🏗️ Components
|
||||
|
||||
### Core Scripts
|
||||
- `one-button-optimizer.sh` - **🆕 Interactive one-button optimizer**
|
||||
- `tune-system.sh` - Main tuning orchestrator
|
||||
- `system-analyzer.sh` - Hardware and usage analysis
|
||||
- `optimizer.sh` - Apply specific optimizations
|
||||
- `monitor.sh` - System monitoring and health checks
|
||||
|
||||
### Modules
|
||||
- `modules/hardware-detection.sh` - RAM, CPU, storage detection
|
||||
- `modules/usage-analysis.sh` - File access pattern analysis
|
||||
- `modules/zram-optimizer.sh` - zram/zswap configuration
|
||||
|
||||
### Profiles
|
||||
- `profiles/` - Pre-configured optimization profiles
|
||||
- `configs/` - Configuration templates
|
||||
|
||||
## 🚀 Quick Start
|
||||
|
||||
```bash
|
||||
# Clone the repository
|
||||
git clone git@gitea.egonetix.de:root/linux_system_tuning.git
|
||||
cd linux_system_tuning
|
||||
|
||||
# Run system analysis
|
||||
sudo ./system-analyzer.sh
|
||||
|
||||
# Apply optimizations
|
||||
sudo ./tune-system.sh --auto
|
||||
|
||||
# Monitor results
|
||||
./monitor.sh
|
||||
```
|
||||
|
||||
## 📊 Supported Optimizations
|
||||
|
||||
- **Memory Management**: zram, tmpfs, overlay filesystems
|
||||
- **Kernel Tuning**: vm parameters, scheduler settings
|
||||
- **Cache Optimization**: Browser, IDE, package manager caches
|
||||
- **I/O Optimization**: Storage and network tuning
|
||||
- **Desktop Responsiveness**: Priority and scheduling tweaks
|
||||
|
||||
## 🔧 Configuration
|
||||
|
||||
The system can be configured through:
|
||||
- Interactive setup wizard
|
||||
- Configuration files
|
||||
- Command-line parameters
|
||||
- Environment variables
|
||||
|
||||
## 📈 Benchmarking
|
||||
|
||||
Built-in benchmarking tools to measure:
|
||||
- Boot time improvements
|
||||
- Application startup times
|
||||
- Memory utilization efficiency
|
||||
- I/O performance gains
|
||||
|
||||
## 🛡️ Safety
|
||||
|
||||
- Automatic backups before changes
|
||||
- Rollback capabilities
|
||||
- Safe mode for testing
|
||||
- Validation checks
|
||||
|
||||
## 📄 License
|
||||
|
||||
MIT License - see LICENSE file for details
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
Contributions welcome! Please read CONTRIBUTING.md for guidelines.
|
||||
|
||||
---
|
||||
|
||||
*Making Linux systems faster, one optimization at a time* ⚡
|
||||
Reference in New Issue
Block a user