ちょっと旧聞になりますがSUSE Linux Enterprise Server 12 for SAP Applicationsリリースされました。

SUSE Introduces SUSE Linux Enterprise Server 12 for SAP Applications

SUSE Linux Enterprise Server 12 の SAP アプリケーション向けバージョンは、SLES 12 で標準となった Snapper と組み合わせ、DBのスナップショットを管理し、従来の SLES for SAP の様に、SAP での最適化されたチューニングが行われています。

a0056607_16232868.jpg


SAP のインストールウィザードはデフォルトで yast メニューにないため、 yast > software から "wizard" などのキーワードで見つけます。

a0056607_1625747.jpg


a0056607_16253943.jpg

[PR]
# by islandcenter | 2015-06-07 16:25 | SUSE | Trackback | Comments(0)

共有ファイルサーバーというのは、便利な物なのですが、多人数で使っていると、自動的に「要らないファイルのゴミ箱化」、「将来性のないファイルの墓場化」「ファイルのゴミ屋敷化」されてしまう事になります。その「ファイルサーバーのゴミ箱」をセッセとお金と暇を掛けてバックアップを取るというのは実に愚かしい行為です。Windows ファイルサーバーは、一般的に使いづらく、「データのアーカイブ」には便利ですが、「アーカイブ」の条件は個々のユーザが判断するため、一般ユーザは、「とりあえずバックアップしておきたい」ファイルを丸ごとコピーしてしまう傾向があるようです。特に C:\Mydocument なんてのは、丸ごと2世代バックアップを取る、なんて事はユーザさんは平気でやっちゃってくれます。

管理者は、こうした「行儀の悪い」ユーザにメールを送って削除を依頼したりするわけですが、この警告から実際にユーザがファイルを削除するかどうかの判断はユーザの勝手な判断でもあり、何のルールもありません。共用部分でも、退職したユーザが残したゴミファイルで一杯。部署の担当者にとっても所有者不明で削除していいものなのかの判断もできません。

Windows ファイルサーバーは特に「ファイルのゴミ箱」として使われるケースが多いようです。

しかし、この様な状況は、例え、Linnx + Samba であっても、Novell OES NetWare でも変わりがありません。しかし、Novell Openenterprise Server (OES Linux) では Linux で使える様々なツールを使い回すことで、無秩序なファイルサーバーの運用ルールに一定の「決まり」を作ってしまえば、ファイルサーバーを「ゴミ箱」化してしまう運用に決定的な方法を作り出すことができます。年金機構の情報漏えいにしても、本来一時的に利用して消してしまえば良いデータを、いつまでも共有サーバーに保管しておいた、という運用上の不適切なルールが徹底されていなかったからなのですね。

要らないファイルはサッサと消してしまえ。

という提案です。

ファイルサーバーをゴミ箱にしないために何をすべきでしょうか。

1) クォータをかける

残念ながら、Windows2012 以前 と Linux+samba ではボリューム単位、ユーザ、グループでしかクォータ管理ができません。Novell Open Enterprise Server ならば、ユーザ+ボリューム単位、ユーザを無視したディレクトリ単位でクォータ管理ができます。例えば VOL1:Share\Sales などに Sales グループのトラスティを与えて、ディレクトリクォータをかける、という設定が容易にできます。これで Sales グループが利用できる全体量を10Gバイトに制限をかける事ができます。この機能は、NetWare 時代から当たり前に揃っていた機能です。

a0056607_12393973.jpg


実際に、ボリューム(パーティション)単位、ユーザ単位でクォータを掛けてたとしても、社内常駐で、例えば Sales フォルダのファイルの作成や更新をセッセとやっている営業アシスタントと、そのファイルを参照するセールスマンの仕事のスタイルに違いがあるわけです。一般的に、ユーザ+ボリューム(パーティション)単位でクォータを掛けても、社内業務を主に行うユーザと、更新より参照系の業務が多いユーザを区別することはありません。

そもそも、それ以前に Linux + Samba では、パーティションの設計が非常に難しくなります。

したがって、あまりユーザ、グループをボリューム単位でクォータをかけるのは良い事ではありませんし、ほとんど意味がなく、まず実際には使われていないように思えます。したがって、トラスティがある「営業部のフォルダは10G、開発部は20Gですね。ホームディレクトリは5Gに制限します」とディレクトリクォータをかけた方が良いわけです。これで、ユーザは自然に「大事なファイル」だけをセッセと共有フォルダに保存するように心がけ、無駄なファイルを置かない習慣ができるのです。Linux + Samba ではこの機能はありませんし、 Windows では 2012 以降に利用できる様になったようです。残念ながら、Windows でディレクトリクォータを使うケースを紹介している記事はあまり見ません。つまり、Windows 2012 でも、Windows ファイルサーバーは単なる「ファイルのゴミ箱」なのです。

2) アクセスのないファイルを削除してしまう。

それでも、ファイルサーバーは一つ間違えると「ファイルのゴミ箱」となってしまいます。重要なアーカイブであるならまだしも「生きていない」ファイル「死んでいるファイル」を片付けるには、実際にアクセスのないファイルを探して削除してしまう方法が一番でしょう。 Novell Open Enterprise Server は SUSE Linux ベースなので、NSSボリュームに対しても、一般的は find コマンドを使って "find -exec rm" でアクセスのないファイルを自動削除する事ができます。 NetWare が Linux に移植されて、使い勝手が良くなった点の一つです。

これが今回の主題です。

ファイルの更新日時を変えてみる

oes11x1:/media/nss/VOL2 # touch -d "2010/1/1" test/old-text.txt

oes11x1:/media/nss/VOL2 # ls test -alu
total 1384
drwxrwxrwx 1 root root 4096 May 29 15:55 .
drwxrwxrwx 1 root root 4096 May 29 15:43 ..
-rw-rw-rw- 1 root root 707395 May 29 15:53 old-butnew_text.txt
-rw-rw-rw- 1 nobody root 707395 Jan 1 2010 old-text.txt

a0056607_1251628.jpg


oes11x1:/media/nss/VOL2 # ls test -l
total 1384
-rw-rw-rw- 1 root root 707395 May 29 15:53 old-butnew_text.txt
-rw-rw-rw- 1 nobody root 707395 Jan 1 2010 old-text.txt

30 日以上アクセスがないファイルを探してみる
oes11x1:/media/nss/VOL2 # find test -atime +30

.. 見当たらない..

一日以上アクセスのないファイルを探してみる
oes11x1:/media/nss/VOL2 # find test -atime +1
test/old-butnew_text.txt
test/old-text.txt

..あった..

一日以上変更のないファイルを探してみる

oes11x1:/media/nss/VOL2 # find test -mtime +1
test
test/old-butnew_text.txt
test/old-text.txt

.. 二つあった ..

そのうちの一つを開いてみる(保存はしない vi で開いて :q! で逃げる)

oes11x1:/media/nss/VOL2 # vi test/old-butnew_text.txt

一日以上アクセスのないファイルを探してみる

oes11x1:/media/nss/VOL2 # find test -atime +1
test/old-text.txt

.. さっき開いたファイルがリストされなくなった ..

それでは「1日以上アクセスがないファイルを削除」してみます。

oes11x1:/media/nss/VOL2 # find test -atime +1 -exec rm -f {} \;
oes11x1:/media/nss/VOL2 # ls test -lu
total 692
-rw-rw-rw- 1 root root 707395 Jun 1 09:00 old-butnew_text.txt

... アクセスしなかった old-text.txt だけ消えた ....

今度は「更新されていないファイルを削除」してみる
oes11x1:/media/nss/VOL2 # find test -mtime +1 -exec rm -f {} \;

今度は mtime を使ってみる

oes11x1:/media/nss/VOL2 # ls test -lu
total 0

.. 変更されていないため、削除 ..

oes11x1:/media/nss/VOL2 # vi test/newfile

