Rocky Linux is a community-driven enterprise Linux distribution that serves as a drop-in replacement for CentOS. This comprehensive guide will walk you through the installation process, system configuration, and post-installation setup for development work. ## What is Rocky Linux? [Rocky Linux] is a community version of Enterprise Linux that: - Tracks slightly ahead of the stable release - Is enterprise-ready and production-grade - Maintains 1:1 binary compatibility with RHEL - Is supported by a large, active community ## Prerequisites Before you begin, ensure you have: - A computer meeting minimum system requirements - A USB drive (8GB minimum) or blank CD/DVD - Internet connection for updates - Basic understanding of Linux concepts ## Installation Steps ### 1. Download and Prepare Installation Media 1. [Download] the Rocky Linux ISO image 2. Choose between: - Minimal ISO (recommended for servers) - DVD ISO (includes additional packages) 3. Create bootable media: - USB drive using tools like Rufus or Etcher - CD/DVD using burning software ### 2. Basic Installation 1. Boot from installation media 2. Select installation language 3. Configure installation destination 4. Set up network connection 5. Configure system timezone 6. Create root password 7. Create user account 8. Begin installation ### 3. Disk Partitioning Here's a recommended partition layout: ```sh [jeff@localhost ~]$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 7.8G 0 7.8G 0% /dev tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs 7.8G 8.9M 7.8G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/mapper/rl-root 70G 3.1G 67G 5% / /dev/md126p1 1014M 236M 779M 24% /boot /dev/mapper/rl-home 1.8T 13G 1.8T 1% /home tmpfs 1.6G 0 1.6G 0% /run/user/1000 ``` ## Post-Installation Configuration ### 1. System Updates ```sh # Update system packages sudo dnf update -y # Reboot if required sudo reboot ``` ### 2. Install Essential Tools #### Ansible Installation [Ansible] is recommended for system automation: ```sh # Install EPEL repository sudo dnf install -y epel-release # Install Ansible sudo dnf install ansible -y # Verify installation ansible --version ``` #### Development Tools ```sh # Install Git sudo dnf install git # Install Node.js and NVM sudo dnf install nodejs sudo dnf install nvm curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash ``` ### 3. System Configuration #### Set Hostname ```sh # Edit hosts file vi /etc/hosts # Add or modify the line: 127.0.0.1 myhostname.domain.com # Restart hostname service systemctl restart systemd-hostnamed # Reboot to apply changes sudo reboot ``` ## Security Considerations 1. Firewall Configuration ```sh # Check firewall status sudo firewall-cmd --state # Configure firewall rules as needed sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --reload ``` 2. SELinux - Enabled by default - Configure based on security requirements - Monitor audit logs 3. System Updates - Enable automatic updates - Regular security patches - Monitor update notifications ## Performance Optimization 1. System Tuning ```sh # Install tuned sudo dnf install tuned # Enable and start tuned service sudo systemctl enable tuned sudo systemctl start tuned ``` 2. Swap Configuration - Monitor swap usage - Adjust if needed - Consider SSD for swap ## Troubleshooting ### Common Issues 1. Boot Problems - Check BIOS settings - Verify boot media - Review system logs 2. Network Issues - Check network configuration - Verify firewall rules - Test connectivity 3. Package Management - Clear DNF cache - Check repository status - Verify package signatures ## Further Reading - [Rocky Linux Documentation] - [Enterprise Linux Comparison Guide] - [Development Environment Setup] [rocky linux]: https://rockylinux.org/ [download]: https://rockylinux.org/download [ansible]: https://www.ansible.com/ [rocky linux documentation]: https://docs.rockylinux.org/ [enterprise linux comparison guide]: https://computingforgeeks.com/rocky-linux-vs-centos-stream-vs-rhel-vs-oracle-linux/ [development environment setup]: https://docs.rockylinux.org/guides/contribute/localdocs/rockydocs_web_dev/?h=development