一馬力のメモ帳

MVSからLinuxまで。基盤屋さんは眠らない

Firewalldの自動起動を停止する[CentOS7.3]

firewalld (http://www.firewalld.org) ちょっした実験する時に
動いていると邪魔になるときありますよね?

CentOS6まではiptabelesが同じ役割を担っていて
停止するときは “ chkconfig iptables off “でサクッと止めていました。

CentOS7ではfirewalld + systemdの組み合わせになったので
コマンドが変わって来ます。

今回はCentOS7ではfirewalld + systemd構成で
firewalldの自動起動を停止していきます。

目次


firewalldの起動状況確認

まずは現在の起動状況の確認。
確認はsystemctl status firewalldコマンドで。

Active: active (running) なので起動中です。

[root@centos73 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since 日 2018-02-04 11:19:19 JST; 8h ago
     Docs: man:firewalld(1)
 Main PID: 736 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─736 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

 2月 04 11:19:19 centos73 systemd[1]: Starting firewalld - dynamic firewall daemon...
 2月 04 11:19:19 centos73 systemd[1]: Started firewalld - dynamic firewall daemon.
[root@centos73 ~]#

firewalldの停止

一旦手動で停止します

コマンドはsystemctl stop firewalld

コマンド投入後,再度 systemctl status firewalldで確認し
ステータスがActive: inactive (dead) になっている事を確認します

[root@centos73 ~]# systemctl stop firewalld
[root@centos73 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since 日 2018-02-04 20:11:38 JST; 4s ago
     Docs: man:firewalld(1)
 Main PID: 736 (code=exited, status=0/SUCCESS)

 2月 04 11:19:19 centos73 systemd[1]: Starting firewalld - dynamic firewall daemon...
 2月 04 11:19:19 centos73 systemd[1]: Started firewalld - dynamic firewall daemon.
 2月 04 20:11:38 centos73 systemd[1]: Stopping firewalld - dynamic firewall daemon...
 2月 04 20:11:38 centos73 systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@centos73 ~]#

自動起動の停止

最後にOSを再起動しても起動しないように
systemctl disable firewalldコマンドで自動起動を停止します。

[root@centos73 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
[root@centos73 ~]#

これでfirewalldに邪魔されることなく実験がはかどります

今回はここまで。

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Google Chrome
  Safari

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

zabbix-agentのインストールと登録を詳しく説明[CentOS7.3]

zabbixは「監視」のイメージが強いですが
標準テンプレートには性能情報を取得するアイテムも含まれています

ちょっとした性能検証の結果を確認するのに
vmstat,sar,topなどのコマンドをまとめる手間を考えると
zabbixをインストールした方がお手軽に済ませる事ができます

ということで今回はzabbix agentのインストールからzabbix サーバへの登録まで
手順を紹介したいと思います。

目次


zabbix リポジトリ設定パッケージ(epository configuration package)のインストール

パッケージのインストール

zabbix 3.4のリポジトリ設定パッケージをインストールします
パッケージの公開URLは

http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

このrpm rpm -ivh コマンドでインストールします

[root@centos73 ~]# rpm -ivhhttp://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpmを取得中
警告: /var/tmp/rpm-tmp.mDYXu9: ヘッダー V4 RSA/SHA512 Signature、鍵 ID a14fe591: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:zabbix-release-3.4-2.el7         ################################# [100%]
[root@centos73 ~]#

インストール後の確認

インストールが完了したら
zabbix関連パッケージが参照可能になっている事を確認します

コマンドは yum search zabbix で確認します

[root@centos73 ~]# yum search zabbix
読み込んだプラグイン:fastestmirror
base                                                                                             | 3.6 kB  00:00:00
extras                                                                                           | 3.4 kB  00:00:00
updates                                                                                          | 3.4 kB  00:00:00
zabbix                                                                                           | 2.9 kB  00:00:00
zabbix-non-supported                                                                             |  951 B  00:00:00
zabbix/x86_64/primary_db                                                                         |  56 kB  00:00:00
zabbix-non-supported/x86_64/primary                                                              | 1.6 kB  00:00:00
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
zabbix-non-supported                                                                                                4/4
================================================= N/S matched: zabbix ==================================================
pcp-export-zabbix-agent.x86_64 : Module for exporting PCP metrics to Zabbix agent
zabbix-agent.x86_64 : Zabbix Agent
zabbix-get.x86_64 : Zabbix Get
zabbix-java-gateway.x86_64 : Zabbix java gateway
zabbix-proxy-mysql.x86_64 : Zabbix proxy for MySQL or MariaDB database
zabbix-proxy-pgsql.x86_64 : Zabbix proxy for PostgreSQL database
zabbix-proxy-sqlite3.x86_64 : Zabbix proxy for SQLite3 database
zabbix-release.noarch : Zabbix repository configuration
zabbix-sender.x86_64 : Zabbix Sender
zabbix-server-mysql.x86_64 : Zabbix server for MySQL or MariaDB database
zabbix-server-pgsql.x86_64 : Zabbix server for PostgresSQL database
zabbix-web.noarch : Zabbix web frontend common package
zabbix-web-mysql.noarch : Zabbix web frontend for MySQL
zabbix-web-pgsql.noarch : Zabbix web frontend for PostgreSQL
zabbix-web-japanese.noarch : Japanese font settings for frontend

  Name and summary matches only, use "search all" for everything.
[root@centos73 ~]#

これで事前準備は完了です。

zabbix-agentのインストール

agentのインストール

事前準備が出来てのでzabbix agentをインストールします。
インストールはyumコマンドで yum install zabbix-agent  

[root@centos73 ~]# yum install zabbix-agent
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ zabbix-agent.x86_64 0:3.4.6-1.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================
Package                        アーキテクチャー         バージョン                      リポジトリー              容量
========================================================================================================================
インストール中:
zabbix-agent                   x86_64                   3.4.6-1.el7                     zabbix                   361 k

トランザクションの要約
========================================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 361 k
インストール容量: 1.4 M
Is this ok [y/d/N]: y
Downloading packages:
警告: /var/cache/yum/x86_64/7/zabbix/packages/zabbix-agent-3.4.6-1.el7.x86_64.rpm: ヘッダー V4 RSA/SHA512 Signature、鍵 ID a14fe591: NOKEY
zabbix-agent-3.4.6-1.el7.x86_64.rpm の公開鍵がインストールされていません
zabbix-agent-3.4.6-1.el7.x86_64.rpm                                                              | 361 kB  00:00:01
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591 から鍵を取得中です。
Importing GPG key 0xA14FE591:
Userid     : "Zabbix LLC <packager@zabbix.com>"
Fingerprint: a184 8f53 52d0 22b9 471d 83d0 082a b56b a14f e591
Package    : zabbix-release-3.4-2.el7.noarch (installed)
From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
  インストール中          : zabbix-agent-3.4.6-1.el7.x86_64                                                         1/1
  検証中                  : zabbix-agent-3.4.6-1.el7.x86_64                                                         1/1

インストール:
  zabbix-agent.x86_64 0:3.4.6-1.el7

完了しました!
[root@centos73 ~]#

インストールの確認

インストールが完了したらzabbix-agentのステータスを
  systemctl status zabbix-agent  コマンドで確認します

[root@centos73 ~]# systemctl status zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@centos73 ~]#

ここまででインストールまで完了。
次は基本的な設定を行っていきます

zabbix-agentの設定

zabbix-agentの設定ファイルは
/etc/zabbix/zabbix_agentd.conf  です

このファイルを編集していきます。

デフォルト設定のバックアップ

設定ファイルを編集する前には必ずバックアップをとっておきましょう。

cp -p /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.org   
 

これで間違っても元に戻れます。

[root@centos73 ~]#
[root@centos73 ~]# cp -p /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.org
[root@centos73 ~]#

設定変更

zabbix_agentd.confを変更して設定をカスタマイズしていきます。

[root@centos73 ~]#
[root@centos73 ~]# vi /etc/zabbix/zabbix_agentd.conf

設定変更内容

zabbix_agentd.confの設定変更箇所は

+ Server=
    + zabbixサーバのIPアドレス
+ ServerActive=
    + アクティブチェック用のZabbixサーバのIP:ポート
+ Hostname=
    + zabbixサーバで表示するホスト名
    + ※注意:サーバで設定するホスト名と一致させる事

の3箇所
自分の環境に合わせていカスタマイズします

(参考)zabbix_agentd.conf 変更前後のdiff

[root@centos73 ~]# diff -u /etc/zabbix/zabbix_agentd.conf.org  /etc/zabbix/zabbix_agentd.conf
--- /etc/zabbix/zabbix_agentd.conf.org    2018-01-15 18:16:51.000000000 +0900
+++ /etc/zabbix/zabbix_agentd.conf    2018-02-10 18:52:23.914323104 +0900
@@ -62,6 +62,7 @@
# Mandatory: no
# Default:
# SourceIP=
+SourceIP=192.168.3.100

### Option: EnableRemoteCommands
#    Whether remote commands from Zabbix server are allowed.
@@ -94,7 +95,8 @@
# Default:
# Server=

-Server=127.0.0.1
+#Server=127.0.0.1
+Server=192.168.3.110

### Option: ListenPort
#    Agent will listen on this port for connections from the server.
@@ -135,7 +137,8 @@
# Default:
# ServerActive=

-ServerActive=127.0.0.1
+#ServerActive=127.0.0.1
+ServerActive=192.168.3.110

### Option: Hostname
#    Unique, case sensitive hostname.
@@ -146,7 +149,8 @@
# Default:
# Hostname=

-Hostname=Zabbix server
+#Hostname=Zabbix server
+Hostname=centos73

### Option: HostnameItem
#    Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
[root@centos73 ~]#

zabbix-agent の起動と自動起動設定

zabbix-agentの起動

zabbix-agentを起動します
起動は  systemctl start zabbix-agent です

起動後  systemctl status zabbix-agent コマンドで 正常に起動出来たことを確認します。

[root@centos73 ~]# systemctl start zabbix-agent
[root@centos73 ~]# systemctl status  zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: active (running) since 土 2018-02-10 21:57:54 JST; 9s ago
  Process: 2160 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 2162 (zabbix_agentd)
   CGroup: /system.slice/zabbix-agent.service
           ├─2162 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           ├─2163 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
           ├─2164 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
           ├─2165 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
           ├─2166 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
           └─2167 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

2月 10 21:57:54 centos73 systemd[1]: Starting Zabbix Agent...
2月 10 21:57:54 centos73 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
2月 10 21:57:54 centos73 systemd[1]: Started Zabbix Agent.
[root@centos73 ~]#

自動起動設定

起動が出来たいことが確認できたら,仕上げに自動起動を設定していきます
コマンドは  systemctl enable zabbix-agent です

[root@centos73 ~]# systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@centos73 ~]#

systemctl statusコマンドの結果を確認して
自動起動がenableになっている事を確認します。

  • 変更前 Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
  • 変更後 Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service;  enabled; vendor preset: disabled)
[root@centos73 ~]# systemctl status  zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
   Active: active (running) since 土 2018-02-10 21:57:54 JST; 1min 17s ago
Main PID: 2162 (zabbix_agentd)
   CGroup: /system.slice/zabbix-agent.service
           ├─2162 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           ├─2163 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
           ├─2164 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
           ├─2165 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
           ├─2166 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
           └─2167 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

2月 10 21:57:54 centos73 systemd[1]: Starting Zabbix Agent...
2月 10 21:57:54 centos73 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
2月 10 21:57:54 centos73 systemd[1]: Started Zabbix Agent.
[root@centos73 ~]#

ここまででagent側の準備は完了です。

zabbix serverへの登録

ここからはserver側に設定を入れてインストールを完了していきます。
操作はwebインターフェースから行います。

ホスト登録

agentの登録操作の手順は設定画面のホストの作成から行います
設定画面から下の順番でクリックしていきます

  • 設定メニュー
  • ホスト
  • ホストの作成

f:id:htbariki:20180225132427p:plain

ホスト登録画面(ホスト)

ホスト登録画面から必要な情報を登録していきます
下の画面を確認しながら登録してみましょう

設定箇所は4箇所です。

  • ホスト名
  • 表示名
  • グループ
  • エージェントのインターフェース

f:id:htbariki:20180225132420p:plain

ホスト登録画面(テンプレート)

続いてテンプレートタブから
必要なテンプレートを設定していきます

今回はTemplate OS linuxを設定します

テンプレートの選択部分にlinuxと入力すると
サジェストがきいて選択対象が絞られていきます

選択が完了したら追加をクリックして登録完了です

f:id:htbariki:20180225132439p:plain

ホスト(agent)登録画面確認

最後に登録したホスト(agent)のステータスが
有効になっている事を確認してインストール作業完了です

f:id:htbariki:20180225132432p:plain

参考資料

Zabbix Documentation 3.4 https://www.zabbix.com/documentation/3.4/start

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Firefox

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

ZABBIX

Server
  zabbix_appliance
  Version 3.4
  Release 3.4.6
  Platform VirtualBox, VMWare (.vmdk)
Agent
  zabbix-agent.x86_64 0:3.4.6-1.el7

SElinux有効状態でzabbix-agent起動時のエラー

zabbix-agentを起動したら,failedになって起動しない
どうもSElinuxが有効化されていると起動しないようです。

同じエラーで起動しない人のために起動時(起動不良時)のログなどメモしておきます

ログは良いからとりあえずSElinux無効化したい!って人は
過去記事を参考にしてください

ichibariki.hatenablog.com

目次


起動時のエラー

 systemctl start zabbix-agentで起動する→エラー出力

zabbix-agentを起動すると

"Job for zabbix-agent.service failed because a configured resource limit was exceeded.”

と出力されて起動しない。

[root@centos73 ~]# systemctl start zabbix-agent
Job for zabbix-agent.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-agent.service" and "journalctl -xe" for details.
[root@centos73 ~]#

 systemctl status zabbix-agentで状況を確認する。

systemctl status zabbix-agentコマンドで状況を確認すると

”systemd[1]: zabbix-agent.service failed.”

と出力されている。

[root@centos73 ~]# systemctl status  zabbix-agent
● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
   Active: activating (auto-restart) (Result: resources) since 土 2018-02-10 19:07:44 JST; 2s ago
  Process: 2511 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)

 2月 10 19:07:44 centos73 systemd[1]: zabbix-agent.service never wrote its PID file. Failing.
 2月 10 19:07:44 centos73 systemd[1]: Failed to start Zabbix Agent.
 2月 10 19:07:44 centos73 systemd[1]: Unit zabbix-agent.service entered failed state.
 2月 10 19:07:44 centos73 systemd[1]: zabbix-agent.service failed.
[root@centos73 ~]#
[root@centos73 ~]#
[root@centos73 ~]#

 journalctlのログ

journalctlコマンドで

  • 最近のメッセージ(-e)を
  • 詳細に表示(-x)する

Unix zabbix-agent.serviceがfailedしている事がわかる。

[root@centos73 ~]# journalctl -xe

 2月 10 19:09:36 centos73 systemd[1]: Starting Zabbix Agent...
-- Subject: Unit zabbix-agent.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit zabbix-agent.service has begun starting up.
 2月 10 19:09:37 centos73 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
 2月 10 19:09:37 centos73 systemd[1]: zabbix-agent.service never wrote its PID file. Failing.
 2月 10 19:09:37 centos73 systemd[1]: Failed to start Zabbix Agent.
-- Subject: Unit zabbix-agent.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit zabbix-agent.service has failed.
--
-- The result is failed.
 2月 10 19:09:37 centos73 systemd[1]: Unit zabbix-agent.service entered failed state.
 2月 10 19:09:37 centos73 systemd[1]: zabbix-agent.service failed.
[root@centos73 ~]#

起動しない原因

SElinuxを無効化すると,何事もなく起動する。
ログにSElinuxに捕まってますよーー。って出力してくれれば良いのにね。

[参考]

ichibariki.hatenablog.com

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Firefox

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

SELinuxを無効化する手順を5ステップで紹介[CentOS7.3] (2018/12/09更新)

f:id:htbariki:20181209185722p:plain

SELinuxを無効化する手順を5ステップで紹介します。

SELinux (Security-Enhanced Linux)。これを正確に使える人いるのかな?
SELinuxが有効化された状態では色々なサービスが動かない事が多いので
「インストール→SELinuxの無効化」を流れ作業で行っている人も多いのではないでしょうか?

今回はCentOS7.3でSELinuxを無効化してみます。

目次


ステータス確認

SELinuxのステータス確認は
sestatusコマンドで確認できます。

コマンドの確認結果で

SELinux status:                 enabled

となっていれば有効化されています。

[参考] sestatusコマンドの結果

[root@centos73 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      28
[root@centos73 ~]#

SELinuxを無効化する

SELinuxを無効化するには
/etc/selinux/config
を修正します。

修正箇所は SELINUX=” 部分 

修正前) SELINUX=enforcing 
修正後) SELINUX=disabled 

