HOME / 日記

Date: 2008/07/26 |  このエントリーをはてなブックマークに追加  |  Tags: Solaris, OpenSolaris, Howto, 利用法

日記

私はコンピュータおたくというよりも、テクノロジおたくなところがあるので、日記では、この技術かっこいーみたいな記事が多いかもしれません。
以前、ライター業をOh!Xという雑誌でやっていた割に、肩の力を抜きすぎているので、ブログでは、ぼろぼろな文章を書くことになるかもしれませんがご容赦・・・:)
昔の日記は、時間を見つけてはコピー中です。


2017年
01月
01
02
03
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
       
02月
     
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
       
03月
     
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

04月
           
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
           
05月
 
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
     
06月
       
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 

07月
           
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
         
08月
   
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
   
09月
         
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

10月
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
       
11月
     
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
12月
         
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
           


ディスクの不良を確認する(iostat -EnのError等)

iostat -Enで表示されるエラー、Soft Errors,Hard Errors,Transport Errorsについて

ディスク関係のスタックをざっくり書くと次の様になっています

例、SAS Expanderを使う場合、

zfs
SD(SCSI Disk Driver)
mpt_sas(LSI HostBus Adaptor's Driver)
RAID CARD
SAS Expander
Disks

例、AHCIなどを使う場合、

zfs
SD(SCSI Disk Driver)
AHCI
Disks

これらのエラーは、次の様なコマンドで知ることができます。

iostat -En

出力結果例

c0t5001B44F1C7C0C93d0 Soft Errors: 39022 Hard Errors: 1 Transport Errors: 9
Vendor: ATA      Product: SanDisk SDSSDXPS Revision: 00RL Serial No: 154902401171
Size: 480.10GB <480103981056 bytes>
Media Error: 0 Device Not Ready: 0 No Device: 1 Recoverable: 39022
Illegal Request: 0 Predictive Failure Analysis: 0 Non-Aligned Writes: 0

このなかで、

Soft Error
SD層でエラーが出てリトライした結果、 成功した時にカウントされる。
Hard Error
ハードウェア(多分HBA等)でリトライをした結果がカウントされ、SD層まで伝えられたもの。
Transport Error
SD層からみて反応がなく、HBA層でフェイルしたのか、ディスク層でフェイルしたのか、確証が無いがタイムアウトなどでエラーしている場合、カウントされる。

たとえば、SATAディスクを利用している際に負荷が上がってしまい、ディスクの応答が間に合わないシチュエーションでは、Transport Errorが一気に増えていきます。そして最後はこのディスクが外されます。これが頻繁に起きる場合、もっと速いディスクを使うべきですが、DiskのNative Tag Queuingを無効にしたり、Write Back Cacheを無効にしたりすると、若干、改善したりします。なぜか?一般にこれらのパラメタはSATAを高速化するものですが、逆に大きな命令になったり、SATAディスクに対して処理を投げっぱなしになったりすることで、後の処理でその負荷による遅延が発生しやすくなるためです。SASのCommand Tag QueinigはDisConnectが実装されている為、この限りではありません。

Hard Errorは、ストレージドライバの層から送られてくるものなのですが、その理由はドライバによって異なると思われます。いわゆる「装置側」が出してきたエラーと考えれば良いでしょう。

Soft Errorは、最上位の層でのエラーなので、これが増加しまくる場合は、バスが飽和していたり、信号線が不安定な場合もあるでしょう。

これらの値は、測定しておくと良いとは思います。

最後に、下記はSMARTの値です。これらの値も測定しておくと良いかと。

jpc@dp1-storage8% sudo /usr/sbin/smartctl -a /dev/rdsk/c0t5001B44F1C7C0C93d0 -d sat
smartctl 6.5 2016-05-07 r4318 [i386-pc-solaris2.11] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Marvell based SanDisk SSDs
Device Model:     SanDisk SDSSDXPS480G
Serial Number:    154902401171
LU WWN Device Id: 5 001b44 f1c7c0c93
Firmware Version: X21200RL
User Capacity:    480,103,981,056 bytes [480 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Tue Feb 28 15:50:32 2017 JST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART Status not supported: Incomplete response, ATA output registers missing
SMART overall-health self-assessment test result: PASSED
Warning: This result is based on an Attribute check.

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                                        was never started.
                                        Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.
Total time to complete Offline
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x11) SMART execute Offline immediate.
                                        No Auto Offline data collection support.
                                        Suspend Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        No Conveyance Self-test supported.
                                        No Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine
recommended polling time:        (   2) minutes.
Extended self-test routine
recommended polling time:        (  10) minutes.

SMART Attributes Data Structure revision number: 4
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   ---    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   253   100   ---    Old_age   Always       -       7751
 12 Power_Cycle_Count       0x0032   100   100   ---    Old_age   Always       -       4
166 Min_W/E_Cycle           0x0032   100   100   ---    Old_age   Always       -       1
167 Min_Bad_Block/Die       0x0032   100   100   ---    Old_age   Always       -       55
168 Maximum_Erase_Cycle     0x0032   100   100   ---    Old_age   Always       -       511
169 Total_Bad_Block         0x0032   100   100   ---    Old_age   Always       -       923
171 Program_Fail_Count      0x0032   100   100   ---    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   ---    Old_age   Always       -       0
173 Avg_Write/Erase_Count   0x0032   100   100   ---    Old_age   Always       -       407
174 Unexpect_Power_Loss_Ct  0x0032   100   100   ---    Old_age   Always       -       2
184 End-to-End_Error        0x0032   100   100   ---    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   ---    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   ---    Old_age   Always       -       2
194 Temperature_Celsius     0x0022   071   030   ---    Old_age   Always       -       29  (Min/Max 22/30)
199 SATA_CRC_Error          0x0032   100   100   ---    Old_age   Always       -       0
212 SATA_PHY_Error          0x0032   100   100   ---    Old_age   Always       -       0
230 Perc_Write/Erase_Count  0x0032   100   100   ---    Old_age   Always       -       3384
232 Perc_Avail_Resrvd_Space 0x0033   100   100   004    Pre-fail  Always       -       100
233 Total_NAND_Writes_GiB   0x0032   100   100   ---    Old_age   Always       -       213703
241 Total_Writes_GiB        0x0030   253   253   ---    Old_age   Offline      -       27536
242 Total_Reads_GiB         0x0030   253   253   ---    Old_age   Offline      -       3085
244 Thermal_Throttle        0x0032   000   100   ---    Old_age   Always       -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

Selective Self-tests/Logging not supported
Author by kohju |  記事URL |  Tags: Soft Errors, Hard Errors, Transport Errors, iostat, zfs, Solaris |  Top↑

2017年、新年明けまして、おめでとうございます。

JUSTPLAYER Co.,Ltd.

新年明けまして、おめでとうございます。今年もよろしくお願いします。

昨年中は、皆様にお世話になりました。

昨年は、コツコツと3年程前から行ってきた改革がある程度完成された年で、この先5年、10年を見据えて、次のフェーズへと進む為の土台が完成した年でもありました。

それにキャッチアップする形で、個々の従業員一同が、役割を自覚し、明確に動けた年であったかと考えています。

 

おかげさまでジャストプレイヤー株式会社は、昨年10月に15期を迎えました。今年の11月2日をもって15周年です。15周年記念になにかするかは未定ではありますが。

弊社、ストレージクラウドのTeraCLOUDは2017年1月23日をもって3周年を迎え、4年目に突入。

エンタープライズCMSサービスWIKIPLUSは、2017年9月をもって13年目に入ります。

その他、レンタルサーバサービスは今年15年目になったりするのですが、このまま全部のサービスを上げていくと、切りが無い状態になりましたね。色んなサービスを生み出せたものです。

 

今年の弊社の、「社内向けの抱負」は、「考える時間をしっかり取ろう」です。つまり、考えて仕事をしましょうということ。誰かに言われ、差し迫ってその仕事をすると、仕事をした気になるものの、結局は本来、自分がすべき仕事がおろそかになっていたりします。

自分が今、一番最初にやるべきことは何なのか?を自分の頭で考えることは、意外と出来ないもので、どうしても常に何かに追われがちになってしまいますよね。

考え、やるべきことをし、自分の時間を作り、休むべき時にちゃんと休むことが重要かと思います。

 

この根底には、「生産能力確保」がテーマにあります。有り体の言い方をすれば「人材不足」です。しかし、大きな流れとして、日本人が減っていくわけですから、この「人材不足」は、今後、加速していくものだと思うのです。

だから、いたずらに人手が足りないと考えるのではなく、増え続ける仕事の方を減らすことも、考える必要があるということ。いわゆる選択と集中なのですが、これには個々のスタッフがじっくりと考える時間がないと、選択ができないのです。

仕事を減らすために考える仕事を作る。

一見、逆説的に見えるかも知れませんが、効果はありますよ。

とはいえ、仕事を減らすだけでなく、処理能力も増やしていかないとなりません。そうでないとサービス・プロバイダーとして、より良いサービスが作れません。

処理能力は、簡単なものなら良い機材を導入することで補えます。インプットとアウトプットが明確なものなら、サービスをアウトソースすることもできます。しかし肝は、やはり人材を増やしていくことが重要になるので、今年は、この点も注力していかないとならないかと考えているところです。

特に、TeraCLOUD関連を中心に人材は熱烈募集中ですが、これも一つの出会いですからね。毎度同じことを言っておりますが、静岡中部でグローバルサービスをしたいという方は、是非、ご応募ください。

 

最後に。

本当はこれを一番、最初に書くべきなのですが、昨年はB2Bサービスに少し時間を割きすぎてしまったので、本年はB2Cサービスの機能拡充に力を入れたいと考えています。

弊社でB2Cといえば、TeraCLOUDですが、CEO視点でも、あるべき機能が足りなすぎると考えているので、今年はこれに注力しますよ!

皆様にとって、2017年が良い年になりますように。

Author by kohju |  記事URL |  Tags: JUSTPLAYER, TeraCLOUD, WIKIPLUS |  Top↑

RSA鍵認証のみにし、Password認証を無効化する

sshdでパスワード認証を無効にし、RSAの鍵認証のみにする方法

意外に覚えきれなくて、いつも忘れるので、メモついでに残しておきます。

PasswordAuthentication no
KbdInteractiveAuthentication no
ChallengeResponseAuthentication no

古いOpenSSHや、SunSSHの場合は、これも無効にします。

PAMAuthenticationViaKBDInt no

ざっくりした解説

ユーザ目線でのザックリとした説明を。OpenSSHではなく別のSSH実装も含めて考えているので、OpenSSHのソースをじっくり読んだわけではないため、間違ってたらすみません。

まず、Password認証を無効にする場合、PasswordAuthentication noだけで良い気もします。しかし、asswordAuthenticationというのは、「ユーザIDとPasswordを同時に送りつける認証」のことを意味してるので、それだけでは足りません。

ChallengeResponseAuthenticationが有効になっていると、クライアントは「先にID」を送り、状況に応じてサーバからパスワードを要求されます。ここで、PAMAuthenticationViaKBDIntが有効なシステムであればPAM認証キーボードから、KbdInteractiveAuthenticationが有効なシステムであればキーボードからの認証を許可、さらにUsePAMが有効であったりAuthenticationMethodsでPAMが有効であれば、事実上キーボードからパスワード入力を求められてしまうわけ。

ということで、この辺一通り設定しておけば、良いよと言う話だけれども、sshd_configにコメントアウトされてないものもあるので、いつも忘れるからメモなのです。

テスト方法

ついでなのでテスト方法も書いて置きます。

  1. sshd_configを治す
  2. sshdを再起動する
    • いまのシステムだとsshがこのとき落ちることは滅多にないんだけれど、昔はここでsshdが落ちてしまい、間違うと締め出しを食らったりしたので、コンソールからやっていたのです。シリアルコンソール重要・・・
  3. このターミナルは必ずログインしたままにしておく
  4. 別シェルを立ち上げてログインする。
    • 正常系テスト
      • RSA鍵認証が設定されているはずなので、そのまま行けるはず。→正常系テスト終わり
    • 異常系テスト
      • IDをわざとちがったものにする。
      • password認証が有効な場合、パスワードを求められる。 → 設定ミス有り
      • 何もできずPermission denied (publickey,...).がでる。 → 設定OK、
      • 上の...が、気になるならそれぞれをやっつけましょう。

Permission denied (publickey,gssapi-with-mic).のgssapiを無効に

sshd_configに下記の1行を追加します。

GSSAPIAuthentication no

GSSAPIAuthenticationってのは、OpenSSHのマニュアルをみると、

Specifies whether user authentication based on GSSAPI is allowed. The default is “no”.

Solarisだと、

      GSSAPIAuthentication
             Specifies   whether  user  authentication  based  on  GSSAPI  is
             allowed.  The default on Solaris is  ``yes''.   Note  that  this
             option applies to protocol version 2 only.

とかいているので、Solarisの場合は気になるなら無効にしてもいいでしょう。

GSSAPIを使った認証は、Generic Security Service Application Programming Interfaceのことで、よくKerberosと関連して利用される認証するAPI。シングルサインオン周りの話によく出てきますね。

別に悪いものではないのだけれども、使ってないから無効にしたいのであれば、それはそれで。

Author by kohju |  記事URL |  Tags: ssh, RSA, password |  Top↑

Nexus7 2013をMarshmallow(Android 6.0)化

Nexus7 2013版をAndroid 6.0 -Marshmallow(マシュマロ)化

OTAでない方法で。

だいたいここに書いてある方法なんだけど、adbなどが一式使えている状態で。

まずは自分の機種のものをダウンロードする。僕のは、Android 6.0 Marshmallow for Nexus 7 2013 Wi-Fi。tgzを展開し、zipも解いておく。

まずはboot loaderへ。

fastboot reboot-bootloader  

bootloader自体のアップデート。

fastboot flash bootloader bootloader-flo-flo-04.05.img

一式、update。

fastboot flash cache cache.img
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash recovery recovery.img

userdataをupdateすると、クリーンインストールになる。

twrpとかが欲しければ、twrpとかを拾ってきて、次のように入れればいいんだけど・・・

fastboot flash recovery twrp.img

すると、マイナーバージョンアップのたびに、上の方法でアップデートしないとならないので注意ですね。

あとは普通にブートすれば、

  • Androidをアップグレードしています・・・

で、10分ぐらい頑張ってくれます。

Author by kohju |  記事URL |  Tags: Android, Nexus7, Android 6.0, Marshmallow, マシュマロ |  Top↑

OS X 10.11 El Capitanで、phpのモジュールインストール

Yosemiteからのアップデート

Yosemiteからのアップデートは割と簡単です。なぜならYosemite時に、すでにapache 2.4になり、php 5.5になっているから(笑

アップデート前に、まずはphp.iniとhttpd.confをバックアップしておきましょう

sudo cp /etc/php.ini /etc/php.ini.yosemite
sudo cp /etc/apache2/httpd.conf /etc/apache2/httpd.conf.yosemite

きになるなら、hostsとかapache以下全てをバックアップしておいてもいいかも。

後はEl Capitanにアップデートする。

コンパイラのインストール

アップデートが終わったら、とりあえず普通にいつものこれ xcode-select --install

rootlessを無効化する

残念ながらphpのモジュールは、/usr/lib/php/extensions/no-debug-non-zts-20121212/にあり、/usr以下です。なのでrootlessにせざるをえないのです。

  1. 再起動時にcmd+rを押し、リカバリーモードにする。
  2. ターミナルを起動し、csrutil disableする。
  3. 普通に再起動

これでok。

pearとpeclを設定

sudo php /usr/lib/php/install-pear-nozlib.phar

pearコマンドが入るので、アップデート。

sudo /usr/bin/pear channel-update pear.php.net
sudo /usr/bin/pear upgrade-all

pecl周りも入っているので、アップデート。

sudo /usr/bin/pecl channel-update pecl.php.net

これで使える。

memcacheモジュールのインストール

sudo pecl install memcache

まあこんな感じ。

ちなみに、pgsqlなどのphpのパッケージに含まれているようなものを入れたいときは、php-5.5.27かそれに近いソースをダウンロードし、

cd etc/モジュール名/
phpize
./configure 色々
make
make test
sudo make install

となる。

例としては

  • pgsql
  • pdo-pgsql
  • gettext
  • intl
  • mcrypt

などをこれでインストールできる。

Author by kohju |  記事URL |  Tags: OSX, 10.11, El Capitan, php, モジュール, memcache, pgsql, pdo-pgsql, gettext, mcrypt |  Top↑
最新  |  << 前ページ  |  次ページ >>  |  最初

日記


HOME

Recent Updates