1 / 212

MySQLデータベースをバックアップ

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

hiromasa.anotherさんの所にあったXREA/CORESERVER用のスクリプトを自分の使ってるinetdで動くように変更してみた。

#!/bin/sh

# 設定
DATABASE=MYSQLデータベース名
DBUSERNAME=MYSQLアカウント名
PASSWORD=MYSQLパスワード
USERHOME=アカウントのディレクトリ(public_htmlの一階層上を指定)
BACKUPDIR=バックアップを置くディレクトリ
KEEPDAY=バックアップを補完しておく日数(2週間だったら14d)

# 初期化
PREFIX=mysql
SERVER=localhostもしくはmysqlサーバーホスト
NOWDATE=`date +%Y%m%d`
DESTDIR=$USERHOME/$BACKUPDIR
DUMPFILE=$PREFIX.$NOWDATE.dump
TARFILE=$PREFIX.$NOWDATE.tar.gz
OLDDATE=`date -v-$KEEPDAY +%y%m%d`

# MySQLダンプ/圧縮
cd $DESTDIR
/usr/local/bin/mysqldump $DATABASE --host=$SERVER -u $DBUSERNAME --password=$PASSWORD > $DUMPFILE
tar zcvf $TARFILE $DUMPFILE

# 処理判定
if [ $? != 0 -o ! -e $TARFILE ]; then
    echo "backup faild -- ($DUMPFILE)"
    exit 1
fi

# 圧縮前ファイル削除
rm -f $DUMPFILE

# n日ローテートを削除
rmfile=$DESTDIR/$PREFIX.$OLDDATE.tar.gz
if [ -e $rmfile ]; then
    rm -f $rmfile
fi

バックアップを利用して復元する場合はこうするそうだ。

mysql -u [ユーザ名] -p --default-character-set=utf8 [データベース名] < [バックアップ.dumpファイル]
ex. mysql -u MYSQLアカウント名 -p --default-character-set=utf8 MYSQLデータベース名 < mysql.日付.dump

Windows7でもサービスモードでVNC使いたいぞ

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

今まで、RealVNCを使っていたんだけど、Windows7だとサービスモードで動かない。
Vista使ってないから分かんないけど、多分これまたVistaから動かなくなってるんだろうな・・・UACを全無効にすれば動くんだろうか(泣)

で、仕方ないので他に動くVNCが無いか何種類かインストールテスト(汗)
互換性のあたりの設定とか色々試してみるものの、いいところまで行くんだけど、サービスの自動起動もしくは、コンピュータの管理でリモート起動させると、パスワードが設定されないか、対話型サービスダイアログの検出ってなってしまって動かない。
スタートアップとかで動かすとなると、Windowsログオン画面に戻っちゃったらおしまいだし…

こりゃVNCのプログラム自体がWindows7のサービスモード対応に改良されてるのじゃなきゃダメっぽい気がしたので、さらに片っ端からダウンロード&インストールテスト。

そしたらあるじゃないですか!!!動いたのが。
TightVNC http://www.tightvnc.com/ ←コレ。
日本語化はされてないみたいなので、ビューワは今までの使うとして、とりあえずWindows7の新規クライアントにはこれ入れてってみよう♪

WordPressの携帯プラグインKtaiStyleでモバイルAdSence

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

モバイルAdSenceのテストをしてみようと、Ktai Styleの
ktai-style/themes/exsample/index.php にコードを挿してみたんだけど、fatal errorが出まくる。
多分、使ってるサーバーのphpのセッティングによるのかもしれないけど、いろいろ試したら、なんとかかんとか動くようになった。

ktai-style/inc/theme.php に取得したコードの中のfunction部分だけを追記する。

<?php
function read_global($var) {
return isset($_SERVER[$var]) ? $_SERVER[$var]: ”;
}
function ・・・
 ・
 ・
 中略
 ・
 ・
return $google_ad_url;
}
?>

そんで、ktai-style/themes/exsample/index.php の表示させたい部分に、残りを記述する。

<?php
$GLOBALS['google']['ad_・・・
 ・
 ・
 中略
 ・
 ・
fclose($google_ad_handle);
}
?>

これで、表示された。

CentOS5のupdatedbが重過ぎる

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

最近、プロキシサーバーに使っているCentOS5がやたら重い。
サボって見てなかったMRTGのレポート見たら、CPU使用率が100%に貼り付いてる(汗) vmstatやtop、psで原因を調べてみると、定かではないがどうやら updatedb が原因っぽい。

しばらく前は問題なかったので、なんかのパッケージのアップデートが原因かなんかで、衝突してるのかも…clamavが怪しい気がするんだけどなぁ。
/etc/updatedb.conf できちんと除外設定すれば解決する気がするんだけど、どのディレクトリが原因か調べるのがめんどい…

ってわけで、このサーバーでは、locateコマンド使うことなんてめったに無いので、/etc/cron.daily/ にある mlocate.cron を退避させておこう…

なんて、行き当たりばったりな対応(笑)

Windows7にproxycfgが無いんだけど。

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

WindowsUPDATEでプロキシサーバをきちんと見るようにwinhttpの設定をしようと思ったらproxycfgが無いじゃん。
調べたらVistaから既に無いらしい。うーん・・・結構XPとVistaで変更大きかったんだなぁ(汗)

そんで解決策は「netsh」。これ使い方ほとんど覚えてないから面倒だ・・早く覚えないと。

設定メモ
netsh winhttp set proxy プロキシサーバ名:ポート番号 バイパスリスト
(例)netsh winhttp set proxy px.exsample.com:8080 *.exsample.com

設定確認
netsh winhttp show proxy