.. 新しいファイルをつくって保存してみる ..

oes11x1:/media/nss/VOL2 # ls test -lu
total 4
-rw-rw-rw- 1 root root 19 Jun 1 09:43 newfile

1日以上更新がないファイルを削除してみる。
oes11x1:/media/nss/VOL2 # find test -mtime +1 -exec rm -f {} \;

... -mtime ... で一日以上更新のないファイルを探して削除

oes11x1:/media/nss/VOL2 # ls test -lu
total 4
-rw-rw-rw- 1 root root 19 Jun 1 09:43 newfile

.. 作成したばかりで消えない ..

oes11x1:/media/nss/VOL2 # touch test/newfile -d "2000/1/1"

.. touch して更新日付を変えてみた ..

oes11x1:/media/nss/VOL2 # ls test -lu
total 4
-rw-rw-rw- 1 root root 19 Jan 1 2000 newfile

.. 変わっている ..

oes11x1:/media/nss/VOL2 # find test -mtime +1 -exec rm -f {} \;

.. -mtime で削除できるか ...

oes11x1:/media/nss/VOL2 # ls test -lu
total 0

... 削除された ...

oes11x1:/media/nss/VOL2 #

... ファイルを作ってみる ....

oes11x1:/media/nss/VOL2 # touch test/newfile
oes11x1:/media/nss/VOL2 # ls test -alu
total 0
drwxrwxrwx 1 root root 4096 Jun 1 10:11 .
drwxrwxrwx 1 root root 4096 Jun 1 10:10 ..
-rw-rw-rw- 1 root root 0 Jun 1 10:11 newfile

... rmdir ... で一日以上古いディレクトリを削除してみる

oes11x1:/media/nss/VOL2 # find . -mtime +1 -exec rmdir {} \;
rmdir: failed to remove `./test': Directory not empty

..ファイルあるので rmdir では削除されない..


※もっとも、ファイルを削除するという事はディレクトリエントリの更新が入るため、ディレクトリの更新時間もアップデートされてしまいます。という事で一日待ってみました。

- 一日後 -

oes11x1:/media/nss/VOL2 # date
Tue Jun 2 11:15:13 JST 2015
oes11x1:/media/nss/VOL2 # ls -alu
total 16
drwxrwxrwx 1 root root 4096 Jun 2 11:15 .
drwxr-xr-x 4 root root 4096 Jun 1 08:46 ..
d--x--x--x 1 root root 4096 Jun 1 10:17 ._NETWARE
drwxrwxrwx 1 root root 4096 Jun 2 11:14 test <-- これ
drwxrwxrwx 1 root root 4096 Jun 2 11:14 test2
drwxrwxrwx 1 root root 4096 Jun 1 17:14 test3

oes11x1:/media/nss/VOL2 # find . -mtime +1 -exec rmdir {} \;
  <-- 一日以上アクセスがないディレクトリを削除
find: `./test': No such file or directory

oes11x1:/media/nss/VOL2 # ls -alu
total 16
drwxrwxrwx 1 root root 4096 Jun 2 11:15 .
drwxr-xr-x 4 root root 4096 Jun 1 08:46 ..
d--x--x--x 1 root root 4096 Jun 2 11:15 ._NETWARE
-rw-rw-rw- 1 root root 87 Jun 1 17:20 rmoldfile.sh
-rw-rw-rw- 1 root root 49 Jun 1 17:20 rmoldfile.sh~
drwxrwxrwx 1 root root 4096 Jun 2 11:15 test2 <-- なくなりました
drwxrwxrwx 1 root root 4096 Jun 2 11:15 test3

-r--r--r-- 1 root root 24 Jun 1 17:20 ~DFSINFO.8-P
oes11x1:/media/nss/VOL2 #

ただし find コマンドでディレクトリサーチを行うと、「ディレクトリにアクセスされた」と判断される様で、タイムスタンプが変わってしまいます。それならば、もっとシンプルな方法で、「空のディレクトリは無条件で削除」してみる事にします。

-空のディレクトリを削除-

oes11x1:/media/nss/VOL2 # ls -alu
total 12
drwxrwxrwx 1 root root 4096 Jun 2 12:08 .
drwxr-xr-x 4 root root 4096 Jun 1 08:46 ..
d--x--x--x 1 root root 4096 Jun 2 12:05 ._NETWARE
-rw-rw-rw- 1 root root 87 Jun 1 17:20 rmoldfile.sh
-rw-rw-rw- 1 root root 49 Jun 1 17:20 rmoldfile.sh~
drwxrwxrwx 1 root root 4096 Jun 2 12:05 test2
drwxrwxrwx 1 root root 4096 Jun 2 12:05 test3
oes11x1:/media/nss/VOL2 # find . -type d -empty -delete
oes11x1:/media/nss/VOL2 # ls -alu
total 12
drwxrwxrwx 1 root root 4096 Jun 2 12:09 .
drwxr-xr-x 4 root root 4096 Jun 1 08:46 ..
d--x--x--x 1 root root 4096 Jun 2 12:09 ._NETWARE
-rw-rw-rw- 1 root root 87 Jun 1 17:20 rmoldfile.sh
-rw-rw-rw- 1 root root 49 Jun 1 17:20 rmoldfile.sh~
drwxrwxrwx 1 root root 4096 Jun 2 12:09 test3 <-- 空ディレクトリが消えた
oes11x1:/media/nss/VOL2 #

-サイズの大きなファイルを削除-
最近はあまり見なくなりましたが、ネットでダウンロードした「同僚に言えないファイル」をセッセと職場のファイルサーバーに保存する不届きなユーザも居ます。管理者からするとバレバレなんですけど、バックアップログを見ていると、こんな無駄なファイルの為にバックアップを毎日取っていると虚しくなります。

そこで、一定以上のファイルサイズのファイル(特にビデオファイルなんか)を削除してみます。

oes11x1:/media/nss/VOL2 # ls test -l
total 278016
-rw-rw-rw- 1 root root 284673464 Jun 2 14:15 Himitsu.AVI
<--- なんじゃこの巨大ファイルは.....
--w--w--w- 1 nobody root 7168 Jun 2 13:59 Thumbs.db
-rw-rw-rw- 1 root root 22 Jun 2 14:05 small.file
oes11x1:/media/nss/VOL2 # find . -size +10000k
  <-- 10M以上のサイズのファイルを探す。
./test/Himitsu.AVI
oes11x1:/media/nss/VOL2 # find . -size +10000k -exec rm -f {} \;
<--- 削除する。
oes11x1:/media/nss/VOL2 # ls test -l
total 12
--w--w--w- 1 nobody root 7168 Jun 2 13:59 Thumbs.db
-rw-rw-rw- 1 root root 22 Jun 2 14:05 small.file

 <--- 巨大なファイルだけ消された。

※ -size は k(バイト) M(バイト) G(バイト) の指定もできます。
 
まとめ

実運用では、テープバックアップなどの作業を行う前に実行されているように、定期的に cron 実行する形式になるでしょう。

また、厳しくクォータをかけたディレクトリと「一定の条件で削除される」フォルダとの違いをユーザに説明しておくことは重要です。ここでは( . ) カレントディレクトリを指定していますが、実際の運用では絶対パスを指定するようなスクリプトを作った方が良いでしょう。

- カレントディレクトリ( . )以下の1日以上アクセスがないファイルを削除 -
find . -atime +1 -exec rm -f {} \;
find . -name "*.*" -atime +1 -exec rm -f {} \;
※ スペースが入っているファイルや漢字ファイルがあるとうまく動かないので -name "*.*" を付けてみました

これでも十分なのですが、空ディレクトリが残ってしまうため

- カレントディレクトリ( . )以下のファイルのない空のディレクトリを削除 -
# find . -type d -empty -delete

事例では1日としていますが、当然90日とか365日とか指定できるため、これは現状に合わせて適度に調整する事になるでしょう。

