2009年12月26日土曜日

最近、Mercurial について勉強しているのでメモ

リンクメモ
日本語チュートリアル
GUIツールのTortoiseHg
TortoiseHgの日本語Wiki
オラ本のPDFを配布してるとこ

2009年12月24日木曜日

Debian でIPアドレスを固定にする

/etc/network/interfacesを編集する
下みたいになっているのを
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

↓の様に直す(192.168.0.11)にする場合
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.11
netmask 255.255.255.0
gateway 192.168.0.1

直したら
#ifdown eth0
#ifup eth0
でおk
# /etc/init.d/networking restart
でもいけるがその場合は↓を書いておくこと(ifup -aの対象となる)
auto eth0

※VirtualPCではallow-hotplugはコメントアウトしておいた方がよさげ

参考リンク
http://asaasa.tk/wiki/?Debian%2FSettings%2FStaticIP

Bingで萌えキャンペーン

http://campaign.live.jp/bing/
検索しまくるとなんか壁紙とかもらえるらしい

2009年12月23日水曜日

mp3のエンコードが出来るプレイヤーみたいなソフトって??

SCMPXです

screenで開始するときの初期画面を表示しない

免責事項とかCopyrightとかを表示しないようにするには
~/.screenrcに
startup_message off
と書いておく

2009年12月20日日曜日

bashで端末ロック機能を解除する

Ctrl+Sを押すと端末がロックしてしまうのが不便だと感じたら
↓を.bashrcなどに書いておく
stty stop undef

参考リンク
http://www.mazn.net/blog/2007/12/17/42.html

rep2の過去ログをtmpreaperを使って整理

OpenJaneとかにはDAT落ちしたものを整理(削除)する機能があるけどrep2にはないのでtmpreaperで実装する
やり方はrep2/data直下にあるファイルはお気に入りとかなんで削除しない
それ以外は削除するっていう方法で行う

↓みたいなのをcronとかに保存しておけばいいんじゃないかな
#!/usr/bin/perl
use strict;
use warnings;

#### Initial Setting ###############
our $DAT_DIR="/var/www/rep2/data";
####################################

chdir ($DAT_DIR) or die $!;
unless ($DAT_DIR=~/\/$/){
$DAT_DIR.="/"; #最後が/で終わってなかったら付け足す
}
opendir (DIR,$DAT_DIR) or die $!;
my @dir=readdir DIR;
my @fdir;
for (@dir){
push (@fdir,$_) if -f $_;
}
closedir DIR;

my $command;
$command = << 'PRE';
nice -n10 tmpreaper --delay=30 --mtime-dir --symlinks 7d \
--showdeleted \
--mtime \
PRE
for (@fdir){
$command.="--protect '$DAT_DIR".$_."' \\\n";
}
$command.=$DAT_DIR.".";
system $command and die $!;

Debian LennyをVirtualPC2007へインストール

試した環境は以下の通り
VirtualPC 6.0.156.0
Debian Lenny 最小のCDイメージ バージョンは5.0.3

↓のサイトとかを参考にするとどうやらインストール時にパラメータを追加しないといけないらしいので
http://hiro-system.blog.ocn.ne.jp/blog/2009/03/debian_lennyvir_5b2e.html
インストール時にquit を取ってから"noreplace-paravirt vga=791 clock=pit"を追加する
(インストール時はまだ日本語配列ではないので=イコールのタイプには注意する)

参考リンクには/boot/grub/menu.lstを編集、update-grubするようなことが書いてあるけどなんかインストール時に指定したパラメータが有効になって既にmenu.lstに反映されていたので省く。あとGUIも使わないのでそこら辺も無視した。


参考リンク
Debian Wiki

2009年12月13日日曜日

2009年12月12日土曜日

携帯でrep2見てるときに外部リンクを通勤ブラウザ以外に設定する

通勤ブラウザは重いしイマイチ使い勝手が良くなかったのでGoogleのGWT(Google Wireless Transcoder)を使う
rep2/lib/ShowThreadK.php を編集すればおk
650行目あたりの
// 通勤ブラウザ
if ($_conf['k_use_tsukin']) {
$tsukin_url = 'http://www.sjk.co.jp/c/w.exe?y=' . urlencode($url);
if ($_conf['through_ime']) {
$tsukin_url = P2Util::throughIme($tsukin_url);
}
$ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">通</a>';
}
↑を↓の様に変更
// 通勤ブラウザ
if ($_conf['k_use_tsukin']) {
// $tsukin_url = 'http://www.sjk.co.jp/c/w.exe?y=' . urlencode($url);
$tsukin_url = 'http://www.google.co.jp/gwt/x?u=' . urlencode($url);
if ($_conf['through_ime']) {
$tsukin_url = P2Util::throughIme($tsukin_url);
}
// $ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">通</a>';
$ext_pre_hts[] = '<a href="' . hs($tsukin_url) . '">G</a>';
}


あとpic.toも画像変換に悉く失敗するので
携帯閲覧時、画像リンクにpic.to(ピ)を利用を「しない」にしておいた
(こうすれば外部リンクはここで指定したURLを使う)

2009年12月6日日曜日

メールをCUIで読むソフト mutt

インストールはDebian Lennyならaptitudeで簡単に入る
そんで使い方
基本的な使い方とかはこことか見れば大体分かる
Maildirを指定して
mutt -f ~/Maildir
これでとりあえず見れる
メールボックスとかは一々指定するのは面倒なので~/.muttrcを作成して
set folder="~/Maildir"
set spoolfile="~/Maildir"
set keep_flagged=yes
set mbox=""
set postponed="/tmp/postponed"
set sort="reverse-date-received"
↑みたいなのを書いておく意味はここら辺を見るとわかるかも
設定ファイルを書けば以降はmuttのみで起動できる

mutt操作方法
PageUpとPageDownで次とか後のメールを選択(vim風にjkでもできるけど削除が選択できない)
?でヘルプ
mで新規メール作成


参考リンク
http://www.emaillab.org/mutt/whatis.html

DovecotのTrashフォルダはどこにあるのか?

それぞれ~/Maildirの中のドットファイルでしたls -aしたら見つかります
/Maildir/.Sent
/Maildir/.Trash
/Maildir/.Drafts
/Maildir/.Junk

Windowsのコマンドプロンプト(DOS窓)でディレクトリ削除

ディレクトリごと再帰的に削除するには
rmdirコマンドを使います
UNIXでいうところのrm -rみたいな
rmdir /S /Q hogedir

参考リンク
http://sonic64.com/2006-04-05.html

Windowsのコマンドプロンプト(DOS窓)でディレクトリコピー

フォルダの再帰的なコピーには
xcopyを使いましょう
xcopy /?で詳しくみれます

例)E:ppmというディレクトリを再帰的に全部コピー
xcopy /E /I /Y E:\ppm D:\ppm_backup\ppm2

参考リンク
http://www5.ocn.ne.jp/~m-shin/windows/windows-bat-xcopy.html

perlモジュールを作るための雛形を作る h2xs コマンド

↓みたいな感じで雛形を作る
h2xs -X -A HogeModule

参考リンク
http://torus.jp/memo/x200311/PerlModule.rd.html

モジュールの最後にPODも追加してくれて便利

__END__
# Below is stub documentation for your module. You'd better edit it!

=head1 NAME

HogeModule - Perl extension for blah blah blah

=head1 SYNOPSIS

use HogeModule;
blah blah blah

