WP: WordPress を Subversion でアップグレード… ならず、の巻
2.3 → 2.3.1 へのアップグレード時に楽しようとして失敗したので(転送オプション選択ミス)、もっと楽できて失敗のなさそうな Subversion によるアップグレード を試してみることにしました。
必要なものは次のとおり。
- サーバ (XREA s201 サーバ):
- SSH 接続できること
- Subversion クライアント?(
svnコマンドが使えること)
- PC (Windows 2000):
- .NET Framework 2.0 — 次項の Poderosa に必要
- SSH 接続用ターミナルエミュレータ: Poderosa
- Subversion クライアント: TortoiseSVN
アプリの選択は、ひろまささん(の記事)に盲目的に従いました。。
サーバ要件を満たしているかどうかはサポートに尋ねてもいいのですが、その前に自分で確認してみようと思い、コマンドを打つ環境を整えることからスタート。
結論から言うと、s201 サーバでは svn が使えないことが判明し、この方法ではアップグレードできなかった、という、新春早々残念なお話です。
気を取り直して、以下、行なったこと・調べたことをメモ。
目次:
参考資料・関連リンク
- SSH 接続:
- hiromasa.another :o) » CORESERVER & XREA での SSH 接続
- Terminal Emulator Poderosa — Windows 用ターミナルエミュレータ。1
- Subversion クライアントインストール・設定:
- hiromasa.another :o) » WordPress を Subversion でアップグレードする
- hiromasa.zone :o) » TortoiseSVN でファイルのバージョン管理をしてみる (2)
- Gentoo Side » TortoiseSVNのインストールと設定 — ひろまささんのページで紹介されていた解説サイト
- TortoiseSVN — Windows 用 Subversion クライアント(エクスプローラ拡張)
- Subversion で WordPress をアップグレード:
- わーどぷれすっ! » WordPress のアップグレードを簡単に: Subversion の巻 — うちは今まで FTP でやってきたので、「3. フツーにインストールしたWordPressをSubversionでのインストールに置き換える」 → 「2. 安定版を追っかける」 の順。
- WordPress Codex » Installing/Updating WordPress with Subversion
- Wikipedia » Subversion
ここまで用意したものの、Poderosa 止まりに。。(哀愁)
準備
Windows 2000 をアップデート
.NET Framework を入れる前に、Windows 2000 のセキュリティアップデートなどをしておいた。
Microsoft Update にて更新後、PC 再起動。
Microsoft .NET Framework 2.0 をインストール
Microsoft Update → カスタム → 追加選択(ソフトウェア) にて、
「Microsoft .NET Framework 2.0 : x86 (KB829019)」にチェックしてインストール。
Microsoft .NET Framework 2.0 : x86 (KB829019)
最終発行日時: 2006 年 5 月 23 日
ダウンロード サイズ: 24.3 MB
.NET Framework 2.0 では、キャッシュ性能の向上、ClickOnce によるアプリケーションの配置と更新、および ASP.NET 2.0 コントロールとサービスによる広範なブラウザとデバイスのサポートによって、スケーラビリティとパフォーマンスが強化されています。 インストール後には、コンピュータの再起動が必要になる場合があります。
必要なシステム
推奨 CPU: 指定されていません。
推奨メモリ: 指定されていません。
推奨ハードディスク領域: 指定されていません。
アンインストール方法
このソフトウェア更新プログラムは、コントロール パネルの [プログラムの追加と削除] から削除できます。
ヘルプとサポートを参照する
http://support.microsoft.com
詳細
http://go.microsoft.com/fwlink/?linkid=54516
XREA ホスト情報登録
これ以降、ひろまささんの記事に盲目的に(以下略)。
XREA 管理画面 > ホスト情報登録
「FTP/SSH接続許可ホスト入力」 に自分の IP アドレスとかが表示されるので、その下の [SSH登録] ボタンをクリック。
登録待ちの間に次の作業へ。
Poderosa のインストール
- Terminal Emulator Poderosa より最新版をダウンロード。
- ダブルクリックしてインストール。
TortoiseSVN のインストール
本当は Poderosa で svn が使えることを確認できてからでいいのですが、PC ログインし直しを面倒がって、ついでにインストール。
- TortoiseSVN » Download より次の 2つをダウンロード。この時点での最新版は 1.4.6。私の PC に合わせて 32bit を選択。
TortoiseSVN-1.4.6.11647-win32-svn-1.4.6.msi(本体)LanguagePack-1.4.6.11647-win32-ja.exe(日本語パック)
- ダウンロードした
TortoiseSVN-1.4.6.11647-win32-svn-1.4.6.msiをダブルクリックしてインストール。 - PC再起動。
- ダウンロードした
LanguagePack-1.4.6.11647-win32-ja.exeをダブルクリックしてインストール。
SSH 接続
XREA のホスト情報登録後、5-10分過ぎてから…
- Poderosa を起動
- ファイルメニューより「新規telnet/SSH接続…」を選択
- 次の情報を入力して、[OK] ボタンをクリック
- ホスト: FTP と同じ
- プロトコル: SSH1
- アカウント: FTP と同じ
- 認証方法: パスワード
- パスフレーズ: FTP と同じ
こんなん出ました。
-rbash-2.05b$ (ここにカーソルぴこぴこ)「
-rbash-2.05b$」 がコマンドプロンプト です。カーソルの位置にコマンドを打ってリターンすると、次の行に結果が表示され、再びプロンプトが出てコマンド受付待ちとなる寸法。試しに
pwdとか打ってみる。現在いるディレクトリのフルパスを表示。*はそこはかとなく伏字。-rbash-2.05b$ pwd /*****/**** -rbash-2.05b$ (ここにカーソルぴこぴこ)lsとか打ってみる。現在いるディレクトリのディレクトリ・ファイル一覧。伏せすぎです。-rbash-2.05b$ ls -al total 48 (中略) drwx---r-x 8 **** ******* 4096 *** ** **:** public_html -rbash-2.05b$ (ここにカーソルぴこぴこ)cdとか打ってみる。ディレクトリ移動。。-rbash-2.05b$ cd public_html -rbash: cd: restricted -rbash-2.05b$ (ここにカーソルぴこぴこ)restrict とは、制限する、とか、禁止する、とかいう意味です(←辞書引いた)。XREA は制限シェルのため、
cdは使えない、ということらしい(付録参照)。
svn
s201 で svn を試す
さて、いよいよ svn help と打ってみる。
-rbash-2.05b$ svn help
-rbash: svn: command not found
-rbash-2.05b$ (ここにカーソルぴこぴこ)
Σ(゜д゜lll)
えーと……、svn、使えないみたい、です。。
サポート掲示板を検索したところ、こんな情報が出てきました。
「新しいサーバでSubversionが使えるようなのですが、~」との問い合わせに対する webmaster の回答。
残念ながら、Subversionは正式にサポートさせていただいているプログラムではございません。
XREA&CORE SUPPORT BOARD » Subversionについて (2007-06-15)
ユーザー様自身で問題解決される分にはお使いいただいて全く問題ございませんが、動作保証はさせていただけません。ご了承ください。
使えない訳ではなさそうですが、XREA はサーバによって入っているものや設定が違ったりするので、s201 について XREA のサポートに問い合わせることに。。正月からごめんなさい~。急ぎませんので~~。
s206 でも svn を試す
ものは試しということで。
bono@s206:~> pwd
/*****/****
bono@s206:~> ls -al
-rbash: /bin/ls: restricted: cannot specify `/' in command names2
bono@s206:~> svn help
usage: svn <subcommand> [options] [args]
Subversion command-line client, version 1.2.3.
Type 'svn help <subcommand>' for help on a specific subcommand.
Most subcommands take file and/or directory arguments, recursing
on the directories. If no arguments are supplied to such a
command, it recurses on the current directory (inclusive) by default.
Available subcommands:
add
blame (praise, annotate, ann)
cat
checkout (co)
cleanup
commit (ci)
copy (cp)
delete (del, remove, rm)
diff (di)
export
help (?, h)
import
info
list (ls)
lock
log
merge
mkdir
move (mv, rename, ren)
propdel (pdel, pd)
propedit (pedit, pe)
propget (pget, pg)
proplist (plist, pl)
propset (pset, ps)
resolved
revert
status (stat, st)
switch (sw)
unlock
update (up)
Subversion is a tool for version control.
For additional information, see http://subversion.tigris.org/
bono@s206:~> (ここにカーソルぴこぴこ)
こっちは使えるんかーい。(; ̄▽ ̄)ノ”
s201 の残念なお知らせ
s201サーバで Subversion が使えるか、XREA のサポートに問い合わせたところ、次の回答をいただきました。3
- 想定する利用目的が異なるため、導入は考えていない。
- ユーザー自身で設置できる同様のシステムもあるようなので、ご検討を。
……_| ̄|○
他のシステムというのを探そう。。
付録: XREA の SSH — 制限付きシェル
以下の情報は古いのですが、実際にコマンドを打ったときの反応やプロンプトからして、現在もそうらしい。
セキュリティに関する制限は?
XREA.COM » FAQ(よくある質問) - 違反行為/禁止事項について
SSHでは制限シェルを使用しています。これは、データベースのみご利用頂く為の措置です。工夫で通常シェルとして使用することは可能ですが、この行為は全面禁止とさせて頂きます。
SSHでログインできてもrbashという制限のきついシェルが起動されますし、タイムアウトも早いので、できることはかなり限られます。
XREA&CORE SUPPORT BOARD » MySQL - dayanさん (2001-11-20)
上の書き込みで紹介されていたページ:
制限付きのシェル(RESTRICTED SHELL)
bashをrbashという名前で起動した場合や、起動時に-rオプションを指定した場合には、シェルは制限された状態になります。 制限付きのシェルは、 標準のシェルよりも細かく制御された環境を設定したいときに用います。 制限付きのシェルはbashと全く同じように動作しますが、 以下のようなことが許可されなかったり実行されなかったりします:
- cd を使ってディレクトリを変更すること
- SHELL, PATH, ENV, BASH_ENV の値の設定や設定取り消しを行なうこと
- / を含むコマンド名を指定すること
- 組み込みコマンド . の引き数として / を含むファイル名を指定すること
- 組み込みコマンド hash に対するオプション -p の引数として / を含むファイル名を指定すること
- 起動時にシェル環境から関数定義をインポートすること
- 起動時にシェル環境から SHELLOPTS の値を展開すること
- リダイレクション演算子 >, >|, <>, >&, &>, >> を使ってリダイレクトを行 なうこと
- 組み込みコマンド exec を用いて、シェルを別のコマンドに置き換えること
- 組み込みコマンド enable に対する -f オプションと -d オプションを使って、組み込みコマンドを追加・削除すること
- 組み込みコマンド command に -p オプションを指定すること
- set +r や set +o restricted を用いて制限モードを解除すること
これらの制限は、何らかの起動ファイルを読み込んだ後に適用されます。
シェルスクリプトであると判明したファイルが実行された時 (前述の コマンドの実行 を参照) には、 rbash はスクリプト実行用に立ち上げたシェルでは制限を全て無効にします。
Manpage of BASH - 制限付きのシェル(RESTRICTED SHELL)
- 私の「いいまつがい」歴に「ポンデローサ」が加わりました。。未だに間違えてしまう。ごめんなさいー。[back]
- これはなんだろう。。`/bin/ls` になっちゃって、「`/` 入りコマンドはダメよ」制限?[back]
- 転載不可とのことなので、文章変えてあります。そのまま転載したほうが、誤解が生じなくていいと思うのですけど。。[back]



[...] 僕が使っている、CORESERVERのs12鯖には、インストールされています。 しかし、XREA/CORESERVERなら、大丈夫かと言えば、ここに報告があるように、ダメな鯖もあるみたいです。 [...]