一定のサイズ以上のファイルを削除
# find . -size +10000k -exec rm -f {} \;
ここでは +10000k 以上、つまり10Mとしてみました。

※ ヒント:実際には "Thumbs.db" などが残ってしまうケースもあり、これを find スキャンするとタイムスタンプが更新されてしまうため、ディレクトリは空にはならない様です。エクスプローラから見てファイルがないのに、ディレクトリが削除できません。が、実際には Thumbs.DB が残っているためです。明示的に削除しないとダメな様です。実際の運用の現場で find を使いこなして、うまく”古くて消したいファイル”を削除する必要があります。

-オマケ-
oes11x1:/media/nss/VOL2/test4 # touch -at 0511121213 file-a
oes11x1:/media/nss/VOL2/test4 # ls -alu
total 0
drwxrwxrwx 1 root root 4096 Jun 4 11:17 .
drwxrwxrwx 1 root root 4096 Jun 4 11:01 ..
-rw-rw-rw- 1 root root 0 Nov 12 2005 file-a


touch -at YYYYYMMDDHHMM file-name.txt (月日年時分年々月日時分) 形式でファイルの最終アクセス時刻を意図的に変更できます。


islandcenter.jp

- Key Word -
Novell Openenterprise Server クォータ管理、容量管理、古いファイルの自動削除、ファイルサーバー管理
[PR]
# by islandcenter | 2015-06-02 13:08 | OES Linux | Trackback | Comments(0)

apcupsd の apctest にはバッテリーの Calibration 機能があります。キャリブレーションとは、"補正"の事です。

バッテリーは長期間使用していると性能が劣化します。そこで初期状態から数か月、数年経つ毎に劣化状態をテストしなければ、バッテリー運転の稼働可能な時間が変化します。また、システムに追加があると、当然負荷状態も変化します。

ということで、機器の追加、変更があった場合や定期的にスケジュールを決めてバッテリーをテストして、稼働可能な時間を補正するのが、キャリブレーション機能です。キャリブレーションチェックをして、実際にバッテリーの負荷と、稼働時間を修正する機能です。

重要なポイントは二つ

1) 100 % 充電状態から実施すること

さもないと、正確な時間が判りません。

2) 年に1、2度は行う事。

やりすぎはバッテリーの寿命に影響します。かと言ってバッテリーそのものの劣化の判断をするには、ある程度キャリブレーションをしなければならないという事です。

個人的に他にキャリブレーションテストで指摘しておきたいのは

1) 放電するのでピーピー鳴ります。

あまり気持ちのいいものではないので、人が居ない時間帯に行うのがいいでしょう。私の様に、外部の業者が黙ってやってしまうとお客様に怒られます。

2) その他の商用電源に負荷が掛かっていない時間帯を選ぶ事。

キャリブレーション中は、当たり前ですが、UPSが作動するような、ブランクアウトやサージなどが起こらない時間帯を選ぶのがコツです。例えば古いビルで冬の早朝の出勤時間帯(みんなで電気ヒーターを使い始める)や、工場などで、ビジナスアワーのフル操業状態と深夜、休日では商用電源の状態が著しく変化します。工場などは下手をすると休日中に電圧が上がりすぎる場合があります。そうなるとUPS運転に切り替わる可能性があるので、そんな時間帯は避けることです。

という事で一番いいのは、ビジネスアワーを避けて、バッチ処理も終わる夜明け頃がベストですが、残念ながら apctest ではパラメータを指定して cron 実行という事はできない様です。結局、

「今日は大きなシステムイベントの予定がないな」

という日を選んで実行する事になります。特に、バッテリーに機器を追加したり変更したら、キャリブレーションテストを一度はすることをお勧めします。

キャリブレーションテストが終わったら、イベントのログを確認して、何分間バッテリー運転していたかを確認する事です。これで大体のUPSの稼働時間、負荷状態の余裕が見えてきます。

SUSE Linux の場合、apcupsd のデーモンを停止して行います。 apcupsd stop ではapctest は有効に動作しないので、プロセスを確認して、kill してから実行します。


sles11:~ # ps ax | grep apcups
13962 ? Ss 0:00 apcupsd start
13965 pts/11 S+ 0:00 grep apcups
sles11:~ # kill 13962 <--- apcupsd のプロセスを止める


sles11:~ # apctest


2015-05-08 11:19:10 apctest 3.14.4 (18 May 2008) suse
Checking configuration ...
Attached to driver: apcsmart
sharenet.type = DISABLE
cable.type = CUSTOM_SMART

You are using a SMART cable type, so I'm entering SMART test mode
mode.type = APCSMART_UPS
Setting up the port ...
Hello, this is the apcupsd Cable Test program.
This part of apctest is for testing Smart UPSes.
Please select the function you want to perform.

1) Query the UPS for all known values
2) Perform a Battery Runtime Calibration
3) Abort Battery Calibration
4) Monitor Battery Calibration progress
5) Program EEPROM
6) Enter TTY mode communicating with UPS
7) Quit

Select function number: 2 <---- キャリブレーションの開始

First ensure that we have a good link and
that the UPS is functionning normally.
Simulating UPSlinkCheck ...
Wrote: Y Got: SM
Attempting to use smart_poll() ...
Sent: Y Got: SM Good -- smart_poll() works!.

Checking estimated runtime ...
Current runtime is 35 minutes
Checking for battery level ...
Battery level is 100.0 -- OK

The battery calibration should automatically end
when the battery level drops below about 25, depending
on your UPS.

I can also optionally monitor the progress
and stop the calibration if it goes below 10. However,
in the case of a new battery this may prematurely end the
calibration loosing the effect.

Do you want me to stop the calibration
if the battery level goes too low? (y/n): y
 <--- バッテリー運転に切り替えるため確認


Sending Battery Calibration command. ...
UPS has initiated battery calibration.
Monitoring the calibration progress ...
To stop the calibration, enter a return.

Battery charge 100 <--- 現在 100%
Remaining runtime is 34 minutes
<--- とりあえず34分間の予定の模様
<-- この間UPSはピーピー鳴り始めます --

User input. Terminating calibration ...

Attempting to abort calibration ...
Response to abort request: OK
On battery 20 sec or 0m20s.

1) Query the UPS for all known values
2) Perform a Battery Runtime Calibration
3) Abort Battery Calibration
4) Monitor Battery Calibration progress
5) Program EEPROM
6) Enter TTY mode communicating with UPS
7) Quit

Select function number: 4 <--- モニターをしてみる

Monitoring the calibration progress ...
To stop the calibration, enter a return.

Battery Runtime Calibration terminated by UPS.
Checking estimated runtime ...
Remaining runtime is 35 minutes <--- ここでは 35 分間の予定

1) Query the UPS for all known values
2) Perform a Battery Runtime Calibration
3) Abort Battery Calibration
4) Monitor Battery Calibration progress
5) Program EEPROM
6) Enter TTY mode communicating with UPS
7) Quit

Select function number: 3
<-- やっぱりお客さんに怒られた。キャンセルしてみる


CAUTION! Don't use this command unless the UPS
is already doing a calibration.
Are you sure? (yes/no): yes <--- キャンセルの確認


Attempting to abort calibration ...
Response to abort request: OK

1) Query the UPS for all known values
2) Perform a Battery Runtime Calibration
3) Abort Battery Calibration
4) Monitor Battery Calibration progress
5) Program EEPROM
6) Enter TTY mode communicating with UPS
7) Quit

Select function number: 7 <--- 終了

2015-05-08 11:20:27 End apctest.

ログを見てみる

sles11:~ # tail /var/log/apcupsd.events
Fri May 08 11:18:36 JST 2015 apcupsd error shutdown completed
Fri May 08 11:18:52 JST 2015 apcupsd exiting, signal 15
Fri May 08 11:18:52 JST 2015 apcupsd shutdown succeeded
Fri May 08 11:19:07 JST 2015 apcupsd exiting, signal 15
Fri May 08 11:19:07 JST 2015 apcupsd shutdown succeeded
sles11:~ #


