Apr 02, 2009

さらに実験

自動でbrタグが入るかどうか。
テストです。
あれ?
@http://www.shimirin.net/index.html
ぼくのところはpluginsの相性の問題でうまくいかないかな。
test

Posted at 00:21 in n/a | WriteBacks (0) | Edit

Apr 01, 2009

記入日時を編集しても変わらないようにします

「エントリファイルの更新時刻を保持する」ようにしてみます。
テストです。 22:47ごろ記入。

22:56ごろ記入。うまくいくかな。

うまくいった!

さらにbrタグを自動的に追加するpluginを入れた。
どうかな?
ぼくのはほかのpluginとの相性でうまくいかない部分もあるかも。

Posted at 22:45 in usage | WriteBacks (0) | Edit

Apr 26, 2008

istanbulの再インストール

Debian GNU/Linuxをsargeからetchにupgradeした後、istanbulを使っていなかった。
istanbulはデスクトップセッションをビデオで記録するツールである。
このblosxom blogの書き方の説明をするビデオを作ってみる。
作ったあとのリンクは後ほど、入れることにする。

08_04_26_ba

このページを作る様子をistanbulで記録したビデオを下のリンクから見ることができる。

blosxom blogの使い方(08年4月26日flv作成)

Posted at 23:03 in usage | WriteBacks (0) | Edit

Feb 11, 2008

linux-imageがupgradeされるとき

1月23日付でDebian GNU/Linux etch は2.6.18-5-686から2.6.18-6-6-686にupgradeされた。
kernel-imageという呼び方はなくなり、linux-imageになっている。
Linux debian 2.6.18-6-686 #1 SMP Wed Jan 23 03:23:22 UTC 2008 i686 GNU/Linux
これに伴い、upgradeする際にnvidia-kernel-legacyもupgradeする必要がある。
以下のようにすると、linux-image-2.6.18-6-686も引きずられてupgradeされて、nvidiaデバイスドライバは再ビルドされて、「m-a m-i nvidia-kernel-legacy-source」を実行する必要がないことがわかった。ただし、これはlegacy varsionの場合なので、新しいカードならlegacyがついていないPackageをインストールする。

#apt-get install linux-headers-2.6.18-6-686
#apt-get install nvidia-kernel-legacy-2.6.18-6-686

これで再起動するとkernelもnvidiaデバイスドライバもupgradeされている。
初めてnvidiaデバイスドライバを使うときには、
nvidia-glx-legacy
nivdia-kernel-source
をインストールしておく必要がある。また、glxinfoを取得するためにetchからは「mesa-utils」が必要になっている。

Sep 01, 2007

captchaによるwritebackの画像認証

コメントに画像認証を導入を参考にして、captchaによる画像認証をこのblosxom blogに導入した。

1 3つのpluginをblosxomのpluginディレクトリに入れる。

新しく入れるpluginは、captchaとinterpolate_fancy、error(名前を00errorにしておく)の3つ。
このうち、captchaとerrorはBill Wardさんのサイトから入手できる。
interpolate_fancyは、blosxom :: the zen of blogging :: pluginsから入手できる。このサイトに行った際、字が小さいのでブラウザの「編集」から「このサイトを検索」で、interpolateを検索するとすぐ見つけられると思う。

2 captcha画像を一時的に保存するディレクトリを作る(captcha pluginにある説明参照)。

3 captchaとwritebackを書き換える。

captchaは、画像を保存するディレクトリ(permissionは707か777で、captchaというディレクトリを作成する)とアクセスできるURLを指定して書き換える必要がある。通常変更箇所は2カ所
次にblosxom starter kitの場合には、writback pluginに1行を挿入する。挿入するコードはcaptchaに書いてあるが、場所はJcodeで文字コードをコンバートするブロックのすぐ下(カーリーパーレンの下、print行のすぐ前)。

4 error.htmlというflavourを作る。内容は最低「$error::msg」を書く。

5 blosxom starter kitでは「foot.htm」に「captcha」に出ているformを参考にコピーアンドペーストする。

Jan 27, 2007

apt-get upgradeが途中で止まる

普通のエラーを吐く停止でない場合は、いろいろと対処の仕方があるが、今回「事前設定しています」というので止まった。
xserver-xfree86である。
synpaticでupgradeできるものはしてしまい、xserver-xfree86だけが残った。apt-get upgradeは全部やろうとするので、このコマンドラインではaptがハンブアップしているように見える。
今回初めて、GUIのsynpaticを起動してみたのは、危険でない作業からやらなければと思うから。
システムより自分を疑う、ということ(^^)。
それで、最終的にapt-get removeから、xserver-xfree86を再インストールするといういやな感じをもったが、なにしろ、このソフトには大量のものが依存していて、インストール状態にも問題がない。
それで最近何をやったかと考えたが、lameをインストールしたぐらい。
これは依存していないので関係ないだろう。
それでシステムを再起動してみた。
すると、こないだマウントして失敗したデジカメのプロセスが残っていた(かもしれない)。
ここからは「たぶん」だが、xserver-xfree86の関係するプロセスが残っていたので、事前設定がうまくいかなかった感じ。
それで、再起動後apt-get upgradeを実行すると何の問題もなく、すべての作業が終わった。
この2、3日インターネットで調べていたが、こういう件は見つからなかった。
エラーを吐かないapt-get upgradeの停止は、「たぶん」ハードウエア認識プロセスが残っているせい「かもしれない」。

