自宅サーバのHDD残量監視

7月の出張から帰ってみると、自宅サーバのHDD残量が0になって数日分の記録データが消失した模様。出張前にそれなりの容量を空けておいたはずなのですが、予定外に不要なものが記録されていたようで。

毎年このようなことが起きるので残量を監視してメールで報告してくれるプログラムでも探そうかなと思ったのですが、内容が簡単なので作ることに。ついでに仕事でPythonを覚えることになったので、IronPythonLink で作ってみようかと。

  • 残量以外にHDDの健全性チェック機能も付けたので、実行には要管理者権限。
  • 調べたいのはデータドライブだけなので、100GB以上のドライブ限定(STORAGE_MIN_TOTAL_SIZE)。
  • ドライブの使用量が90%を超えた場合にメール (STORAGE_MAX_FREE_RATIO)
  • スクリプト内にメールサーバのパスワードが平文であるのがセキュリティ的に難ありですが、それはおいおい修正ということで(と言って、やらないんだろうな>自分)
MAIL_FROM = "from@example.net"
MAIL_TO = "to@example.net"
SMTP_SERVER = "mail.example.net"
SMTP_PORT = 587
SMTP_USER = "smtpuser"
SMTP_PASSWORD = "smtppassword"
STORAGE_MIN_TOTAL_SIZE = 100e+9
STORAGE_MAX_FREE_RATIO = 0.9

import clr
clr.AddReferenceByPartialName("System.Management")
clr.AddReferenceByPartialName("System.Net")
from System.Management import ManagementScope,ObjectQuery,ManagementObjectSearcher,ManagementObjectCollection
from System.IO import DriveInfo,DriveType
from System import String
from System.Net import NetworkCredential
from System.Net.Mail import SmtpClient,MailMessage

message = ""

# Check HDD health
scope = ManagementScope("¥¥¥¥.¥¥ROOT¥¥WMI")
query = ObjectQuery("SELECT * FROM MSStorageDriver_FailurePredictStatus WHERE PredictFailure=True")
searcher = ManagementObjectSearcher(scope, query)
mgrCollection = searcher.Get()

for aMgr in mgrCollection:
    message = message + aMgr["InstanceName"] + " is predicted to be failure.¥n"


# Check drive free space
drives = DriveInfo.GetDrives()
for aDrive in drives:
    if aDrive.DriveType == DriveType.Fixed and ¥
       aDrive.TotalSize > STORAGE_MIN_TOTAL_SIZE and ¥
       float(aDrive.TotalFreeSpace)/aDrive.TotalSize>STORAGE_MAX_FREE_RATIO:
        message = message + String.Format("{0} has {1:0.0}GB free.¥n", aDrive.Name, aDrive.TotalFreeSpace/1e+9)

try:
    if message <> "":
        mailMsg = MailMessage(MAIL_FROM, MAIL_TO)
        mailMsg.Subject = "Storage alert"
        mailMsg.Body = message
        
        smtpClient = SmtpClient(SMTP_SERVER, SMTP_PORT)
        smtpClient.Credentials = NetworkCredential(SMTP_USER, SMTP_PASSWORD)
        
        smtpClient.Send(mailMsg)

except Exception as ex:
    print ex.clsException
[参照]

— posted by mu at 09:31 pm   commentComment [0]  pingTrackBack [0]

稲光

blog20140801-Lightning

こういう写真が撮ってみたかった。

今まで(例えばこれLink )稲妻を撮影するときは、出そうなところにシャッター半押しで構えて、光れば押すという反射神経に頼ったものでしたが、まぁこれがうまくいかない。チャンスは数分から数10分に一度の一瞬。集中力と半押しを維持する指が持続せず、押したときには手遅れなことが大半。

今回は露光を暗めに設定、シャッター速度を5秒にしてひたすら連射しました。シャッターを開きっぱなしにして、そこに稲妻が映るのを待つわけです。1分間に12枚、1時間で720枚。今回も300枚以上撮影して使えるのはたったの3枚。撮影枚数が潤沢なデジカメだからできる手法です。

撮影方法が見つかったので、次は電線のない場所探しです。

— posted by mu at 10:01 am   commentComment [0]  pingTrackBack [0]

Lumia 521購入

blog20140723-Lumia521

私がスマートフォンに求めるのは

  • SIMフリー
  • Dual SIM (3G+2Gでもいいので同時待ち受け)
  • 海外出張先(アメリカ・フィリピン・中国・タイ)で最低3G/4Gの電波を拾える
  • おサイフケータイ
  • テザリング
  • 解像度(日本語が潰れない程度に)

