Linux distribution
- Linux Distribution for MediaWiki 1.40
This article details the recommended and supported Linux distributions for running MediaWiki 1.40. Choosing the right distribution is a critical first step in ensuring a stable, secure, and performant wiki. This guide is geared toward newcomers to server administration.
Why Linux?
Linux is the overwhelmingly preferred operating system for MediaWiki deployments due to its stability, security, open-source nature, and excellent support for the underlying technologies MediaWiki relies upon, such as Apache web server, PHP, and MySQL or MariaDB.
Supported Distributions
While MediaWiki *can* technically run on many Linux distributions, the following are officially recommended and well-tested:
- Ubuntu (Long Term Support (LTS) releases are strongly preferred)
- Debian (Stable release)
- CentOS Stream (Note: CentOS Linux is no longer actively developed. CentOS Stream is its successor, but requires more frequent updates.)
- Rocky Linux (A community-supported alternative to CentOS Linux)
- AlmaLinux (Another community-supported alternative to CentOS Linux)
Using a distribution *not* on this list is possible, but you may encounter compatibility issues and will likely have to troubleshoot problems yourself. Remember to always consult the MediaWiki installation guide for the most up-to-date recommendations.
Detailed Distribution Specifications
The following tables provide specific version recommendations and key system requirements. These are based on best practices for a production MediaWiki installation.
Distribution | Recommended Version (as of October 26, 2023) | Kernel Requirement | Minimum RAM | Minimum Disk Space |
---|---|---|---|---|
Ubuntu | 22.04 LTS (Jammy Jellyfish) | 5.15 | 4 GB | 20 GB |
Debian | 11 (Bullseye) | 5.10 | 4 GB | 20 GB |
CentOS Stream | 9 | 5.14 | 4 GB | 20 GB |
Rocky Linux | 9 | 5.14 | 4 GB | 20 GB |
AlmaLinux | 9 | 5.14 | 4 GB | 20 GB |
Package Management
Each distribution uses a different package manager. Familiarity with your chosen distribution’s package manager is essential for installing and updating MediaWiki's dependencies.
Distribution | Package Manager | Common Commands |
---|---|---|
Ubuntu/Debian | APT (Advanced Package Tool) | `sudo apt update`, `sudo apt upgrade`, `sudo apt install <package_name>` |
CentOS Stream/Rocky Linux/AlmaLinux | DNF (Dandified Yum) | `sudo dnf update`, `sudo dnf upgrade`, `sudo dnf install <package_name>` |
Security Considerations
Regardless of the distribution chosen, security should be a top priority. Important security measures include:
- Keeping the operating system and all installed packages up-to-date.
- Configuring a firewall (e.g., ufw on Ubuntu, firewalld on CentOS/Rocky/AlmaLinux) to restrict access to necessary ports (80 for HTTP, 443 for HTTPS, 22 for SSH - consider disabling direct SSH access and using a VPN instead).
- Regularly auditing system logs for suspicious activity.
- Implementing strong passwords and SSH key authentication.
- Using HTTPS with a valid SSL/TLS certificate.
- Following the MediaWiki security recommendations.
Specific Configuration Tips
- **Ubuntu:** Ubuntu’s default `ufw` firewall is easy to configure. Use `sudo ufw allow 80`, `sudo ufw allow 443`, and `sudo ufw allow 22` (or your chosen SSH port) to open the necessary ports.
- **Debian:** Debian is known for its stability. Ensure you have the `contrib` and `non-free` repositories enabled to access all necessary packages.
- **CentOS Stream/Rocky Linux/AlmaLinux:** These distributions benefit from using `firewalld`. Use `sudo firewall-cmd --permanent --add-service=http` and `sudo firewall-cmd --permanent --add-service=https` to allow HTTP and HTTPS traffic.
- **Filesystem:** Consider using the ext4 filesystem for optimal performance.
Troubleshooting
If you encounter problems during installation or operation, consult the following resources:
- MediaWiki FAQ
- MediaWiki manual
- MediaWiki forums
- The documentation for your chosen Linux distribution.
- Check the PHP error logs and Apache error logs for clues.
Further Reading
- Setting up a web server
- Database configuration
- PHP configuration
- MediaWiki system requirements
- Server security
Intel-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Core i7-6700K/7700 Server | 64 GB DDR4, NVMe SSD 2 x 512 GB | CPU Benchmark: 8046 |
Core i7-8700 Server | 64 GB DDR4, NVMe SSD 2x1 TB | CPU Benchmark: 13124 |
Core i9-9900K Server | 128 GB DDR4, NVMe SSD 2 x 1 TB | CPU Benchmark: 49969 |
Core i9-13900 Server (64GB) | 64 GB RAM, 2x2 TB NVMe SSD | |
Core i9-13900 Server (128GB) | 128 GB RAM, 2x2 TB NVMe SSD | |
Core i5-13500 Server (64GB) | 64 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Server (128GB) | 128 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Workstation | 64 GB DDR5 RAM, 2 NVMe SSD, NVIDIA RTX 4000 |
AMD-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Ryzen 5 3600 Server | 64 GB RAM, 2x480 GB NVMe | CPU Benchmark: 17849 |
Ryzen 7 7700 Server | 64 GB DDR5 RAM, 2x1 TB NVMe | CPU Benchmark: 35224 |
Ryzen 9 5950X Server | 128 GB RAM, 2x4 TB NVMe | CPU Benchmark: 46045 |
Ryzen 9 7950X Server | 128 GB DDR5 ECC, 2x2 TB NVMe | CPU Benchmark: 63561 |
EPYC 7502P Server (128GB/1TB) | 128 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/2TB) | 128 GB RAM, 2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/4TB) | 128 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/1TB) | 256 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/4TB) | 256 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 9454P Server | 256 GB RAM, 2x2 TB NVMe |
Order Your Dedicated Server
Configure and order your ideal server configuration
Need Assistance?
- Telegram: @powervps Servers at a discounted price
⚠️ *Note: All benchmark scores are approximate and may vary based on configuration. Server availability subject to stock.* ⚠️