最近のアクセス 2

このブログのリファラドメイン

前回はこちら→最近の当サイトへのアクセス

さて、まず当weblogの記事の人気ランキングは…以下の通り。

今回 推移 前回 対象ページ アクセス数の比率
1 2 [Outlook 2007 で重複メールを削除する](http://www.hadacchi.com/wp_blog/?p=639) 15%
2 1 [windows7 で proxy の設定](http://www.hadacchi.com/wp_blog/?p=118) 11%
3 3 [regsvr32.exe in Win7 x64](http://www.hadacchi.com/wp_blog/?p=428) 10%
4 new! - [パナソニック P-01D の root 奪取](http://www.hadacchi.com/wp_blog/?p=1388) 6%
5 4 [Windows7 で ffdshow で H.264 コーデックでデスクトップキャプチャ](http://www.hadacchi.com/wp_blog/?p=353) 6%
6 new! - [ブラウザMC☆あくしずの施設設置コストの考察誤りについて](http://www.hadacchi.com/wp_blog/?p=1409) 4%
7 6 [Android 携帯で Gmail が何日も送信されない件](http://www.hadacchi.com/wp_blog/?p=465) 4%
8 10 [Windows 7 (x64) で Ragnaro"k Online](http://www.hadacchi.com/wp_blog/?p=324) 4%
9 圏外 [Win 7 で空パスワードのユーザに共有機能を使わせる](http://www.hadacchi.com/wp_blog/?p=362) 3%
10 9 [hadacchi blog (トップページ)](http://www.hadacchi.com/wp_blog/) 2%

今回は、リファラもドメイン別に公開してみる。

このブログのリファラドメイン
このブログのリファラドメイン

Direct は、リファラ不明のアクセスで、hadacchi は同ドメインからのアクセスを意味する。(これが少ないことは、皆1ページだけ見て帰っていることを意味するので、哀しい)
単独で1%を越える比率を占めるアクセスのみラベル化し、それ以外は「その他」へ。
内容が内容だけに、もともと検索エンジンからのアクセスがほとんどである。
今回明らかになったのは、Google先生つえーな、ってこと。
最近の google からのアクセスは、google 内部のリダイレクトを噛まして飛んでくるので、どんな検索キーワードから飛んできたか分からなくて不満。

Sleep as Android のデータ

睡眠データ

Sleep as Androidという睡眠計を使ってみたが、Export される csv が意味不明なので、ちょっと読み解いてみた。

データフィールドの指定はExcel で読み込んだ時の表記で記載する。例えば、1行目1列目データはA1と書く。

項目 セル
測定開始時刻 A2 (unix timestamp のミリ秒表記)
測定間隔 記載されていないので、F2 の測定期間(h)をデータ数で割る。今のところ、0.00294 (excel 日時) = 254秒。

データの取り方は、テキトーに設定して枕元に置くだけ。
とってみたデータはグラフの通り。
子供と寝ているので、子供の反応もまじってるかも。

睡眠データ
睡眠データ

CentOS を使う

とあるプロダクトの動作保証環境の関係で、CentOS に手を出すことになった。
そのプロダクトの指定は、CentOS 5.7 なのだが、そんなものは、手に入らない。
とりあえず CentOS 公式から落とせる 5.9 を簡易インストールした。

ubuntu との差分はこんな感じ。
インストールできるパッケージが古かったり少なかったりして、あんま使えない。
パッケージ管理は yum/rpm
yum makecache (apt-get update 相当) が一般ユーザにもできる。
パッケージのバージョン違いのためか、動作が違う。(sudo は、-E オプションをつけないと、sudo 前のユーザの環境変数を引き継いでくれないなど)

これは、使いにくい…

7z でヘッダも暗号化

zip とか 7z でファイルを暗号化圧縮する時、通常の設定ではヘッダ情報が暗号化されない。
なので、暗号化されているアーカイブなのに、ファイルリストが取得できたりする。
こうすると、そのファイルの中身は読めなかったとしても、ファイル名から中身を推測することができるため、暗号化の効果が減じる。

コマンドライン版 7z を使った場合、7z のみヘッダの暗号化オプションを備えているので、これを使えばどんなファイルが格納されているのかすら、パスワードなしでは表示できなくなる。

# 7za a -mhe -pPASSWORD ARCHIVENAME FILENAME1 FILENAME2 ...

web の情報によれば、ヘッダの書式が固定であるため、ヘッダの暗号化部分に対して辞書型攻撃を仕掛けて解読される場合がある、との記載があった。
辞書に登録されるようなパスワードを使う場合には、適切でないかも知れない。

mysql 設定メモ

追記2
mysql のデータファイルを別パーティションにうつしたので追記。
例えば、/path/mysql に移すことにする。

# service mysql stop
# mv /var/lib/mysql /path/mysql
# vi /etc/mysql/my.cnf
- datadir = /var/lib/mysql
+ datadir = /path/mysql
# vi /etc/apparmor.d/local/usr.sbin.mysqld
+ /mnt/mysql/ r,
+ /mnt/mysql/** rwk,
# service apparmor restart

↑し忘れてもちゃんと動いたので、必要かは不明、いちおう後でやっといた

# service mysql start

なお、UNIX ソケットファイル socket = hogehoge を ramdisk とか早いディスクに移しても意味がないらしい。ファイルを実際に read/write するわけではないから、だそうな。

追記
mysql を 5.5 にして、チューニングしたので追記。
詳しくは、これだけはやっておきたいMySQL 5.5系の設定 - uehatsu's tech blog

character-set-server    = utf8
skip-character-set-client-handshake
default-storage-engine  = InnoDB
collation-server        = utf8_general_ci
innodb_file_format      = Barracuda
innodb_file_per_table   = 1
innodb_use_sys_malloc   = 0

先のページの通りだとエラーが出るので、default-storage-engine はIとDBをキャピタルに。(というか、5.5系ではもともと、InnoDB がデフォルトらしいので、不要っぽい)
また、innodb の独自ヒープを使えないよ、というエラーがなんか出て気持ち悪いので、innodb_use_sys_malloc=0 を追加した。

手順

  1. バックアップ。
    # mysqldump -u USER -p --opt DBNAME --net_buffer_length=8000 | gzip > GZIPFILE

    オプションの順番はテキトー

  2. DB削除。
    上の手順で--opt をつけていれば、drop table は関係ない。
    どこまでやるかは、どれだけスッキリしたいかで変えれば良いと思う。
    mysql の該当テーブルを消す。(drop table TBLNAME;)
    データベースごと消すのもあり。(drop database DBNAME;)
    mysql を完全に消すのもあり。(apt-get purge mysql-hogehoge、hogehoge は、色々あるやつ全部)
  3. mysql 5.5 を入れる。
  4. 設定変更。
    /etc/my.cnf へ追記する内容。

    character-set-server=utf8
    skip-character-set-client-handshake
    default-storage-engine=innodb
    collation-server=utf8_general_ci
    innodb_file_format=Barracuda
    innodb_file_per_table=1
    
  5. mysql 設定反映と確認。
    # service mysql restart
    # mysql -p
    > show variables like 'inno%';
    
  6. mysql を purge した場合、php5-mysql も消えてるかも知れんので再インストール。
    # apt-get install php5-mysql
    # service apache2 restart
    
  7. リストア。
    mysql の初期設定とか、DB 作ったりとか、dump した sql ファイルの取り込みは下の旧エントリを確認のこと。

これで、もと通りのはず。
でも、CPU の非力なマシンなので、未展開の領域にアクセスした時、応答が恐しく遅くなる。
あんまり酷かったら、このオプション (Barracuda) は外すかも…

追記、ここまで。

apache2 の設定メモ の続編.
mysql の設定とか.

設定

  • # mysql_secure_installation

    で初期設定.基本,全部 Y で良い.root パスをインストール時からイチイチ変えるのがメンドイ時は,最初だけn.

  • 全てのユーザー情報が削除されているため,root ログインのみ可能.

    # mysql -u root -p
  • ユーザの追加.
    grant all privileges on databasename.* to username@localhost identified by 'password';
    show grants for username@localhost;
    flush privileges;
    
  • ユーザーの DB を作成.
    $ mysql -u username -p
    > create database databasename;
    
  • データ移行.
    $ mysql -u username -p databasename < sqlfile

その他のtips

/etc/my.cnf の [mysqld] ディレクティブに

character-set-server    = utf8
collation-server        = utf8_general_ci

を追記すると、サーバー文字コードは変更可能
DB文字コードは、mysqlクライアント内で目的のDBに接続して、

alter database DBNAME character set utf8;

文字コードの調べ方は、
mysql クライアント内で

> status

または、

> show variables like "chara%";

1行が長すぎてエディットが難しいときは、

# mysqldump -u USERNAME -pPASSWD --opt --default-character-set=utf8 DBNAME --net_buffer_length=8000 | gzip > sql.gz

としてやれば、1行毎の文字数が 8,000 文字以下となるよう出力してくれる。

ダンプした sql ファイルの取り込みは、クライアントから

> source SQLFILE;

テーブルの文字コードを調べるには、show create table TBNAME; でテーブル作成コマンドを見る。
同じように、show create database DBNAME; でデータベース作成コマンドも見れる。

Android で FTPd

ES ファイルエクスプローラで宅内のサーバが見えない。
私の場合、モバイル回線からインターネット経由では見えているので、サーバ自体には問題ないと思うのだが、webdav に ssl + sni を使っているために、宅内でアクセスしようとすると ip アドレスでは目的の vhost にアクセスができず、ドメイン名でアクセスしようにも dns はグローバルアドレスを返すという問題があり、うまく宅内で動作しない。
でまぁ、FTPd を立てようと、どのソフトがいいかなーと探していて見付けたのが以下のエントリー。
Android端末とPCとのネットワーク越しのファイルのやりとりについて | 相方が携帯紛失 で、私と同じ状況の人がいた。

で、これって ES ファイルエクスプローラにも機能として具備されてんじゃねーの?と思ってアプリのメニュー内を探してみたらあった。
メニューボタン>Tools>Remote Manager で FTPd の on/off ができる。
ルートを external_sd にできるのもポイント高い。
なお、上の記事の人と同じくアプリのローカライズに悩まされた挙句、私はもともと英語ロケールで Android を使っているので、日本語でどう表示されるかは知らない。

Android のファイラ、万能やなぁ。

WinPcap で起動時に自動オンしない場合のサービスオンオフ

まぁ内容は、ここに載ってることそのまんま。
WinPcapのインストール時に聞かれる「Automatically start the WinPcap driver at boot time」で困った場合の対処法 - Eiji James Yoshidaの記録
Wireshark に必須の WinPcap を、常に起動する設定にしなかったら、なかなか起動できないよって話。
サービスの起動ショートカットくらい、スタートメニューに作っとけよ。

で、ショートカットの作り方。

  • C:\Windows\System32\cmd.exe へのショートカットを作る。
  • ショートカットのプロパティから、リンク先を「C:\Windows\System32\cmd.exe /K "net start npf"」とする。
  • 同じダイアログの詳細設定ボタンから、管理者として実行、にチェックをつける。
  • ショートカット自体の名前を net start npf とかにする。

net stop npf も同様にどうぞ。

おサイフケータイ+楽天Edy

楽天ポイントを Edy に交換できるキャンペーンとやらがやっていたので、使ってみることにした。
色々とアプリを Disabled にしていると動かないので、動かすためのメモ。
L-02E を使ってる前提で。

Application Setting で All を開き、以下を Enabled とする。
L-02E の標準ブラウザがなんか変だから、使いたくないんだよなー。もう一度無効化しとくか。

  • Osaifu で始まる全アプリ
  • felica の入る全アプリ
  • 標準ブラウザ ← L-02E でこれ忘れると、セットアップの途中で進まなくなる

Ubuntu で Wi-Fi を使う

我が家の配線の関係上、どうしてもサーバを無線の先に設置する必要が生じた。
なので今、アクセスが重くなっている。申し訳ない。

さて Ubuntu で Wi-Fi を設定するにあたって、思いきりハマってしまったのでメモを残す。

  1. 入っていなければ、wireless-tools と wpasupplicant を入れておく。
  2. iwconfig で無線チップが認識されているかチェック。no wireless extensions の行しかなければ、認識してないので、次の手順で何とかする。
    1. ドライバを確認する。まずは lspci コマンドで PCI カードやオンボードチップなどが何が搭載されているかチェックする。
    2. lsmod で対応するモジュールが組込まれているかチェックする。オンボードチップの場合、asus_wmiとかacer_wmiとかになってるかも。なかったら、apt-get して insmod するか、ベンダのページからソース落としてきて make する…んだと思うが、今回は認識してたのでよく分からん。
  3. 無線の設定を書く。
    以下は、WPA2-PSK(AES) で SSID をステルスに設定している場合。

    # wpa_passphrase SSID PASSPHRASE(PSKのこと) > /etc/wpa_supplicant/wpa_supplicant.conf
    # vi /etc/wpa_supplicant/wpa_supplicant.conf
    
    ctrl_interface=/var/run/wpa_supplicant
    ctrl_interface_group=0
    ap_scan=1
    network={
            ssid="SSID"
            scan_ssid=1 # ← ステルスモードの時
            #psk="PASSPHRASE"
            psk=************************************************************
            proto=WPA2
            key_mgmt=WPA-PSK
            pairwise=CCMP
            group=CCMP
            priority=2
    }
    
  4. おためしで接続(アソシエート)してみる。(以下は、WLAN I/F が1つしかなくて、そんなに古くない場合。)
    # wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf
    -D 以下は WLAN インターフェースの指定らしく、最近は wext を使うのが一般的っぽい。
  5. うまくいったら、コンソールが返ってこないので、Ctrl+C で落とす。
  6. うまくいくようなら、/etc/network/interfaces を書く。
    auto wlan0
    iface wlan0 inet dhcp
            wpa-driver      wext
            wpa-essid       SSID
            wpa-conf        /etc/wpa_supplicant/wpa_supplicant.conf
    

    私は、wpa-essid を記述していない解説サイトがあって、書き漏らしておりハマっていた。
    だって、wpa-conf の方に書いてあるし、いらんと思うじゃーん。

  7. 後から知ったが、次のコマンドで AP リストが見れる。
    $ iwlist wlan0 scan | grep ESSID