Installing CentOS 7

Please note: This instruction was created for my personal use. Feel free to follow it, but I am not responsible for any problems or data loss!

Download the network install CD, which can be found at: http://ftp.tudelft.nl/centos.org/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1503.iso. Check the MD5 sum by running md5sum on CentOS-7-x86_64-NetInstall-1503.iso and compare the result to the MD5 sums at: http://ftp.tudelft.nl/centos.org/7/isos/x86_64/md5sum.txt.

Boot from the network install CD. Make sure you have at least 768MB of memory available, or you will not be able to create a custom harddisk layout.

Select Install CentOS 7 at the CD boot screen. Set the installation language to English; Keyboard: English (United States). Set the Date&Time options. Click the Installation Source setting, select Network and enter the correct URL: http://ftp.tudelft.nl/centos.org/7/os/x86_64/


  • Select the U.S. English keyboard layout.
  • Select Basic Storate Devices (unless you are installing to a SAN).
  • Enter the hostname you would like to use (do not add the domain name).
  • Select the correct timezone and make sure System uses UTC is enabled.
  • Enter the root password.
  • Select Create Custom Layout and create a primary partition for the OS and one for swap (create a swap partition as large as the amount of memory you have).
  • Use the ext4 filesystem for all partitions (instead of XFS)
  • Use the provided boot loader configuration.
  • Select the Minimal installation option.
  • Wait for the installation to finish.
  • Reboot the system.

  • Add the EPEL repository by running: rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  • Add the noatime option to all ext3/ext4/XFS/etc filesystem options in /etc/fstab
  • Edit /etc/default/grub and remove the rhgb and quiet options from GRUB_CMDLINE_LINUX. Replace these options with: nomodeset vga=normal
  • Create a new grub2 config file using: grub2-mkconfig > /boot/grub2/grub.cfg
  • Update the system: yum upgrade
  • Add a normal user, to log in as: useradd -m username
  • Set a password: passwd username
  • Edit the sudoers file by running: visudo
    • Comment out the line: Defaults    requiretty
    • Comment out the line: Defaults   visiblepw
    • Enable users in the group wheel to use sudo, by uncommenting: %wheel  ALL=(ALL)       ALL
  • Add the normal user to the wheel group: usermod -a -G wheel username
  • Make sure root cannot log in via ssh by changing /etc/ssh/sshd_config:
    • PermitRootLogin without-password
    • This will disable logging in as root, via ssh, but it is still possible to log in as root using SSH public key authentication.
  • Disable SELinux by setting SELINUX=disabled in /etc/sysconfig/selinux (a reboot is needed to fully disable SELinux)
  • Disable the firewall (when in a secure network), by running: systemctl disable firewalld
  • Install the following packages:
yum install -y sysstat iotop strace tcpdump lsof ntp ntpdate man man-pages mlocate wget perl iptraf-ng bind-utils net-tools psmisc vim
  • Enable irqbalance: systemctl enable irqbalance.service (only useful on an SMP system)
  • Set up /etc/ntp.conf:
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1 
restrict -6 ::1
server 0.nl.pool.ntp.org
server 1.nl.pool.ntp.org
server 2.nl.pool.ntp.org
server 3.nl.pool.ntp.org
  • Change /etc/ntp/step-tickers:
0.nl.pool.ntp.org
1.nl.pool.ntp.org
  • Enable ntpdate and ntpd: systemctl enable ntpdate ; systemctl enable ntpd
  • Reboot the system to activate all changes

-- Ivo van Geel - 19 Nov 2014

Edit | Attach | Watch | Print version | History: r27 | r19 < r18 < r17 < r16 | Backlinks | Raw View | More topic actions...
Topic revision: r17 - 11 Mar 2019 - IvoVanGeel
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2010-2019 by LANIS