※とても重要 - apctest をする際は apcupsd を止めます。終わったら忘れずにデーモンを起動しましょう。

--
NetWare 版の PowerChute では、キャリブレーションを月に一度実行できるようなパラメータが
ありました。土日はシステムに何等かの変更をかけるようなイベントが予測されるので、火曜とか水曜の朝5時ごろに月イチに、まだ担当者が出勤してこない時間帯に、キャリブレーションを実行するように設定していました。

UPSは正常に動いている様に見えていても、キャリブレーションをかけると放電しますから、その後、普段負荷が掛かっていないバッテリーが見事に御臨終されている事もよくあります。

UPSは基本的に「壊れる」事で大事な機器を守る機能があるので、故障は嬉しい事ではなくても、壊れるものだと割り切る事も必要です。。

キャリブレーションで「バッテリーを壊してしまった」というより、もう寿命が来ているバッテリーが「壊れている」事を確認する作業でもあります。この後、赤ランプが付いて、バッテリーの交換だね、という事になりますから、キャリブレーションテストは数か月に一度はやっておくべき作業です。

islandcenter.jp

関連記事
APC-UPS を SUSE Enterprise Server で使うには - apcupsd

SLES11sp3 での apcupsd と UPS の制御パラメータ


- Keyword -
SUSE Linux SLES apc smartups
[PR]
# by islandcenter | 2015-05-08 20:34 | SUSE | Trackback | Comments(1)

次の OES は 2015

Join the OES 2015 Authorized Beta!
[PR]
# by islandcenter | 2015-05-03 23:37 | OES Linux | Trackback | Comments(0)

-現象-

SUSE Linux (SLES11) を runlevel 3 でインストールした後、startx で GUI が動かない。

-対策-

一旦、 CTRL+ALT+BackSpace で プロンプトに戻します。

次に

/etc/X11/xorg.config のバックアップを取り(cp xorg.config xorg.config.old)、 xorg.config.install を xorg.config にコピー(上書き)します。これで、インストーラが起動した時の x の状態に戻ります。

islandcenter.jp
[PR]
# by islandcenter | 2015-04-19 17:59 | SUSE | Trackback | Comments(0)

SUSE Linux Enterprise Server の XEN 環境で動いていた Windows を KVM に移行してみました。

Windows には既に SUSE の VMDP 2.2 準仮想化ドライバが入っており、必要十分なレスポンスを出しています。

a0056607_1255586.jpg


方法は

- 単純に /var/lib/xen/image/MYVM/MYVM.disk0.raw のイメージを KVM が動作するハードウェアにコピー。

- 次にKVMハイパーバイザーで virt-manager を起動して New > "I have a disk image with ......" を選択して、XEN で動作していたイメージを選択します。

- Network Adapter (NIC) の選択は virtio を選びます。Hyper Visor Default を選ぶと realtek 系の残念な NIC として認識されてしまいます。

a0056607_1313535.jpg


- これで移行させた仮想マシンを run させます。

基本的にはこれでOKなのですが、まれに NIC が「不明なデバイス」になる場合があります。その時は VMDP ドライバを上書きインストールすると良いでしょう。あらかじめ VMDP ドライバをC: ドライブにコピーしておくと作業が楽です。

a0056607_1263985.jpg


ただし NIC の MAC アドレスが変わってしまう、当たり前ですが、ベンダーコードが違うので、「あ、新しいNICだ」 と Windows が認識してしまうため、 IP アドレスや NIC のチューニング自体を行う必要があります。もっとも VMDP 2.2 では、NICのチューニング自体、xxxx offload 系の「やってはいけないチューニング」がデフォルトで Off なので、ほとんど問題はないでしょう。

--
SUSE Linux Enterprise Server の XEN 完全仮想化環境なので、XEN <---> KVM 間の Windows の移行は容易です。VMDP は両方の環境で最適化されたドライバです。

-アンインストール-

C:\Program Files\vmdp の下に Uninstall.exe があります。これを実行してアンインストールします。他の方法では綺麗に削除できません。


islandcenter.jp

SUSE Linux Enterprise Virtual Machine Driver Pack
https://www.suse.com/ja-jp/products/vmdriverpack/

SUSE Linux Enterprise Virtual Machine Driver Pack 2.2 - ダウンロードは登録が必要です。
https://download.suse.com/Download?buildid=1f4Xf1JirmM~


-Key word-

SUSE Linux Enterprise Server SLES XEN KVM 変換 移行 VMDP 準仮想化ドライバ
[PR]
# by islandcenter | 2015-04-11 12:11 | SUSE | Trackback | Comments(0)

Windows のグループポリシー:パスワードの複雑さ、文字数制限を緩くする

> gpmc.msc

フォレスト>ドメイン>ドメイン名>グループポリシーオブジェクト> Default Domain Policy > 右ボタンで「編集」

グループポリシー管理エディタが起動します。

コンピューターの構成>ポリシー>Windows の設定>セキュリティポリシー>アカウントポリシー>パスワードポリシー

a0056607_14145066.jpg


- パスワードの長さ: 任意
- パスワードの有効期限: 未定義に変更
- 複雑さの条件を満たす.....: 無効

に変更します。




[PR]
# by islandcenter | 2015-04-03 14:15 | Windows | Trackback | Comments(0)

SUSE Linux には supportconfig と言うスクリプトツールがあります。このツールにより、ハードウェアの情報、DNS や XEN の設定、稼働状況などを、コマンド一発で取得する事ができます。

※このツールは supportutils パッケージに含まれ、スクリプトは /sbin に作成されます。yast > software > supportu などで検索してチェック、インストールします。
a0056607_10082038.jpg

sles11:~ # supportconfig
=============================================================================
Support Utilities - Supportconfig
Script Version: 2.25-290
Script Date: 2011 07 14
=============================================================================

Gathering system information
Data Directory: /var/log/nts_sles11_150320_1151

Basic Server Health Check... Done
RPM Database... Done
Basic Environment... Done
Basic Health Report... Done
 - 中略 -

Hardware... Please Wait... Done
File System List... Skipped
Supportability Analysis... Please Wait... Done
System Logs... Done

Creating Tar Ball

==[ DONE ]===================================================================
Log file tar ball: /var/log/nts_sles11_150320_1151.tbz
Log file size: 3.0M
Log file md5sum: 94f89e144d882b151a9653c66a2c54f8

Please attach the log file tar ball to your open Service Request at the
following URL:
https://secure-support.novell.com/eService_enu

You can also upload the tar ball to ftp.novell.com/incoming, or just use
supportconfig -ur , to upload the tar ball automatically.

If you cannot attach the tar ball to the SR, then email it to the engineer.
=============================================================================


デフォルトでは /var/log/nts_HOSTNAME_MMDDYY_hhmm.tbz 形式で圧縮されています。

このファイルを取得して、資産管理や設定管理、サポートの基本情報とします。

--
また、yast2 > Other > support に supportconfig の GUI 版があります。yast を使えば、容易に supportconfig ファイルを作成して、登録済みサブスクリプションに対して、カスタマーセンターのテクニカルサポートに必要なレポートを作り、suse.com のサポートにアップロードする事ができます。

a0056607_14511597.jpg


ここで作成するレポートは、デフォルトで expert オプションが選択されています。特に必要でなければ Default オプションを使います。

a0056607_14522728.jpg


supportconfig を作成するには、数分から十数分かかります。

作成が終わると「保存先(Default /root)」 と、アップロード先 URL を指定できます。アップロードをする必要がない場合は、アップロード先 URL のチェックを外します。

この他、 supportconfig の内容を html 化するツール(Supportconfig Analysis)が SLES12 以降にあります。