のように修正します。

作業の流れは

① 設定のバックアップ
② 設定変更
③ 設定内容の確認
④ OSのの再起動

で行います。

(Step1)設定のバックアップ

[root@centos73 ~]# cp -p /etc/selinux/config  /etc/selinux/config.org
[root@centos73 ~]#
[root@centos73 ~]# ls -l /etc/selinux/config*
-rw-r--r--. 1 root root 547  1月 28 19:59 /etc/selinux/config
-rw-r--r--. 1 root root 547  1月 28 19:59 /etc/selinux/config.org
[root@centos73 ~]#

(Step2)設定変更

[root@centos73 ~]# vi /etc/selinux/config

(Step3)設定変更内容の確認(diff)

[root@centos73 ~]# diff -u /etc/selinux/config.org /etc/selinux/config
--- /etc/selinux/config.org    2018-01-28 19:59:18.991374421 +0900
+++ /etc/selinux/config    2018-02-10 21:51:23.644691380 +0900
@@ -4,7 +4,7 @@
 #     enforcing - SELinux security policy is enforced.
 #     permissive - SELinux prints warnings instead of enforcing.
 #     disabled - No SELinux policy is loaded.
-SELINUX=enforcing
+SELINUX=disabled
 # SELINUXTYPE= can take one of three two values:
 #     targeted - Targeted processes are protected,
 #     minimum - Modification of targeted policy. Only selected processes are protected.
[root@centos73 ~]#

注意

修正箇所が間違っていた場合。OSが起動できなくなります。
修正は確実に実施しましょう!

(Step4)設定反映(再起動)

[root@centos73 ~]# systemctl reboot

(Step5)ステータス確認

[root@centos73 ~]# sestatus
SELinux status:                 disabled

参考資料

SELinux ユーザーおよび管理者のガイド

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-security-enhanced_linux-working_with_selinux-changing_selinux_modes

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Firefox

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

iostatを使いたい (sysstatパッケージ)

LinuxでI/Oの状況を確認するのに便利なコマンド「iostat」
CentOSを最小構成でインストールすると導入されていない。

iostatコマンドとiostatを含むsysstatのインストールメモ

iostatコマンドを含むパッケージを調べる

[root@centos73 ~]# yum provides iostat
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
sysstat-10.1.5-12.el7.x86_64 : Collection of performance monitoring tools for Linux
リポジトリー        : base
一致          :
ファイル名    : /usr/bin/iostat

sysstatのインストール

[root@centos73 ~]# yum install sysstat
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ sysstat.x86_64 0:10.1.5-12.el7 を インストール
--> 依存性の処理をしています: libsensors.so.4()(64bit) のパッケージ: sysstat-10.1.5-12.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ lm_sensors-libs.x86_64 0:3.4.0-4.20160601gitf9185e5.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================
 Package                      アーキテクチャー    バージョン                                    リポジトリー       容量
========================================================================================================================
インストール中:
 sysstat                      x86_64              10.1.5-12.el7                                 base              310 k
依存性関連でのインストールをします:
 lm_sensors-libs              x86_64              3.4.0-4.20160601gitf9185e5.el7                base               41 k

トランザクションの要約
========================================================================================================================
インストール  1 パッケージ (+1 個の依存関係のパッケージ)

総ダウンロード容量: 351 k
インストール容量: 1.2 M
Is this ok [y/d/N]: y
Downloading packages:
(1/2): lm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64.rpm                                 |  41 kB  00:00:00
(2/2): sysstat-10.1.5-12.el7.x86_64.rpm                                                          | 310 kB  00:00:00
------------------------------------------------------------------------------------------------------------------------
合計                                                                                    1.0 MB/s | 351 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : lm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64                                   1/2
  インストール中          : sysstat-10.1.5-12.el7.x86_64                                                            2/2
  検証中                  : sysstat-10.1.5-12.el7.x86_64                                                            1/2
  検証中                  : lm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64                                   2/2

インストール:
  sysstat.x86_64 0:10.1.5-12.el7

依存性関連をインストールしました:
  lm_sensors-libs.x86_64 0:3.4.0-4.20160601gitf9185e5.el7

