CentOS 7はCentOS 6以前のCentOSに比べて様々な点が異なっています。
どっちがよいかと聞かれれば、CentOS 7の方が、新しい分おすすめですが、これまでにないぐらい違っていたので、私も結構苦労しました。
多くのサーバー管理者が同じような悩みを持つのではないかと思い、ここでは、CentOS 6とCentOS 7の違いをまとめてみました。
ちなみに、RHEL7とRHEL6の違いも同じものと推測されます。
目次
service、chkconfigでなくてsystemctl
これまでのCentOSに慣れていると、サービスを起動するには
# service httpd start
とやりたくなってしまいますが、serviceやchkconfigというコマンドは、CentOS 7ではsystemctl に置き換わっています。
#systemctl disable xxx でxxxをサービスの登録から解除
#systemctl enable xxx でxxxをサービスに登録
#systemctl list-unit-files | grep xxxでサービスの登録確認
#systemctl start xxx でxxxを起動
#systemctl stop xxx でxxxを停止
#systemctl status xxx でxxxのステータスを確認
となっています。
ただ、古いコマンドで実行した場合、ちゃんとリダイレクトしてくれたり、注意メッセージを表記してくれたりします。
Redirecting to /bin/systemctl start nginx.service
注記:
この出力は SysV サービスのみであり、ネイティブな systemd のサービスは含まれていません。
systemd services. SysV 設定のデータはネイティブな systemd の設定によって上書きされます。
systemd サービスを一覧表示するには 'systemctl list-unit-files' を使用してください。
特定のターゲットにおいて有効化されているサービスを確認するには、以下のコマンドを使います。
iptablesでなくてfirewalld
CentOS 7ではファイアウォールの設定は、iptablesではなくてfirewalldを使います。
詳しくは以下にまとめました。
これまでの、iptablesではネットワーク環境ごとに設定を変更することが出来ません。
一方、CentOS 7ではゾーンという考え方を導入して、ネットワークに接続する形態ごとにファイアウォールの設定を変更することが可能になっています。
このあたりは、Windowsの「ネットワークと共有センター」と似ています。
net-toolsでなくてiproute2
CentOS 7ではifconfigコマンドが含まれるnet-toolsは、iproute2という新しいパッケージに置き換わっています。
詳しくは以下にまとめました。
ifconfig や netstat というコマンドではなくて、
ip や ss というコマンドを使います。
MySQLでなくてMariaDB
CentOS 7では、MariaDBをデフォルトとして使っています。
オープンソースのデータベースとしてデファクトスタンダードだったMySQLですが、2008年にサンマイクロシステムズに買収され、サンマイクロシステムズも2010年にオラクルに買収されました。
オラクル傘下に入ったMySQLはOracleとも競合するため、その動向が注目されましたが、その後は、あまりパッとしないようです。
最近は、オープンソースのMySQLからフォークしたMariaDBが注目されています。
ちなみに、オープンソースの世界では、陳腐化してイノベーションがない本家からフォークして新しいプロジェクトを立ち上げることはよくあるようです。
例えば、BlinkというChromeが使っているレンダリングエンジンも、もともとはSafariが使っているWebKitからフォークしたプロジェクトです。
CentOS 7では、MariaDBをデフォルトとして使っています。
MySQLからフォークしたプロジェクトなので、MySQLのコマンド類はそのままMariaDBでも使えるので、これまでMySQLを使っていた人は特に違和感はないと思います。
CentOS 7にMariaDB をインストールした時の記事は以下の通りです。
時刻同期は、ntpdでなくてchronyd
CentOS 7で時刻同期には、ntpdではなくて chronyd を使います。
詳しくは以下にまとめました。
ログの確認 journalctl
ログを確認するためのコマンド journalctl が追加されています。
として使います。
例えば、
# journalctl -u httpd
のように使います。
デフォルトのファイルシステムは、EXT4でなくてXFS
XFSの論理ボリュームの拡張は、resize2fs でなくて、xfs_growfs を使います。
EXT4の時のように、resize2fsを実行すると、
resize2fs: Bad magic number in superblock while trying to open /dev/mapper/xxxxx
Couldn’t find valid filesystem superblock.
と表示されます。
ブートローダーは、GRUBでなくてGRUB2
CentOS 6までブートローダーGRUBとCentOS 7で採用されたGRUB2では大きく構造が異なります。
GRUB2では、ブートに関する設定ファイルは、/boot/grub2/grub.cfgです。
このファイルは、/etc/default/grubファイルを編集してから
# grub2-mkconfig -o /boot/grub2/grub.cfg
のようにgrub2-mkconfigを実行することにより生成されます。
おまけ:CentOS 7を試してみる
当サイトは、
を使っています。
以下の記事で試用方法を説明しています。
以下の記事で「CentOS 7でServer with GUIのインストール手順」を説明しています。
コメント
[…] 保存版 CentOS 7 (rhel7) とCentOS 6 (rhel6)との違い、変更点まとめ (chkconfig、systemc… […]
[…] 保存版 CentOS 7 (rhel7) とCentOS 6 (rhel6)との違い、変更点まとめ (chkconfig、systemc… […]
[…] ・https://urashita.com/archives/1538 […]