syokunin のすべての投稿

CentOS 5.1 インストール(ネットワークインストール)

pen4のCPUを持ってたのでぼちぼちうちのサーバも21世紀っぽくしてみるかと、
仕事からの逃避も兼ねて徐々に作業を進める。
手始めにRAID対応のマザーボード買ってRAID組んでOSも21世紀っぽくCentOSに切り替え。
で、CentOS5.1をネットワークインストールしたので以下メモ。


CDイメージを焼いて、色々インストールオプション付けてインストール始めたら
なにか、***.rpm cannot be opened なんちゃら とか表示されてインストールできず。
よくわからんが、インストールの手法を変えてみようとDVDイメージダウンロードしてみることに。
同じ構成のファイルが含まれるはずで意味ないのでは?とも思ったが、とにかくダウンロード。
しかし、3G超えだし、置いてるミラーは限られてるし、やたら時間かかるし。もちろん断念。
で、ネットワークインストールにしてみるとすんなりめでたしと。
で、なぜCDからだとダメなのかわからずと。

1.
ftp://ftp.iij.ad.jp/pub/linux/centos/5.1/isos/i386/
から
CentOS-5.1-i386-netinstall.iso
をダウンロードしてCDに焼く。

2.
起動後CD読むようにBIOSでセットしてCD入れて起動

3.
起動後の設定画面で以下を設定
(1)言語選択
Japanese
(2)キーボードタイプ
jp106
(3)メソッド
HTTP
(4)TCP/IP設定
IPv4を環境に合わせて設定
IPv6はチェックはずしてdesable
(5)取得先の設定
Webサイトをftp.iij.ad.jp
Directoryをpub/linux/centos/5.1/os/i386

4.
しばらくするとGUIのインストール画面がでてインストールが開始される
あとは普通にインストール。
http://www.pandakun.org/ti/archives/2008/01/centos51.html
とか参照。

WordPress Japan 閉鎖

WordPress Japan が 2008年3月末で閉鎖とのこと。
しかも記事が2008/3/26に投稿されてる。

http://wordpress.xwd.jp/japan/2008/03/26/close/

各種ドキュメントの閲覧などもできなくなってる様子。

なんというか、曖昧な表現だけんども
「ちゃんとした風なサイトでもこんなことあるんだなぁ」
と、ちょっとおかしかった。

MODx+WordPress

MODx+Wordpress

http://nanabit.net/modx/wordpress-integrator.html

まず、PHP4.x.xではうまく動作しない。
PHP5.x.x必須。

あと、基本的に動くのだが負荷をかけると

« MODx Parse Error »
MODx encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »

PHP error debug
Error: 	fsockopen() [function.fsockopen]: unable to connect to dev-modx5.cgis.biz:80
Error type/ Nr.: 	Warning - 2
File: 	/xxx/public_html/wp/wp-includes/cron.php
Line: 	87
Line 87 source: 	$argyle = @ fsockopen( $parts['host'], $_SERVER['SERVER_PORT'], $errno, $errstr, 0.01 );

Parser timing
MySQL: 	0.0069 s	(0 Requests)
PHP: 	0.2601 s
Total: 	0.2670 s

とエラー。

差し当たりwp-includes/cron.phpのエラー該当箇所
fsockopenのtimeoutオプションを0.01から少し大きくしてみる。

UTF-8 TeraTerm Pro with TTSSH2 マクロファイル作成ムービー

なにげにアクセス解析みたらこのサイト意外にアクセスがある。
んで、どのコンテンツのアクセスが多いのかな?と見てみると、
UTF-8 TeraTerm Pro with TTSSH2 自動ログイン
がダントツ。

そこで誰からも要望されてないのに手順をムービーにしてみた。
(別ウィンドウで800×600のswfが直で表示されます)

SSHクライアントはPuttyなぞも試したけど、やっぱTeraTermが細かな設定できていいと思う。
(Puttyを使いこなしてないだけか)

上の例ではマクロファイルに生でパスワード書いてるわけで責任持って管理しましょうね。

しかし、デスクトップやマイコンピュータからのツリーを見せるっていうのは、プライバシーをさらけ出すようで恥ずかしいな。

ffmpegインストール2

ffmpegインストール2

前回「ffmpegインストール」の続き。

使ってみるとMPEG-4などの変換ができない。
で、configure時のオプションで色々コーデックを指定できるようなので、
MPEG-4対応編ってことで前回の続きです。
(しかし・・・コーデックって種類ありすぎ!普段動画扱わないからきつい・・)

まず、MPEG-4関連のコーデックをインストール