完了しました!
[root@centos73 ~]#

sysstatに含まれるファイル

[root@centos73 ~]# repoquery sysstat
sysstat-0:10.1.5-12.el7.x86_64
[root@centos73 ~]# repoquery --list sysstat
/etc/cron.d/sysstat
/etc/sysconfig/sysstat
/etc/sysconfig/sysstat.ioconf
/usr/bin/cifsiostat
/usr/bin/iostat
/usr/bin/mpstat
/usr/bin/nfsiostat-sysstat
/usr/bin/pidstat
/usr/bin/sadf
/usr/bin/sar
/usr/bin/tapestat
/usr/lib/systemd/system/sysstat.service
/usr/lib64/sa
/usr/lib64/sa/sa1
/usr/lib64/sa/sa2
/usr/lib64/sa/sadc
/usr/share/doc/sysstat-10.1.5
/usr/share/doc/sysstat-10.1.5/CHANGES
/usr/share/doc/sysstat-10.1.5/COPYING
/usr/share/doc/sysstat-10.1.5/CREDITS
/usr/share/doc/sysstat-10.1.5/FAQ
/usr/share/doc/sysstat-10.1.5/README
/usr/share/doc/sysstat-10.1.5/sysstat-10.1.5.lsm
/usr/share/locale/af/LC_MESSAGES/sysstat.mo
/usr/share/locale/cs/LC_MESSAGES/sysstat.mo
/usr/share/locale/da/LC_MESSAGES/sysstat.mo
/usr/share/locale/de/LC_MESSAGES/sysstat.mo
/usr/share/locale/eo/LC_MESSAGES/sysstat.mo
/usr/share/locale/es/LC_MESSAGES/sysstat.mo
/usr/share/locale/eu/LC_MESSAGES/sysstat.mo
/usr/share/locale/fi/LC_MESSAGES/sysstat.mo
/usr/share/locale/fr/LC_MESSAGES/sysstat.mo
/usr/share/locale/hr/LC_MESSAGES/sysstat.mo
/usr/share/locale/id/LC_MESSAGES/sysstat.mo
/usr/share/locale/it/LC_MESSAGES/sysstat.mo
/usr/share/locale/ja/LC_MESSAGES/sysstat.mo
/usr/share/locale/ky/LC_MESSAGES/sysstat.mo
/usr/share/locale/lv/LC_MESSAGES/sysstat.mo
/usr/share/locale/mt/LC_MESSAGES/sysstat.mo
/usr/share/locale/nb/LC_MESSAGES/sysstat.mo
/usr/share/locale/nl/LC_MESSAGES/sysstat.mo
/usr/share/locale/nn/LC_MESSAGES/sysstat.mo
/usr/share/locale/pl/LC_MESSAGES/sysstat.mo
/usr/share/locale/pt/LC_MESSAGES/sysstat.mo
/usr/share/locale/pt_BR/LC_MESSAGES/sysstat.mo
/usr/share/locale/ro/LC_MESSAGES/sysstat.mo
/usr/share/locale/ru/LC_MESSAGES/sysstat.mo
/usr/share/locale/sk/LC_MESSAGES/sysstat.mo
/usr/share/locale/sr/LC_MESSAGES/sysstat.mo
/usr/share/locale/sv/LC_MESSAGES/sysstat.mo
/usr/share/locale/uk/LC_MESSAGES/sysstat.mo
/usr/share/locale/vi/LC_MESSAGES/sysstat.mo
/usr/share/locale/zh_CN/LC_MESSAGES/sysstat.mo
/usr/share/locale/zh_TW/LC_MESSAGES/sysstat.mo
/usr/share/man/man1/cifsiostat.1.gz
/usr/share/man/man1/iostat.1.gz
/usr/share/man/man1/mpstat.1.gz
/usr/share/man/man1/nfsiostat-sysstat.1.gz
/usr/share/man/man1/pidstat.1.gz
/usr/share/man/man1/sadf.1.gz
/usr/share/man/man1/sar.1.gz
/usr/share/man/man1/tapestat.1.gz
/usr/share/man/man5/sysstat.5.gz
/usr/share/man/man8/sa1.8.gz
/usr/share/man/man8/sa2.8.gz
/usr/share/man/man8/sadc.8.gz
/var/log/sa
[root@centos73 ~]#

sysstatパッケージに含まれるコマンド

[root@centos73 ~]# repoquery --list sysstat | grep bin
/usr/bin/cifsiostat
/usr/bin/iostat
/usr/bin/mpstat
/usr/bin/nfsiostat-sysstat
/usr/bin/pidstat
/usr/bin/sadf
/usr/bin/sar
/usr/bin/tapestat

sysstatパッケージに含まれるコマンド概要

 cifsiostat

[root@centos73 ~]# man cifsiostat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       cifsiostat - Report CIFS statistics.
--
SYNOPSIS
       cifsiostat [ -h ] [ -k | -m ] [ -t ] [ -V ] [ interval [ count ] ]
--
DESCRIPTION
       The cifsiostat command displays statistics about read and write operations on CIFS filesystems.
[root@centos73 ~]#

 iostat

