第2回目となる今回は、CentOS7の新規コマンドの説明です。
サービス管理とネットワーク関連のコマンドを紹介します。
サービス管理
service コマンドから systemctl コマンドへ
CentOS7になり、各種サービスの起動・停止・自動起動設定の方法が変わりました。systemd の導入によって service コマンドの使用から systemctl が推奨になっています。
WebサーバソフトウェアであるApacheを例に説明します。
サービスの起動・停止など
1 2 3 |
サービスの起動 # systemctl start httpd.service |
1 2 3 |
サービスの停止 # systemctl stop httpd.service |
1 2 3 |
サービスの再起動 # systemctl restart httpd.service |
サービスの自動起動設定
1 2 3 4 5 |
自動起動設定の有効化 OS 起動時に httpd が起動するように設定します。CentOS6までは chkconfig を使用しましたが、 CentOS7では以下のコマンドを利用します。 # systemctl enable httpd.service |
1 2 3 4 |
自動起動設定の無効化 OS 起動時に httpd が起動する設定を解除します。 # systemctl disable httpd.service |
1 2 3 4 5 6 7 |
自動起動設定の状態の確認 設定が正しく行われているか確認します。 # systemctl list-unit-files | grep httpd 結果 httpd.service enabled |
ネットワーク関連
CentOS7ではネットワーク関連の設定方法が大幅に変更されています。
CentOS6までは/etc/sysconfig/network-scripts配下のifcfg-eth*ファイルを直接編集することで設定を変更することが可能でした。
net-tools パッケージをインストールすることでCentOS7でも継続して同様の方法で変更が可能ですが、NetworkManagerに付属する「nmtui」と「nmcli」コマンドを使用した変更方法が推奨されていますので、
「nmtui」と「nmcli」コマンドについて説明を行います。
nmtuiの使い方
nmtuiは、以前のsystem-config-networkの代替となるコマンドです。これを実行するとGUI経由でネットワーク周りの変更を実施することが可能です。
なお、CentOS7からネットワークインタフェース名の表記が今までのethXと異なり、enXXXXとなっています。
1 2 3 4 |
固定IPアドレスの設定 # nmtui (GUIが起動します) |
「Edit a connection」を選択
「enp0s3」(例)を選択
「IPv4 CONFIGURATION」
→Manual
「Addresses」
→192.168.0.10/24
「GATEWAY」
→192.168.0.1
「DNS servers」
→192.168.0.11
「OK」選択
「Quit」選択
1 2 3 4 |
ネットワークの再起動 下記のコマンドを実行することで設定が反映されます。 # systemctl restart network.service |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
アドレスの確認 # ip addr show 結果 1: lo: <loopback,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <broadcast,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 inet 192.168.0.10/24 brd 192.168.0.255 scope global dynamic enp0s3 valid_lft 259196sec preferred_lft 259196sec |
nmcliの使い方
上記で行った設定変更をコマンドベースで実行することが可能です。それが「nmcli」コマンドです。
尚、パラメータの変更だけであれば、これまでのように/etc/sysconfig/network-scripts/ifcfg-enp0s3 内の設定を直接変更することでも変更は可能です。
1 2 3 4 5 6 7 8 |
デバイス(ethernet)の一覧を取得 # nmcli device 結果 デバイス タイプ 状態 接続 enp0s3 ethernet 接続済み enp0s3 lo loopback 管理無し -- |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
特定のコネクションを指定し、IPアドレスなどの概要を確認 # nmcli device show enp0s3 結果 GENERAL.デバイス: enp0s3 GENERAL.タイプ: ethernet GENERAL.HWADDR: 08:00:27:AE:xx:xx GENERAL.MTU: 1500 GENERAL.状態: 100 (接続済み) GENERAL.接続: enp0s3 GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/3 WIRED-PROPERTIES.キャリア: オン IP4.アドレス[1]: ip = 192.168.0.10/24, gw = 192.168.0.1 IP4.DNS[1]: 192.168.0.11 IP4.DNS[2]: IP6.アドレス[1]: ip = fe80::a00:27ff:xxxx:xxxx/64, gw = :: |
パラメータを修正したい場合の一例を紹介します。
1 2 3 4 5 6 7 8 9 |
IPアドレスを192.168.0.150, GWを192.168.0.1に変更 # nmcli connection modify enp0s3 ipv4.addresses "192.168.0.150/24 192.168.0.1" <pre class="lang:default decode:true "> DNSサーバを192.168.0.11と192.168.0.12に変更 # nmcli connection modify enp0s3 ipv4.dns "192.168.0.11 192.168.0.12" |
こちらの設定変更についても、以下のコマンドを実施後、有効となります。
1 2 3 |
ネットワークの再起動 # systemctl restart network.service |
host名の変更
最後にhost名の変更方法について説明します。
CentOS 6までは、ホスト名の設定を/etc/sysconfig/networkファイルに記述していましたが、CentOS 7では、/etc/hostnameファイルに記述するようになりました。変更するにはこの/etc/hostnameファイルを直接編集しても良いですが、nmcliコマンドで変更する方法を説明します。
1 2 3 4 5 6 |
host名の確認 # less /etc/hostname 結果 localhost.localdomain |
1 2 3 |
host名の変更 (host名をlocalhost.localdomainからhoge.localdomainに変更します) # nmcli general hostname hoge.localdomain |
host名が変更されたか確認します。
1 2 3 4 5 6 |
host名の確認 # less /etc/hostname 結果 hoge.localdomain |
いかがでしたでしょうか?
サービス管理とネットワーク関連のコマンドについての紹介は以上となります。基本的なコマンドの紹介でしたが、CentOS6までと比べて大幅に変更されたことが分かると思います。
次回から2回に分けてCentOS7の基本的なインストール方法について紹介します。
それでは。