Les notes de version documentent les fonctionnalités et améliorations majeures apportées à la version Red Hat Enterprise Linux 7 ainsi que les problèmes connus dans cette version.
Red Hat Enterprise Linux 7 est disponible en tant que kit unique sur les architectures suivantes :
• AMD 64 bits
• Intel 64 bits
• IBM POWER7 et POWER8 (big endian)
• IBM POWER8 (little endian)
• IBM System z
Dans cette version, Red Hat offre des améliorations pour les serveurs et les systèmes, ainsi qu'une amélioration de l'expérience du logiciel libre de Red Hat dans son ensemble.
Dans les grandes lignes, RHEL 7 c’est :
Noyau Linux 3.10 ; Glibc 2.17 ; GNOME 3.8 ; KDE 4.10 ; Python 2.7.5 ; Firefox 24.4 ; LibreOffice 4.1 ; Bash 4.2 ; OpenSSH 6.4p1 ; Apache HTTPD 2.4.6 ; Tomcat 7 ; PHP 5.4.16 ; Bind 9.9 ; DHCP 4.2 ; PostgreSQL 9.2 ; Postfix 2.10 ; Sendmail 8.14.7 ; MariaDB 5.5.35 ; Perl 5.16.3 ; GCC 4.8.2 ; GDB 7.6.1 ; SystemTap 2.4 ; Samba 4.1.1 ; systemd 208 ; Xorg-server 1.15.0.
Globalement, en termes de versions logicielles, RHEL 7 se rapproche de Fedora 19.
Refonte de l’installeur Anaconda.
Grub2 remplace grub
MariaDB remplace MySQL ;
Systemd remplace Upstart comme système d’init ;
Inclusion de Docker et de LXC, montrant l’ambition de Red Hat à faire de RHEL la plate-forme d’informatique en nuages de référence ;
XFS comme système de fichiers par défaut, en remplacement d’ext4.
Répertoire /bin, /sbin, /lib et /lib64 sont désormais dans le repertoire /usr.
Ntpd remplacé par chronyd par défaut comme démon de temps.
Ifconfig et route sont dépréciées par rapport à la commande ip.
Netstat déprécié par rapport à la commande ss.
System user UID change de 0-499 à 0-999
nc (netcat) replaced by nmap-ncat
Le support d'installation pour IBM Power Systems utilise désormais le chargeur de démarrage GRUB2 à la place de yaboot, qui était précédemment offert.
Pour la variante big endian de Red Hat Enterprise Linux sur POWER, GRUB2 est recommandé mais yaboot peut aussi être utilisé. La nouvelle variante, little endian, requiert le démarrage GRUB2.
Le Guide d'installation a été mis à jour avec des instructions pour paramétrer un serveur de démarrage réseau pour systèmes IBM Power Systems utilisant GRUB2.
systemd est utilisé comme init (système d’initialisation, démarrage) par défaut. Il s’occupe donc de gérer les services, le système (watch dogs, ACPI…) et aussi partiellement les machines virtuelles et les conteneurs (en coopération avec libvirtd).
En effet, la version présente est la 208, qui inclut notamment les changements introduits dans la version 205 : la « prise de possession de l’arbre des cgroups ». systemd est le seul responsable de l’arborescence des cgroups et se charge donc d’y placer tous les processus. Cette nouvelle interface est décrite sur le wiki de systemd. La différence ici sera donc marquée, même par rapport à un système avec un systemd ancien (Debian, par exemple) : le cas pour libvirt.
Pour faire fonctionner RHEL 7, Red Hat recommande de disposer d'au moins 1 Go de mémoire vive (c'était déjà le cas avec RHEL 6). Dans les faits, il est possible de démarrer avec seulement 256 Mo de mémoire vive, mais il vaudra mieux en avoir 512 Mo pour ouvrir une session graphique (et il ne faudra pas être pressé).
Du côté de l'installeur, celui-ci refusera de démarrer en dessous de 512 Mo de mémoire.
Pour ce qui est de la limite haute, Red Hat a augmenté le nombre de processeurs logiques que peut utiliser RHEL. Là où RHEL 6 en est actuellement à 4096 coeurs (en x86_64), la 7 monte jusqu'à 5120 ! Pour la mémoire vive, le maximum annoncé est de 64 To.
Le système de fichiers utilisé par défaut lors de l’installation est maintenant XFS, qui succède à ext4. Btrfs est disponible lors de l’installation, mais n’est pas recommandé par défaut (aperçu technologique, non pris en charge pour la production). Tant XFS que BtrFS (quand il sera pleinement pris en charge) voient leurs capacités prises en charge poussées 500 Tio par système de fichiers.
Avec systemd vient le passage du répertoire /tmp au système de fichiers intégralement en mémoire tmpfs par défaut. Cela ne semble affecter que les machines physiques (les machines virtuelles ont un /tmp sur disque par défaut apparemment puisqu'il semble que systemd détecte qu'il n'est pas sur une machine physique).
Cette fonction peut se désactiver très facilement (appliqué au prochain redémarrage) :
$ systemctl mask tmp.mount
Le système de fichiers ext4 prend désormais en charge des fichiers de 50 Tio contre 16 Tio auparavant. Cache de périphérique blocs sur disque SSD.
Un autre aperçu technologique de RHEL 7 est la possibilité d'utiliser un disque SSD PCIe comme cache intermédiaire pour des disques mécaniques plus lents, via lvm(8).
| Task | RHEL6 | RHEL7 |
|---|---|---|
| Graphical configuration tools | system-config-* | gnome-control-center |
| Configure network | system-config-network | nmcli |
| nmtui | ||
| nm-connection-editor | ||
| Configure system language | system-config-language | localectl |
| Configure system time and date | system-config-date | timedatectl |
| date | date | |
| Synchronize time and date | ntpdate | ntpdate |
| /etc/ntp.conf | /etc/chrony.conf | |
| Configure keyboard | system-config-keyboard | localectl |
| Task | RHEL6 | RHEL7 |
|---|---|---|
| List all services | chkconfig | systemctl -at service |
| ls /etc/init.d/ | ls /{usr/lib,etc}/systemd/system/*.service | |
| List running services | service –status-all | systemctl -t service –state=active |
| Start/stop a service | service name start | systemctl start name.service |
| service name stop | systemctl stop name.service | |
| Enable/disable a service | chkconfig name on | systemctl enable name.service |
| chkconfig name off | systemctl disable name.service | |
| Check if service enabled | chkconfig name | systemctl is-enabled name |
| View service status | service name status | systemctl status name.service |
| Create service file or change config | chkconfig –add | systemctl daemon-reload |
| View runlevel/target | runlevel | systemctl get-default |
| Change runlevel/target | init runlevel | systemctl isolate name.target |
| init runlevel | ||
| Configure logging | /etc/rsyslog.conf | /etc/rsyslog.conf |
| /etc/rsyslog.d/*.conf | ||
| /var/log/journal/ | ||
| /etc/systemd/journald.conf | ||
| View logs | /var/log/ | /var/log/ |
| journalctl |
| Task | RHEL6 | RHEL7 |
|---|---|---|
| Bypass root password prompt at boot | append 1 or s or init=/bin/bash to kernel cmdline | append rd.break or init=/bin/bash to kernel cmdline |
| Power off system | poweroff | systemctl poweroff |
| Halt system | halt | systemctl halt |
| Reboot system | reboot | systemctl reboot |
| Configure default runlevel/target | /etc/inittab | systemctl set-default |
| Configure GRUB bootloader | /boot/grub/grub.conf | /etc/default/grub |
| grub2-mkconfig | ||
| grub-set-default |
| Task | RHEL6 | RHEL7 |
|---|---|---|
| Install software | yum install | yum install |
| yum groupinstall | yum group install | |
| View software info | yum info | yum info |
| yum groupinfo | yum group info |
| Task | RHEL6 | RHEL7 |
|---|---|---|
| Create/modify disk partitions | fdisk | fdisk |
| parted | parted | |
| gdisk | gdisk | |
| Default file system | ext4 | xfs |
| Enlarge volumes formatted with default filesystem | vgextend | vgextend |
| lvextend | lvextend | |
| resize2fs | xfs_growfs |
| Task | RHEL6 | RHEL7 |
|---|---|---|
| Configure name resolution | /etc/hosts | /etc/hosts |
| /etc/resolv.conf | /etc/resolv.conf | |
| nmcli con mod | ||
| Configure hostname | /etc/sysconfig/network | /etc/hostname |
| hostnamectl | ||
| nmtui | ||
| View network interface info | ip addr | ip addr |
| ifconfig | nmcli dev show | |
| brctl | teamdctl | |
| brctl | ||
| bridge | ||
| Configure network interface | /etc/sysconfig/network-scripts/ifcfg-* | /etc/sysconfig/network-scripts/ifcfg-* |
| nmcli con [add/mod/edit] | ||
| nmtui | ||
| nm-connection-editor | ||
| Configure firewall | iptables & ip6tables | firewall-cmd |
| /etc/sysconfig/ip*tables | firewall-config | |
| system-config-firewall | ||
| View ports/sockets | netstat | ss |
| ss | lsof | |
| lsof |