前几天还在想,Ubuntu LTS更新到了18.04,Debian 9也发布这么久了,唯独RHEL/CentOS还是稳定在7,也不知道8什么时候发布,没想到今天刷资讯的时候就刷到了Red Hat Enterprise Linux 8 Beta版发布的消息,不管稳不稳定,先下载下来尝个鲜先。
首先,放上官方页面:
https://developers.redhat.com/rhel8/
得益于红帽的开发者免费计划,我们不用花钱也能体验RHEL,我就是为了体验一下纯粹的RHEL而注册了一个Red Hat Developer账户,如果不想花钱,又想体验RHEL的,注册一个账户就行了,注册好之后就能从Red Hat下载到很多产品,比如说Red Hat Enterprise Linux及Red Hat Enterprise Linux Beta,对,我没写错,这两者是分开的。
注册完登录之后,可以下载安装镜像,下载安装都没什么说的,和CentOS7差不多,按提示一步一步进行就能安装成功了。我是在VirtualBox里面安装的,划分了2G的内存8G的SSD,整个安装及体验过程很流畅。
安装好之后,需要使用如下命令进行注册和激活,注意是输入账号和密码,不是邮箱,我就是没看清直接输入导致失败了很多次:
subscription-manager attach --auto
这里要特别说明一下的是,由于我是之前注册的RHEL账户,导致用上述命令进行注册的时候,注册完始终说未订阅,网上找了找发现还需要到这个页面进行订阅:http://www.redhat.com/wapps/try/RHEL8Beta ,订阅之后,再到命令行输入如上命令就可能成功使用RHEL源了。
RHEL 8 Beta体验
可能是还是Beta阶段,SSH上去之后发现,虽然功能可能正常,但是输出还有些问题,比如说这个:
初步体验
内核版本更新到了目前比较新的4.18.0,查了下,这个内核版本并不是LTS版,不知道为什么会选择这个版本的内核?也不知道正式版发布的时候会不会更换:
[root@RHEL8 zocodev]# uname -a
Linux RHEL8 4.18.0-32.el8.x86_64 #1 SMP Sat Oct 27 19:26:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
默认情况下,selinux和firewalld还存在,并且默认开启,Firewalld我能理解,selinux我是实在不知道怎么使用,每次都是拿到机器就把这东西关闭。
体验过程中发现,RHEL8还是使用的yum作为包管理器,而不是Fedora上使用的DNF,虽然有的时候敲yum也会出现dnf的身影,而且,和之前不一样的是,RHEL8多一个一个叫做Appstreams的东西,我的理解是,一个软件包不再是只提供一个版本进行选择,拿PHP来说,在RHEL8中目前提供了7.1和7.2两个版本,Python则提供了3.6和2.7两个版本,而比较诡异的是,我不知道之前的RHEL7是否提供了MySQL-Server,但是RHEL8提供了MySQL 8.0及MariaDB 10.3供选择,以下是可安装的Appstreams列表:
[root@RHEL8 zocodev]# yum module list
Failed to set locale, defaulting to C
Updating Subscription Management repositories.
Updating Subscription Management repositories.
Last metadata expiration check: 0:28:21 ago on Sat Nov 17 03:42:02 2018.
Red Hat Enterprise Linux 8 for x86_64 - AppStream Beta (RPMs)
Name Stream Profiles Summary
389-ds 1.4 default 389 Directory Server (base)
App-cpanminus 1.7044 [d] default [d] Get, unpack, build and install CPAN modules
DBD-MySQL 4.046 [d] default [d] A MySQL interface for Perl
DBD-Pg 3.7 [d] default [d] A PostgreSQL interface for Perl
DBD-SQLite 1.58 [d] default [d] SQLite DBI driver
DBI 1.641 [d] default [d] A database access API for Perl
YAML 1.24 [d] default [d] Perl parser for YAML
ant 1.10 [d] default [d] Java build tool
container-tools 1.0 [d] default [d] Common tools and dependencies for container runtimes
freeradius 3.0 [d] server [d] High-performance and highly configurable free RADIUS server
gimp 2.8 [d] devel, default [d] gimp module
go-toolset rhel8 [d] default [d] Go
httpd 2.4 [d] devel, minimal, default [d] Apache HTTP Server
idm DL1 adtrust, client, dns, server, default [d] The Red Hat Enterprise Linux Identity Management system module
idm client [d] default [d] RHEL IdM long term support client module
inkscape 0.92.3 [d] default [d]
javapackages-runtime 201801 [d] default [d] Basic runtime utilities to support Java applications
llvm-toolset rhel8 [d] default [d] LLVM
mailman 2.1 [d] default [d]
mariadb 10.3 [d] client, server, galera, default [d] MariaDB Module
maven 3.5 [d] default [d] Java project management and project comprehension tool
mercurial 4.6 [d] default [d] Mercurial -- a distributed SCM
mod_auth_openidc 2.3 Apache module suporting OpenID Connect authentication
mod_perl 2.0.10 [d] devel, default [d], reload An embedded Perl interpreter for the Apache HTTP Server
mysql 8.0 [d] client, server, default [d] MySQL Module
nginx 1.14 [d] default [d] nginx webserver
nodejs 10 [d] development, minimal, s2i, default [d] Javascript runtime
nodejs 8 development, minimal, s2i, default [d] Javascript runtime
parfait 0.5 default Parfait Module
perl 5.24 minimal, default Practical Extraction and Report Language
perl 5.26 [d] minimal, default [d] Practical Extraction and Report Language
php 7.1 devel, minimal, default [d] PHP scripting language
php 7.2 [d] devel, minimal, default [d] PHP scripting language
pki-core 10.6 PKI Core
pki-deps 10.6 PKI Dependencies
postgresql 10 [d] client, default [d] postgresql module
postgresql 9.6 client, default [d] postgresql module
python27 2.7 [d] default [d] Python programming language, version 2.7
python36 3.6 [d][e] build [i], default [d] Python programming language, version 3.6
redis 4.0 [d] default [d] Redis persistent key-value database
rhn-tools 1.0 [d] default [d] Red Hat Satellite 5 tools for RHEL
ruby 2.5 [d] default [d] An interpreter of object-oriented scripting language
rust-toolset rhel8 [d] default [d] Rust
satellite-5-client 1.0 [d] gui, default [d] Red Hat Satellite 5 client packages
scala 2.10 [d] default [d] A hybrid functional/object-oriented language for the JVM
sos-collector rhel8 [d] default [d] Utility to collect sosreports from multi-node environments
squid 4 [d] default [d] Squid - Optimising Web Delivery
subversion 1.10 [d] server, default [d] Apache Subversion
swig 3.0 [d] complete, default [d] Connects C/C++/Objective C to some high-level programming languages
varnish 6 [d] default [d] Varnish HTTP cache
virt rhel [d] default [d] Virtualization module
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
根据文档,安装命令格式为:
yum module install php:7.1/default
也就是说,除了之前的yum install packgename_and_version的格式安装软件包之外,还能用上述命令安装指定软件的指定版本及指定相关模块,也是厉害了。
而且还有一点让我很意外的是,RHEL8竟然使用的是OpenSSL 1.1.1及支持TLS v1.3的Nginx 1.14版本,这对于喜欢折腾Nginx的我来说,可真是一件大好事啊。
至于还有一个CodeReady Linux Builder,我还没搞懂是什么东西。
未完待续…