SUSE Linux Enterprise Server 12 管理ガイド
https://www.suse.com/ja-jp/documentation/sles-12/singlehtml/book_sle_admin/book_sle_admin.html

islandcenter.jp


キーワード

SUSE Linux Enterprise Server 11 SLES12 suooprtconfig 設定情報 一括取得
[PR]
# by islandcenter | 2015-03-20 18:22 | Novell | Trackback | Comments(0)

先日、とあるインフラ系ソフトウェアの評価版を入手してひどく驚いた事がありました。

なんと、インストール用のソフトウェアやドキュメントと言ったディレクトリがDVDメディアの中で「インストール」などと日本語で書かれていた事です。
a0056607_1451735.jpg


思わず天を仰ぎました。

セットアッププログラムなどが「インストール」というディレクトリにあるのです。通常だったら DVD:\setup などの英数字のディレクトリにあるのですが、このソフトウェア、なんと製品やドキュメントを収めたディレクトリ名、ファイル名が全部「日本語」なのです。

そこそこに名のあるソフトウェアです。同様なライバルのソフトウェアは世界中にあります。

この国産メーカーの製品には将来はないな、とすぐ感じました。例え日本で10%のシェアがある製品であっても、世界では1%にも満たないシェアしか取れません。例え日本で100%のシェアを取っても、製品自体が日本語にしか対応されていないので、それ以上、60億人が住む海外に市場を伸ばすことは不可能なのです。

逆に海外では5%しかシェアのない製品であっても、日本で爆発的に売れれば、海外ベンダーと言え日本法人を作ったり、ローカライズや日本国内でのサポートの充実を図ります。

APC-UPS(現在のシュナイダーエレクトリック)やVMWareなどが日本で販売開始された時はそれこそごく小規模に始まりました。ローカライズさえされていませんでした。

私は、ほぼ外資系製品を専門に扱ってきたため、若干のローカライズの不備などがあっても実用性に困ったことはありません。また日本語の情報が少なくても、一般的な高卒程度の英語の知識で情報を入手できるため、困ることはまずありません。

また海外製ソフトウェアは、基本的に海外のそれぞれのローカルタイムでサポートを行うため、「電話問い合わせ」が頼りにできない代わりに、セルフサポートが充実しています。製品サポートのための自発的なコミュニティもあります。オンラインでの情報が充実しています。

製品を利用する分母の規模が違うのです。

しかし、多くの「国産ソフトウェア」は、サポートが JST 9to5 です。製品サポートも、まずユーザ登録をしない限り受ける事ができません。事前評価の体制さえできていないケースが非常に多くあります。

分母が違うから、脆弱性の問題や不具合などは早い段階で指摘される。もっとも悪用されるのも早い段階である、という事もデメリットかもしれません。しかし分母が少ない製品では、そもそも脆弱性がある事自体発覚しない事もありますし、使っているミドルウェアをしっかり把握していないと、セキュリティ上の問題に気が付かないケースもあり得ます。

--
よくある話なのですが、日本資本の、海外現地法人が、海外製ソフトウェアを導入して成功したサクセスストーリーを見かけます。ほとんどの日本のSIベンダーが海外で仕事ができない仕組みである以上、海外進出した日系企業の現地法人は、自然と海外製のソフトウェアを導入するしか方法がなくなるわけです。
そこでグローバル化した日本企業は、国産ソフトウェアの海外展開ではなく、海外製品を逆輸入して国内導入するケースは決して少なくはありません。

この様な状況で「日本国内に日本語でサポートを受けられる」事のメリットしかない国産ソフトウェア製品の多くは淘汰されて行くでしょう。

当然このソフトウェアは、海外に現地法人がある日本企業で使われる可能性は、絶対「あり得ない」と言い切る事ができます。

何しろ、海外製品は例え少ないシェアしかなくても分母が大きい以上、開発からサポートに至るまで豊富な経験を積み、グローバルで売れるため資金面もケタが違ってきます。ソフトウェアのライセンス料金も分母に従い多くの利益が出せて、いずれ、製品の価格や機能に還元されます。

--
もし、このソフトウェアのハードコーディングされているメニュー部分を英語と日本語の両用対応にして、ヘルプとマニュアルを日英両方で書けば、それだけで簡単に英語版として出荷できるはず。メディアの中身まで日本語であれば、日英両方のメディアを作る必要があります。どう考えても、このソフトウェアベンダーが海外に進出しようという気持ちが見られません。悲しい事ですが、「どうせ日本というガラパゴス諸島で売れればいい」という意図が杜撰に見えてしまいます。

おそらく、このプログラムのソースコードもそれなりの言語でかかれているのでしょうが、コメントは全部日本語でしょう。元々海外言語にローカライズなど考慮の範囲外です。30年前のプログラムであれば、その様な開発も当たり前ですが、現代のグローバル時代に、グローバルを見据えていないパッケージソフトウェアに未来はありません。

--

残念ながら国産で海外でも成功しているソフトウェア、ITサービスは、外資系日本産サービスの LINE とスーパーマリオを始めとするゲームソフト位しか耳にしません。

--

別に海外製品を礼賛している訳ではありません。日本のソフトウェア、IT産業がグローバル化していない以上、日本の情報産業はますます特殊な市場、ガラパゴスな市場として特化するしかないのです。

多くのIT産業を志望する学生が「知っている日本のSIベンダーは?」と問われれば、いくつもの名が上がるのに対して、「知っているソフトベンダーは?」と問われて、ジャストシステム位しか思い浮かばない、というインタビュー記事を読んだことがあります。もっとも、日本の法令に従って、作らなければならない会計ソフトなどは、それなりに「日本」というガラパゴスの中で生き残る事はあり得るでしょう。

しかし、ネットワークという万民言語が使うシステム管理ソフトウェアが「日本語」にしか対応していないのは、もう完全に市場をあきらめています。

日本のプロプラエタリなソフトウェア開発者は所詮「日本市場」しか意識していないでしょう。その代り、優秀なソフトウェア開発者はオープンソースや外資系ソフトベンダーへ修飾する事が当たり前になります。

その事に気が付かず、「優秀なソフトウェア技術者を集められない」、と嘆く、ソフトベンダーの経営者は何か勘違いしているに違いありません。


islandcenter.jp
[PR]
# by islandcenter | 2015-03-17 14:14 | Trackback | Comments(0)

iSUSE Linux Enterprise Server で ext3 のパーティションのスーパーブロックを修復する方法です。

-現象-

SLES12 で ext3 フォーマットのパーティション(SLES11 からアップデートしたので...)をマウントしようとすると、"can't read superblock" と出てマウントできない。

sles12:~ # mount /dev/sdd2 /mnt/sdd
mount: /dev/sdd2: can't read superblock


-修復の経過-

デバイスは接続されているかを確認してみます。
sles12:~ # ls /dev/sdd*
/dev/sdd /dev/sdd2

デバイスは見えているらしいので fsck してみます。
fsck してみるとデバイスが見えない。

sles12:~ # fsck -C -V -y /dev/sdd2
fsck from util-linux 2.25
[/sbin/fsck.ext2 (1) -- /dev/sdd2] fsck.ext2 -y -C0 /dev/sdd2
e2fsck 1.42.11 (09-Jul-2014)
fsck.ext2: No such file or directory while trying to open /dev/sdd2
Possibly non-existent device?



スーパーブロックの確認を行います。

sles12:~ # mkfs ext3 -n /dev/sdd2
mke2fs 1.42.11 (09-Jul-2014)
/dev/sdd2 contains a ext3 file system
last mounted on /mnt/sdd on Thu Feb 26 07:16:54 2015
Proceed anyway? (y,n) y
Creating filesystem with 483705101 4k blocks and 120930304 inodes
Filesystem UUID: 0d570a96-5e94-43c4-86ae-6d8c3e9aa9e3
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848

sles12:~ #


スーパーブロックのバックアップが見つかりました。この中で任意のバックアップから復旧します。