でしょうか。まぁこれ全部を満たすものはないでしょうから、妥協して複数の機種で要望を満たすことになります。おサイフケータイなんて日本の独自規格ですから、これを満たそうとしただけで、あと満たせるのは解像度とテザリングくらい。自ずと日本専用機に。

これと同じくらい厄介な条件に思えるのが、アメリカで電波を拾えること。多くのスマホに北米版なんてのがあるくらい、その他の国とは異なる周波数帯を使用します。上りと下りで周波数が違うなんてのがあるのはこの国くらいじゃないでしょうか。

Nexus7は手持ちでは数少ない北米で使える機種だったのですが、通話機能ないし、出張直前に壊れるしLink

なんか北米で使える安いスマホ無いかなと探していたら、マイクロソフトがNokia Lumia 520/521を$60~70Link で売っているのを発見。Windows Phoneにも興味あったので、購入することにしました。

以前アメリカで通販で購入した時Link 痛い目にあったことがあります。送料を安く抑えようとして陸送(列車かトラック)にしたのですが、「到着に3~7日」と表記されていたのを7日なんて離島かアラスカだろうと舐めていたら、ニューヨークから延々と列車で運ばれてカリフォルニアに着くのに本当に7日かかり、荷物が届く前に帰国する羽目にw

という訳で今回は、日本で注文して宿泊先のホテルに送ってもらうことにしました。日本のクレジットカードで、アメリカのホテルに配達なんて注文通るのかと思ってましたが、あっさり通りました。配達も注文後5日位で届いたみたいです。UPS、ぐっじょぶ。

さて1週間使った感想ですが、

  • 画面の演出は好み。動作もスリープ解除後のパスワード入力までに引っかかりを感じるくらい。
  • 解像度(800x480)が低くて、Webブラウジングが厳しい。
  • Windows 8だった。8.1でしか動かないアプリが一部あり、ただでさえストアアプリが少ないのにさらに減る。
  • 4Gと表示されるのでLTE通信でしょうけど、それほど速くは感じない。
  • For T-mobile with No contract (T-mobileとの契約不要)の表記をT-Mobileの特殊周波数に対応したSIMフリー機だと勘違いした。2年縛りとか言った契約は一切不要ですが、SIMロックはしっかり入ってた。
  • だからさ、なんでストラップホールがないのよ?Link

普段スマホの使い道はメール・Web・スケジュール管理・2ちゃんねる位なので使えることは使えますが、もうちょっと解像度の高い機種が欲しくなってきました。イカンイカン…

— posted by mu at 02:23 pm   commentComment [0]  pingTrackBack [0]

 

出張先の部屋に

こんな張り紙が

Everyone brings joy to this office.
Some when they enter and others when they leave.
(みんなこの部屋に喜びを運んでくれる。
ある者は入ってくるときに、またある者は出て行くときに。)

これはブラックジョークなのだろうか?

— posted by mu at 01:20 am   commentComment [0]  pingTrackBack [0]

レインでゲソ

blog20140720-Lein
紙箱に直接値札貼り付けているのがいかにもアメリカ

先日Link ちょこっと触れましたが、先週からシリコンバレーに出張してます。後3日で帰国です。行動の制限が少ないアメリカでの書くネタは他にもあるのですが、時間がない…

ここへの出張となると、毎回日本の漫画・アニメの英語版を買って帰るのが恒例となってます。キルミーベイベーか帰宅部活動記録があれば良かったのですが、残念ながら見つからず。

今回購入したのは劇場版Fate/stay night ($12)とserial experiments Lain ($29)。FateはBD、Lainは13話全部がDVD/BDそれぞれ2枚に収まってます(計4枚)。少ない枚数なので画質が悪いという見方もできますが、毎度ながら日本との価格差に軽く目眩。

DVDで良いなら同じ作品はほぼ半額になります。どうも傾向を見ると日本みたいにBDは高画質だからと付加価値で高額設定しているのではなく、BD/DVD両方付いているから2倍の値段となっている感じ。なぜ両方つけるのか?抱き合わせで高く売りたいというのもあるでしょうけど、BD買った客がDVDプレーヤーで観れないじゃないかというクレーム対処するより、両方付けた方が良いという考えがありそうだな、この国だと。

一方日本のアニメ市場は安くしてもそれに見合う売上増にはならないという考えがあるそうです。多少高くても買う人は買う、それで購入者層は出尽くし、安かったら買うという人がそれほど居ないということらしいです。高くても作品を応援する意味で買うなんて雰囲気があるうちは、日本は高値で販売されるのかなぁ…

— posted by mu at 03:20 pm   commentComment [0]  pingTrackBack [0]

T: Y: ALL: Online:
ThemeSwitch
  • Basic
Created in 0.0151 sec.
prev
2025.9
next
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30