■FAAD2とFAAC
http://sourceforge.net/project/showfiles.php?group_id=704

faad2-2.6.1.tar.gzをダウンロード

tar zxvf faad2-2.6.1.tar.gz
cd faad2
sh bootstrap (configureを作る)
./configure
make
make install

faac-1.26.tar.gzをダウンロード

tar zxvf faac-1.26.tar.gz
cd faac
sh bootstrap (configureを作る)
./configure
make
make install

■ffmpegインストール
前回のLAMEに加えてFAAD2とFAACのサポートを有効にしてconfigure
./configure –enable-libmp3lame –enable-libfaad –enable-libfaac

make
make install

で、早速MPEG-4の変換を試してみると、エラー。
error while loading shared libraries: libfaac.so.0: cannot open shared object file: No such file or directory

libfaac.so.0やlibfaad.so.0は/usr/local/libにできてる。
Vine3.2なんですけど見てくれないので
/etc/ld.so.confに
/usr/local/libを追記。

ldconfig実行。

これでOKでした。

あと、色々調べると
コーデックはliba52(ATSC A/52 通称AC-3)とかも普通いれるっぽい。
あと、携帯向けとか考慮するなら
AMR-NBとかANR-WBとか。

あとで入れてみよう。

perl 複数の配列や多次元配列をサブルーチンの引数にする場合

Perlでは正確には二次元配列は利用できない。
サブルーチンの引数は@_の単なる配列にまとめられちゃうので、
複数の配列や多次元配列を渡す時は参照渡しにする。

以下は、
123456abc
と出力したいわけだが、
hoge1ではうまくいかない。

#---------------------------------------------------------------
@array1 = (
[1,2,3],
[4,5,6],
);
@array2 = ('a','b','c');
#---------------------------------------------------------------
&hoge1(@array1,@array2);
sub hoge1 {
my @hoge1 = shift;
my @hoge2 = shift;

foreach $var1 (@hoge1) {
foreach $var1_2 (@{$var1}) {
print $var1_2;
}
}
foreach $var2 (@hoge2) {
print $var2;
}

}
#---------------------------------------------------------------
&hoge2(\@array1,\@array2);
sub hoge2 {
my $hoge1 = shift;
my $hoge2 = shift;

#デリファレンス
my @hoge1 = @{$hoge1};
my @hoge2 = @{$hoge2};

foreach $var1 (@hoge1) {
foreach $var1_2 (@{$var1}) {
print $var1_2;
}
}
foreach $var2 (@hoge2) {
print $var2;
}
}

perl 二次元・多次元配列の取り扱い

#久々にPerlさわったらすっかり忘れていたので・・・

----------------------- 配列 -------------------------------
■配列を静的に記述
@array = (
[4,5,6],
[1,2,3],
);
■4を出力
print $array[0][0];
■一次元目の要素数
print scalar(@array);
■二次元目の要素数
#$array[0]は配列のリファレンスなのでそれを解釈しなくてはならない
print scalar(@{$array[0]});
■ループ処理
foreach $var1 (@array) {
foreach $var2 (@{$var1}) {
print $var2;
}
}
for($i = 0; $i < scalar(@array); $i++) {
for($j = 0; $j < scalar(@{$array[$i]}); $j++) {
print $array[$i][$j];
}
}
■二次元目の3番目要素でソート
@array = sort { $a->[2] <=> $b->[2] } @array;
----------------------- 連想配列 ---------------------------
■連想配列を静的に記述
%array = (
'a0' => {
'a00' => 'hoge0',
'a01' => 'hoge1',
'a02' => 'hoge2',
},
'a1' => {
'a10' => 'hoge3',
'a11' => 'hoge4',
'a12' => 'hoge5',
},
);
■hoge0を出力
print $array{'a0'}{'a00'};
■ループ処理
foreach $key1 (keys(%array)) {
foreach $key2 (keys(%{$array{$key1}})) {
print $key2;
print $array{$key1}{$key2};
}
}

※keysやvaluesの戻り値はランダムになる

特定ディレクトリ以下の文字コード・改行コードを一括変更

find /path/to/dir -name “*.pl” | xargs nkf -e -Lu –overwrite

findで/path/to/dir以下の*.plを検索してパイプとxargsでnkfに渡す

xargs=標準入力からコマンドラインを作成し、それを実行する

nkfのオプション

-e はEUCへ変換
(-s SJIS)
(-j JIS)
(-w UTF-8)

-Lu UNIX改行コード(LF)へ変換
(-Lw Windows改行コード(CR+LF)へ変換)
(-Lm Macintosh改行コード(CR)へ変換)

–overwrite は対象ファイルを上書き