-y を付けると y/n のインタビューが省略され自動的に修復されます。


Csles12:~ # fsck.ext3 -b 98304 -B 4096 -y /dev/sdd2
e2fsck 1.42.11 (09-Jul-2014)
/dev/sdd2 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong for group #0 (31223, counted=0).
Fix? yes

Free blocks count wrong for group #1 (31229, counted=0).
Fix? yes

Free blocks count wrong for group #2 (32254, counted=0).
Fix? yes


: 略 -- -y を付けない場合、 Fix? の後に
いちいち 'y' を押さなければなりません。

Free inodes count wrong (120930293, counted=120921131).
Fix? yes


/dev/sdd2: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sdd2: 9173/120930304 files (14.6% non-contiguous), 423218646/483705101 blocks
sles12:~ #


一応終わった様です。それではマウントしてみましょう。

sles12:~ # mount /dev/sdd2 /mnt/sdd
sles12:~ # cd /mnt/sdd
sles12:/mnt/sdd # ls
.Trash-0 data lost+found

マウント出来ました。

--

この様なエラーが出て来たディスクはやっぱり信用できませんね。


slandcenter.jp


-Keyword-


SUSE SLES11 ext3 superblock 修復





[PR]
# by islandcenter | 2015-02-28 15:43 | SUSE | Trackback | Comments(0)


ここでは SUSE Linux Enterprise Server への Dell Software NetVault 10 のインストール手順を説明します。

-SUSE Linux 11sp3 のインストールはほぼデフォルト、追加ソフトウェアなし。
-SLE 11 SDK をリポジトリに登録します。
 例えば WEB server が動作しているサーバーに解凍してリポジトリとしておけば良いでしょう。
- ここでは NetVault10 Pure 64 版を使用します。SLES も 64ビット版です。

これがないと nvconfigurator GUI が起動できません。
 
SUSE Linux Enterprise 11 Software Development Kit e-Media Kit

openmotif が必要なので yast2 から SDK の openmotifとライブラリをYaST > Software Management からインストールします。依存性のあるライブラリも同時にインストールされます。
a0056607_05250977.jpg
インストーラを実行します。

※ここでは評価版を使用しました。
# unzip xxxxxx.zip
# tar xvzf xxxxx.tar.g.z

で解凍します。

netvault:~/iso/nv10/NVBU100124-Linux-Pure64/netvault # ./install
Installer invoked in /root/iso/nv10/NVBU100124-Linux-Pure64/netvault
Using default /tmp as the temporary directory
Expanding distribution file

NetVault
Copyright 2014 Dell Software Inc.
ALL RIGHTS RESERVED.

Select a Language
1 English
2 JapaneseEUC
3 Chinese Simplified
4 Korean
5 French
6 German
Select language? [1] 2 (JapaneseEUC)
- JapaneseEUC selected
Have you read and agreed to the terms of the license?
(y = yes, n = no, d = display license) (y n d) [d] y(es)
Where should NetVault be installed? [/usr/netvault](default Enter)
Where should NetVault database be installed? [/usr/netvault/db](default Enter)
Please enter a NetVault machine name
using A-Z, a-z, _ and 0-9 [netvault](default Enter)

Please enter the NetVault password for this machine (password)
Please confirm password (password)
Please enter the password for the NetVault PostgreSQL database superuser (password)
Please confirm password (password)
checkinstall running (Begin install....)

:
: 中略
:

Copying uninstallation scripts
Installation completed successfully
#


nvconfigurator の起動、起動はX上のターミナルで行います。
netvault:~/iso/nv10/NVBU100124-Linux-Pure64/netvault # nvconfigurator &

a0056607_05343201.jpg
nvconfigurator & 「web サービス」タブを開き「HTTPサービスの有効化」をチェックします。



NetVault を一旦再起動します。

# /etc/init.d/netvault stop
# /etc/init.d/netvault start

ブラウザで次のアドレスを開きます。

http://ipaddress:80

login: admin/no-password

a0056607_00021438.jpg



-Keyword-
SUSE SLES NetVault nvconfigurator openmotif SDK



[PR]
# by islandcenter | 2015-01-31 05:38 | SUSE | Trackback | Comments(0)

SUSE open forum 2014 で SLES for SAP が紹介されました。
https://www.suse.com/ja-jp/events/suse-open-forum/2014/

SUSE Linux Enterprise Server for SAP Applications (以下 SLES for SAP) は SAP に最適化されたアプリケーション導入、運用環境を提供します。

https://www.suse.com/ja-jp/products/sles-for-sap/


-インストール-

SLES for SAP はSLES11sp3 をベースとしています。したがってインストール手順はSLES11に準じます。インストールサマリ画面から software リンクを開くとSAPアプリケ―ションBase 他、SAP 導入に必要な追加パッケージを選択する事ができます。

a0056607_11535458.jpg


また yast > software より "sap" で検索すると、yast2 用のSAP インストールウィザードもインストールしてくれます。
a0056607_120254.jpg


後はウィザードを yast で起動してインストールします。
a0056607_1223260.jpg


SLESのインストールの後 SAP インストールウィザードを起動して導入するだけです。

-インストーラだけではない特殊なチューニング-

/etc/sysctrl.conf を見ると、通常の SLES では設定されていない特殊なチューニングが行われている事が分かります。一番重要なのは、ページキャッシュの制限です。このチューニングはSAPアプリケーションがページアウトするメモリキャッシュを制限して、パフォーマンスを最大化するものです。
a0056607_12595833.jpg



-全てのSAPはSUSEで試される-

SAP も SUSE も質実剛健なドイツの企業です。拠点が近いという事もあり、お互いの協業体制は万全だそうです。

その例として、全ての SAP アプリケーションは SLES 上で開発され、まず試されます。またSAP自身が SLES 上で自社ERPシステムを運用している関係上、事実上

「SLES 上でドックフードを食べる」

体制が出来上がっています。

その他のオペレーティングシステムは言わば「後回し」になるため、事実上 SLES が SAP を動かすプラットフォームとしてのデファクトスタンダードとなっています。SAPを導入するには「一番の安全牌」が SUSE Linux Enterprise Server です。

--
SUSE は本来、ビジネス志向の強い Linux ディストリビューションです。自社のためではなく顧客志向の強さを感じます。


islandcenter.jp
[PR]
# by islandcenter | 2014-12-23 11:55 | SUSE | Trackback | Comments(0)

SUSE Open Forum 2014

久しぶりにノベル株式会社が主催する、外部のカンファレンス会場を使ったイベントがありました。

SUSE Open Forum 2014
https://www.suse.com/ja-jp/events/suse-open-forum/2014/

150人満席、8割がネクタイ族

このフォーラムに参加した視聴者のほぼ8割がネクタイを締めたビジネスマンだったことが非常に印象的でした。

普通OSSのフォーラムと言えば、ラフなスタイルの開発者であるとか、普段運用に携わっているIT管理者が参加するもの、と考えてたのですが、以外と150名の定員は満席で、その中の8割ほどの参加者がちゃんとネクタイを締めたビジネスマンだった、という事が印象的でした。一応ネクタイを締めていった私が浮かなかった事は幸いです。

Linux や OSS を使うことはビジネスで重要である。

そう言った印象を与えてくれたフォーラムでした。

ノベル主催のフォーラム

ノベルは最近ほとんどこの様な外の施設を使ったフォーラムやイベントを行っていませんでした。わざわざホテルの宴会場を借りるというのは、かなり力が入ったイベントだなという印象があります。また、ノベル(株式会社)レベルでは一時期 Ljnux の販売、サポートを止めていた時期がありました。

このフォーラムは事前受付で満員で、しかも、ほとんどの参加者がネクタイ族というのも、Novell/SUSE の位置づけを表していて面白かったです。

SUSE Linux はビジネスにとって重要なエレメントなのです。

そんな印象が強かったフォーラムでした。