Posted at 09:55 in n/a | WriteBacks (0) | Edit

Nov 26, 2006

Linux、FreeBSDで使えるサウンドボード その2

昨日のより、こちらのほうが見つかりやすいかもしれない。
現在、FreeBSDマシンで使っている。

b06_11_26a

Trade Name Creative Labs ModelNumber:CT4750

Nov 25, 2006

Linux、FreeBSDで使えるサウンドボード

秋葉原のジャンクパーツの、サウンドカードから「宝」を探す。
これは300円で買ったもの。
このラベルをプリントして、買うときに参考にするといいと思う。
なお、検証したのは、Linux kernelの2.6系とFreeBSD Release5.4。

b06_11_25a



下の写真では小さく「MODEL:CT5800」と印字してある。

b06_11_25c

Jun 13, 2006

ホームディレクトリのbinにPATHを通す

単純にホームディレクトリのbinにPATHを通したいとき、どうするか。
たぶん、長期的にPATHを通したいのは、ホームディレクトリにある「bin」のみだとする。
結論から先に書いてしまうと、

「.bashrc」ファイルの最後の行に、
export PATH=/home/shimirin/bin:$PATH
と書いてしまうことだ。

理由は、loginシェルからは「/etc/profile」と「~/.bash_profile」が実行され、「/etc/bashrc」と「~/.bashrc」は実行されない。
たいていbashはX11から起動するので、その場合は「/etc/bashrc」と「~/.bashrc」からbashが実行される。Debian GNU/Linuxでは、すでに「.bash_profile」は「.bashrc」があればそれを実行するように書いてある。つまり「.bashrc」にPATHをexportする記述をすればいい。
コロンの後の$PATHはここまで設定されているPATHなので、これに、「/home/shimirin/bin」を加えるということになる。

Posted at 08:45 in n/a | WriteBacks (0) | Edit

May 18, 2006

kernelのupgrade時、nvidiaデバイスドライバを再ビルドする

「apt-get upgrade」でkernel-imageの新しいのが「保留」されるときは、

#apt-get -u dist-upgrade

とやれば、grubも書き換えられて新しいkernelで起動させることができるが、ここでnon-freeコンポーネントのnvidiaデバイスドライバを使っていた場合、新たにモジュールをビルドしなければならない。
この際、画面にプロンプトが見えない場合には、モニタのメニューで調整して見えるようにしてから、jfbtermを起動して日本語表示にする。
#jc
そして、
#m-a a-i nvidia-kernel-source
とすると、kernel-headersがない、と言われるので、upgradeされるバージョンのヘッダをインストールする。
#apt-get install kernel-headers-2.6.8-3-686
としてから上のコマンドを実行すると、ビルドされる。
前にnvidiaデバイスドライバをインストールしていれば、
nvidia-glx
はインストールされていて、「/etc/X11/XF86Config-4」の「Generic Video Card」の「section "Device"」の欄はすでに、
Driver "nvidia"
になっているはずであるが心配だったら調べる。
これで再起動すると「nvidia」のロゴが最初に表示されて正常にXが起動される。

Apr 02, 2006

blogの日本語エンコーディング

b2evolutionとMyscrapbookを試した。
両方ともPHPとMySQLを組み合わせたblogである。
両方文字コードはUTF-8。
灰皿町のPHPコードとMySQLのデータはいちおうEUCにしてあるので、PHPコードも保存するデータもEUCにするのがほんとうはピュアだ。
しかし、なんとなくUTF-8でやったほうがよさそうであるので、以下の内容の「.htaccess」ファイルを作り、UTF-8を使うようにした。

php_value default_charset UTF-8
php_value mbstring.language Japanese
php_value mbstring.internal_encoding UTF-8
php_flag mbstring.encoding_translation On
php_value mbstring.http_input auto
php_value mbstring.http_output pass

この設定は、このファイル「.htaccess」を置いたディレクトリ以下で、「php.ini」より優先される。
唯一問題は、phpmyadminでデータを表示するときにutf-8を選ばなければいけないことだが、どうもEUCより日本語の問題があまり出ないような気がする。
このblosxom blogはUTF-8でスクリプトは書かれていて、データもUTF-8であるが、スクリプトもデータも、perlのCGIのみで完結するエンコーディングなので、ためらいなくこの設定にできる。
こんどb2evolutionでUTF-8を使ってみて、PHPを使うときにもそんなにデータのエンコードの違いを恐れることはないように感じてきた。