=head1 DESCRIPTION

Stub documentation for Okyama, created by h2xs. It looks like the
author of the extension was negligent enough to leave the stub
unedited.

Blah blah blah.

=head2 EXPORT

None by default.


=head1 SEE ALSO

Mention other useful documentation such as the documentation of
related modules or operating system documentation (such as man pages
in UNIX), or any relevant external documentation such as RFCs or
standards.

If you have a mailing list set up for your module, mention it here.

If you have a web site set up for your module, mention it here.

=head1 AUTHOR

hogeuser, Ehogeuser@E

=head1 COPYRIGHT AND LICENSE

Copyright (C) 2009 by hogeuser

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.10.0 or,
at your option, any later version of Perl 5 you may have available.


=cut

2009年12月5日土曜日

定期的に/tmpを掃除してくれるソフトtmpreaper

Debian Lennyで試した。
Red hat系だとtmpwatchとかあるみたいだけど無いのでこれを使う
まずはaptitudeでインストール
インストールすると/etc/cron.daily/tmpreaperが作成される
これによって毎日cronで実行される

設定はこれをいじってもできるが基本的には
/etc/tmpreaper.confをいじる

まずはワーニングが出るので13行目あたりにあるSHOWWARNINGをコメント化する
#SHOWWARNING=true

次にオプションを設定する各オプションの意味は以下の通り

TMPREAPER_TIME・・・どのくらいアクセスがないファイルを削除するか?設定値はデフォルトで7dつまり7d以上アクセスがないと削除

TMPREAPER_PROTECT_EXTRA・・・削除しては駄目な名前を指定

TMPREAPER_DIRS・・・削除の対象とするディレクトリ デフォルトは/tmpのみ 複数指定するときはスペースで区切る 例)TMPREAPER_DIRS='/tmp/. /var/tmp/.'

TMPREAPER_DELAY・・・実行するまで待つ時間 デフォルトは256秒

TMPREAPER_ADDITIONALOPTIONS・・・他に指定したいオプションがある場合はこここに入れる他のオプションはmanを参照

あと/etc/cron.daily/tmpreaper見れば分かるけど
デフォルトで
以下のオプションが設定されている。ヤバイファイルは消えないようにしているようだ
--protect '/tmp/.X*-{lock,unix,unix/*}' \
--protect '/tmp/.ICE-{unix,unix/*}' \
--protect '/tmp/.iroha_{unix,unix/*}' \
--protect '/tmp/.ki2-{unix,unix/*}' \
--protect '/tmp/lost+found' \
--protect '/tmp/journal.dat' \
--protect '/tmp/quota.{user,group}' \


※注意
デフォルトのシェルだと--ctimeが設定されています↓みたいに
nice -n10 tmpreaper --delay=$TMPREAPER_DELAY --mtime-dir --symlinks $TMPREAPER_TIME \
$TMPREAPER_ADDITIONALOPTIONS \
--ctime \
これだとcronでlocateのDBを作っているので、アクセスタイムが更新され
いつまで経っても削除されません。(ctimeオプションはatime+ctimeのチェックをします)
用途によってはここを--mtimeに変更してもいいと思います

postfixでOP25B対策

OP25Bを実施しているISPの場合、25番ポートへの出力が制限されているからリレーしてもらうように設定する

/etc/postfix/main.cfを編集 (hoge.ne.jpがSMPTサーバーだとする)
ispauthはユーザー名とパスワードを書くファイル名前はなんでもOK
relayhost = [hoge.ne.jp]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/ispauth
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = cram-md5,login,plain
ispauthには以下のようなものを書く
[プロバイダのSMTPサーバー]:587 プロバイダのユーザーID:プロバイダのパスワード
サーバーがhoge.ne.jp、ログインIDがfoobar、パスワードがbuzzだった場合は以下のように書く
[hoge.ne.jp]:587 foobar:buzz

そんで以下のコマンド投入
chmod 640 /etc/postfix/ispauth
postmap /etc/postfix/ispauth
/etc/rc.d/init.d/postfix restart

参考リンク
http://centos.server-manual.com/postfix_op25b.html

smtp_sasl_mechanism_filterはそのSMPTサーバーが使っているものにあわせるのでそれを確認する
telnet hoge.ne.jp 587
EHLO hoge.ne.jp
↓みたいなのが出たら↑の設定でOK
250-AUTH CRAM-MD5 PLAIN LOGIN

参考リンク
http://www.aconus.com/~oyaji/mail2/op25b.htm


※注意 SMTP認証を使う場合はlibsasl2-modulesがインストールされていることを確認してください

どうしても出来なかったら↓みたいな感じでパケットキャプチャー→Wiresharkで見て考える感じで
tcpdump -s 1500 ip host ?.?.?.? -w out.cap

2009年12月1日火曜日

dovecotでQuota設定

メールの容量を制限する(クォータの設定)するには?
Plugin settingsの部分に以下を追記
↓がグローバルなクォータ設定(ユーザー個別に設定すればそちらが優先される)
参考リンク→http://wiki.dovecot.org/Quota/1.0
plugin {
quota = maildir:storage=10240:messages=1000
}

上記の設定後
protocol imapに次の文を追記
参考リンク→http://wiki.dovecot.org/Quota/1.0
protocol imap {
mail_plugins = quota imap_quota
}

Thunderbirdで試すとクォータが有効なら↓のようなメッセージが出る

で、クォータ当てただけじゃ不便だから古いメッセージから自動で削除してくれるように設定するにはTrashプラグインを使う
protocol imap {
mail_plugins = quota imap_quota trash
}
plugin {
quota = maildir:storage=10240:messages=1000
trash = trash = /etc/dovecot/dovecot-trash.conf
}

さっき指定したdovecot-trash.conf (無ければ作る) を編集する
↓はTrashだけ削除の対象とする例
1 Trash
↑のファイルを1行つくればOK

2009年11月30日月曜日

Windowsのソースコードのステップ数(目安)

こんな感じらしい
Windows NT⇒400万行
Windows 95⇒1,500万行
Windows XP⇒3,500万行
Windows Vista⇒5,000万行
http://blog.development-network.net/ung/2006/10/post_54.html

2009年11月23日月曜日

vim7の新機能omni補完について

インサートモードでCtrl+X Ctrl+Oでomni補完が出来るらしい
omnifuncってところで設定してるみたいだけどこれはファイルタイププラグイン呼ばれた時に設定されるらしいからあえてautocmdで呼ぶ必要もないみたい・・・
とりあえず今はサポートは以下の言語しかないみたい
C
(X)HTML with CSS
JavaScript
PHP
Python
Ruby
SQL
XML
ヘルプは以下のコマンドでどうぞ
:h new-omni-completion

とりあえず参考リンク
http://kaede.to/~canada/doc/vimeperlephpinoadhie
http://amix.dk/blog/viewEntry/19021

vimの日本語ドキュメント

香り屋さんのは有名だけど
他の人もヘルプの和訳をしているみたい
http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/

IMAPを使ってメールを送受信するときOutlookとThunderbirdで使用フォルダが違う

IMAPで送受信するとそれが違う風になってしまう
使用しているフォルダは下の設定画面の購読するフォルダを管理するから確認できる

↓がその画面


Thunderbird以外のメーラーで不要なディレクトリができてしまった場合は
最初の画面から不要なフォルダを右クリック→削除で削除できる

2009年11月22日日曜日

perlでWindows内のファイル属性の変更

使用方法はこんな感じで
#!/usr/bin/perl
use Win32::File;
Win32::File::SetAttributes("hoge.txt",READONLY);
使える関数は以下の通り
GetAttributes
SetAttributes
使える値は↓みたいなのがあるらしい(下はデフォルトでExport)
ARCHIVE
COMPRESSED
DIRECTORY
HIDDEN
NORMAL
OFFLINE
READONLY
SYSTEM
TEMPORARY



以下参考リンク
CPAN
http://search.cpan.org/~jdb/Win32-File-0.06/File.pm
紹介Blog
http://memo.freedom-lite.com/?p=187

スーパーマリオ63?っていうFLASHゲーム

これはすごいと思った
音楽とかはスーパーマリオ64のまんま
Super Mario63
http://www.freeworldgroup.com/games8/gameindex/supermario.htm

2009年11月19日木曜日

sshのポートフォワード専用アカウントを作ろう

まあ基本的にはrbashで制限付シェルのアカウントを作るだけ


参考リンク
http://blog.recyclebin.jp/archives/555

2009年11月15日日曜日

2009年11月11日水曜日

起動するデーモンの調整 sysv-rc-conf

sysv-rc-confというパッケージを使えば
起動するデーモンのON/OFF切り替えがGUIで可能です
perlのライブラリに依存しているようです・・・
Debian Lennyで試した

2009年10月29日木曜日

エア参拝

参拝しなくても京都に行って参拝したような気になるような感じがする
http://air-sampai.jp/

2009年10月24日土曜日

今日見つけた便利なソフト

CLISM
クリップボードの履歴機能を追加(つーかそれだけ。シンプルで良い)
http://ringonoki.net/tool/clip/cli.php

MDIE
タブ型ファイラー
http://cres.s28.xrea.com/soft/mdie.html

2009年10月18日日曜日

vsftpdをinetd経由で動かす

なんかネット探してもみんなxinetdで動かしてるからinetdでの動かし方をメモ

1./etc/vsftpd.confを以下のように変更
listen=NO

2./etc/inetd.confに以下の記述を追加 ※<args>の項は不要みたい

ftp stream tcp nowait root /usr/sbin/vsftpd

3.下記コマンドでinetdを再起動

/etc/init.d/openbsd-inetd restart
再起動/起動スクリプトの名前はopenbsd-inetdなので注意 前も書いたかも

あと最近はxinetdの方が主流みたいなので次はxinetdでやろうかな・・・
xinetdは単体でinetd + TCP wrapper(tcpd)の機能を持っているそうです

http://www.aconus.com/~oyaji/suse/vsftpd_suse.htm
http://www.express.nec.co.jp/linux/distributions/knowledge/network/xinetd.html

motdとmotd.tailの関係について(Debian Lenny)

/etc/motdは/var/run/motdへのシンボリックリンクです。
システムのboot時に/etc/init.d/bootmisc.shによって
uname -snrvm > /var/run/motd
[ -f /etc/motd.tail ] && cat /etc/motd.tail >> /var/run/motd
と、上書きされます。

つまり、再起動後も有効にしたい場合は/etc/motd.tailを直しましょう

http://www.debian.org/releases/etch/hppa/release-notes/ch-information.ja.html

2009年10月17日土曜日

/etc/crontabを修正したらcronデーモンの再起動は必要なの?

必要ないそうです。
さらに cron は 1 分ごとにスプールディレクトリ(または /etc/crontab ファイル)の最終修正時刻(modtime)をチェックし、もし変更されていれば、すべての crontab ファイルの最終修正時刻をチェックし、変更された crontab ファイルを読み直す。よって crontab ファイルを修正するたびに cron を再起動する必要はない。 crontab(1) コマンドは、crontab ファイルが変更されたかどうかにかかわらず、スプールディレクトリの最終修正時刻を更新することに注意せよ。

http://www.linux.or.jp/JM/html/cron/man8/cron.8.html

既定のプログラムを設定するupdate-alternativesコマンド

例えばデフォルトのエディターを指定するには
update-alternatives --config editor
って打ってリストから選択すればいいだけ

参考リンク
http://axela5004.blog74.fc2.com/blog-entry-298.html

バックスラッシュが表示されるフォント「さざなみフォント」

↓からどうぞ(sazanami)
http://sourceforge.jp/projects/efont/releases/

2009年10月12日月曜日

sambaでゴミ箱を設定する

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/734recycle3.html
↑を見ればだいたい分かるけど

[global]
vfs objects = recycle

[hoge]
recycle:repository = /var/samba/gomibako/
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = yes
recycle:maxsize = 0
hide files = /var/samba/gomibako/
※hide filesは隠しフォルダにするオプション

↑みたいに追加すればOK
後はゴミ箱のパーミッションを777にする


でも自動的に削除されないので・・・
削除できるようにする必要がある
cronとかに適当に↓とか登録しとけばいいんじゃないかな

#!/usr/bin/perl
use strict;
use warnings;
use feature qw(say);

#### Initial Setting #######################
our $gomibako_dir="/var/samba/gomibako/";
############################################

say "--- REMOVE GOMIBAKO (DIR = $gomibako_dir) ---";
chdir "/var/samba/gomibako/" or die $!;
system "du -cah $gomibako_dir";
system "rm -rf *" and die $!;

手軽で便利な画面キャプチャソフト

Rapture
http://www.geocities.jp/knystd/rapture.html

Linux(Debian)でログイン時に色々とメッセージを出す

・ログイン前の「login:」が出る時に表示されるメッセージを変更する場合→/etc/issue
・ログイン後に表示されるメッセージ(固定)を変更する場合→/etc/motd
・ログイン後に動的に表示したり設定を変更する場合→/etc/profile

2009年10月11日日曜日

perlの難読化ツール2 ppencode

前回の投稿では記号だけで表すってモジュールを紹介したけど、予約語だけでプログラミングってのもある
ソースとか説明は↓
http://namazu.org/~takesako/ppencode/

JavaScriptによるデモは↓
http://www.namazu.org/~takesako/ppencode/demo.html

動作原理についての説明は↓
http://d.hatena.ne.jp/masutaro/20080128/1201507016

perlの難読化モジュールAcme::EyeDrops

