kopug memo

名古屋で働くとあるWebエンジニアの覚書。

2007-01-01から1年間の記事一覧

自前でyumリポジトリを作成

# yum install createrepo # createrepo -v /path/to/el5/RPMS # vi /etc/yum.repos.d/el5_local.repo [local] name=EL5 baseurl=file:///path/to/el5/RPMS enabled=1これでおしまい。 http経由で落としたければ適当にapacheの設定とかすればok

共有メモリの変更方法

■ とりあえず # echo '4294967295' > /proc/sys/kernel/shmmax■ しっかり # vi /etc/sysctl.conf kernel.shmmax = 3221225472/sbin/sysctl -p

memcachedを使ってみるの!!

PHP

■ インストール編 ミジンコは素直にyumです。 # yum install php-pecl-memcacheこれでmemcached本体も入ります。 でmemcachedを起動 $ memcached -d -m 128 -p 11211128M確保で11211ポートで待ちうけPHPのサンプル connect('localhost', 11211) or die ("Cou…

レプリケーションしてるならアプリ側で生成しないと

now() とか ランダムとか、SQLサーバ側で生成されるものを、レプリケーション対象サーバに、 クエリ送ると整合性とれなくなるので注意。各々のサーバで生成された値が必ずしも一致しないため。(当たり前だけど)

正規表現でスペースは\sじゃないよ。

めんどいからコードと実行結果を。 $ vi hoge.php$ php hoge.php ok$ vi hoge.pl#! /usr/bin/perl -w use strict; my $str = "abc\r\n"; print $str =~ /\s/ ? "ok" : "ng"; $ perl hoge.pl okいかん、ずっと勘違いしとった。。

Apache 2.2.6 を RPM化してインストール

■ Apache2.2.6を取得 $ sudo su - # cd /usr/local/src # wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.6.tar.gz # tar zxf httpd-2.2.6.tar.gz■ apr をRPM化してインストール # cd httpd-2.2.6/srclib # cp apr/build/rpm/apr.spec.in …

symfonyをインストール

PHP

# pear upgrade PEAR # pear channel-discover pear.symfony-project.com # pear install symfony/symfonypear install symfony/symfony # symfony -V symfony version 1.0.6

MRTGでHDDの温度も見る

# /usr/sbin/smartctl -A /dev/hda | grep Temperature | awk '{print $10}' 33こんな感じでHDDの温度を知ることができるのですが、 これをMRTGにAddしちゃいました。 # vi /usr/local/bin/hddtemp.sh#/bin/sh /usr/sbin/smartctl -A /dev/hda | grep Temper…

CentOS5で無線LANの設定をしてみる

※ kernel の バージョンは 2.6.18-8.1.8.el5■1 デバイスの種類をたしかめる # lspci 2:08.0 Ethernet controller: Intel Corporation 82801DB PRO/100 VE (MOB) Ethernet Controller (rev 83) 02:0b.0 Ethernet controller: Atheros Communications, Inc. AR…

yumを使って、ライブラリファイル名からパッケージ名を探す

http://d.hatena.ne.jp/omomom/20070722/1185046080 またエラーがでました。さっきよりは進んだけど、今度はlibnet.hがないといってますね・・・。 yumのレポジトリから探せればいいんですが・・・。 id:omomomさん。こういう事ですか? # yum whatprovides …

TracもいいけどredMine良いんじゃないかな?

http://demo.redmine.org/ 特徴としては、、 Tracと同じようにsvnに対応 初めからマルチ言語対応 複数のプロジェクトに対応 次の機会にいれてみよう。=追伸 今日Vmwareに入れてみた。 Tracってたしかローカルにsubversionのリポジトリを必要とするけど、 red…

ある一定時間、経過しているファイルを削除したい

sessionファイルであったり、ファイルのアップロードのゴミであったり、 テンポラリ的なファイルをある一定時間を経過していたら削除したいという場合に便利なコマンド。RedHat系OSの場合: /usr/sbin/tmpwatch 240 /tmp240時間アクセスされていない/tmpのフ…

tarコマンド

圧縮 $ tar zcvf /home/kopug/tmp/test.tgz /home/tomyhero/hogeと書いた場合、test.tgz を回答すると、そのカレントディレクトリ内に "home/tomyhero"とかディレクトリを作ってしまう。 今回欲しいのは単純に "/home/tomyhero/hoge"だけ。それでこうする $ …

PEAR SOAPをインストールしてみる。

PHP

$ sudo pear install SOAP No release with state equal to: 'stable' found for 'SOAP'安定版がない。これpearの公式みてきたけど全バージョンがbetaなんだよね。 仕方が無いので、フォースインストール $ sudo pear install -f SOAP Warning: SOAP is stat…

今更だけどApache1.3系のインストール

# cd /usr/local/src # wget http://www.meisei-u.ac.jp/mirror/apache/httpd/apache_1.3.37.tar.gz # tar zxf apache_1.3.37.tar.gz # cd apache_1.3.37 # OPTIM="-O2" ./configure --prefix=/usr/local/httpd1.3 \ --sysconfdir=/etc/httpd1.3/conf/ \ --l…

Formで同名のキーで複数の値を受け取る場合