Mar 11, 2006

MySQLでのLIKEとREGEXPの挙動

MySQLの保存文字エンコードがEUCで、PHPスクリプトがEUCである。
これで検索スクリプトを作っていて、パターンマッチング演算子「LIKE」を使っていたのだが、どうも変な感じでヒットする。たとえば魚へんの「鱒」で「鱗造」がヒットしてしまうのだ。これが長い文字列なら問題ないので、まあいいかと思っていて、ふと正規表現によるパターンマッチング演算子「REGEXP」を使ったらまったく問題なく検索されることがわかった。
つまり、
$sql .= " WHERE (bbs_msg LIKE '%".cnv_sqlstr($key)."%')";
ではなくて、
$sql .= " WHERE (bbs_msg REGEXP '".cnv_sqlstr($key)."')";
を使えば問題ない。
内部エンコードがutf-8でスクリプトがutf-8なら「LIKE」でも問題がないかもしれないと想像する。ウチのMySQLはEUCでインストールしているので試せない。

Mar 02, 2006

MySQLのデータベースからデータを抽出する

PHPなどとMySQLの連携だと、MySQLの文法の学習も必要になる。
またにわか勉強(^^)。
下の記事で作ったデータベースとテーブルから、投稿記事の多い順に書き手の方々を抽出する。それも100件以上書かれた方(自分含む^^)を。
書き手でグループ化して、その書き手の書いた数を「as」で名前をつけて、それで並べる。
mysql> select count(bbs_auth) as cnt,bbs_auth from gs_book group by bbs_auth having count(bbs_auth)>=100 order by cnt desc;
+------+------------------+
| cnt | bbs_auth |
+------+------------------+
| 1449 | 清水鱗造 |
| 1078 | 冨澤守治 |
| 525 | 桐田真輔 |
| 448 | mitsui K&T |
| 414 | A・T |
| 285 | TISATO |
| 238 | 河合民子 |
| 210 | 木村 |
| 196 | 関ofuji |
| 164 | tomizawa |
| 122 | ぺこ (¨*)(*¨) |
| 121 | (*''*)peco! |
| 106 | (*''*)peco! |
+------+------------------+
13 rows in set (0.10 sec)

Feb 23, 2006

MySQLのデータベースにBBSのログファイルをインポートする

データベースとPerlないしPHPの連携は、進化するwebページに必須のことのようだ。
そこで、試しにBBSのログファイルをデータベースにインポートしてみた。
まずMySQLにBBSというデータベースを作り、そこに、gs_bookというテーブルを作る。
これはPhpmyadminから実行した。

CREATE TABLE gs_book (
id int(11) NOT NULL,
bbs_date text NOT NULL,
bbs_auth text NOT NULL,
bbs_mail text,
bbs_msg text NOT NULL,
bbs_ip text NOT NULL,
PRIMARY KEY (id)
);

この場合、どうしてもPRIMARY KEYを設定する必要があるので、ログの各行に通番をふる。しかも通常の順とは逆に古いものを若い番号にする。
これは、perlでやる。

open(LOG,'logfile');
@all=<LOG>;
$num=1;
while($gyou=(pop @all)){
print $num,'|',$gyou;
$num++;
}

区切り子は、各ログファイルで違うが、<>が多いようだ。ぼくの場合はこの区切り子をviで|に直してしまったが、その必要はないかもしれない。
mysql -uroot -pパスワード --local-infile=1
を実行する。
この「--local-infile=1」は重要である。ぼくもなぜかはわからないが(^^)。これをいれないとエラーになる。
つづいて、

mysql>use BBS;
mysql> load data local infile './logfile' into table gs_book
-> fields terminated by '|'
-> lines terminated by '\n';

を実行する。
なおテキストファイルからのインポートは、Phpmyadminからもできる。
これでPerl DBIを使っていろいろできるし、BBSのログを全部リアルタイムでデータベースに送ることもできる。

Feb 17, 2006

Perl CGIでメールアドレスをエンティティ化する

掲示板などでメールアドレス収集ロボットに捕捉されないようにするには、まず、
HTML::Entities モジュールをCPANからインストールして、
スクリプトに、
use HTML::Entities;
と書いたうえで、メールアドレスの保存に次のサブルーチンを通す。
sub entitiy{
$email=(encode_entities($_[0] ,"\x00-\xff"));
}
試しに右のリンクの「灰皿町ゲストブック」に使ったらうまくいった。
まだ巷の掲示板ではエンティティ化は行われていないようだ。灰皿町では徐々にメールアドレスの表示にエンティティ化された文字列を使うようにしていきたい。

May 2017
Sun Mon Tue Wed Thu Fri Sat
 
     

Search

Categories
Archives
Syndicate this site (XML)

Powered by
blosxom 2.0
and
modified by
blosxom starter kit

新規投稿