ジョギング (2012/10/15-11/16)

投稿日: Leave a comment

1か月間のジョギングの記録。

10/25くらいに鼻をいためて1週間ほど走るのを休んだけど、そのあとは続けて走れている。

なぜだかわからないけど、子供達から1日おきに走れと言われていて、基本的に2日に1回のペース。プラス天候の影響でもう1~2日空くことがあるかなという感じ。

CNAMEの注意点

投稿日: Leave a comment

CNAMEとAAAAを同じホスト名に設定できない件RFC1912に載っていた。

RFC1912の2.4章。

2.4 CNAME records

   A CNAME record is not allowed to coexist with any other data.  In
   other words, if suzy.podunk.xx is an alias for sue.podunk.xx, you
   can't also have an MX record for suzy.podunk.edu, or an A record, or
   even a TXT record.  Especially do not try to combine CNAMEs and NS
   records like this!:

           podunk.xx.      IN      NS      ns1
                           IN      NS      ns2
                           IN      CNAME   mary
           mary            IN      A       1.2.3.4

   This is often attempted by inexperienced administrators as an obvious
   way to allow your domain name to also be a host.  However, DNS
   servers like BIND will see the CNAME and refuse to add any other
   resources for that name.  Since no other records are allowed to
   coexist with a CNAME, the NS entries are ignored.  Therefore all the
   hosts in the podunk.xx domain are ignored as well!

   If you want to have your domain also be a host, do the following:

           podunk.xx.      IN      NS      ns1
                           IN      NS      ns2
                           IN      A       1.2.3.4
           mary            IN      A       1.2.3.4

   Don't go overboard with CNAMEs.  Use them when renaming hosts, but
   plan to get rid of them (and inform your users).  However CNAMEs are
   useful (and encouraged) for generalized names for servers -- `ftp'
   for your ftp server, `www' for your Web server, `gopher' for your
   Gopher server, `news' for your Usenet news server, etc.

CNAMEは他のいかなるデータと共存できません、特にNSと共存させると名前引けなくなりますよ、とな。

自宅ネットワークのダイナミックDNS設定

投稿日: Leave a comment

ここ

自宅サーバのIPv4アドレスはYamahaのネットボランチDNSサービスで使っているホスト名にCNAMEを向けて、IPv6アドレスはプロバイダから(半)固定で割当たっているアドレスをそのままAAAAにのせるつもり。

と書いてたけど、さくらインターネットのコントロールパネルから同じホスト名にCNAMEとAAAAを設定できない(AとAAAAは設定できる) ようで、仕方ないので MyDNS.jp の適当なホスト名に動的IPのAレコード、固定IPのAAAAレコードを設定して、rose.everblooming.netのCNAMEをMyDNS.jpのホストに設定した。

ここには結果は書かないけど、

> dig rose.everblooming.net a
> dig rose.everblooming.net aaaa

などとすればどんな感じになっているかわかるはず。

IPv4の動的IPアドレスはこんな感じのスクリプトをcronで4時間おきくらい(←適当)に回して更新する。IPv6は匿名アドレスを使っているので固定設定。source IPの設定が出来ればIPv6も動的IPにしたいところだけど、よくわからないのでまた今度。

# cat /usr/local/etc/update_mydnsjp.sh
#!/bin/sh

id=mydnsxxxxxx
pw=xxxxxxxxxxx

host=ipv4.mydns.jp
opt="-4 -q"

/usr/bin/fetch ${opt} ftp://${id}:${pw}@${host}/ > /dev/null 2>&1

一応、バックアップでネットボランチDNSの方にも登録。

日記の引越し完了

投稿日: Leave a comment

日記の引越しが完了しました。

旧URLへアクセスすると自動的に転送するようにしているので、ブックマークなりお気に入りに入れている人は、転送後のページ

https://snapshot.everblooming.net/

に変更してくださいな。

参考までに引越し手順。ここを参考にDBごと移しました。

(1) データベースをエクスポートしてPCに保存

さくらインターネット サーバーコントロールからphpMyAdminに入り、wordpressで使用しているデータベースを全選択→エクスポートを実行。

すると、PC上にデータベースファイルがダウンロードでされる。

(2) 新規データベースを作成

phpMyAdminでは新規作成ができないようになっているため、さくらインターネット サーバーコントロールで新規データベースを作成。データベースサーバとユーザー名・パスワードを記録しておく。

(3) サーバにSSHログインして、wordpressをお引越し

基本はディレクトリ丸ごとコピー。そのあと、wp-config.phpを編集してデータベースサーバの設定を新しいデータベースサーバのものに変更。

% tar cf - ./ | ( cd ../snapshot.everblooming.net/ && tar xvf - )

(4) wordpressのインストールとDBの初期設定

一度 https://snapshot.everblooming.net/ にアクセスしてwordpressのインストールとDBの初期設定を実行

初期設定といっても、次の手順で全部消すので何もしなくてもいいかも。

そもそもこのステップは不要だったりもするかも。

(5) データベースのリプレイス

再びphpMyAdminに入り、(4)でできたデータベースを一度全部削除して、(1)でエクスポートしたデータベースファイルをインポート。

(6) 最終確認

新サイトにアクセスしてデータが復元されていることを確認

これで一応日記としては移動完了だけど、コンテンツに書かれたリンクは旧アドレスのままだったりする。旧アドレスへのアクセスを自動転送しておけば問題ないけど気持ちが悪いので、投稿一覧で旧アドレスを検索して一つ一つ書き換えた。全部で70件くらいあった。

サイトの転送設定

投稿日: Leave a comment

wordpressの引越し(ドメイン変更)について調べていたらapacheのmod_aliasモジュールの機能で転送設定ができることが判明。

設定はいたって簡単。.htaccessに次の1行を書くだけ。

Redirect permanent /snapshots https://snapshot.everblooming.net/

これで旧アドレス、しかも /snapshots/xxx のxxxの部分も考慮して https://snapshot.everblooming.net/xxx に転送するようになる。

昔、別のサーバで日記を引っ越したときにこれと全く同じことをjavascriptで長々と書いてたのを思い出した。ちゃんと調べればおけばと今更ながらに思う。

ドメインを取得

投稿日: Leave a comment

前々からドメインをとりたいと思っていたけど、なかなかいい名前が思いつかずとれていなかったが、思いついたので昨日申請をした。

というわけで、この日記のアドレスが変更になりますが、wordpressでアドレスでドメインを変更する方法がすぐにわからず、追々作業します。

DBサーバは別になっているので、wordpress本体の方をそのまま移行すればいいはずではあるのだけど、いまいちやり方がわからず。

この辺を見るとダッシュボードでアドレス設定を変更してから、サーバ上でフォルダを移動すればさくっと変更できるようには書いてあるけど、自信がないのでバックアップを取りつつ作業する予定。はまってもここを見る限りは何とかなりそうには思えるけど。

ちなみに、新ドメインはレンタルサーバと自宅サーバで使う予定。今は自宅サーバはドメインなしで動いていて、ドメインありのFQDNがないと動かないデーモンがあったりと何かと面倒なので、何とかしたいと思っていた。

自宅サーバのIPv4アドレスはYamahaのネットボランチDNSサービスで使っているホスト名にCNAMEを向けて、IPv6アドレスはプロバイダから(半)固定で割当たっているアドレスをそのままAAAAにのせるつもり。

レンタルサーバの方は、IPv4は自動で設定してくれて、IPv6はここを見ると借りてるサーバはIPv6に対応してないみたいなので、しばらくはIPv4 only。順次IPv6に対応すると書いてあるのでそのうちAAAAを名乗るようになると思う。

emacs24のpackage管理

投稿日: Leave a comment

先日C++のコードを書こうとしたときに、自宅PCにまともなエディタを入れていなかったことを思い出して、Emacs24.2とgvimを入れた。最近コードを書くときはもっぱらgvimだけど、たまにemacsも使いたくなる。

で、windows用のemacsは今まで自前でコンパイルしていたけど、ライブラリの準備が面倒なので先人がコンパイルしたものを使ってみた。使ったのはここemacs-24.2-20120922.exe

ついでに、emacs24で使えるようになったといわれているパッケージ管理システムも使えるようにしてみた。

(1) ~/.emacs.d/init.el にこれを書く。

(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)

(2) Emacsを立ち上げて M-x package-list-packages を実行する

すると、こんな画面になる。

ここで、

  • “i”で、インストールしたいパッケージにマーク
  • “d”で、アンインストールしたいパッケージにマーク
  • “r”で、リストを更新
  • “x”で、インストール/アンインストールを実行

インストールした後は、init.elファイルを特にいじらなくてもインストールしたパッケージが有効になる模様。