PHP

<input type="hidden" name="hoge" value="1" /> <input type="hidden" name="hoge" value="2" /> <input type="hidden" name="hoge" value="3" /> 欲しい結果は下 array(1) { ["hoge"]=> array(3) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "3" } } しかし実際に取れるのは1番したのhiddenの値のみ。(3) すぐ調べたら分かったんだけど、name="hoge[…

[PHP] use strict; use warnings; の代わりに使ってみる。

今月から PHPer(っていうの?)になったので、ちょっと勉強中。 2006年5月5日初版のPerl/CGI辞典という書籍では [参考] strict プラグマは厳密すぎるため、通常のプログラミングではあまり使用しません。 らしいんだけど、私はstrictのついていないソースは怖…

InnoDBを含むテーブル全部をバックアップ

へっぽこ氏へ。http://opentechpress.jp/developer/article.pl?sid=07/05/31/0155233&from=rss ここで紹介している Zmanda Recovery Manager for MySQL とかどうですか?

Catalystのソースを見ていたら二項演算子スライスを使ってハッシュの初期化をしていた

Catalyst::Dispatcherを見ていたら二項演算子(Multiplicative Operators)スライスを使ったハッシュの初期化をみつけた。 @{ $self->registered_dispatch_types }{@classes} = (1) x @classes; で、これを分かりやすく変えると下記のようになります。 use Dat…

mod_perlで同じパッケージ名だけど中身が違うスクリプトを使いたい

これ以前どうやるのか悩んだのでメモっとく。MyApp というパッケージ名があって、httpd.confはこんな感じだった。 # Set up your Catalyst app as a mod_perl 2.x application in httpd.conf PerlSwitches -I/var/www/MyApp/lib # Preload your entire appli…

Cache::Funky in Catalyst

id:tomyheroにCatalystでCache::Funkyをどう使うんだ?と聞かれた。 ま、正直どう使うのが正解なのか良く分からないんだけど、modelで実装してみた。 package MyApp:Web::M::kopugDB; use strict; use base 'Catalyst::Model::DBIC::Schema'; use NEXT; __PA…

Task-Catalystをインストールした時に入ってきたモジュール一覧

昨日インストールしたばかりのCentOS5に cpan install Task::Catalystを実行した時に入ってきたCPANモジュールのリスト。 Algorithm-C3-0.07.tar.gz AppConfig-1.64.tar.gz Archive-Tar-1.32.tar.gz Archive-Zip-1.18.tar.gz Array-RefElem-1.00.tar.gz Auth…

CentOS5をインストールしてそれからのちょい設定をまとめてみた

相変わらずインストールするのが好きなid:kopugなわけで、Ubuntuに引き続きCentOS5をインストールしたので、 インストール後の基本設定をまとめてみた。(1) CentOSのインストール。チョイスしたアプリは"エディタ"と"開発環境"のみ。 (2) 一般ユーザの作成 #…

Cache::FunkyでCacheの管理をしようじゃないか。

先日CPANに"Cache::Funky"というモジュールをUPしてみた。 名前だけだとCache関係ぽいのは伝わるけど、それ以上は分からないのでちょっと説明。Cacheと一言でいっても、Cache::Fileを使う方法からFastMapだったりMemcachedだったりStorage先は色々。 また、C…

動的サブドメインをApache側で処理をする

id:tomyheroの記事にも紹介してある方法なので、そこにとりあえずリンクを。 動的バーチャルホスト実はこれ、id:tomyheroが貸してくれた"LINUXサーバHACKS"にそのまんま書いてあるのは内緒。

成長したければ環境を整える ≒ 環境が人を成長させる

先週の土曜日にid:tomyhero家で"Newbiethon"なるものが実施された。 その内容は下記の通り。 ・カレーをご馳走になる ・無線LANの設定をする ・無線LANの設定をする ・無線LANの設定をする ・無線LANの設定をする ・無線LANの設定をする ・無線LANの設定をす…

Catalyst::Plugin::ConfigLoader::Multi

id:tomyheroにPODを書いてもらいました。 やっぱ英語がすらすら書けるってのは羨ましい。 てことでCPANにUploadしておきました。 Cache系のModuleも今書いてます。 もうじき早朝5時ですがな。orz

18歳以上の生年月日チェック

splitのほうが速度的によさそうなので変更。(これくらいじゃ大差ないけど) sub static_birthday { my $date = shift; my $args = shift; # この年齢以上じゃないと登録できない。 my $over = $args->{over} || 18; return 0 unless &static_date( $date ); …

Gmailちっくな拡張アドレスを利用する方法

postfixの場合は、/etc/main.cf に以下を追加(もしくはコメント削除) recipient_delimiter = - <- デフォルトは +(例) kopug-hogehoge@domain.com -> kopug@domain.com kopug-1234@fomain.com -> kopug@domain.com に転送。ちなみにqmailの場合は .qmail-de…

TT2 syntax

id:tomyhero氏がvim syntaxの紹介してたけど、~/.vim/after/filetype.vim augroup filetypedetect au BufNewFile,BufRead *.tt2 setf tt2html augroup END これだとspでも色変わったぽい。