[root@centos73 ~]# man iostat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       iostat  -  Report  Central Processing Unit (CPU) statistics and input/output statistics for devices and parti‐
--
SYNOPSIS
       iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] [ -j { ID | LABEL |  PATH  |
--
DESCRIPTION
       The iostat command is used for monitoring system input/output device loading by observing the time the devices
[root@centos73 ~]#

 mpstat

[root@centos73 ~]# man mpstat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       mpstat - Report processors related statistics.
--
SYNOPSIS
       mpstat  [  -A  ] [ -u ] [ -V ] [ -I { SUM | CPU | SCPU | ALL } ] [ -P { cpu [,...] | ON | ALL } ] [ interval [
--
DESCRIPTION
       The mpstat command writes to standard output activities for each available processor, processor  0  being  the
[root@centos73 ~]#

 nfsiostat-sysstat

[root@centos73 ~]# man nfsiostat-sysstat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       nfsiostat-sysstat  (the  nfsiostat command from the sysstat package) - Report input/output statistics for net‐
--
SYNOPSIS
       nfsiostat-sysstat [ -h ] [ -k | -m ] [ -t ] [ -V ] [ interval [ count ] ]
--
DESCRIPTION
       The nfsiostat-sysstat command displays statistics about read and write operations on NFS filesystems.
[root@centos73 ~]#

 pidstat

[root@centos73 ~]# man pidstat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       pidstat - Report statistics for Linux tasks.
--
SYNOPSIS
       pidstat  [ -d ] [ -h ] [ -I ] [ -l ] [ -r ] [ -s ] [ -t ] [ -U [ username ] ] [ -u ] [ -V ] [ -w ] [ -C comm ]
--
DESCRIPTION
       The pidstat command is used for monitoring individual tasks currently being managed by the Linux  kernel.   It
[root@centos73 ~]#

 sadf

[root@centos73 ~]# man sadf | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       sadf - Display data collected by sar in multiple formats.
--
SYNOPSIS
       sadf  [  -C  ]  [ -d | -j | -p | -x ] [ -H ] [ -h ] [ -T | -t | -U ] [ -V ] [ -P { cpu [,...] | ALL } ] [ -s [
--
DESCRIPTION
       The sadf command is used for displaying the contents of data files created by the sar(1) command.  But  unlike
[root@centos73 ~]#

 sar

[root@centos73 ~]# man sar | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       sar - Collect, report, or save system activity information.
--
SYNOPSIS
       sar  [ -A ] [ -B ] [ -b ] [ -C ] [ -d ] [ -H ] [ -h ] [ -p ] [ -q ] [ -R ] [ -r ] [ -S ] [ -t ] [ -u [ ALL ] ]
--
DESCRIPTION
       The sar command writes to standard output the contents of selected cumulative activity counters in the operat‐
[root@centos73 ~]#

 tapestat

[root@centos73 ~]# man tapestat | grep -A 1 -E "NAME|SYNOPSIS|DESCRIPTION"
NAME
       tapestat - Report tape statistics.
--
SYNOPSIS
       tapestat [ -k | -m ] [ -t ] [ -V ] [ -y ] [ -z ] [ interval [ count ] ]
--
DESCRIPTION
       The tapestat command is used for monitoring the activity of tape drives connected to a system.
[root@centos73 ~]#

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS High Sierra
 ブラウザ
  Google Chrome
  Safari

ゲストOS

[root@centos73 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos73 ~]# uname -a
Linux centos73 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos73 ~]#

CentOS7.2でctrl-alt-delは完全に無効化できないぞって話

毎度。一馬力です。

ctrl-alt-del!

バルス!!と同じくらいキケンなキーワードです

Windowsに慣れ親しんだ人たちは困った時,お世話になるコマンドだと思います。

ctrl-alt-del。これ同じIAマシン上で動作するLinuxサーバで入力しちゃうと

悲惨な結末がまってます。

そう、サーバの再起動です。

Linuxサーバを運用している皆さんの中には

ctrl-alt-delを無効化している人も多いのではないでしょうか?

今回はそのctrl-alt-del無効化がCentOS7.2,RHEL7.2では完全に動作しない!!

という話です。

目次


ctrl-alt-delを無効化する方法

まずはctrl-alt-delを無効化する方法
CentOS7では”systemctl”コマンドで無効化します。

設定コマンド

systemctl mask ctrl-alt-del.target

コマンド実行結果

[root@CentOS7 system]#  systemctl mask ctrl-alt-del.target
Created symlink from /etc/systemd/system/ctrl-alt-del.target to /dev/null.
[root@CentOS7 system]# pwd
/etc/systemd/system
[root@CentOS7 system]# ll
lrwxrwxrwx. 1 root root    9  2月  4 22:24 ctrl-alt-del.target -> /dev/null

ctrl-alt-delを入力し再起動されない事を確認

設定後早速”ctrl-alt-del”を入力して動作を確認してみます、、、、。
とは言ってもBlog上では動作確認の結果をうまく伝えられないので

tail -f /var/log/messages コマンドを実行した上で”ctrl-alt-del”を入力してみると。

[root@CentOS7 ~]# tail -f /var/log/messages
Feb  4 21:44:38 CentOS7 systemd: Failed to enqueue ctrl-alt-del.target job: Unit ctrl-alt-del.target is masked. ★
Feb  4 21:44:38 CentOS7 systemd: Received SIGINT.

しっかり”ctrl-alt-del”が無効化されているログが表示されますね。(上の★部分)

これでIAマシンのバルス(”ctrl-alt-del”)からサーバを守れたわけです。

ctrl-alt-delを連打–>サーバ再起動 T_T

注意:本番稼働中のサーバで実験しないで下さい

さて、”ctrl-alt-del”。一回入力した程度ではなんともなかったので
向きになって連打してみます。

連打です。”ctrl-alt-del”を押しっぱなしでしても良いかもしれません。
バルス祭りです。すると、、、。

、、、、。。。再起動しちゃいましたね、、、。

再起動時のログ

さて再起動時のログを確認してみると

Feb  4 21:44:40 CentOS7 systemd: Failed to enqueue ctrl-alt-del.target job: Unit ctrl-alt-del.target is masked.Feb  4 21:44:40 CentOS7 systemd: Received SIGINT.
Feb  4 21:44:40 CentOS7 systemd: Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately. ★
Feb  4 21:44:40 CentOS7 systemd: Shutting down.

systemdさんから「2秒以内に7回”ctrl-alt-del”押されたから今すぐ再起動するね^^」(★部分)
という悲しいお知らせが、、。

何してくれてんだい!!って感じですね。
せっかくバルス(”ctrl-alt-del”)無効化したのに、意味ないじゃん!です。

 ”ctrl-alt-del”投入時の動作解析

こんにゃろっ!ってことで仕組みを調べてみましょう。

対象の確認

まずは,対象の確認から。
今回バルス(”ctrl-alt-del”)無効化がきかないのはCentOS7.2です。

[root@CentOS7 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@CentOS7 ~]# uname -a
Linux CentOS7 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@CentOS7 ~]#

解析

ログ(下の★部分)から,再起動するタイミングで
systemdさんからメッセージが出力されている事が分かります

Feb  4 21:44:40 CentOS7 systemd: Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately. ★

自分でsystemdですって名乗っているくらいなので,間違いなく彼(systemd)の仕業でしょう。
f:id:htbariki:20170430143023p:plain

systemdのソースコードダウンロード

こまったらソースコードです。
読めば動きがわかるってのはLinuxの良いところです。

systemdのソースコードのダウンロード方法はしたのコマンド例を参考にしてください

[root@CentOS7 systemd-219]# yumdownloader --source systemd
[root@CentOS7 systemd-219]# rpm -ivh systemd-219-30.el7_3.6.src.rpm
[root@CentOS7 systemd-219]# tar Jxvf systemd-219.tar.xz

再起動時のメッセージ出力箇所の特定(grep)

ソースコードを展開したので,次はメッセージから調べる場所を特定していきます。

“ Ctrl-Alt-Del was pressed more than 7 times within 2s “のメッセージを足がかりに
Systemdのどのコードを読めばよいかgrepを利用して特定していきます。

検索をかけた結果”/core/manager.c”から該当のメッセージは出力されているようですな

[root@CentOS7 systemd-219]# find ./ -type f -print |xargs grep "Ctrl-Alt-Del was pressed more than 7 times within 2s"
./src/core/manager.c:                                        log_notice("Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately.");
./src/core/manager.c:                                        status_printf(NULL, true, false, "Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately.");
[root@CentOS7 systemd-219]#

 /core/manager.cを覗いてみると

/core/manager.cを覗いてみると。。。ありました

 /core/manager.c  case SIGINT; * ratelimit_test();

ですね。

まったく。こんな思いやりはいらないのに。。。
2秒以内に7回呼び出されるとあえなくrebootです。

[root@CentOS7 systemd-219]# less ./src/core/manager.c

                case SIGINT:
                        if (m->running_as == SYSTEMD_SYSTEM) {

                                /* If the user presses C-A-D more than
                                 * 7 times within 2s, we reboot
                                 * immediately. */

                                if (ratelimit_test(&m->ctrl_alt_del_ratelimit))
                                        manager_start_target(m, SPECIAL_CTRL_ALT_DEL_TARGET, JOB_REPLACE_IRREVERSIBLY);
                                else {
                                        log_notice("Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately.");
                                        status_printf(NULL, true, false, "Ctrl-Alt-Del was pressed more than 7 times within 2s, rebooting immediately.");
                                        m->exit_code = MANAGER_REBOOT;
                                }

                                break;
                        }

                        /* Run the exit target if there is one, if not, just exit. */
                        if (manager_start_target(m, SPECIAL_EXIT_TARGET, JOB_REPLACE) < 0) {
                                m->exit_code = MANAGER_EXIT;
                                return 0;
                        }

                        break;

解決策 (CentOS7.2.1511&Systemd 219-19.el7では回避不能)

対象のバージョン再確認

まずはOS。CentOS Linux release 7.2.1511です。

CentOS7
[root@CentOS7 systemd-219]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@CentOS7 systemd-219]#

つづいてSystemdのバージョン。219-19.el7と。。

[root@CentOS7 systemd-219]# yum list|grep systemd
systemd.x86_64                          219-19.el7                     @anaconda

systemdの最新コードを確認( github)

ソースを確認するとsystemd232ではsystemdのオプションが増えて
CtrlAltDelBurstAction=を指定する事で無効化できるようですな。

systemd/NEWS
https://github.com/systemd/systemd/blob/6b3d378331fe714c7bf2263eaa9a8b33fc878e7c/NEWS 

CHANGES WITH 232:

        * A new setting CtrlAltDelBurstAction= has been added to


          /etc/systemd/system.conf which may be used to configure the precise

          behaviour if the user on the console presses Ctrl-Alt-Del more often

          than 7 times in 2s. Previously this would unconditionally result in

          an expedited, immediate reboot. With this new setting the precise

          operation may be configured in more detail, and also turned off

          entirely.

man (systemd233)

ねんのためオプションの意味をmanでしらべてみます。

確認時点のmanのバージョンは”systemd233”でした

https://www.freedesktop.org/software/systemd/man/systemd-system.conf.html#CtrlAltDelBurstAction=

Options

All options are configured in the "[Manager]" section:

LogLevel=, LogTarget=, LogColor=, LogLocation=, DumpCore=yes, CrashChangeVT=no, CrashShell=no, CrashReboot=no, ShowStatus=yes, DefaultStandardOutput=journal, DefaultStandardError=inherit
Configures various parameters of basic manager operation. These options may be overridden by the respective command line arguments. See systemd(1) for details about these command line arguments.

CtrlAltDelBurstAction=
Defines what action will be performed if user presses Ctrl-Alt-Delete more than 7 times in 2s. Can be set to "reboot-force", "poweroff-force", "reboot-immediate", "poweroff-immediate" or disabled with "none". Defaults to "reboot-force”.

まとめ

  • CentOS7.2 systemd219ではctrl-alt-delを完全には無効化できない
  • systemd232からはCtrlAltDelBurstAction=で無効化できる

みなさんも運用中のサーバでバルス!!(ctrl-alt-del)→Rebootしちゃわないように気をつけて下さいね。

参考資料

 Ctrl-Alt-Del を無効化すす方法

RHEL7 で Ctrl-Alt-Del を無効にする - Red Hat Customer Portal
https://access.redhat.com/node/1521333 

 systemdのソースコード[github]

https://github.com/systemd/systemd/blob/6b3d378331fe714c7bf2263eaa9a8b33fc878e7c/NEWS 

試した環境

ホストOS

2500/15.4 MJLT2J/A MacBook Pro Retinaディスプレイ

MacBook Pro (Retina, 13-inch, Late 2013)
macOS Sierra
    システムのバージョン:     macOS 10.12.4 (16E195)
    カーネルのバージョン:     Darwin 16.5.0
VirtualBox
 VirtualBox バージョン 5.1.6 r110634 (Qt5.5.1)
 Oracle_VM_VirtualBox_Extension_Pack-5.1.6r110634

ゲストOS

[root@CentOS7 system]# uname -a
Linux CentOS7 3.10.0-327.el7.x86_64 #1 SMP Thu Oct 29 17:29:29 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux

VirtualBoxでCentOS7のインストール

毎度。一馬力です。

今回はVirtualBoxでCentOS7をインストールしてみます。
基本,操作画面をペタペタはっただけの記事になります。

詳しいコメント付きの話はRHEL7のインストール事例になりますが
別記事↓が参考になると思います。

ichibariki.hatenablog.com

目次で全体の流れを確認してもらえればと思います。
参考にして下さい

目次


操作のポイントは赤矢印で示しています。

仮想マシンの準備

仮想マシンの新規作成

f:id:htbariki:20170401182543p:plain

エキスパートモードを選択

f:id:htbariki:20170401182541p:plain

仮想マシンのタイプ等と仮想ディスクの作成

f:id:htbariki:20170401182457p:plain

ファイルの場所・名前の決定

f:id:htbariki:20170401182454p:plain

インストールメディアのマウント設定1

f:id:htbariki:20170401182538p:plain

インストールメディアのマウント設定2

f:id:htbariki:20170401182501p:plain

インストールメディアのマウント設定3

f:id:htbariki:20170401182504p:plain

インストールメディアのマウント設定4

f:id:htbariki:20170401182459p:plain

インストールメディアのマウント設定5

f:id:htbariki:20170401182531p:plain

インストールメディアのマウント設定6

f:id:htbariki:20170401182528p:plain

インストールメディアのマウント設定7

f:id:htbariki:20170401182420p:plain

CentOSのインストール

仮想マシンの起動

f:id:htbariki:20170401182534p:plain

起動画面1

f:id:htbariki:20170401182427p:plain

起動画面2

f:id:htbariki:20170401182424p:plain

言語の選択

f:id:htbariki:20170401182446p:plain

インストールの概要画面で!マーク部分を順次設定

f:id:htbariki:20170401182450p:plain

インストールの開始を選択

f:id:htbariki:20170401182434p:plain

ユーザーの設定(rootは必須)

f:id:htbariki:20170401182415p:plain

rootパスワードの入力

f:id:htbariki:20170401182431p:plain

インストール完了待ち

f:id:htbariki:20170401182438p:plain

再起動

f:id:htbariki:20170401182442p:plain

インストール完了

f:id:htbariki:20170401182429p:plain

試した環境

ホストOS

Apple iMac 21.5インチ 1.6GHz Corei5 8GB 1TB MK142J/A

iMac (27-inch, Mid 2010)
macOS Sierra
   システムのバージョン:     macOS 10.12.4 (16E195)
    カーネルのバージョン:     Darwin 16.5.0
VirtualBox

 VirtualBox バージョン 5.1.14 r112924 (Qt5.6.2)
 Oracle_VM_VirtualBox_Extension_Pack-5.1.14r112924

ゲストOS

[root@CentOS7 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

CentOSでパッケージのみダウンロードしたい(yumdownloader)

毎度。一馬力です。

今回は, yum-utilsに含まれるyumdownloaderの紹介。

通常yumコマンドはパッケージのインストールに利用しますが
yumdownloaderはパッケージのみダウンロードしたい!という時に利用します。

個人的には特にsrcパッケージのダウンロードでお世話になっているコマンド。
インストール方法含め紹介します

f:id:htbariki:20170401170235p:plain

目次


yum-utilsのインストール

yum-utilsをyumコマンドでインストールします。

# yum install yum-utils

(参考)CentOS7でyum-utilsをインストールした時のログ

[root@CentOS7 src]# yum install yum-utils
読み込んだプラグイン:fastestmirror
base                                                                                                                           | 3.6 kB  00:00:00
extras                                                                                                                         | 3.4 kB  00:00:00
updates                                                                                                                        | 3.4 kB  00:00:00
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ yum-utils.noarch 0:1.1.31-40.el7 を インストール
--> 依存性の処理をしています: yum >= 3.4.3-143 のパッケージ: yum-utils-1.1.31-40.el7.noarch
--> 依存性の処理をしています: python-kitchen のパッケージ: yum-utils-1.1.31-40.el7.noarch
--> 依存性の処理をしています: libxml2-python のパッケージ: yum-utils-1.1.31-40.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ libxml2-python.x86_64 0:2.9.1-6.el7_2.3 を インストール
--> 依存性の処理をしています: libxml2 = 2.9.1-6.el7_2.3 のパッケージ: libxml2-python-2.9.1-6.el7_2.3.x86_64
---> パッケージ python-kitchen.noarch 0:1.1.1-5.el7 を インストール
--> 依存性の処理をしています: python-chardet のパッケージ: python-kitchen-1.1.1-5.el7.noarch
---> パッケージ yum.noarch 0:3.4.3-132.el7.centos.0.1 を 更新
---> パッケージ yum.noarch 0:3.4.3-150.el7.centos を アップデート
--> 依存性の処理をしています: python-urlgrabber >= 3.10-8 のパッケージ: yum-3.4.3-150.el7.centos.noarch
--> トランザクションの確認を実行しています。
---> パッケージ libxml2.x86_64 0:2.9.1-5.el7_1.2 を 更新
---> パッケージ libxml2.x86_64 0:2.9.1-6.el7_2.3 を アップデート
---> パッケージ python-chardet.noarch 0:2.2.1-1.el7_1 を インストール
---> パッケージ python-urlgrabber.noarch 0:3.10-7.el7 を 更新
---> パッケージ python-urlgrabber.noarch 0:3.10-8.el7 を アップデート
--> 依存性解決を終了しました。

依存性を解決しました

======================================================================================================================================================
 Package                                  アーキテクチャー              バージョン                                  リポジトリー                 容量
======================================================================================================================================================
インストール中:
 yum-utils                                noarch                        1.1.31-40.el7                               base                        116 k
依存性関連でのインストールをします:
 libxml2-python                           x86_64                        2.9.1-6.el7_2.3                             base                        247 k
 python-chardet                           noarch                        2.2.1-1.el7_1                               base                        227 k
 python-kitchen                           noarch                        1.1.1-5.el7                                 base                        267 k
依存性関連での更新をします:
 libxml2                                  x86_64                        2.9.1-6.el7_2.3                             base                        668 k
 python-urlgrabber                        noarch                        3.10-8.el7                                  base                        108 k
 yum                                      noarch                        3.4.3-150.el7.centos                        base                        1.2 M

トランザクションの要約
======================================================================================================================================================
インストール  1 パッケージ (+3 個の依存関係のパッケージ)
更新                       ( 3 個の依存関係のパッケージ)

総ダウンロード容量: 2.8 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
警告: /var/cache/yum/x86_64/7/base/packages/libxml2-2.9.1-6.el7_2.3.x86_64.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY  --:--:-- ETA
libxml2-2.9.1-6.el7_2.3.x86_64.rpm の公開鍵がインストールされていません
(1/7): libxml2-2.9.1-6.el7_2.3.x86_64.rpm                                                                                      | 668 kB  00:00:00
(2/7): libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm                                                                               | 247 kB  00:00:00
(3/7): python-chardet-2.2.1-1.el7_1.noarch.rpm                                                                                 | 227 kB  00:00:00
(4/7): python-kitchen-1.1.1-5.el7.noarch.rpm                                                                                   | 267 kB  00:00:00
(5/7): python-urlgrabber-3.10-8.el7.noarch.rpm                                                                                 | 108 kB  00:00:00
(6/7): yum-utils-1.1.31-40.el7.noarch.rpm                                                                                      | 116 kB  00:00:00
(7/7): yum-3.4.3-150.el7.centos.noarch.rpm                                                                                     | 1.2 MB  00:00:00
------------------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                                  2.1 MB/s | 2.8 MB  00:00:01
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 から鍵を取得中です。
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-2.1511.el7.centos.2.10.x86_64 (@anaconda)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  更新します              : python-urlgrabber-3.10-8.el7.noarch                                                                                  1/10
  更新します              : yum-3.4.3-150.el7.centos.noarch                                                                                      2/10
  インストール中          : python-chardet-2.2.1-1.el7_1.noarch                                                                                  3/10
  インストール中          : python-kitchen-1.1.1-5.el7.noarch                                                                                    4/10
  更新します              : libxml2-2.9.1-6.el7_2.3.x86_64                                                                                       5/10
  インストール中          : libxml2-python-2.9.1-6.el7_2.3.x86_64                                                                                6/10
  インストール中          : yum-utils-1.1.31-40.el7.noarch                                                                                       7/10
  整理中                  : yum-3.4.3-132.el7.centos.0.1.noarch                                                                                  8/10
  整理中                  : python-urlgrabber-3.10-7.el7.noarch                                                                                  9/10
  整理中                  : libxml2-2.9.1-5.el7_1.2.x86_64                                                                                      10/10
  検証中                  : yum-utils-1.1.31-40.el7.noarch                                                                                       1/10
  検証中                  : libxml2-2.9.1-6.el7_2.3.x86_64                                                                                       2/10
  検証中                  : libxml2-python-2.9.1-6.el7_2.3.x86_64                                                                                3/10
  検証中                  : python-chardet-2.2.1-1.el7_1.noarch                                                                                  4/10
  検証中                  : yum-3.4.3-150.el7.centos.noarch                                                                                      5/10
  検証中                  : python-kitchen-1.1.1-5.el7.noarch                                                                                    6/10
  検証中                  : python-urlgrabber-3.10-8.el7.noarch                                                                                  7/10
  検証中                  : libxml2-2.9.1-5.el7_1.2.x86_64                                                                                       8/10
  検証中                  : yum-3.4.3-132.el7.centos.0.1.noarch                                                                                  9/10
  検証中                  : python-urlgrabber-3.10-7.el7.noarch                                                                                 10/10

インストール:
  yum-utils.noarch 0:1.1.31-40.el7

依存性関連をインストールしました:
  libxml2-python.x86_64 0:2.9.1-6.el7_2.3            python-chardet.noarch 0:2.2.1-1.el7_1            python-kitchen.noarch 0:1.1.1-5.el7

依存性を更新しました:
  libxml2.x86_64 0:2.9.1-6.el7_2.3               python-urlgrabber.noarch 0:3.10-8.el7               yum.noarch 0:3.4.3-150.el7.centos

完了しました!

[root@CentOS7 src]#

 yumdownloaderでカーネルソースパッケージをダウンロードする

yumdownloaderが含まれるyum-utilsのインストールが完了したら
準備完了です。

早速,カーネルソースパッケージをダウンロードしてみます。
コマンドは

# yumdownloader --source kernel

コマンド実行時のカレントディレクトリにパッケージが保存されます。

(参考)yumdownloader --source kernelの実行ログ

[root@CentOS7 src]# yumdownloader --source kernel
読み込んだプラグイン:fastestmirror
Enabling updates-source repository
Enabling base-source repository
Enabling extras-source repository
base-source                                                                                                                    | 2.9 kB  00:00:00
extras-source                                                                                                                  | 2.9 kB  00:00:00
updates-source                                                                                                                 | 2.9 kB  00:00:00
(1/3): extras-source/7/primary_db                                                                                              |  52 kB  00:00:01
(2/3): updates-source/7/primary_db                                                                                             |  65 kB  00:00:01
(3/3): base-source/7/primary_db                                                                                                | 967 kB  00:00:03
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
kernel-3.10.0-514.6.1.el7.src.rpm                                                                                              |  85 MB  00:00:59
[root@CentOS7 src]# ll
合計 86880
-rw-r--r--. 1 root root 88959056  1月 19 21:48 kernel-3.10.0-514.6.1.el7.src.rpm

まとめ

  • yumはパッケージのインストールに,yumdownloaderはパッケージのダウンロードに利用する  * yumdownloaderはyum-utilsに含まれる
  • yumdownloaderはsrcパッケージの入手時に重宝する

試した環境

ホストOS

Apple iMac 21.5インチ 1.6GHz Corei5 8GB 1TB MK142J/A

iMac (27-inch, Mid 2010)
macOS Sierra
   システムのバージョン:     macOS 10.12.4 (16E195)
    カーネルのバージョン:     Darwin 16.5.0
VirtualBox
 VirtualBox バージョン 5.1.14 r112924 (Qt5.6.2)
 Oracle_VM_VirtualBox_Extension_Pack-5.1.14r112924

ゲストOS

[root@CentOS7 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

ESXiでデータストアのISOイメージを利用して仮想マシンへOSをインストールする

毎度。一馬力です。
ESXiに仮想マシンを作ったのでOSをインストールしようと思います。
インストールはESXiのデータストア上に保存したISOイメージを利用します。

仮想マシンの作成方法は別記事↓を確認して下さい。
ichibariki.hatenablog.com

目次


インストールのイメージと前提

インストールのイメージ

CentOSRHELのOSのインストールメディアはISO形式で配布されています。
ESXiホスト側にDVDドライブ等が搭載されていれば,メディアを準備してインストールしますが
ドライブが存在しない場合も多々あります。

ドライブが存在しない時は,ESXi上にISOイメージを保存しておいて
ISOイメージを仮想マシンにマウントする事でインストール作業をすすめる事ができます。(下図のイメージ)

f:id:htbariki:20170204180553p:plain

前提

インストール作業の前提

  • 仮想マシンの準備が完了している事
  • ESXのデータストアにISOイメージが保存されている事

前提をクリアしていない場合,以下の記事を参考に準備を進めて下さい

[参考記事] ESXiでRHEL7の仮想マシンを作成する
http://ichibariki.hatenablog.com/entry/2017/02/04/152002 

VMware Host Clientを利用してESXiにISOイメージを保管する
http://ichibariki.hatenablog.com/entry/2017/01/29/133610  

データストアのISOイメージをマウントする

仮想マシンの設定の編集

インストールメディアのISOイメージをマウントするために
対象の仮想マシンの設定を一時的に編集します。

仮想マシン > アクション

を選択します。

f:id:htbariki:20170204180550p:plain

プルダウンから設定の編集を選択

f:id:htbariki:20170204180604p:plain

設定の編集画面でCD/DVDドライブをクリックします。
デフォルトではクライアントデバイスが選択されてい状態です。

f:id:htbariki:20170204180608p:plain

プルダウンからデータストアISOファイルを選択します。

f:id:htbariki:20170204180611p:plain

データストアブラウザが表示されるので
対象のISOファイルを選択します。

下の画像ではRHEL7.2のインストールイメージを選択しています。

f:id:htbariki:20170204180556p:plain

設定をの編集画面で対象のISOイメージが設定されている事を確認して
保存をクリックします。

f:id:htbariki:20170204180619p:plain

仮想マシンのパワーオン

設定の編集が完了したら,対象の仮想マシンパワーオンします。

f:id:htbariki:20170204180615p:plain

無事RHEL7.2のインストーラーが起動できました。

f:id:htbariki:20170204180546p:plain

[参考記事]

RHEL7.2のインストール方法は過去記事を参考にして下さい。

Red Hat Enterprise Linux 7.2 のインストール

http://ichibariki.hatenablog.com/entry/2016/10/01/133605

インストールメディアの取り外し

OSのインストールが完了したら,マウントしたISOファイルを取り外します。

仮想マシンの設定の編集画面から,インストール前にマウントしたISOファイルの接続を解除します。

CD/DVDドライブの接続チェックボックスをクリックして下さい

f:id:htbariki:20170204180626p:plain

接続が解除されたことを確認して保存で完了です。

f:id:htbariki:20170204180622p:plain

仮想マシンの再構成が完了したことを確認して作業は終了です。

f:id:htbariki:20170204180630p:plain

参考

参考資料

  • ESXi および vCenter Server 6.0 のドキュメント > vSphere 単一ホスト管理:VMware Host Client > VMware Host Client の概要>
     VMware Host Client のシステム要件

http://pubs.vmware.com/vsphere-60/topic/com.vmware.vsphere.html.hostclient.doc/GUID-83042A09-281D-4B74-9176-8E882AD23432.html 

RHEL7.2インストール中のパフォーマンス(CPU)

OSのインストールはCPUを使うイメージがあったので
パフォーマンスデータを取得してみました。

今回はRHEL7.2のインストールでしたが
インストール中のCPU使用率の最大値は約30%ほど

これを高いと感じるか低いと感じるかは環境によりそれぞれかと思います。

参考情報として見てもらえればと思います。

f:id:htbariki:20170204180600p:plain

試した環境

HW


Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS Sierra

ESXiでRHEL7の仮想マシンを作成する

毎度。一馬力です。

今日は,ESXiにVMware Host Clientを利用して
Red Hat Enterprise Linux 7用の仮想マシンを作成してみます。

ちなみにESXiでCentOS4/5/6/7の仮想マシンを作成する方法は別記事↓で紹介しています。
ichibariki.hatenablog.com

手順の違いは” 名前とゲストOSの選択”部分のみとなります。

目次


仮想マシンの作成開始

画面はVMware Host Clientにログインした状態で

を選択した状態。

まずはじめに,”仮想マシンの作成/登録”をクリックする所からスタートです。

画面イメージ

f:id:htbariki:20170204151915p:plain

仮想マシンのオプションの選択

仮想マシンの作成から順番にオプションを選択していく事で,仮想マシンが作成されます。

選択画面は5ステップあります。

  • 作成タイプの選択
  • 名前とゲストOSの選択
  • ストレージの選択
  • 設定のカスタマイズ
  • 終了準備の完了

※いつも思うのですが、”5.終了準備の完了”って訳が変ですよね?

それでは順番に画面をたどっていきましょう。

 作成タイプの選択

まずは,仮想マシン作成のタイプを選択します。
今回は新規仮想マシンの作成を選択します。

f:id:htbariki:20170204151924p:plain

名前とゲストOSの選択

次に名前とゲストOSを選択していきます。

選択後の状態

f:id:htbariki:20170204151907p:plain

ストレージの選択

次は,仮想マシンが利用するストレージの選択
私の環境では,ESXiが稼働するHWの内蔵ストレージが選択肢として表示されています。

画面イメージ f:id:htbariki:20170204151919p:plain

設定のカスタマイズ

最後のパラメータとして,仮想マシンの細々としたパラメータを入力していきます。
CPUの数や,メモリサイズ。ディスク容量などが選択肢として並びます。

画面イメージ f:id:htbariki:20170204151858p:plain

終了準備の完了

最後に自分が選択したパラメータを確認して作成完了となります。

画面イメージ f:id:htbariki:20170204151911p:plain

仮想マシンの作成完了

仮想マシンが作成されると,仮想マシンの一覧の中に表示されています。
後はOSをインストールすれば利用可能ですね。

お疲れ様でした。

画面イメージ f:id:htbariki:20170204151903p:plain

参考資料

  • ESXi および vCenter Server 6.0 のドキュメント > vSphere 単一ホスト管理:VMware Host Client > VMware Host Client の概要>
     VMware Host Client のシステム要件

http://pubs.vmware.com/vsphere-60/topic/com.vmware.vsphere.html.hostclient.doc/GUID-83042A09-281D-4B74-9176-8E882AD23432.html 

試した環境

HW


Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS Sierra

ESXiでCentOS4/5/6/7の仮想マシンを作成する

毎度。一馬力です。

VMware Host Client のおかげでMacOSでも,ESXiの操作操作が出来て便利です。
ichibariki.hatenablog.com

今日は,ESXiにCentOS用の仮想マシンを作成してみます。
CentOS用の仮想マシンはCentOS4/5/6/7ともに共通です。

目次


仮想マシンの作成開始

画面はVMware Host Clientにログインした状態で

を選択した状態。

まずはじめに,”仮想マシンの作成/登録”をクリックする所からスタートです。

画面イメージ

f:id:htbariki:20170129090854p:plain

仮想マシンのオプションの選択

仮想マシンの作成から順番にオプションを選択していく事で,仮想マシンが作成されます。

選択画面は5ステップあります。

  • 作成タイプの選択
  • 名前とゲストOSの選択
  • ストレージの選択
  • 設定のカスタマイズ
  • 終了準備の完了

※いつも思うのですが、”5.終了準備の完了”って訳が変ですよね?

それでは順番に画面をたどっていきましょう。

 作成タイプの選択

まずは,仮想マシン作成のタイプを選択します。
今回は新規仮想マシンの作成を選択します。

f:id:htbariki:20170129090902p:plain

名前とゲストOSの選択

次に名前とゲストOSを選択していきます。

まずは選択前の状態

選択前の状態

f:id:htbariki:20170129090838p:plain

これが選択後の状態

ゲストOSのバージョンを選択すると,CentOSは4/5/6/7どれも同じ選択肢になりました。

選択後の状態

f:id:htbariki:20170129090858p:plain

ストレージの選択

次は,仮想マシンが利用するストレージの選択
私の環境では,ESXiが稼働するHWの内蔵ストレージが選択肢として表示されています。

画面イメージ f:id:htbariki:20170129090842p:plain

設定のカスタマイズ

最後のパラメータとして,仮想マシンの細々としたパラメータを入力していきます。
CPUの数や,メモリサイズ。ディスク容量などが選択肢として並びます。

画面イメージ f:id:htbariki:20170129090834p:plain

終了準備の完了

最後に自分が選択したパラメータを確認して作成完了となります。

画面イメージ f:id:htbariki:20170129090847p:plain

仮想マシンの作成完了

仮想マシンが作成されると,仮想マシンの一覧の中に表示されています。
後はOSをインストールすれば利用可能ですね。

お疲れ様でした。

画面イメージ f:id:htbariki:20170129090851p:plain

参考資料

試した環境

HW


Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

OS
 vmware ESXi 6.0.0 (Build 3620759)
操作環境
 VMware Host Client
 iMac (27-inch, Mid 2010)
 macOS Sierra

コマンドが含まれるパッケージをyumコマンドで探す方法

毎度。一馬力です。
インストール直後のCentOSでいつも使うコマンドが無い!!
ってとき。どのパッケージにコマンド含まれているのかなー?
って事ありますよね?

そんなわけで、今回は「コマンドが含まれるパッケージをyumコマンドで探す方法」です。

f:id:htbariki:20161203173233p:plain

目次


今回はミニマムインストールしたCentOS6で
”scp”コマンドがどのパッケージに含まれるのか探してみたいと思います。

利用するコマンドは”yum”。
yumコマンドはオプションの使い方をマスターすると心強いツールです。

yum searchで探す→NG

yumコマンドで探しものするときは”yum search”コマンドを利用しますが

searchオプションは

  • パッケージ名
  • サマリー

しか検索してくれない。今回はパッケージに含まれるコマンドを知りたいのでNG

試しに”yum search scp"してみると
“trilead-ssh2”パッケージが表示された。↓

root@centos66 ~]# yum search scp
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
===================================================================== 一致: scp ======================================================================
trilead-ssh2.noarch : SSH-2 protocol implementation in pure Java

追加で”yum info”コマンドで内容を見てみるが,scpコマンドが含まれる気配はない、、、。
そもそも”scp”のキーワードがどの部分に引っかかったのか不明。

[root@centos66 ~]# yum info trilead-ssh2.noarch
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
利用可能なパッケージ
名前                : trilead-ssh2
アーキテクチャ      : noarch
バージョン          : 213
リリース            : 6.2.el6
容量                : 248 k
リポジトリー        : base
要約                : SSH-2 protocol implementation in pure Java
URL                 : http://www.trilead.com/Products/Trilead_SSH_for_Java/
ライセンス          : BSD
説明                : Trilead SSH-2 for Java is a library which implements the SSH-2 protocol in pure
                    : Java (tested on J2SE 1.4.2 and 5.0). It allows one to connect to SSH servers
                    : from within Java programs. It supports SSH sessions (remote command execution
                    : and shell access), local and remote port forwarding, local stream forwarding,
                    : X11 forwarding and SCP. There are no dependencies on any JCE provider, as all
                    : crypto functionality is included.

[root@centos66 ~]#

 yum providesで探す → 怒られる

本命の検索方法 “yum provides”で “scp”を検索してみると
警告を頂いてしまった(汗)

[root@centos66 ~]# yum provides scp
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
警告: yum のバージョン 3.0.x は、誤ってファイル名に対して一致するでしょう。
その振る舞いをするには「*/scp」もしくは「*bin/scp」が使用できます。
No Matches found
[root@centos66 ~]#

ご指摘の通り"「/scp」もしくは「bin/scp」”で探しみます。
yum先生すいませんでした。

 yum providesで探す → 成功

yum先生に怒られたので,”yum provides */scp”で再検索してみると
scpコマンドは"openssh-clients”パッケージに含まれる事が分かりました。

[root@centos66 ~]# yum provides */scp
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
openssh-clients-5.3p1-117.el6.x86_64 : An open source SSH client applications
リポジトリー        : base
一致          :
ファイル名    : /usr/bin/scp



openssh-clients-5.3p1-118.1.el6_8.x86_64 : An open source SSH client applications
リポジトリー        : updates
一致          :
ファイル名    : /usr/bin/scp



[root@centos66 ~]#

念のため”yum info openssh-clients”で確認してみるとそれらしい記述
(yum先生を疑っているわけでは無いのですが念のためです)

[root@centos66 ~]# yum info openssh-clients
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
利用可能なパッケージ
名前                : openssh-clients
アーキテクチャ      : x86_64
バージョン          : 5.3p1
リリース            : 118.1.el6_8
容量                : 442 k
リポジトリー        : updates
要約                : An open source SSH client applications
URL                 : http://www.openssh.com/portable.html
ライセンス          : BSD
説明                : OpenSSH is a free version of SSH (Secure SHell), a program for logging
                    : into and executing commands on a remote machine. This package includes
                    : the clients necessary to make encrypted connections to SSH servers.

[root@centos66 ~]#

無事にコマンドに含まれるパッケージを見つけられれました。

みなさんも,困ったときはこの記事を参考にyum先生に聞いて見て下さい

参考資料

試した環境

HW

Product Name
  ProLiant DL160 Gen8
CPU
  4 CPUs x Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz
Memory
  16GB
iLO Firmware Version
  2.44 Jul 19 2016

仮想化基盤

vmware ESXi 6.0.0 (Build 3620759)

ゲストOS

[root@centos66 ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
[root@centos66 ~]# uname -a
Linux centos66 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[root@centos66 ~]#

PocketMineMPをバックグランドで起動する方法。ログオフしてもOK

 毎度一馬力です。Minecraft PEも Realmsが追加になって
すっかりPocketMineMPの出番もなくなってしまいました。

www.appbank.net

そんな中でも,PocketMineMPの記事を探してこの
BLOGを見てくれるユーザーが一定数いるようなので,ログの意味で記事投稿しておきます。

バージョン等古い部分はご了承下さい

f:id:htbariki:20161105082601p:plain ※画像はMinecraft PEです。

という事で,今回はPocketMineMPをバックグランド動かす方法です。

PocketMineMPをlinuxで起動させると,shellの中で動くため
ログオフするとサーバーも停止してしまいます。

今回はscreenコマンドを利用する事により
バックグランドプロセスとしてPocketMineMPを起動して
shellからログオフしても停止しない状態を作ります。

  • 通常の起動方法

shell -> PocketMineMP :ログオフすると停止する

  • 通常の起動方法

shell -> PocketMineMP :ログオフすると停止する

目次


screenのインストール

まずはscreenのインストールから始めます。
インストールはyumコマンドで”yum install screen”を実行して下さい

[root@PocketMineMP ~]#
[root@PocketMineMP ~]# yum install screen
読み込んだプラグイン:fastestmirror, priorities
base                                                     | 3.6 kB     00:00
elrepo                                                   | 2.9 kB     00:00
epel/x86_64/metalink                                     | 4.6 kB     00:00
epel                                                     | 4.3 kB     00:00
extras                                                   | 3.4 kB     00:00
mysql-connectors-community                               | 2.5 kB     00:00
mysql-tools-community                                    | 2.5 kB     00:00
mysql56-community                                        | 2.5 kB     00:00
remi-safe                                                | 2.9 kB     00:00
rpmforge                                                 | 1.9 kB     00:00
updates                                                  | 3.4 kB     00:00
(1/7): mysql56-community/x86_64/primary_db                 | 122 kB   00:00
(2/7): extras/7/x86_64/primary_db                          | 117 kB   00:00
(3/7): epel/x86_64/updateinfo                              | 529 kB   00:00
(4/7): epel/x86_64/primary_db                              | 4.0 MB   00:00
(5/7): updates/7/x86_64/primary_db                         | 4.1 MB   00:00
(6/7): remi-safe/primary_db                                | 380 kB   00:00
(7/7): elrepo/primary_db                                   | 338 kB   00:01
Loading mirror speeds from cached hostfile
 * elrepo: ftp.ne.jp
 * epel: ftp.iij.ad.jp
 * remi-safe: remi.kazukioishi.net
 * rpmforge: ftp.riken.jp
155 packages excluded due to repository priority protections
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ screen.x86_64 0:4.1.0-0.23.20120314git3c2946.el7_2 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package    アーキテクチャー
                       バージョン                             リポジトリー
                                                                           容量
================================================================================
インストール中:
 screen     x86_64     4.1.0-0.23.20120314git3c2946.el7_2     updates     552 k

トランザクションの要約
================================================================================
インストール  1 パッケージ

総ダウンロード容量: 552 k
インストール容量: 914 k
Is this ok [y/d/N]: y
Downloading packages:
screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64.rpm                                                                     | 552 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64                                                                1/1
  検証中                  : screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64                                                                1/1

インストール:
  screen.x86_64 0:4.1.0-0.23.20120314git3c2946.el7_2

完了しました!
[root@PocketMineMP ~]#

バックグラドで起動

インストール完了したので早速起動です。 コマンドは

bash-4.2$ screen -dmS PocketMineMP ~/start.sh

オプションの意味は

  • -d -m : screen を "detached" モードで起動する。
  • -S セッション名 : 起動したセッションに名前をつけておきます。

です。詳しくはmanページ等で確認して下さい。
https://linuxjm.osdn.jp/html/GNU_screen/man1/screen.1.html

bash-4.2$ screen -dmS PocketMineMP ./start.sh
bash-4.2$
bash-4.2$ tail server.log
2016-04-21 [07:10:24] [Server thread/INFO]: Opening server on 0.0.0.0:19132
2016-04-21 [07:10:24] [Server thread/INFO]: This server is running PocketMine-MP version 1.6dev-23 "[REDACTED]" (API 2.0.0)
2016-04-21 [07:10:24] [Server thread/INFO]: PocketMine-MP is distributed under the LGPL License
2016-04-21 [07:10:25] [Server thread/INFO]: Loading recipes...
2016-04-21 [07:10:26] [Server thread/INFO]: Preparing level "world"
2016-04-21 [07:10:26] [Server thread/INFO]: Starting GS4 status listener
2016-04-21 [07:10:26] [Server thread/INFO]: Setting query port to 19132
2016-04-21 [07:10:26] [Server thread/INFO]: Query running on 0.0.0.0:19132
2016-04-21 [07:10:26] [Server thread/INFO]: Default game type: Creative Mode
2016-04-21 [07:10:26] [Server thread/INFO]: Done (1.818s)! For help, type "help" or "?"


bash-4.2$

バックグランドで起動したセッションをアタッチする

バックグランドで起動した後,操作の必要がある時などはアタッチして
セッションをフォアグラウンドに戻すことも可能です。

再度,セッションをデタッチする場合は
”ctrl を押しながら、A→D” で復帰できます。

bash-4.2$ screen -r

[07:10:24] [Server thread/WARNING]: Non-packaged PocketMine-MP installation detected, do not use on production.
[07:10:24] [Server thread/INFO]: Loading pocketmine.yml...
[07:10:24] [Server thread/INFO]: Loading server properties...
[07:10:24] [Server thread/INFO]: Selected English (eng) as the base language
[07:10:24] [Server thread/INFO]: Starting Minecraft: PE server version v0.14.1.0 alpha
[07:10:24] [Server thread/INFO]: Opening server on 0.0.0.0:19132
[07:10:24] [Server thread/INFO]: This server is running PocketMine-MP version 1.6dev-23 "[REDACTED]" (API 2.0.0)
[07:10:24] [Server thread/INFO]: PocketMine-MP is distributed under the LGPL License
[07:10:25] [Server thread/INFO]: Loading recipes...
[07:10:26] [Server thread/INFO]: Preparing level "world"
[07:10:26] [Server thread/INFO]: Starting GS4 status listener
[07:10:26] [Server thread/INFO]: Setting query port to 19132
[07:10:26] [Server thread/INFO]: Query running on 0.0.0.0:19132
[07:10:26] [Server thread/INFO]: Default game type: Creative Mode
[07:10:26] [Server thread/INFO]: Done (1.818s)! For help, type "help" or "?"

★”ctrl を押しながら、A→D”★

[detached from 22606.PocketMineMP]

バックグランド起動の確認

色々なパターンで,バックグランド起動が出来ている事を確認します。

screenコマンドで起動後

screenコマンドでバックグランド起動した直後

bash-4.2$ ps -ef|grep start.sh
mine     22606     1  0 16:10 ?        00:00:00 SCREEN -dmS PocketMineMP ./start.sh

バックグランドで起動できています。

screenコマンドを実行したユーザーががログオフ(exit)後

まずは,exitで抜けて

bash-4.2$ exit
exit

別ユーザ(今回はroot)で確認すると

[root@PocketMineMP ~]# netstat -anp|grep bash-4.2$
[root@PocketMineMP ~]#
[root@PocketMineMP ~]# netstat -anp|grep 19132
udp        0      0 0.0.0.0:19132           0.0.0.0:*                           22607/PocketMine-MP
[root@PocketMineMP ~]# ps -ef|grep start.sh
mine     22606     1  0 16:10 ?        00:00:00 SCREEN -dmS PocketMineMP ./start.sh
root     22661 22380  0 16:15 pts/0    00:00:00 grep --color=auto start.sh

正常に起動していますね^^

これでPocketMineMPを起動した後,ログオフしてもOKです。

参考資料

  • Minecraft PE マルチユーザサーバ[PocketMine-MP]をPCにセットアップする方法

http://dorodorodoroid.hatenablog.com/entry/2015/02/03/083148

試した環境

Minecraft PE用マルチプレイサーバー

PocketMine-MP version 1.6dev-23

OS

[root@PocketMineMP ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@PocketMineMP ~]# uname -a
Linux PocketMineMP 3.10.0-327.10.1.el7.x86_64 #1 SMP Tue Feb 16 17:03:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Red Hat Enterprise Linux 7.2 のインストール

少し前に

Red Hat Enterprise Linuxの開発者向けサブスクリプションが提供開始になっていた! http://ichibariki.hatenablog.com/entry/2016/04/30/150017

なんて記事にした後

Red Hat Developer Program登録 >>>Red Hat Enterprise Linuxのダウンロード  >>> いまここ

  ダウンロードまで済ませて半年近く放置してしまったので   覚悟を決めてRed Hat Enterprise Linuxをインストールしてみました。  

インストールはVirtualBox上に立てた仮想マシンに行っています。  

今回はRed Hat Enterprise Linux7.2のインストールメモです。  

作業の流れは↓の目次の通り  

目次


VirtualBoxの準備

まずはインストール先となる仮想マシンの準備から  

仮想マシンの作成1

VirtualBoxの初期画面から”新規”を選択し仮想マシンを作成  

f:id:htbariki:20161001132317p:plain

仮想マシンの作成2

名前,タイプ,バージョンを画面を参考に作成  

f:id:htbariki:20161001132558p:plain

仮想マシンの作成3

仮想マシンの保管場所を選択  

f:id:htbariki:20161001132628p:plain

RED HAT ENTERPRISE LINUX 7インストーラーの起動

仮想マシンが作成された事を確認し起動  

f:id:htbariki:20161001132647p:plain

起動ディスクの選択1

初回起動時は,インストールメディアを選択する。  

f:id:htbariki:20161001132710p:plain

起動ディスクの選択2

事前にダウンロードしておいたインストールメディアイメージを選択し   ”起動”をクリック  

f:id:htbariki:20161001132726p:plain

RED HAT ENTERPRISE LINUX 7のセットアップ

ここからは仮想マシン場で起動するインストーラーでの操作  

RED HAT ENTERPRISE LINUX 7インストーラーの起動

f:id:htbariki:20161001132812p:plain

言語の選択

言語の選択   “日本語"を選択する

 ★ポイント★ 初期画面では世界中の言語がリストアップされている   日本語を簡単に下がるには画面右下のテキストボックスにjapaneseの”j”を入力すると   簡単に”日本語”を見つける事ができる  

f:id:htbariki:20161001132844p:plain

インストール先の選択1

RHEL7からは”インストールの概要”画面に  必要な作業がアイコンで一覧表示される  

”!”マークの部分は必須の項目となっている。 カスタマイズが必要な項目を選択してセットアップをすすめる  

f:id:htbariki:20161001132912p:plain

インストール先の選択2

f:id:htbariki:20161001132927p:plain

ネットワークとホスト名の設定

f:id:htbariki:20161001133012p:plain

ソフトウェアの選択

f:id:htbariki:20161001133028p:plain

インストールソースの選択

f:id:htbariki:20161001133104p:plain

インストールの開始

f:id:htbariki:20161001133127p:plain

rootパスワードの設定1

f:id:htbariki:20161001133144p:plain

rootパスワードの設定2

f:id:htbariki:20161001133158p:plain

インストール完了

f:id:htbariki:20161001133213p:plain

インストール済みシステムを構成(自動)

f:id:htbariki:20161001133235p:plain

再起動

f:id:htbariki:20161001133255p:plain

RED HAT ENTERPRISE LINUX 7起動完了

f:id:htbariki:20161001133307p:plain

RHEL7からはよく使うコマンド(ifconfig,chkconfig等)も利用できなくなっている。   要検証ですね。

参考資料

RED HAT ENTERPRISE LINUX 7 インストールガイド https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/index.html

試した環境

ホストOS

iMac (27-inch, Mid 2010)
macOS Sierra
 システムのバージョン:    macOS 10.12 (16A323)
 カーネルのバージョン:    Darwin 16.0.0
VirtualBox

 VirtualBox バージョン 5.1.6 r110634 (Qt5.5.1)
 Oracle_VM_VirtualBox_Extension_Pack-5.1.6r110634

ゲストOS RHEL7.2  

[root@RHEL72 ~]# cat /etc/redhat-release
Red Hat Enterprise Server release 7.2 (Maipo)

PocketMineがCrashDumpを吐いて停止する時の対処法

PocketMineがCrashDumpを吐いて停止する時の対処法

Minecraft PE用マルチプレイサーバーPocketMineを常時動かしていると
CrashDumpを吐いて停止しちゃう時ってありません?
今回はそんな時の対応方法メモです。参考にしてください

目次


PocketMineがCrashDumpを吐いた時のログを見てみる

あれ??動かしてたはずのPocketMineが止まってる?
という時は、とりあえずPocketMineをインストールしたディレクトリの中にある
server.logを確認してみましょう。

2016-04-29 [19:53:37] [Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed. Creating a crash dump
2016-04-29 [19:53:37] [Server thread/EMERGENCY]: Please upload the "/home/mine/PocketMine-MP.git/CrashDump_Fri_Apr_29-19.53.37-JST_2016.log" file to the Crash A
rchive and submit the link to the Bug Reporting page. Give as much info as you can.

ログの中に"[Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed."
って出てたら,この先のメモを確認してみてください。

CrashDumpの中身を確認してみる

server.logに書いてある"[Server thread/EMERGENCY]: Please upload the〜"の先のファイルが
CrashDumpです。Dumpの中身を確認!なんて力まなくてよいです。確認するは初めの数行。
とりあえず開いてみましょう。

[mine@PocketMineMP PocketMine-MP.git]$ less CrashDump_Fri_Apr_29-19.53.37-JST_2016.log
less CrashDump_Fri_Apr_29-19.53.37-JST_2016.log

PocketMine-MP Crash Dump Fri Apr 29 19:53:37 JST 2016

Error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 131072 bytes)

dumpの中に”Error: Allowed memory size of〜”って表示されていたら,メモリ不足で停止したと推測できます。
PocketMineが利用できるメモリを増やしてあげましょう。

対応方法(pocketmine.ymlの修正)

ここからが対応方法。PocketMineのメモリ割当を変更するときは
PocketMineをインストールしたディレクトリの中の"pocketmine.yml"を修正します。

修正箇所(main-hard-limit)

修正箇所は"pocketmine.yml"の中の"main-hard-limit"部分
単位はメガバイト。この値までメモリを使うと,pocketmineが停止します。

#Main thread hard memory limit in megabytes. Set to 0 to disable
#This will stop the server when the limit is surpassed
main-hard-limit: 1024

(参考)pocketmineのソース該当部分

参考までに,"pocketmine.yml"の中の"main-hard-limit"部分を
pocketmineのPHPプログラムがどのように扱っているか確認してみます。

/src/pocketmine/MemoryManager.php

        $hardLimit = ((int) $this->server->getProperty("memory.main-hard-limit", $defaultMemory));
        if($hardLimit <= 0){
            ini_set("memory_limit", -1);
        }else{
            ini_set("memory_limit", $hardLimit . "M");
        }

読み込んだ値を"ini_set"関数を利用して設定しているようですね。
 参考PHPマニュアル ini_set: http://php.net/manual/ja/function.ini-set.php

"0"より小さい値をを指定するとphp memory_limitに"-1"をセットして制限無しとなるようです。

pocketmine.ymlのバックアップ

さっそくpocketmine.ymlを修正したいところですが,設定変更するときはバックアップを取るのがお作法。
これを習慣づけておくと,後々幸せになれるはずです(多分)

バックアップは"cp -p"コマンドで取得。取得後"ls -l"で確認しておきましょう。

[mine@PocketMineMP PocketMine-MP.git]$ cp -p pocketmine.yml pocketmine.yml.org
[mine@PocketMineMP PocketMine-MP.git]$ ls -l pocketmine.yml*
-rw-rw-r-- 1 mine mine 5726 Apr 29 12:04 pocketmine.yml
-rw-rw-r-- 1 mine mine 5726 Apr 29 12:04 pocketmine.yml.org

pocketmine.ymlの修正

pocketmine.ymlを修正します。
今回はデフォルトの2倍2048MBを割り当ててみます。

[mine@PocketMineMP PocketMine-MP.git]$ vi pocketmine.yml


#Main thread hard memory limit in megabytes. Set to 0 to disable
#This will stop the server when the limit is surpassed
main-hard-limit: 2048 : ★★★ ここを修正 ★★★

修正内容の確認(diff)

修正したらdiffを使って前後確認してみましょう。

[mine@PocketMineMP PocketMine-MP.git]$ diff -u pocketmine.yml.org  pocketmine.yml
--- pocketmine.yml.org  2016-04-29 12:04:19.910671105 +0900
+++ pocketmine.yml  2016-04-30 08:42:45.082765512 +0900
@@ -35,7 +35,7 @@

  #Main thread hard memory limit in megabytes. Set to 0 to disable
  #This will stop the server when the limit is surpassed
- main-hard-limit: 1024
+ main-hard-limit: 2048

  #Period in ticks to check memory (default 1 second)
  check-rate: 20
[mine@PocketMineMP PocketMine-MP.git]$

1024→2048に修正されている事が確認できたら,あとは反映させるだけです。

設定の反映(PocketMine)の再起動

反映にはpocketmineの再起動が必要です。
pocketmineのワールドに誰も居ないことを確認して停止しましょう。

  1. listコマンドでだれもいない事を確認 #pocketmineコンソールから実施
  2. stopコマンドでpocketmineを停止  #pocketmineコンソールから実施
  3. "./start.sh"で起動

これで, CrashDumpを吐いて停止する可能性が少なくなりました。
それでもまだ止まっちゃう!という場合は漢を見せて
"main-hard-limit:0"という選択肢もありかもしれません。(ご利用は自己責任で)

それでは楽しいPocketMine生活を^^
メモは以上です

(参考)PocketMineのインストール方法(PE v0.14.2.0対応版)

Minecraft PE用マルチプレイサーバー構築(PE v0.14.2.0対応版)のインストール方法は
以前書いた記事を参考にしてください。
ichibariki.hatenablog.com

試した環境

Minecraft PE用マルチプレイサーバー

PocketMine-MP 1.6dev 「[REDACTED]」 implementing API version 2.0.0 for Minecraft: PE v0.14.2.0 alpha (protocol version 60)

OS

[root@PocketMineMP ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@PocketMineMP ~]# uname -a
Linux PocketMineMP 3.10.0-327.10.1.el7.x86_64 #1 SMP Tue Feb 16 17:03:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux