2012-10-12

ネット越しのバックアップ

いつも遠隔でネット越しにバックアップを行なっている

相手側のサーバで圧縮したファイルは1本数GBとなる、これを前回のファイルと比較して差分をバックアップすることで毎回のバックアップ時間を短縮している

バイナリー比較となるために xdelta と言うソフトを利用している


とはいえ、差分であるが故に一度はフルセットのものが必要になるわけで、
1ヶ月に1度とか1週間に一度はフルセットを受信するようにする

例えば、Linuxサーバ側でtarでまとめたファイルを /tmp/に作成する
フルセットのバックアップは /var/backup/等に放り込んでおいて

xdelta delta /tmp/新バックアップ.tar.gz  /var/backup/フルセットバックアップ.tar.gz /var/backup/差分.xdelta.bin

こんな感じで行う

差分はセキュアなFTPでダウンロードするか、更に暗号化する等してメールで送るとか方法はいくらでもある


2012-10-04

HTML5 Builderのコンポーネントライブラリの更新

http://rpcl.svn.sourceforge.net/viewvc/rpcl/trunk/rpcl/ で公開されているものを一括ダウンロード(Download GNU tarball
ダウンロードした tarballを展開しHTML5 Builderをインストールしたディレクトリのrpclフォルダへ上書きコピー

例) C:\Program Files (x86)\Embarcadero\HTML5 Builder\5.0\rpcl

HTML5 Builderで作成したPHPをデザインされたページに

HTML5 BuilderではDelphiやVBのようなビジュアルなデザインとプログラミングが可能になるRAD環境でのPHP開発をサポートしています

まあ簡単なフォームはサクっと作れてお手軽ですが、実際にはデザインとの融合が必要となるわけです

いったいどこでデザインと融合させるのか?と思い調べてみると

フォーム(Page)のプロパティにTemplateEngineなるものがあります、これでテンプレートエンジンを選択して適用させるようです

エンジンには

  • SmartyTemplate
  • VCLTemplate
  • RPCLTemplate
が利用可能なようで TemplateFilename プロパティにテンプレートのindex.htmlを指定してこれに
差し込んで使うようなイメージでしょうか・・・

書籍を調べると、「Smarty入門‾PHP+テンプレート・エンジンでつくるMVCアプリケーション‾ 」 こんな感じの入門本が見つかりました

ブログですと Embarcadero Blogs  Team Japan に HTML5 Builder - テンプレートエンジンSmartyでPHPアプリ こんな記事も丁度ありました

取り敢えず本を買って見ようかって感じのスタートですw


とは言え、フォームを作って組み込んで見ることにしました

TemplateEngineを SmartyTemplateに設定して
TemplateFilename で index.htmlを指定して
index.htmlを開いて 編集かけて bodyタグに id=プログラム名 を追加
{%$HeaderCode%}を headタグの最後の方へ追加して
作成したフォームを差し込みたい部分を
{%$StartForm%}と{%$EndForm%}で囲めばいいってことか・・・とやってみたら・・・、何も表示されないw

おお、実際に作成したデザインのButtonやEditのNameプロパティの中身を{%$StartForm%}と{%$EndForm%}の間に {%$Edit1%} {%$Edit2%} {%$Button1%}と追加する必要があるのですね。
{%$StartForm%}{%$EndForm%}無しでも動いた…

しかし、これならPHPのフォーム側で配置とかデザインした意味なくね?w

まあPHPのフォーム側でビジュアルにCSSを読み込んで編集できれば良いのだろうが、現状だとショボイ白っぽい画面で我慢するか、デザインされたページに組み込むなら上記のようにやる必要があるってことか。

{%$StartForm%}と{%$EndForm%} の中に全項目をPHPのフォーム設計した通りに配置してくれたらいいのにね

2012-09-30

PHPでディレクトリ内のファイル名取得

PHPマニュアルに書いてある方法



if ($handle = opendir('/path/to/files')) {
    echo "Directory handle: $handle\n";
    echo "Entries:\n";

    /* ディレクトリをループする際の正しい方法です */
    while (false !== ($entry = readdir($handle))) {
        echo "$entry\n";
    }

    /* ディレクトリをループする際の「間違った」方法です */
    while ($entry = readdir($handle)) {
        echo "$entry\n";
    }

    closedir($handle);
}




実際には 「.」 や 「..」を除去

if ($handle = opendir('.')) {
    while (false !== ($entry = readdir($handle))) {
        if ($entry != "." && $entry != "..") {
            echo "$entry\n";
        }
    }
    closedir($handle);
}

2012-08-30

RAID1吹っ飛んだ!

RAID1が吹っ飛んだと言うか 久々にファイルサーバを起動したら死んでました 仕方ないのでHDDを取り出すとRAIDの片方もどうもエラーがあるらしい(これが原因で起動しなかったのか?) HDDにUSBとSATAを接続する装置をつないでWindows上のVirtualBOXのLinuxを起動してマウント マウントは typeを指定しないと raidだろ!と怒られますw # mount -t ext4 -o ro /dev/sdb1 /mount 中身を見ると一応ある 退避させて完了

2012-07-12

Linuxで HDD フォーマット

Advanced Format Technology対応の kernel 2.6.31 以降では通常通り可能 非対応のカーネル利用の場合は # fdisk -H 224 -S 56 /dev/ほげ でOKの模様 Amazonで見た

2012-07-11

Windows8でるぞ!

10月末にWindows8が出るらしい、今後Microsoftは自社からもハードを発売しiPadを追撃する姿勢だがこれの出来が良いらしく全PCメーカーを敵に回す可能性もある、Surface(サーフィス)には今後も注目したいところ。 一方で、今までの既存ハードメーカーが取るべき道が増えてくると予想する。 つまり、MicrosoftのWindowsをインストールした状態のPCとChromeOSを導入したPCの両刀となるかも、ChromeOSに関してはGoogleが作成している元々はLinuxベースのOSで無料で提供されている、正直、今のChromeOSはドライバーの関係で起動途中にPanicで起動しなかったり起動後も不具合が出ることがあるが、ハードメーカーがChromeOSにウェイトを置けば、これらの不具合が解消された状態での製品が出てくると対抗馬になりえると思う 個人的には一番幸せにならないのはFreeBSDユーザーやLinuxユーザーかも知れないと懸念している…、つまり、将来何でもBOXのPCから半ROM化されたようなものへ変る可能性が高まっているのではないのかとの不安が拭えない

2012-05-31

振り込め詐欺の口座チェック

振り込め詐欺系統かと思ったら 預金保険機構の下記のリンクから不正口座の照会が出来ます

http://furikomesagi.dic.go.jp/cond_base.php

あわてる前にチェックしよう