islandcenter.jp
[PR]
# by islandcenter | 2014-12-23 11:02 | SUSE | Trackback | Comments(0)

ある日試してみたら、VPN 用の pptpd サーバーが外部から SSH 接続できてしまう事に気が付いてしまいました。幸い HeartBleed のバージョンではなかったので良かったのですが、あまりにも不用心なので、SSH は内部からのみ、外部からは利用できないようにしました。

SUSE Linux で外部ネットワークとのSSH接続を拒否します。

sles11:/etc # cat hosts.allow

# ローカルネットワークを許可(追加)
sshd : 192.168.1.0/24

sles11:/etc # cat hosts.deny

# 他のネットワークからの接続は拒否(追加)

#http-rman : ALL EXCEPT LOCAL
sshd : all

これで、一応外部からの SSH 接続はできず、VPN で内部のホストに接続しない限り VPN サーバには接続できなくなりました。 hosts.allow と hosts.deny は設定するとサービスを再起動しなくても即時適応されるそうです。

SSHでのホスト制限
http://hiro7216.dyndns.org/blognplus/index.php?e=116

なお SUSE の場合 http-rman というのがありますがウェブブラウザから man ページにアクセスするインターフェースです。通常不要なので削除しても構いません。
rman RosettaMan - Filter for Manpages
http://www.novell.com/products/linuxpackages/opensuse/rman.html


-確認方法-

このサーバーが外部と通信しているかを確認するには tcpdump コマンドで内部ネットワーク(192.168.1.1-254)以外のパケットをキャプチャして、外部とどのような通信をしているかを確認します。

vpn:~/ # tcpdump \(src net not 192.168.1.0/24\) and \(dst net 192.168.1.0/24\)
tcpdumpの使い方
http://d.hatena.ne.jp/chipa34/20080210/1202650183

-ついでに-

ntpd にも脆弱性があることが分かったので、塞いでおきます。

ntps:/etc # cat ntp.conf
: 中略
disable monitor

増幅攻撃はDNSだけではない――NTPサーバーの脆弱性に注意喚起
http://www.atmarkit.co.jp/ait/articles/1401/15/news126.html

対策は、脆弱性を修正したntpd 4.2.7p26(開発版)にバージョンアップすることだ。もし開発版の適用が難しい場合は、ntpdの設定ファイル「ntp.conf」に「disable monitor」という一行を追加し、monlist機能を無効化することで回避可能という。


その他の情報は
islandcenter.jp

-KeyWord-

SUSE Linux Enterprise Server NTPD 脆弱性 SSHを外部ネットワークから拒否 SSH接続元を限定する tcpdump 外部ネットワークとの通信確認
[PR]
# by islandcenter | 2014-12-15 09:18 | SUSE | Trackback | Comments(0)

SUSE Linux Enterprise 12 (SLES12) で ntpd が起動できない不具合があります。 ntpd deamon can't start under SUSE Linux Enterprise 12. How to resolve this issue ? No idea.... Orz.

sles12:/var/log # rcntpd restart
Job for ntpd.service failed. See "systemctl status ntpd.service" and "journalctl -xn" for details.


sles12:/var/log # tail messages -n30
2014-12-06T12:10:25.604438+09:00 sles12 ntpd[23695]: Listen normally on 9 vif7.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:10:25.604576+09:00 sles12 ntpd[23695]: Listen normally on 10 vif5.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:10:25.604716+09:00 sles12 ntpd[23695]: Listen normally on 11 vif4.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:10:25.605537+09:00 sles12 ntpd[23695]: Listen normally on 14 br0 fe80::be5f:f4ff:fef9:d8db UDP 123
2014-12-06T12:10:25.605705+09:00 sles12 ntpd[23695]: peers refreshed
2014-12-06T12:10:25.605855+09:00 sles12 ntpd[23695]: Listening on routing socket on fd #31 for interface updates
2014-12-06T12:11:03.613150+09:00 sles12 ntpd[24146]: ntpd 4.2.6p5@1.2349-o Wed Oct 8 14:41:40 UTC 2014 (1)
2014-12-06T12:11:03.614227+09:00 sles12 start-ntpd[24135]: Starting network time protocol daemon (NTPD)
2014-12-06T12:11:03.614418+09:00 sles12 ntpd[24147]: proto: precision = 0.114 usec
2014-12-06T12:11:03.614604+09:00 sles12 ntpd[24147]: pid file /var/run/ntp/ntpd.pid: Permission denied
2014-12-06T12:11:03.614766+09:00 sles12 ntpd[24147]: ntp_io: estimated max descriptors: 1024, initial socket boundary: 16
2014-12-06T12:11:03.614917+09:00 sles12 ntpd[24147]: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
2014-12-06T12:11:03.615979+09:00 sles12 ntpd[24147]: Listen and drop on 1 v6wildcard :: UDP 123
2014-12-06T12:11:03.616168+09:00 sles12 ntpd[24147]: Listen normally on 2 lo 127.0.0.1 UDP 123
2014-12-06T12:11:03.616327+09:00 sles12 ntpd[24147]: Listen normally on 3 br0 192.168.1.240 UDP 123
2014-12-06T12:11:03.616484+09:00 sles12 ntpd[24147]: Listen normally on 4 lo ::1 UDP 123
2014-12-06T12:11:03.616637+09:00 sles12 ntpd[24147]: Listen normally on 5 vif11.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.616791+09:00 sles12 ntpd[24147]: Listen normally on 6 vif10.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.616975+09:00 sles12 ntpd[24147]: Listen normally on 7 vif9.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617126+09:00 sles12 ntpd[24147]: Listen normally on 8 vif7.0-emu fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617272+09:00 sles12 ntpd[24147]: Listen normally on 9 vif7.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617421+09:00 sles12 ntpd[24147]: Listen normally on 10 vif5.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617568+09:00 sles12 ntpd[24147]: Listen normally on 11 vif4.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617713+09:00 sles12 ntpd[24147]: Listen normally on 12 vif2.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.617857+09:00 sles12 ntpd[24147]: Listen normally on 13 vif1.0 fe80::fcff:ffff:feff:ffff UDP 123
2014-12-06T12:11:03.618004+09:00 sles12 ntpd[24147]: Listen normally on 14 br0 fe80::be5f:f4ff:fef9:d8db UDP 123
2014-12-06T12:11:03.618151+09:00 sles12 ntpd[24147]: peers refreshed
2014-12-06T12:11:03.618310+09:00 sles12 ntpd[24147]: Listening on routing socket on fd #31 for interface updates
2014-12-06T12:12:33.561820+09:00 sles12 systemd[1]: ntpd.service start operation timed out. Terminating.
2014-12-06T12:12:33.562738+09:00 sles12 systemd[1]: Failed to start NTP Server Daemon.
sles12:/var/log #




sles12:/var/log # systemctl status ntpd.service
ntpd.service - NTP Server Daemon
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled)
Active: activating (auto-restart) (Result: timeout) since Sat 2014-12-06 12:12:33 JST; 2min 0s ago
Docs: man:ntpd(1)
Process: 24135 ExecStart=/usr/sbin/start-ntpd start (code=exited, status=0/SUCCESS)

Dec 06 12:12:33 sles12 systemd[1]: ntpd.service start operation timed out...g.
Dec 06 12:12:33 sles12 systemd[1]: Failed to start NTP Server Daemon.
Hint: Some lines were ellipsized, use -l to show in full.
sles12:/var/log #



