Windowsのバックアップ~イケてないなぁ~

GWにSSD化する

Asus K53EというWindowsマシンを使っています.
前の会社でMacBookAirを買ってもらっていたので,暫くはメインマシンがこのMacだったので正直Windowsマシンは放置状態でした.かなり重たい動作だし,重くなるとPCファンがう~~ん,とノイズを奏でます.
とはいえ,流石に出向している身分で前の会社の資産を使い続けるわけにもいかないので,WindowsマシンをSSD化して快適なマシンにして,GW明けにMacを返却することにしました.
なんと,嫁の許可がでました・・・なんだろう?
何年後かには新しいノートor1in2タブレットに移行するとのこと,それまでの延命策ということを理解してくれたようです.

さっそく吉祥寺のツクモ電気に買いに行く

SSDって初めて買うので少しドキドキしながら,移行の手順とかを調べて買い物に出掛けます.
ネットではD万円前後ということでしたが,ツクモ電気のGWセールスということで,C万G千ちょっとで購入.
16GのUSBメモリも購入しました.

バックアップのHDはLinuxマシンのバックアップ用のものを転用する

SSDに移行するに当たり,ひとまず今のPCのデータをどっかに逃さないといけない.
今日いろんなクラウドのサービスがあるので,すこし悩んでやはりLinuxマシンに繋ぎっぱなしなっているUSB-HDDを使うことにしました.(手堅くやるつもりでした)

とりあえずやってみて案の定エラーになる

かなり詳細に書いてあるので,この手順どうりにやるのが王道かと思います.

でも私の場合,この手順どうりにやって,リカバリする段になってエラーになります(ディスっているわけではなく条件が違います).いろいろ調べてみるとどうも下記のようなカラクリの様です.

移行元のDiskサイズをチェックしているようです.移行元のDiskがCドライブとDドライブの合計で500GB程度で,移行先のSSDが多分フォーマットとかの都合で500GB弱でしたので,バックアップファイル自体は100Gちょっとしかないですが,”移行元のDiskサイズ>移行先のDiskサイズ”というのをエラーだということにしているようです.最終的な移行先のSSDドライブのサイズが500GBを下回っているが原因でした.
ISOファイルと同じ仕様だと理解するんでしょうね.でも「Bios」云々のエラーメッセージは今みても意味不明でしゃあります(技術的は正しいのかも知れませんが).このエラーメッセージでググると結構色んな人が引っかかっているようですが,どうも文章だけだと状況がチャンと理解できないので,理解した範囲で上のような絵にしてみました.

対処します

移行するファイルサイズではなく,移行元のHDDのボリュームサイズの合計で,移行先のDiskを拒否しているんですから,移行元のDiskサイズを調整するしかないです(と分かるまで結構時間がかかる).幸運なことにDドライブにはなにもデータが入っていませんので,ドライブごと消去して同じ手順で移行します.

今度は上手く行きます.USB-HDに逃したバックアップファイルのサイズはそんなに変わっていないのにね.

そして快適になります

PCのファンの音は気にならないレベルになりした.(エアダスタで掃除したせいかも知れません)
起動時間は体感で1/10程度になります.起動直後はChromeやらアンチウィルスの動作でDiskIOの使用率が100%に張り付いて,数分使い物にならない状態が続いていて,その間中ファンの音が五月蝿かったです.この状況がかなり改善出来たことはかなり投資対効果のあるお買い物になりました.

ラジコの仕様が変わったみたい

粋な夜電波の録音が失敗していた

昨日というか今日(10月15日)分の放送の録音が失敗していた.
どうも,時期的な感じでは,”『タイムフリー聴取機能』の実証実験開始”に伴う変更の模様(ずっと見ていたわけではないので確度は不明).

ということでスクリプトを修正

とはいえ,エラーになったところをググって修正しただけなので,これで安定するかどうかは不明.
TBSを2分ほど録音してオッケーだったので,まぁいいかという感じです.

変更箇所は赤字で.
playerurlからバージョンでも番号が消えてくれたのはまぁよしとするが,まだauth云々のコードの所でバージョン番号を生で書いているのでイケてない感じがするけど,ひとまずこれでしのごうと思う.

!/bin/bash

LANG=ja_JP.utf8

