保存版 CentOS 7とCentOS 6との違いまとめ

CentOS 7はCentOS 6以前のCentOSに比べて様々な点が異なっています。

これまでにないぐらい違っていたので、私も結構苦労しました。

多くのサーバー管理者が同じような悩みを持つのではないかと思い、ここでは、違いをまとめてみました。

スポンサーリンク

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のステータスを確認

となっています。

ただ、古いコマンドで実行した場合、ちゃんとリダイレクトしてくれたり、注意メッセージを表記してくれたりします。

# service nginx start
Redirecting to /bin/systemctl start  nginx.service

# chkconfig --list nginx

注記: この出力は SysV サービスのみであり、ネイティブな systemd のサービスは含まれていません。
systemd services. SysV 設定のデータはネイティブな systemd の設定によって上書きされます。
systemd サービスを一覧表示するには 'systemctl list-unit-files' を使用してください。
特定のターゲットにおいて有効化されているサービスを確認するには、
'systemctl list-dependencies [target]' 。

iptablesでなくてfirewalld

CentOS 7ではファイアウォールの設定は、iptablesではなくてfirewalldを使います。

詳しくは以下にまとめました。
https://urashita.com/archives/963

これまでの、iptablesではネットワーク環境ごとに設定を変更することが出来ません。

一方、CentOS 7ではゾーンという考え方を導入して、ネットワークに接続する形態ごとにファイアウォールの設定を変更することが可能になっています。

このあたりは、Windowsの「ネットワークと共有センター」と似ています。

net-toolsでなくてiproute2

CentOS 7ではifconfigコマンドが含まれるnet-toolsは、iproute2という新しいパッケージに置き換わっています。

詳しくは以下にまとめました。
https://urashita.com/archives/1469

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を使っていた人は特に違和感はないと思います。

時刻同期は、ntpdでなくてchronyd

CentOS 7で時刻同期には、ntpdではなくてchronydを使います。

詳しくは以下にまとめました。
https://urashita.com/archives/1522

ログの確認 journalctl

ログを確認するためのコマンド journalctlが追加されています。

# journalctl -u ユニット名
として使います。

例えば、

# journalctl -u ssh
# journalctl -u httpd
のように使います。

デフォルトのファイルシステムは、EXT4でなくてXFS

XFSの論理ボリュームの拡張は、resize2fsでなくて、xfs_growfsを使います。

EXT4の時のように、resize2fsを実行すると、

# resize2fs /dev/mapper/xxxxx

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を試してみる

当サイトは、さくらインターネットのVPS を使っています。

以下の記事で試用方法を説明しています。
https://urashita.com/archives/2233

以下の記事で「CentOS 7でServer with GUIのインストール手順」を説明しています。
https://urashita.com/archives/2283

最後まで読んでいただきありがとうござました。
この記事が気に入っていただけたらシェアしてくれると嬉しいです。

スポンサーリンク
スポンサーリンク
Translate »