sles12:/var/log #
sles12:/var/log # journalctl -xn
-- Logs begin at Sat 2014-11-29 21:30:09 JST, end at Sat 2014-12-06 12:12:33 JS
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 9 vif7.0 fe80::fcff:fff
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 10 vif5.0 fe80::fcff:ff
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 11 vif4.0 fe80::fcff:ff
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 12 vif2.0 fe80::fcff:ff
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 13 vif1.0 fe80::fcff:ff
Dec 06 12:11:03 sles12 ntpd[24147]: Listen normally on 14 br0 fe80::be5f:f4ff:
Dec 06 12:11:03 sles12 ntpd[24147]: peers refreshed
Dec 06 12:11:03 sles12 ntpd[24147]: Listening on routing socket on fd #31 for
Dec 06 12:12:33 sles12 systemd[1]: ntpd.service start operation timed out. Ter
Dec 06 12:12:33 sles12 systemd[1]: Failed to start NTP Server Daemon.
-- Subject: Unit ntpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit ntpd.service has failed.
--
-- The result is failed.
sles12:/var/log #

sles12:~ # rpm -qa ntp
ntp-4.2.6p5-24.3.x86_64
sles12:~ #

どうも systemd 環境下で ntpd を動かすと、適切な権限で pid が作成されないために発生する現象の様です。

-Resolution-
NTP Service Fails to Start or Hangs on SLES12
https://www.novell.com/support/kb/doc.php?id=7015867#

SLES12.0 の ntpd が起動しない問題は "logprof"コマンドを rcntpd を実行してタイムアウトした後に実行して修正できます。

※一応これで直ったみたい。Is it work ? I wonder....? Actuary recovered.

https://forums.suse.com/showthread.php?5548-SUSE-12-ntp-fails-to-start



NTP Is Enabled but Not Starting on Boot
http://www.reddit.com/r/linuxadmin/comments/2k4odu/ntp_is_enabled_but_not_starting_on_boot_systemd/

-Resolved-

sles12:~ # rcntpd restart
Job for ntpd.service failed. See "systemctl status ntpd.service" and "journalctl -xn" for details.

-- wait ... for time out ----

sles12:~ # logprof
Reading log entries from /var/log/messages.
Updating AppArmor profiles in /etc/apparmor.d.
Enforce-mode changes:

Profile: /usr/sbin/ntpd
Path: /run/nscd/group
Mode: r
Severity: unknown


[1 - /run/nscd/group]

(A)llow / [(D)eny] / (G)lob / Glob w/(E)xt / (N)ew / Abo(r)t / (F)inish / (O)pts
Adding /run/nscd/group r to profile. <-----(A)llow

Profile: /usr/sbin/ntpd
Path: /var/lib/ntp/var/run/ntp/ntpd.pid
Mode: w
Severity: unknown


[1 - /var/lib/ntp/var/run/ntp/ntpd.pid]

(A)llow / [(D)eny] / (G)lob / Glob w/(E)xt / (N)ew / Abo(r)t / (F)inish / (O)pts
Adding /var/lib/ntp/var/run/ntp/ntpd.pid w to profile. <----- (A)llow

= Changed Local Profiles =

The following local profiles were changed. Would you like to save them?

[1 - /usr/sbin/ntpd]

(S)ave Changes / [(V)iew Changes] / Abo(r)t <-----(S)ave
Writing updated profile for /usr/sbin/ntpd.
sles12:~ #

sles12:~ # systemctl restart ntpd.service
sles12:~ # systemctl status ntpd.service
ntpd.service - NTP Server Daemon
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled)
Active: active (running) since Tue 2014-12-30 12:30:55 JST; 4s ago
Docs: man:ntpd(1)
Process: 1445 ExecStart=/usr/sbin/start-ntpd start (code=exited, status=0/SUCCESS)
Main PID: 1457 (ntpd)
CGroup: /system.slice/ntpd.service
└─1457 /usr/sbin/ntpd -p /var/run/ntp/ntpd.pid -g -u ntp:ntp -i /var/lib/ntp -c /etc/...

Dec 30 12:30:55 sles12 ntpd[1457]: proto: precision = 0.700 usec
Dec 30 12:30:55 sles12 ntpd[1457]: ntp_io: estimated max descriptors: 1024, initial socket b...: 16
Dec 30 12:30:55 sles12 ntpd[1457]: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: Listen and drop on 1 v6wildcard :: UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: Listen normally on 2 lo 127.0.0.1 UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: Listen normally on 3 eth0 192.168.1.106 UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: Listen normally on 4 lo ::1 UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: Listen normally on 5 eth0 fe80::215:5dff:fe01:301b UDP 123
Dec 30 12:30:55 sles12 ntpd[1457]: peers refreshed
Dec 30 12:30:55 sles12 ntpd[1457]: Listening on routing socket on fd #22 for interface updates
Hint: Some lines were ellipsized, use -l to show in full.
sles12:~ #
sles12:~ # tail /var/log/messages -n20
2014-12-30T12:25:01.799524+09:00 sles12 CRON[1373]: pam_unix(crond:session): session closed for user root
2014-12-30T12:30:01.834347+09:00 sles12 cron[1394]: pam_unix(crond:session): session opened for user root by (uid=0)
2014-12-30T12:30:01.835574+09:00 sles12 kernel: [ 404.013874] type=1006 audit(1419910201.829:43): pid=1394 uid=0 old auid=4294967295 new auid=0 old ses=4294967295 new ses=3 res=1
2014-12-30T12:30:01.843309+09:00 sles12 cron[1393]: pam_unix(crond:session): session opened for user root by (uid=0)
2014-12-30T12:30:01.843903+09:00 sles12 kernel: [ 404.022834] type=1006 audit(1419910201.837:44): pid=1393 uid=0 old auid=4294967295 new auid=0 old ses=4294967295 new ses=4 res=1
2014-12-30T12:30:01.910931+09:00 sles12 CRON[1394]: pam_unix(crond:session): session closed for user root
2014-12-30T12:30:02.170278+09:00 sles12 CRON[1393]: pam_unix(crond:session): session closed for user root
2014-12-30T12:30:29.961321+09:00 sles12 kernel: [ 432.135604] type=1400 audit(1419910229.953:45): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/ntpd" pid=1440 comm="apparmor_parser"
2014-12-30T12:30:55.617362+09:00 sles12 ntpd[1456]: ntpd 4.2.6p5@1.2349-o Wed Oct 8 14:41:40 UTC 2014 (1)
2014-12-30T12:30:55.618768+09:00 sles12 start-ntpd[1445]: Starting network time protocol daemon (NTPD)
2014-12-30T12:30:55.623503+09:00 sles12 ntpd[1457]: proto: precision = 0.700 usec
2014-12-30T12:30:55.631189+09:00 sles12 ntpd[1457]: ntp_io: estimated max descriptors: 1024, initial socket boundary: 16
2014-12-30T12:30:55.631466+09:00 sles12 ntpd[1457]: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
2014-12-30T12:30:55.631662+09:00 sles12 ntpd[1457]: Listen and drop on 1 v6wildcard :: UDP 123
2014-12-30T12:30:55.631878+09:00 sles12 ntpd[1457]: Listen normally on 2 lo 127.0.0.1 UDP 123
2014-12-30T12:30:55.632080+09:00 sles12 ntpd[1457]: Listen normally on 3 eth0 192.168.1.106 UDP 123
2014-12-30T12:30:55.632267+09:00 sles12 ntpd[1457]: Listen normally on 4 lo ::1 UDP 123
2014-12-30T12:30:55.632448+09:00 sles12 ntpd[1457]: Listen normally on 5 eth0 fe80::215:5dff:fe01:301b UDP 123
2014-12-30T12:30:55.632625+09:00 sles12 ntpd[1457]: peers refreshed
2014-12-30T12:30:55.633183+09:00 sles12 ntpd[1457]: Listening on routing socket on fd #22 for interface updates
sles12:~ #
sles12:~ # rcntpd restart
sles12:~ #
<---- success!!

問題なく ntpd が起動できました。yast からの ntp の設定も問題なく行えます。

-Keyword-
SUSE Linux Enterprise Server 12 SLES12 ntpd restart fail solved

islandcenter.jp
[PR]
# by islandcenter | 2014-12-06 19:56 | SUSE | Trackback | Comments(0)