pid=$$
date=`date '+%Y-%m-%d-%H_%M'`
#playerurl=http://radiko.jp/player/swf/player_4.1.0.00.swf
playerurl=http://radiko.jp/apps/js/flash/myplayer-release.swf
playerfile="/tmp/player.swf"
keyfile="/tmp/authkey.png"

outdir="."

if [ $# -le 1 ]; then
  echo "usage : $0 channel_name duration(minuites) [outputdir] [prefix]"
  exit 1
fi

if [ $# -ge 2 ]; then
  channel=$1
  DURATION=`expr $2 \* 60`
fi
if [ $# -ge 3 ]; then
  outdir=$3
fi
PREFIX=${channel}
if [ $# -ge 4 ]; then
  PREFIX=$4
fi

#
# get player
#
if [ ! -f $playerfile ]; then
  wget -q -O $playerfile $playerurl

  if [ $? -ne 0 ]; then
    echo "failed get player"
    exit 1
  fi
fi

#
# get keydata (need swftool)
#
if [ ! -f $keyfile ]; then
  swfextract -b 12 $playerfile -o $keyfile

  if [ ! -f $keyfile ]; then
    echo "failed get keydata"
    exit 1
  fi
fi

if [ -f auth1_fms_${pid} ]; then
  rm -f auth1_fms_${pid}
fi

#
# access auth1_fms
#
wget -q \
     --header="pragma: no-cache" \
     --header="X-Radiko-App: pc_ts" \
     --header="X-Radiko-App-Version: 4.0.1" \
     --header="X-Radiko-User: test-stream" \
     --header="X-Radiko-Device: pc" \
     --post-data='\r\n' \
     --no-check-certificate \
     --save-headers \
     -O auth1_fms_${pid} \
     https://radiko.jp/v2/api/auth1_fms

if [ $? -ne 0 ]; then
  echo "failed auth1 process"
  exit 1
fi

#
# get partial key
#
authtoken=`perl -ne 'print $1 if(/x-radiko-authtoken: ([\w-]+)/i)' auth1_fms_${pid}`
offset=`perl -ne 'print $1 if(/x-radiko-keyoffset: (\d+)/i)' auth1_fms_${pid}`
length=`perl -ne 'print $1 if(/x-radiko-keylength: (\d+)/i)' auth1_fms_${pid}`

partialkey=`dd if=$keyfile bs=1 skip=${offset} count=${length} 2> /dev/null | base64`

#echo "authtoken: ${authtoken} \noffset: ${offset} length: ${length} \npartialkey: $partialkey"

rm -f auth1_fms_${pid}

if [ -f auth2_fms_${pid} ]; then
  rm -f auth2_fms_${pid}
fi

#
# access auth2_fms
#
wget -q \
     --header="pragma: no-cache" \
     --header="X-Radiko-App: pc_ts" \
     --header="X-Radiko-App-Version: 4.0.0" \
     --header="X-Radiko-User: test-stream" \
     --header="X-Radiko-Device: pc" \
     --header="X-Radiko-Authtoken: ${authtoken}" \
     --header="X-Radiko-Partialkey: ${partialkey}" \
     --post-data='\r\n' \
     --no-check-certificate \
     -O auth2_fms_${pid} \
     https://radiko.jp/v2/api/auth2_fms

if [ $? -ne 0 -o ! -f auth2_fms_${pid} ]; then
  echo "failed auth2 process"
  exit 1
fi

#echo "authentication success"

areaid=`perl -ne 'print $1 if(/^([^,]+),/i)' auth2_fms_${pid}`
#echo "areaid: $areaid"

rm -f auth2_fms_${pid}

#
# get stream-url
#

if [ -f ${channel}.xml ]; then
  rm -f ${channel}.xml
fi

wget -q "http://radiko.jp/v2/station/stream/${channel}.xml"

stream_url=`echo "cat /url/item[1]/text()" | xmllint --shell ${channel}.xml | tail -2 | head -1`
url_parts=(`echo ${stream_url} | perl -pe 's!^(.*)://(.*?)/(.*)/(.*?)$/!$1://$2 $3 $4!'`)

rm -f ${channel}.xml

#
# rtmpdump
#
rtmpdump -q \
         -r ${url_parts[0]} \
         --app ${url_parts[1]} \
         --playpath ${url_parts[2]} \
         -W $playerurl \
         -C S:"" -C S:"" -C S:"" -C S:$authtoken \
         --live \
         --stop ${DURATION} \
         --flv "/tmp/${channel}_${date}"
#        > /dev/null 2>&1

ffmpeg -loglevel quiet -y -i "/tmp/${channel}_${date}" -acodec libmp3lame -ab 128k "${outdir}/${PREFIX}_${date}.mp3"
if [ $? = 0 ]; then
  rm -f "/tmp/${channel}_${date}"
fi

rm $playerfile

bindの設定~これで静かになるはず~

named.confの内容

色々試行錯誤しましたが,現時点では,以下が一番良さ気.

options {
        version         "unknown";
        listen-on port 53 { 127.0.0.1;192.168.253.1; };
//      listen-on-v6 port 53 { any; };
        directory       "/var/named";
        dump-file       "data/cache_dump.db";
        statistics-file "data/named_stats.txt";
        memstatistics-file "data/named_mem_stats.txt";

        allow-query             { localhost; 192.168.253.0/24; };
        allow-transfer          { localhost; 192.168.253.0/24; };
        allow-query-cache       { localhost; 192.168.253.0/24; };
//      forwarders              { 220.220.248.1; 220.220.248.9;};
        forwarders              { 8.8.8.8; 8.8.4.4; };
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file        "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
//              severity debug;
//              severity critical;
                print-time yes;
                print-severity yes;
                print-category yes;
        };
        category lame-servers { null; };
//      category dnssec { null; };
};

悩んだポイント:logging設定

logwatchで結構な数のレポートが出ていたので,前から設定がおかしいのでは?とか,DNSSECに対応していないのが気になっていた.
まずは,

lame-servers DNS解決の際にほかのサーバで見つけた設定ミス(lame)の記録
BINDのlogを適切に設定して攻撃の予兆を察知しよう

とのことなので,他所さん設定ミスを一生懸命観ても仕方ないので,loggingを

        category lame-servers { null; };

で破棄する.DNSSEC関連も結構変なログが出るので,

//      category dnssec { null; };

を書いてはおくが,以下に書くように,ぷららのDNSサーバがDNSSECに対応していないせいなので,今のところはコメントアウトしておく.

悩んだポイント:DNSSEC設定

        forwarders              { 220.220.248.1; 220.220.248.9;};
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

で,ぷららのDNSサーバを使うと,無闇にログが出力される.特にvalidation関係で.

dnssec-validation no;

にすると少しは静かにはなるが,気持ちが悪い.
ということで,googleのDNSサーバを使おうとか考えるが,akamaiのエッジサーバが変わってしまうので,結構遅くなるぞ的な心配があったので,あまりそれは選択肢に入れいていなかった.けど,

        forwarders              { 8.8.8.8; 8.8.4.4; };

にしても,www.ntt.comのIPアドレスはぷららのDNSサーバと同じアドレスを返してくるので,あぁakamai賢いということで,結局googleのDNSサーバを使うことにしました.
しばらく,これで様子をみることにします.

あとは,IPv6をどうするかなんですが,また道のりは遠い 😛 .

アカマイのエキスパートによるモバイルAPI解説セミナー

 

Hiroyuki Nakamuraさん(@tel2sip)が投稿した写真

昨日,仕事の関係で(と言っても研究所なので割りとなんでもありなんですが),アカマイのセミナーに行ってきたので,概要を書き留めておきます.

内容

・アメリカではモバイルAPLの流行に伴いAPIのトラヒックが6割程度に上がっている.
6割って,帯域ベースなのかパケット数ベースなのか不明だが,多分APIのパケットサイズはゴミなので,パケット数ベースなのだろう.

・モバイルAPLのUx向上にAkamaiキャッシュサービスが有効
・APIに特化したAkamaiの提供機能としては,
 ーキャッシュパージ用のAPI提供(今年の10月に提供予定)
  ⇒API廃止時にOriginサーバのAPIとキャッシュサーバ上のAPIバージョンを整合させるために使う.
 ーバージョン切り替え
  ⇒旧バージョンのモバイルAPLと新バージョンのモバイルAPLの混在期間をアカマイキャッシュサーバで振り分ける

感想

特段サプライズっていう内容でもなかった.だから割とこじんまりとしたセミナーにしたのかも知れない.
講演後にAkamaiの人と話をしましたが,どうも彼らはキャリアを土管としてしか 見ていない感があり,やっぱり不愉快になっちゃいました.
とはいえ,Internetな世界では無視できない規模のPlayerなので情報収集は継続しておきたいなと思います.

カスタムフィールドを使ってみる.

これはカスタムフィールドのテストです.
新しいプラグインを入れようかとも思いましたが現在使っている,Catch Boxというテーマが割りとお気に入りで,当面変えないだろうという想定のもと.single.phpを編集することにしました.

<?php the_meta(); ?>

を追加するといい感じに表示されてくれます.
ただ,どうしても”catchbox-sidebarlayout”という名前のカスタムフィールドが勝手に追加されてしまいます.
対処方法不明.

不穏なアクセスにもう一度対処

TwitterでもFacebookでも良いような内容だが,Twitterだとセキュリティが心配だし,Facebookだとアホ扱いされそうなので,こちらに記載.以前の記事で不穏なアクセスがあることを書いた.コメントでHGWで処置したことを書いた.でも16日にアクセスが再発.
packefilter
パケットフィルタ設定のチェックボックスに印を入れて対象インタフェースをプロバイダ名にして保存.これで処置したつもりにはなっているが,月に二回しかアクセスがないので正直分からない.
まぁ,個人情報満載なBlogではあるが,別に流出して困ることはなにも書いてないので,ラジオ録音さえ妨害されなければ別に構わないのではあるが,気持ち悪いだけです.

家のサーバって法人に見えるのか?

2016-02-24 08.33.12

家のサーバってTwitterには法人に見えているのかな?

上のようなメールが来るが,確かにTwitterで定期的に過去記事をポストするプラグイン”Evergreeen Twitter Post“を使って3時間周期くらいで,過去の記事をTweetしているが,これをやっている心はアフィリエイトの収入がまったくない(笑)からです.

おかげ様で今月は少しトラヒックも上がっているようなので,少しは収入になってくれると良いのですが・・.

でもアフィリエイト生活をするBlogにするにはテーマを決めて,ユニークユーザを囲い込むという戦略が重要なのそうで,でも,そういう記事を一貫性を持って書く気持ちが全くないというのが,多分一番致命的なのだろう.

うーん,なんか不穏.

Trafic

deドメインからのアクセスが増えている.ドイツの方に知り合いはいないし,ドイツ語のコンテンツなんてないので,謎.
まぁ,ドメイン名で本当の国が分かるとは思っていないですが,なんかこのdeドメインのクライアントからのアクセスが増えているのがすこし気持ち悪い.
テーマを変えたり,Wordpressのプラグインを色々変更したり,色んなことをしたのでちと心配.
ラジオ録音も上手く行っていないのはこのせい?とか変な心配をし始める.

TwitterやFBで宣伝した効果か?
フォーラムのせいか?
やっぱりネットワークって難しいのかも知れない.

Ampache – Music Streaming Server 3.8.0 released

A web based audio/video streaming application and file manager allowing you to access your music & videos from anywhere, using almost any internet enabled device.

情報源: Ampache – Music Streaming Server

Ampacheの3.8.0がベータ版から正式リリースに変わったみたいなので,入れ替えてみる.しかし,DBをリプレースするように設定してしまったので,これまでの視聴履歴が消えちゃいました(涙).でも旧バージョンからのアップグレードがちゃんと動いてくれたことは経験上ないので,しかたないかも.Last.fmに履歴は残っているからよしとする.

最初,カタログの追加が全然動かないかと思われたが,ブラウザキャッシュが悪さをしていていたみたいで,ctrlキーを押しながらリロードすると,Ajaxっぽい画面で進行状況が分かるようになる.

Chromeで見ると気にならないけど,タブレットのJustPlayerから見ると幾つかのアルバムがダブって見える.う~~んって思ったがChromeの管理画面からカタログの確認をすると,少なくとも前バージョンと同じ見え方になった.

暫くこれで様子を見ることにしよう.