Windows2000 セキュリティ対策 MS10-046分

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

Windows シェルの脆弱性により、リモートでコードが実行される (2286198)
のパッチが、サポート終了でXP以上しか出ないので、レジストリ改変で対処する。

・HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler
 の 値[(標準)] が空白になるように値を削除
・HKEY_CLASSES_ROOT\piffile\shellex\IconHandler
 の 値[(標準)] が空白になるように値を削除
・リブート

一部のアイコンが表示されなくなるので、戻したい時は…

・HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler
 値[(標準)]を[{00021401-0000-0000-C000-000000000046}]に戻す
・HKEY_CLASSES_ROOT\piffile\shellex\IconHandler
 値[(標準)]を[{00021401-0000-0000-C000-000000000046}]に戻す
・リブート

WinAD 2000→2008R2 マイグレーション

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

2000環境から一気に2003と2008を吹っ飛ばして、2008R2へマイグレーションしてみる…あーコワ(汗) でも予算の都合上いたしかたなし…

まずは、SP4確認とネイティブ確認。

で、2008R2のDVDに収録されたadprepを実行する。ここで重要なのが、adprepに2種類あって、x86の2000srvでは「adprep32」しか使えないこと。
テスト時に、間違ってadprep(x64用ってことでぃ)を実行して、おもいっきしサーバー落ちたのでくれぐれも注意。

adprep /forestprep をフォレストにつき1回実行。
ログを確認して、さらにレジストリエディタで、HKEY_LOCAL_MACHINE\System\CurrentControlSet
\Services\NTDS\Parameters の Schema Version を確認して、2008R2の「47」になってりゃOK…と。

次は adprep /rodcprep をフォレストにつき1回実行。
→ これエラー出ます。親子両方のドメインの「パーティションに対する操作に失敗しました」になる。アプリケーション ディレクトリ パーティション自体が2003から実装なんで、2000に対して実行すりゃそりゃエラー吐くわな…と。
なので、このパーティションに関するエラーは無視(笑)

ここまで来たら、やっと2008R2側での操作。DCPROMOを実行。
途中でドメインを選択後に、さっきの adprep /rodcprep のエラーに絡んでと思うけど、adprep /rodcprepが実行されてないので読み取り専用DC使えないよってエラーが出る…とりあえず無視(笑)
で、さらにIPv6にも静的IP振れとかエラーが出るけど、とりあえずIPv4を静的にしてあるので無視(←そればっか)

エラーを無視しまくって、ウィザードをすすめると、とりあえずADがインストールされたようで再起動される。
一応2000側で、DCの一覧を確認してみると、2008R2機がリストされてた♪

で、やっとFSMOの転送。
スキーママスタ・名前付けマスタ・インフラストラクチャマスタ・PDCマスタ・RIDマスタの順で転送かけた。


NTPのエラー出てるので、
w32tm /query /configuration で確認。設定がないので、
w32tm /config /manualpeerlist:DMZのntpd動かしてるサーバのIP /syncfromflags:manual で設定し
w32tm /config /update で反映。
w32tm /query /configuration で再確認すると、
[タイム プロバイダ]のセクションに
Type: NTP (ローカル)
NtpServer: DMZのntpd動かしてるサーバのIP (ローカル)
って出て、オッケー。


DNSがwpadのリクエストにエラー吐いてるので、調べてみると2008のDNSはwpad乗っ取りに対応するために、wpadへのクエリをブロックしているらしい。
面倒なので、ブロックを停止する。
dnscmd /config /globalqueryblocklist で確認すると
クエリ結果:
文字列: wpad
文字列: isatap
って出たので、
dnscmd /config /globalqueryblocklist isatap を実行し、wpadだけ消した。
dnscmd /config /globalqueryblocklist で再度確認すると
クエリ結果:
文字列: isatap
でオッケーと。

Googleによって携帯電話用に変換され・・・たくない!

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

そんなこんなで、Serene Bachで工夫をして携帯で上手く見れるようにしたものの、モバイル用のGoogleで検索した結果からアクセスすると、せっかく対策した携帯用のページでなくて、PC用のページをGoogleが携帯用で見やすく変換してくれたページが表示される。
とってもありがたいんだけど、メニューに画像ボタンなどをたくさん使っていると「ちっとも見やすくない」ページが表示されちゃう。

そんな時は、Googleのサイトの説明に則ってヘッダーに設定を入れる。

テンプレに入れる時は、以下のようにすれば良いって事になるかな。

<link rel="alternate" media="handheld"
href="{site_mobile}?eid={entry_id}" />

続きを読む

SereneBachの静的htmlへの携帯アクセスを.htaccessでリダイレクト

このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Share on GREE

静的に書き出したHTMLに携帯のモバイルブラウザでアクセスしちゃうと、デフォルトではmb.cgiに行かないので、.htaccessを使ってリダイレクトをかける。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} ^(SoftBank
|UP\.Browser|DoCoMo|DDIPOCKET|WILLCOM
|KDDI|Vodafone)
RewriteCond %{REQUEST_FILENAME} log/.*eid
RewriteRule log/.*eid([0-9]+)\.html$
/mb.cgi?eid=$1 [R]
RewriteCond %{HTTP_USER_AGENT} ^(SoftBank
|UP\.Browser|DoCoMo|DDIPOCKET|WILLCOM
|KDDI|Vodafone)
RewriteRule ^$ /mb.cgi [R]

これで、

logディレクトリ以下のeidなんちゃら.html
 ↓ ↓
mb.cgi?eid=なんちゃら

ルートディレクトリ
 ↓ ↓
mb.cgi

のリダイレクトが上手く動いてるみたいだ。

1 / 212