perlは記号だけでプログラミングが可能です。どうやるかはevalと論理演算を駆使すればできるらしい・・・
例えば・・・
「H」という文字列を作りたい場合は
 `←バッククォート 16進数では60
(←括弧 16進数では28
をXORですると・・・
16進数の48になります。。。
こんな感じでプログラミングしていくみたいです
print "`" ^ "(","\n";
↑をやればHと表示されるはず

参考記事
http://d.hatena.ne.jp/shinichiro_h/20061107

そんで、本題Acme::EyeDropsについて

これは上記のテクニックを使ってプログラムを難読化してくれるモジュールみたい
さっそく試す
1.ActivePerlならPPMでAcme-EyeDropsを検索してインストール
2.適当にperlソースを書く(ここではhoge.plとする)
3.以下のようにして吐き出させる
#!/usr/bin/perl
use Acme::EyeDrops qw(sightly);
print sightly( { Shape       => 'camel',
SourceFile  => 'hoge.pl' ,
Compact => 1
} );
このモジュールのすごいところはバイナリファイルだってAA化できちゃうってこと
詳しくはこちら

好きなShapeは
map_japan
map_world3
mongers
music
writing_perl
tpr
camel
あたり

2009年10月10日土曜日

Linuxのイースターエッグ

参考記事とかみて分かった。
aptitude -v moo
aptitude -vv moo
みたいにvを足していくと変なのが出る

あとはapt-get mooとか

2本のアームを使って敵を挟む→倒すゲーム

http://www.kongregate.com/games/xpndsprt/the-tickler

ザイーガ記事
http://www.zaeega.com/archives/50893498.html

2009年10月7日水曜日

2009年10月3日土曜日

2009年9月27日日曜日

2chのスレ中にどのレスが一番アンカーが付けられたか検索する

こんな感じでどうでしょうか?
単純に>>1をgrepすると>>10や>>100も引っかかることに注意

#!/usr/bin/perl
use feature qw(say);

open (FH,"input.txt") or die $!;
@list=<FH>;
close FH;
@list = grep {/\>\>\d+/} @list;

for (1..1000){
$num=$_;
$num='>>'.$num;
$coun{$num} = grep {/\>\>\d+/ and ($num eq $&)} @list;
}

for (sort {$coun{$b} <=> $coun{$a}} keys %coun){
printf ("%-5s => %03d\n",$_,$coun{$_});
last if $i++>=10;
}

転送量を測ってくれるソフト NetWorx

使用感は後日投稿

GIGAZINE記事
http://gigazine.net/index.php?/news/comments/20090926_networx/

2009年9月26日土曜日

rep2 機能拡張パックをLinux(Debian)にインストール

インストールはrep2と同じ
違うとところは「PEAR 詰め合わせ」を入れるくらい
やり方は↓

pear フォルダの中にある includes フォルダを rep2 フォルダに置く。
詳細なインストール方法はココを参照すれば分かる

その他 拡張版でのはまり所は↓
・AASを使うにはそれだけ有効にしても意味が無い アクティブモナーも有効にすること
有効にする箇所は以下のとおり(行の順番は適当)
/var/www/rep2ex/conf/conf_admin_ex.inc.php
// AAS による AA プレビュー(off:0, on:1)
$_conf['expack.editor.with_aas'] = 1; // (0)
// AAS(off:0, on:1)
$_conf['expack.aas.enabled'] = 1; // (0)
// {{{ アクティブモナー

// AA 補正(off:0, on:1)
$_conf['expack.am.enabled'] = 1; // (0)

// }}}
// {{{ 入力支援

// ActiveMona による AA プレビュー(off:0, on:1)
$_conf['expack.editor.with_activemona'] = 1; // (0)

// AAS による AA プレビュー(off:0, on:1)
$_conf['expack.editor.with_aas'] = 1; // (0)
あとDebianのaptitudeかなんあでmonaを検索 以下パッケージをインストール
ttf-mona
xfonts-mona
そしたら/var/www/rep2ex/conf/conf_admin_ex.inc.phpの以下のように修正
//TrueTypeフォントのパス
$_conf['expack.aas.font_path'] = "/usr/share/fonts/truetype/mona/mona.ttf"; // ("./ttf/mona.ttf")
//$_conf['expack.aas.font_path'] = "./ttf/ipagp-mona.ttf";

(多分、/usr/share/fonts/truetype/mona/mona.ttfにあるんじゃないかな・・・)

※あとphp5-gdにはImageRotateが定義されていません詳細は以下
なので90度回転が使えないません
http://dev.satake7.net/blog/2009/04/23/194/
http://d.hatena.ne.jp/rudeboyjet/20081007/p1

公式サイト
http://page2.xrea.jp/expack/

ライフルで狙撃するゲーム

FLASHゲーム マテリアルスナイパー

http://nextframe.jp/flash/matsnp/matsnp.html


ザイーガ紹介記事
http://www.zaeega.com/archives/50885912.html

2009年9月7日月曜日

2009年9月6日日曜日

2009年8月23日日曜日

Firefoxでタブのフォーカスを制御

リンクを中クリックで開いた時にフォーカスを移すかどうかの設定
browser.tabs.loadInBackground

これをボタンで切り替えてくれる拡張ないかなぁ・・・

なんか面白いシューティングゲーム

ポイントためてパワーアップも出来る
http://www.kongregate.com/games/x_boost/pixelvader

Firefoxの拡張「Add N Edit Cookies」が3.5に対応してない

待てない人は暫定的に↓のアドオンを使いましょう

https://addons.mozilla.org/ja/firefox/addon/13793

Firefox3.5にしたら最後のタブを閉じた時の挙動が変わった

前までは最後のタブを閉じてもウィンドウ自体は閉じられなかったのに、3.5にしてから閉じるようになってしまったようだ・・・
直し方は
about:config→browser.tabs.closeWindowWithLastTabの値をFalseに設定すればおk

あと設定したのはタブの閉じるボタンを非表示にする設定↓
browser.tabs.closeButtonsを2にする

参考サイト
http://d.hatena.ne.jp/takayukis/20090707/1246973796

3.5の新機能
http://mozilla-remix.seesaa.net/article/122559921.html
目玉の位置情報
http://mozilla.jp/firefox/features/geolocation/

JavaScript/JavaのON/OFFボタンを追加(Firefox)

その名もQuickJava
https://addons.mozilla.org/ja/firefox/addon/1237

参考リンク
http://paranoids.sakura.ne.jp/kaworu/2008-04-02-1.php

2009年7月24日金曜日

phaのニート日記

というサイト
ただのNEETじゃなくてすごいNEETです
http://d.hatena.ne.jp/pha/

あー仕事やめてぇ・・・

2009年7月12日日曜日

Personas for Firefoxのペルソナ(テーマ)を自作してみる

↓に書いてあった
http://people.mozilla.com/~cbeard/personas/designers/

ヘッダー画像(横3000px、縦200px)
フッター画像(横3000px、縦100px)
ならなんでもいいみたい

試しにけいおんのヘッダー画像作ってみた


参考リンク
窓の杜記事

Firefoxのテーマを手軽に頻繁に変えたい

そんなときは↓のアドオンが便利かも
Personas for Firefox

http://people.mozilla.com/~cbeard/personas/ja/about/

2009年7月5日日曜日

2009年6月21日日曜日

Mozilla Firefoxがやってる新サービスコレクションを試した

前回のコレクションを試してみた。

コレクションの作成はアドオンコレクターという拡張で自動同期、自動作成みたいなのが出来るらしいが、日本語に対応していないためリンク先が英語版Mozillaになるのでやめて手動で作った。
https://addons.mozilla.org/ja/firefox/collection/6c3bd701-a85e-0ab0-45de-1a484a974cac?sortby=name

↑のアドオン集に含まれてないものとして
ニコニコ動画ダウンローダーがある

2009年6月20日土曜日

PerlのIDEで有名なもの

* EPIC
* PerlBuilder
* PerlComposer
* Perl Editor
* Perl Express
* Open Perl IDE
* OptiPerl
* Zeus

Perl ExpressはApacheとの連携とか出来て良い感じだった。
日本語回りは駄目だが・・・
http://japan.zdnet.com/news/devsys/story/0,2000056182,20361311,00.htm

2009年6月16日火曜日

Firefoxの新サービス コレクション

窓の杜記事

自分のお気に入り拡張をまとめて公開できるみたなサービスだそうです。

ちなみにMozillaのサイトでユーザー登録してアカウントを取得しないと作成できないみたいです。→公式サイト

2009年6月15日月曜日

perlのourについて

ちょっとあやふやにしてる部分があったのでメモ

1.ourを使うとそのレキシカルスコープ内では完全修飾を
しなくてもアクセス可能(use strict時の話ね)
2.結局はグローバル変数の定義です
3.ourの有効範囲はレキシカルスコープなんでパッケージも越えてしまう

#!/usr/bin/perl -l
use strict;
use warnings;
{
my $test=10;
print $test;
{
our $test=20;
print $test;
}
print $test;
}
print $main::test;





参考リンク
http://perldoc.jp/docs/perl/5.10.0/perlfunc.pod

2009年6月14日日曜日

今日みつけたvimサイト

http://sites.google.com/site/fudist/Home
いつか読む

Windows Liveのサービスの一つ

クリーンアップセンター
http://onecare.live.com/site/ja-jp/center/cleanup.htm

結構早くなったような気がする

※ファイルの圧縮系はチェックを外したほうがよさげ

sonb32drv.dllってウィルスに感染してた

/(^o^)\ナンテコッタイ
つーことで対処法
とりあえずC:\WINDOWS\system32\sonb32drv.dllを削除
つーかこの話って2008年の6月くらいの話です・・・
どんだけウィルススキャンさぼってたんだ(;・∀・)


↓はググって分かったこと
・感染経路は?
どうもXREAの広告らしい
感染はFlash Playerの脆弱性により行われる
バージョンが9.0.124より古いと危ないとのこと
http://d.hatena.ne.jp/soundwing/20080614

・ウィルスの活動は?
IEの場合
C:\Documents and Settings\ユーザー名\Local Settings\Temporary Internet Files\
あたりにtaa.gifを作成後orz.exeという実行ファイルに展開されるそうです
場所は%Temp%\orz.exeかな?
http://www.symantec.com/ja/jp/security_response/writeup.jsp?docid=2008-052714-3021-99&tabid=2
→対処方はtaa.gif、orz.exeを消す

sonb32drv.dllを作成されます
→対処方はsonb32drv.dllを消す

C:\WINDOWS\system32\drivers\etc\hostsを削除されます
→対処方はhosts.msnをコピーしhostsにリネームする
まあhostsファイルはデフォルトでlocalhostしか書いてないので以下の内容のファイルでもok
127.0.0.1 localhost


以下のレジストリを追加されます
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
→対処方は上記のレジストリを削除
http://www.trendmicro.co.jp/vinfo/virusencyclo/default5.asp?VName=TROJ_GAMETHIEF.M&VSect=Sn

・被害は?
このプログラムはキーロガーのようです
プレイオンライン、mixi、Windowsメッセンジャーなどのアカウントハック
に遇うかもしれません・・・・


・その他の情報
カスペでは
Trojan-PSW.Win32.Nilage.djl
という名前らしい

Flashのバージョンを上げると勝手に削除してくれるぽい
sonb32drv.dllを削除してくれる場合があるらしい
http://qanda.rakuten.ne.jp/qa4097191.html
その所為なのか自分の環境には↓のレジストリが既に無かった
HKEY_CLASSES_ROOT\CLSID\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}
↓はあった(汗
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks\{F60A0B68-AF3A-C1D2-CD09-5A81AE36D2BA}

まあ直接は関係ないけど
レジストリの掃除にクリーンアップセンターを使うとかね
(上記のレジストリは削除できませんでしたw)
http://onecare.live.com/site/ja-jp/center/cleanup.htm

2009年6月11日木曜日

vimで開いたファイルに日本語が無かった場合の挙動を制御

vimで
set fileencodings=utf-8,ucs-bom,cp932,ucs-2,euc-jp
↑を書いておくと上から順に判定してくれる。ただしこう書いておくと困ることがある
日本語を含まないファイルを開くとUTF-8でfencしてしまう。(:eで新規作成するファイルはencの値を使われるので問題ない)
つーわけでスクリプトで解決する。
ずんwikiに日本語判定スクリプトがあったので参考にする
ただし、このスクリプトには問題があってsearch関数はカーソル以下を検索するのでカーソル前に日本語があっても見逃してしまう
例えば下記の例で3行目にカーソルがあると日本語なしと判断してしまう

aaa
ああああ
hogehoge←カーソル


こんな感じで書くといいんじゃないでしょうか
" 日本語を含まない場合は fileencoding に encoding を使うようにする
function! AU_ReCheck_FENC()
let l:c=line(".")
normal gg
if search("[^\x01-\x7e]", 'n') == 0
"let &fileencoding=&encoding
set fenc=cp932
call cursor(l:c,1)
endif
endfunction
autocmd BufReadPost * call AU_ReCheck_FENC()

2009年6月10日水曜日

perlで定数を宣言するには?

1.use constantモジュールを使う

#!/usr/bin/perl
use constant TEISU => 777;
use constant {
HOGE => 'あああ',
HAGE => 'いいい'
};

2.型グロブとリファレンスを駆使して上書き禁止の変数にする

#!/usr/bin/perl -l
*TEISU=\777;
*KENSAKU=\(quotemeta 'てすと');
print $TEISU;

参考リンク
http://www2u.biglobe.ne.jp/~MAS/perl/waza/const.html
http://chaichan.web.infoseek.co.jp/perlnote/perlnote2008-03-153.htm
http://www.rfs.jp/sb/perl/02/02.html#TRY!%20%E5%AE%9A%E6%95%B0%E3%81%AE%E5%AE%A3%E8%A8%80

2009年6月9日火曜日

Linux(Debian Lenny)で電源ボタン押下時の設定をする

ふと、Debian稼動中に電源ボタンを押したらキチンとしたシーケンスでシャットダウンされたのでそこら辺の設定ってどうなってるのよー?って思ったのでメモ

/etc/acpi/events/powerbtn
ってファイルで設定できるみたいね
詳しくは以下のサイトを参照下さい

http://www.watanet.org/~chihiro/index.cgi/linux/ubuntu/20090210_ubuntu-powerbtn-hibernate.html

2009年6月8日月曜日

mmfの着メロを作ってダウンロードしたい

以下、やり方
1.適当に音楽を選びwavファイルを作成
2.ここからSSC-MA3-SMAFをダウンロード&インストール
3.えせ着うたフロントエンドSMAF版をダウンロード&インストール
4.適当に作成する
5.サーバーにアップロードする 最近の機種はObjectタグが使えるのでめんどくさいCGIを用意しなくてもいいみたい ↓あたり参考にどぞ
http://www.au.kddi.com/ezfactory/tec/dlcgi/download_1.html
http://www.au.kddi.com/ezfactory/tec/spec/wap_tag5.html
6.サーバにmmfをアップロード
ファイルへのリンクはこんな感じで

<object data="data/keion.mmf" type="application/x-smaf" copyright="no" standby="down">
<param name="disposition" value="dev4anm" valuetype="data" />
<param name="size" value="134669" valuetype="data" />
<param name="title" value="タイトル名" valuetype="data" />
</object>

あと.htaccessにこんなの書いとくといいのかな
AddType application/x-smaf .mmf

ちなみにW43Kは目標サイズを150にするといいみたいだ

2009年6月7日日曜日

今更ながらYankRingを入れてみた

長いことvim使ってるくせに知らなかった・・・OTZ
つーことでインストールしてみる -> YankRing
基本的な使い方は
1.適当にyyとかでコピーする
2.適当にyyとかでコピーする(以下省略
3.pで貼り付け前の履歴を貼り付けたかったらCtrl-Pを押す、次の履歴を貼り付けたかったらCTRL-Nを押す

知らなきゃ駄目そうなコマンドは以下の通り
YRClear → ヤンクリストのクリア
YRShow → ヤンクリストの表示
YRToggle → YankRingの有効/無効の切り替え

設定しておくべき変数は以下の通り
g:yankring_max_history → ヤンクリストの履歴保持数
g:yankring_ignore_duplicate → ヤンクしたときに重複行を追加するか否か 1は重複した行を追加しない
g:yankring_clipboard_monitor → クリップボードをモニタリングするかどうか これが1だとCtrl-Pとか押した時に"*バッファの内容も表示される



参考リンク
http://nanasi.jp/articles/vim/yankring_vim.html

2009年5月31日日曜日

サクラエディタを起動時に常駐したくなった

そんなときは
スタートアップに
"C:\Program Files\sakura\sakura.exe" -NOWIN
を追加しておくと良いでしょう

MPC(Media Player Classic)についてのまとめ

派生とかいろいろ分からなくなるのでここでまとめておく

・本家本元(ただしもう更新されなくなっているので原則使わない)
http://sourceforge.net/projects/guliverkli/

・本家からちょっと修正された版(DownLoad→Media Player Classic6.4.9.1をどうぞ)
http://sourceforge.net/projects/guliverkli2/

・MPC Home Cinemaという派生版 いろいろ機能追加されている
http://mpc-hc.sourceforge.net/

オマケ 便利なコーデックパック→CCCP

2009年5月9日土曜日

2chの発言数まとめ

すずめ
http://stats.2ch.net/suzume.cgi

vim7.2にしてからExploreの様子がおかしい

なんかx:execが使えないことに気づいた

よく分からないので昔使ってたvim7.1(香り屋版)で試す

使える

オプションを見直す

どうやらset shellslashが悪さしてるっぽいのでsyntax/netrw.vimの頭にsetlocal noshellslash
を追加して直す

んーvim7.1ではshellslashを有効にしてても使えたのになんでだろう・・・
まあ直ったからいいか

Perlパッケージに含まれる便利なツール郡

http://www.linux.or.jp/JF/JFdocs/LFS-BOOK/appendixa/perl.html

これに加えWindows版のPerlにはpl2batというperlスクリプトをbatファイルにするツールがあります

2009年4月26日日曜日

perlでDBMファイルを取り扱う

最近はtieという関数を使うらしい・・・


#!/usr/bin/perl
use feature qw(say);
use SDBM_File;
use Fcntl;
tie (%HA,'SDBM_File',"test",O_RDWR|O_CREATE,0644);
%HA=(one=>1,two=>2,three=>3);
while ( ($a,$b)=each %HA){
say "$a -> $b";
}
untie %HA;


参考リンク
http://www.lr.pi.titech.ac.jp/~abekawa/perl/perl_bigdata.html
http://perldoc.jp/docs/perl/5.10.0/perltie.pod
http://www.ecopig.jp/comucale/dbm.htm
http://search.cpan.org/~nwclark/perl-5.8.9/ext/SDBM_File/SDBM_File.pm

NetTransportを入れるとIEのダウンロードの挙動が変わる

Q.IEのダウンロードを横取りしてしまうのですがどうすればいいのですか?
A.ドロップウィンドウかタスクトレイのアイコン右クリックして
 ブラウザの監視のチェック外せばいいだけです。

だそうです

参考リンク
http://www.wikihouse.com/windows/index.php?Net%20Transport

2009年4月19日日曜日

PDFのパスワードを解析するソフトpdfcrack

Debian(lenny)のレポジトリにありました。
aptで簡単インストール。

使い方は
pdfcrack hoge.pdf

みたいに使う

途中でCtrl+Cで止めてもカレントディレクトリにsavedstate.savが出来るから
また再開したいときには
pdfcrack -l savedstate.sav hoge.pdf

みたいな感じで

参考リンク
http://gigazine.net/index.php?/news/comments/20090219_pdfcrack/

2009年4月4日土曜日

2009年3月30日月曜日

perlで良く使うモジュールNet::HTTP

ここでメモっておく
use Net::HTTP;
my $s = Net::HTTP->new(Host => "www.perl.com") || die $@;
$s->write_request(GET => "/", 'User-Agent' => "Mozilla/5.0");
my($code, $mess, %h) = $s->read_response_headers;

while (1) {
my $buf;
my $n = $s->read_entity_body($buf, 1024);
die "read failed: $!" unless defined $n;
last unless $n;
print $buf;
}

CPANリンク
http://search.cpan.org/~gaas/libwww-perl-5.825/lib/Net/HTTP.pm

2009年3月22日日曜日

flvをサーバー側で再生する

JW FLV MEDIA PLAYERというのがおすすめ


↓みたいなウィザード形式でコードも出してくれる親切設計
http://www.longtailvideo.com/support/jw-player-setup-wizard?example=1

コンソールの設定をする setterm

前回も話したけどその続き、
前回までの課題はログインしないとsettermを実行できないこと
実行前にsettermするにはDebianだと"/etc/console-tools/config"を修正する

BALNK_TIME=N (N:0-60: 放置してから画面を暗転させるまでの分数)
BLANK_DPMS=on (画面の省電力モードをサスペンドモードにセット *1)
POWERDOWN_TIME=N (N:0-60: 暗転してからモニタの電源を切るまでの分数)
(*1 BLANK_DPMS=powerdown とした場合サスペンドモードを経由せずBLANK_TIMEで設定した時間でモニタの電源断)

だそうです。





参考リンク
http://blogs.yahoo.co.jp/debilman01/860916.html

smbmountの話

Debianだとそのものずばりのコマンド名のパッケージはないので
smbfsをインストールする
http://www.millionwaves.com/200604140613.html

そんで適当にマウント
smbmount //192.168.0.2/ボリューム\ \(D\)/bakup /mnt/ -o guest

guestを指定してやればパスワードのプロンプトが出ない


http://www9.samba.gr.jp/project/translation/3.0/htmldocs/smbmount.8.html

パスワードがあってプロンプトを出さない方法は↓
ユーザー名が smb
パスワードが hoge
なら
smb%hoge
あるいは
username=smb,password=hoge

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21439&forum=10&2

perlのモジュール・・・名前空間の話

ちょっとウヤムヤにしておいたけどここで理解しておこう
まあつまり
use Module::hoge (LIST)
ってやってLISTにインポートしたい関数を書いておきなさいというわけですな


参考リンク
http://adiary.blog.abk.nu/0148
http://d.hatena.ne.jp/perlcodesample/20090205/1232879205
http://perldoc.jp/docs/perl/5.10.0/perlmod.pod

Windowsの共有ファイルにperlでアクセスするには

普通にopen,opendirが使えるみたい

open (FH,"//192.168.0.11/share/hoge.txt");
opendir (DIR,"192.168.0.11/share");


まあ目的はローカルにあるファイルを共有フォルダへコピーだったので
こんな感じで

use File::Copy;

$dir='//192.168.0.11/share/';
copy $backup_filename,$dir;

WebDAVの設定をDebian lennyでやってみる

前回とちょっと違う部分があったので補足を含め書きます。
1.a2enmodで必要なモジュール読み込む
a2enmod dav
a2enmod dav_fs

2.httpd.confに↓みたいに書いとけばok
そんでまあcalってディレクトリ作ってパーミッションとか777にしとけば
まあ間違いないだろう

Dav On
Options Indexes
AuthType Basic
AuthName "input webdav password!"
AuthUserFile "/etc/apache2/passwd"
Require valid-user
Order allow,deny
allow from all


3.ロックファイルやらうんちゃらは
/etc/apache2/mods-enabled
にある
dav_fs.conf
で定義してあるから別に書かなくてもおk

3.5.Windowsのネットワークプレースでの確認方法は
ネットワークプレースの追加→ウィザード開く→基本次へで進む→アドレスに↓を記述してOK

http://hogehoge.com:8000/cal/
↑アドレス   ↑WebDAVが有効なディレクトリ


4.thunderbirdにlightningって拡張いれて
新しいカレンダーでも作ってごにょごにょすれば良いですよ

参考リンク
休日カレンダーICS
http://www.mozilla-japan.org/projects/calendar/holidays.html

vimのtips2

"自動整形の実行方法を決める
"改行後もコメントとするかとか
"set formatoptions?

"コマンド結果をリダイレクト
":h :redir

"キーコード(特殊文字) Ctrl+k 押してからキー押すと
"名前を挿入できる
":h key-codes

"タブをスペースに変更
"set expandtab
"retab

" テキストファイルに固有の設定を
" 残す
"h modeline

"プラグイン、固有の設定ファイル
"boxes
"diff.exe
"all colors pack
"txt.vim -> $VIMRUNTIME/syntax/txt.vim
"MRU.vim
"skeleton.html

"テキストに対し固有の設定を書く
"マッピングなどはmodeline使えないため
"autocmd BufRead ~/デスクトップ/kara.txt set nonu |
" \nnoremap j gj| nnoremap k gk


"ステータスラインを長さによって表示項目変更
":function STline()
"if winwidth(0) >= 120
" set statusline=%<%f\ %m%r%h%w%=%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}\ \ %2*%y%0*%6l,%c%V%1*%8P
"else
" set stl&
"endif
":endfunction
"
"autocmd VimResized * call STline()

2009年3月21日土曜日

TMTOWTDIの話

there's more than one way to do it
略して
TMTOWTDI
perlのスローガン
意味は「やり方はいくらでもある」みたいな

うーんためになる
よくアドレスを忘れるからメモ

努力、忍耐、謙遜 (Larry Wall)
http://www.oreilly.co.jp/BOOK/osp/OpenSource_Web_Version/chapter10/chapter10.html

2009年3月20日金曜日

gvim (vim)で半透明にしたり、常に前面ウィンドウにしたり

っていうのはVimTweakっていうDLLを使えばいいらしい

透明度の調整
:call libcallnr("vimtweak.dll", "SetAlpha", 200)
:call libcallnr("vimtweak.dll", "SetAlpha", 255)


常に前面ウィンドウ
:call libcallnr("vimtweak.dll", "EnableTopMost", 1)
常に前面ウィンドウの解除
:call libcallnr("vimtweak.dll", "EnableTopMost", 0)

参考リンク
http://liosk.blog103.fc2.com/blog-entry-148.html

2009年3月8日日曜日

squidを設定する時に気をつけること・・・

なんか色々みたけど難しくてよー分からん。

↓くらい気にしとけばいいんでないの

・メモリ領域 (cache_mem)
・メモリに置くオブジェクトサイズ (maximum_object_size_in_memory)
・HDDに置くサイズ (cache_dir)
・HDDに置くオブジェクトサイズ(maximum_object_size)
・オブジェクトサイズの平均値(store_avg_object_size)
・速いDNSサーバー( dns_nameservers )

あとはcachemgr.cgiとか参照してください(debianだとsquid-cgiパッケージに同梱)

perlでリターンキーを待たずにキーのデータを一つ読み取るには?

Term::ReadKeyを使えばいいらしい

使い方:

ReadModeで読み方を指定 引数は0~5のどれか
0・・・元々の設定に戻す
1・・・普通のモード
2・・・1と同じだがechoされない(自分が入力したものが見れないからパスワード入力などに使える)
3・・・cbreakモード Ctrl+Cで止めるとかできる
4・・・rowモード Ctrl+Cで止めるとか無理。改行コード変換はしてくれる。
5・・・4と同じだが改行コード変換はしてくれない。(Windows環境では4と5は同じ)

ReadKeyで読み込む 引数は0、-1、0より大きい値のどれか
0・・・getc見たいに1文字よみます(引数省略時のデフォルト)
-1・・・ノンブロッキングリード
引数>0・・・引数秒だけwaitし、時間になったらundefを返す


#!/usr/bin/perl

use Term::ReadKey;
print $Term::ReadKey::VERSION;
print "\n";
ReadMode 3;
while (1){
$char = ReadKey(5);
last if not defined $char;
printf ("%1s is %X ",$char,ord $char);
print "\n";
}




参考サイト
http://search.cpan.org/~stsi/TermReadKey/ReadKey.pm
http://perldoc.jp/docs/perl/5.10.0/perlfaq8.pod
http://www.jp-z.jp/perlmemo/IF_Term-ReadKey.html

2009年3月2日月曜日

squidをweb経由で設定する

squid-cgiをaptかなんかでインストールしてください
そんでsquid.confにある
cachemgr_passwd
あたりを参照して適当に設定してください
あとは
http://自分の鯖/cgi-bin/cachemgr.cgi

あと/etc/squid/のなかにあるcachemgr.confのポート番号も直すこと
あとアクセスリストとか・・・↓参照で・・・

でおk

参考リンク
http://swkoji.blog63.fc2.com/blog-category-8.html
http://perltips.twinkle.cc/server/squid_cachemgr.php

2009年3月1日日曜日

sambaの設定でmaskがうまくいかない

create mask = 777
ってしても実行権限が外れてしまう・・・

でも、そういう仕様らしい
↓参考
http://roserogue.blogspot.com/2007/08/create-mask775.html

2009年2月28日土曜日

perlのワンライナー

よく忘れるのでメモ

↓は普通の使い方

perl -e 'print "hello"'


↓test.txtの中身を表示 -nオプションは
こんな感じの意味
while (<>) {
... # your program goes here
}

perl -ne 'print' test.txt


↓test.txtの中身を表示 -pオプションは
-nの最後にプリント文をかます様なイメージ

perl -pe '' test.txt


ライン処理を追加する(print文の後に改行+<>後にchmop)

perl -lpe '' test.txt


-iオプションは対象のファイルを上書きする
注意するのは-iはその後に変更前のファイル名を取るので
まとめないこと(-ipleは駄目)
上がtest.txtの頭に行番号を付加する
下が変更前のtest.txtをtest.txt.backとして残す

perl -i -ple 's/^(.*$)/$.$1/' test.txt
perl -i.back -ple 's/^(.*)/$. \: $1/' test.txt


参考リンク
http://blog.livedoor.jp/dankogai/archives/51026593.html
http://perldoc.jp/docs/perl/5.6.1/perlrun.pod
http://www.google.co.jp/

2009年2月22日日曜日

ちょっとsshの鍵認証についてまとめておこうか

設定は/etc/ssh/sshd_config

下は推奨設定
AllowUsers hogehoge
Port 443
PasswordAuthentication no
PermitRootLogin no
PermitEmptyPasswords no


ssh-keygen -t rsa
で作る
/home/hogehoge/.ssh/id_rsaに保存
パスフレーズも決める
id_rsa 秘密鍵
id_rsa.pub 公開鍵

公開鍵(id_rsa.pub)は
~/.ssh/authorized_keys
にリネームする
秘密鍵はクライアントに転送

クライアントがLinuxの場合は
~/.ssh/id_rsa
と置く

クライアントがWindowsの場合は
puttygen.exeを起動Loadを押して
id_rsaを読み込ませパスフレーズを入力→
変換後はprivatkeyとして保存(ppkファイル)

ログインの際は
ssh -p 2200 hogehoge@hoge.com
みたいな感じ
id_rsa(秘密鍵)を指定する場合は
ssh -p 2200 -i hoge.rsa hogehoge@hoge.com
みたいにする

参考URL
http://www.jitaku-server.net/ssh_crypto.html
http://kazmax.zpp.jp/linux/lin_sshrsa.html

debian lennyを入れたらpstreeどっかいった

つpsmisc

コンソール環境でモニタの電源を切るには

Debian Lennyで試した
ディスプレイを自動的にきる設定
$ setterm -powersave on -powerdown 1
とかしておくといいらしい

あと↓も必要だと思う
$ setterm -blank 1

起動時に自動的にこの設定をするにはこちら

参考リンク
http://osdir.com/ml/linux.debian.jp.user/2004-02/msg00035.html
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/251stopconsuspnd.html

2009年2月21日土曜日

perlの数値回りのはなしー

printf "%u\n",~0;

チルダ+0で上限値が出る?みたいね
まあCOBOLで言うところのHIGH-VALUEみたいなもんか

追記
上限値が出るっていうかあれです
ビット演算のビット反転効果があったみたいですね
http://www.rfs.jp/sb/perl/02/bit.html


参考リンク
http://questionbox.jp.msn.com/qa2174949.html
http://perldoc.jp/docs/perl/5.8.8/perlop.pod

HttpWatch Basic Edition

公式サイト

機能多くて全部使い切れないけどなんかすごい



参考サイト
http://gigazine.net/index.php?/news/comments/20090218_httpwatch/

2009年2月15日日曜日

perlでプログレスバー的なものを作る

ポイントは$lと\rです。
$|・・・出力をバッファリングするかどうか(0以外はバッファリングしない。つまりprint文は直ぐ出すということ)
\r・・・キャリッジリターンまあ頭にカーソル戻すよーみたいな意味


#!/usr/bin/perl
$max=125;
$split=50;

$| = 1;
$ps=int($max/$split+1);
for (1..$split){
print "[","=" x $_," " x ($split-$_),"]";
print "\r";
sleep 1;
if ($_==$split){
print "[","=" x $split,"]\n";
exit;
}

}


参考リンク
http://perl.g.hatena.ne.jp/bosh/20080107/p1
http://www.geocities.co.jp/SiliconValley-Sunnyvale/6128/perl/evalue.html

2009年2月7日土曜日

perlでSJISマッチング

/\Qあああああ\E/

みたいに\Qと\Eで挟むと良いらしい・・・
まあ何でかと言うと\Qと\Eの間はメタ文字を打ち消す効果があるからだけど
http://saboten009.blogspot.com/2008/02/perl.html

perlで今実行しているファイル名を調べる

実行中のプログラム名(ファイル名)
を参照する特殊変数は?
$0っていう変数で出来るお

#!/usr/bin/perl
print $0,"\n";

2009年2月2日月曜日

lessとかページャーの設定メモ

lessのエンコードを指定する変数LESSCHARSET


export LESSCHARSET=dos


そんでデフォルトのページャーを変更する
export PAGER=less



参考サイト
http://d.hatena.ne.jp/n-kaneshige/20081202/1228194177

2009年1月24日土曜日

NetTransportでwebラジオ(ストリーミング)ダウンロード

mms://hoge.com/003h.wsx
↑みたいなURLを探す

1.新規ダウンロード
2.スレッド分割数を1に設定
3.その他の設定→ストリーミングタブ→HTTPストリームにチェック


ちなみにリジュームできるよ

2009年1月12日月曜日

vim 特定のファイルだけファイルタイプの検出を無効化する

特定のファイルが検査されないようにするには、g:ft_ignore_pat 変数を使います。こ
の変数はデフォルトで次のように設定されています。 >
:let g:ft_ignroe_pat = '\.\(Z\|gz\|bz2\|zip\|tgz\)$'
この設定は圧縮ファイルを検査しないようにしています。


だそうです。

2009年1月11日日曜日

vim tipsとか見るといいな

そんなわけでなんか今日調べたtipsを書いておく

そのライン全てを小文字/大文字に変換
guu
gUU


カーソル下にあるファイルを開く
gf


vimrcの環境変数
$MYVIMRC
$MYGVIMRC


なんか計算結果を挿入したいとき以下は5x5の結果を挿入
挿入モードで以下のように入れる
Ctrl-R=5*5


合字をいれるときに使う(挿入モードで)
<C-K><S-Space>(キー2つ)と入力することで、文字列"<S-Space>"が入る
Ctrl-k


参考リンク
http://labs.gmo.jp/blog/ku/2007/05/vimorg_tips.html
http://vim.wikia.com/wiki/Best_Vim_Tips

perlでファイルハンドルを切り替えたいとか

そういことがたまにあるはず
そんな時はuse FileHandle;が良いですよ
こんな感じで使うんだ
#!/usr/local/bin/perl
use FileHandle;
print "Which write file? (a or b)\n";
$in=<STDIN>;
chomp $in;
my $fh = new FileHandle;
if ($in eq "a"){
$fh -> open(">a.txt");
}
elsif ($in eq "b"){
$fh -> open(">b.txt");
}
else{
print "No File!!\n";
exit 0;
}
print $fh "foo bar!\n";
$fh -> close();


STDOUTとファイルぐらいの切り替えならこんな感じでselect使うのもありかもね
print "Write Result? (y or n)\n";
$input_keyboard2=<STDIN>;
chomp $input_keyboard2;
if ($input_keyboard2 eq "y"){
open (FH2 ,">res.txt");
select FH2;
}

デフォルトの出力に戻すには
select STDOUT

2009年1月4日日曜日

よくCMでみかける会社のキャッチコピー

日立       Inspire the Next
東芝       Leading Innovation
松下       idea for life
三菱電機     Changes for the Better

2009年1月2日金曜日

apache2 なんかのファイルをダウンロードさせたいとき

.htaccessにこう書けば良いんじゃないかな

↓はbatファイルをダウンロードさせる場合
当然ブラウザ依存ですハイ
AddType application/octet-stream .bat

foobarでIcecast2に音楽配信→でも音割れ

どうする?

答え)
Library→Configureから下の画面のPrempのdBを変更すればいいんだよ~(=ω=、)

このBlogのテンプレートを変更するには?

Blogger使って長いけどテンプレート(CSS(どこで編集すんだろなーってことでちょっと調べたら出来たのでメモ
そんで
1.上のバーからカスタマイズ
2.HTMLの編集
3.テンプレートを編集
4.中にある↓の辺を注目
/* Posts
-----------------------------------------------
*/
5..post blockquote {に下の2行を追加
background: #a2c2e6;
border: outset thin #d8e0d0;

おしまい

ほらね引用文の見た目が変わったよ↓

てst
てst
あああああ
いいいいい

ubuntu8.10のsambaについて

なんか/etc/samba配下の設定漁ってもGUIで設定した箇所について書かれてないなーと思ったら
/var/lib/samba配下にあった
なんでだろうね まあそういうことです