Latest Entries

Perl 購入した本

新版Perl言語プログラミングレッスン入門編新版Perl言語プログラミングレッスン入門編
(2006/10/21)
結城浩

商品詳細を見る
Perlの本を沢山購入してしまいましたが、一番分かりやすくてかつためになったのはこの本です。丁寧に問題を解いていけば、一通りの知識は身につきます。
おすすめです。

Perl ファイルコピー

use File::Copy;
copy("from_file", "to_file");

一度に複数コピーはこんな感じ。

use File::Copy;

for ($i=5;$i<50;$i++){
copy("old.cgi", "new$i.cgi");
}

ファイル名に連番ついてコピーされる。

Perlのお勉強

諸事情で諸々勉強をいちからやり直すことに。
で以前はプログラム言語はPHPがとっつきやすく、勉強をしていたのだが、しばらく職場を離れてみて思案してみた結果もう一度Perlを基礎から勉強してみることにした。
ギークと言われる方々が能弁にノウハウを語ってらっしゃるのが以前から気になっていたし、(小飼氏もPerl書きだ)仕事に直結した技術がありそうなのも魅力だからだ。また職場に一応PHPがかける人がいるので、そっちのノウハウは緊急性がないというのも理由のひとつでもある。

そんなわけで↓の本を購入。
プログラムは人生的にやっては挫折…の繰り返しなのだが今回でそれは辞めたい。
例によって"Helllo World!!"から始めていますw
誰か一緒に勉強しましょ。。。


基礎 Perl (IMPRESS KISO SERIES)基礎 Perl (IMPRESS KISO SERIES)
(2009/04/03)
山田 祥寛

商品詳細を見る

Apacheで特定の場所にcgiの実行権限を与える

諸事情により、最近勉強した知識、特に技術系の知識の記憶がブっ飛んでしまった…

なので全て一から記憶しなおし。。。

<Directory "/var/www/cgi-bin">
Options +ExecCGI
AddHandler cgi-script .pl .cgi
</Directory>

↑場所は環境によりますので適宜変更してください。

あ〜あ、全て憶えなおしか…あまりにもたるい。。。

で久しぶりにネットサーフィンしてたらWordPressを使った自動更新の情報が目に入った。
面白そうだ。いじってみようかな?

viのコマンドをすっかり忘れていた…

最近、特定の作業でしかviを使っていなかったので、基本的なコマンドを忘れてしまっていた。

忘れないようにメモ

複数行のカット&ペースト

例えば15行目から42行までをカットし5行目にペースト

:15,42 m 5

mは「move」の意味。shellと混同して何度も「mv」と入力していた。。。いかん、いかん。。。

CentOS5.3 インストールにハマる…

久々にPCを購入。EeePCでHD160GB、CPU1.66GHz。
なのでこいつを自鯖にしてやろうと企んだが、少しはまったのでメモ。

勉強も兼ねて、久しぶりにCentOSをいじってみてみることにする。VMWare Playerでシコシコインストールしたのだが、sshでの接続確認はすぐできたものの、FTP、HTTPの接続がどうやってもできない。

しばし考えたが、設定は全て合っている筈。外部から外部からポート確認をしてみたが、sshの22番は開放確認できるものの、FTPの20,21,番、HTTPの80番が開放していないと出る。

何度もルータを再起動したりしたが、解決せず。

そこで色々ググってみて、どうやらSELinuxとファイアーウォールが初期設定で有効になっていると生じる現象みたい。SELinuxの状態を確認してみると、

[root@centos ~]# getenforce
Enforcing ← SELinuxが有効になっているので下記で無効化する。

[root@centos ~]# setenforce 0

[root@centos ~]# getenforce
Permissive ← SELinuxが無効になっている。

システム起動時にSELinuxが起動しないように設定する。

[root@centos ~]# vi /etc/sysconfig/selinux
SELINUX=enforcing

SELINUX=disabled

SELinuxはよく分からないし、あまり興味が沸かないので使わずに運営することにする。
次にとりあえずファイアーウォールをOFF。

/etc/rc.d/init.d/iptables stop

こちらも起動時に有効にならないようにした。

chkconfig iptables off

iptablesは勉強しながら少しずつ設定することにする。

以上の設定を施してhttp,ftpにアクセスしてみると、あっさりアクセスを確認できた。

あー疲れた&時間をロスしてしまった。



FreeBSD make install

またまたFreeBSDにアプリを入れた時に障害が。
諸々アプリを追加する必要が出てきたのでportsから入れていたのだが、Aというアプリを入れているとBというアプリがコンフリクトするとのアラート。Bを削除してAを入れるとインストールできたのだが、今度はCをインストールする時にBがないとアラートが出てBを改めてインストールするとAとコンフリクトするからAを削除しろとアラートが出る。随所でこんなんが発生して、必要なアプリを入れられない状態で立ち往生…

ここ最近、このサーバをいじろうとすると、大抵こんな感じになり頓挫してしまう。
このサーバは友人の事務所にあり、急に運営を頼まれてから書籍・ネットを漁りながら何とか運営しているのだが当初拍子抜けするくらい稼動に問題がなかったから楽観視してた。

make コマンドのマニュアルを調べてみると、-k というオプションで強制インストールができるよう。
やけになって全て -k オプションでインストールしてやった。。。

こういうのが後の依存関係の不具合を生むのだろうが、もうええわ。。。

とりあえず目的のアプリは全てインストール。今のところ安定稼動中。

FreeBSD ports からアプリをインストール

portsからアプリをインストールする時の諸々。

cd /usr/ports …portsに移動

パッケージの検索

make search name='hogehoge'
make search key='hogehoge'

インストール

make install clean

インストールしたパッケージのパスを通す

インストールした場所で rehash

インストール時のオプション設定の確認

make showconfig

インストール時のオプション設定しなおし

make config

アンインストール

make deinstall

再インストール

make reinstall

CentOS snort FreeBSD

CentOS5.3にsnortをインストールした。
これが結構手こずった。一番やっかいだったのがsnortdが起動しないということ。
less /var/log/messages
で見てみるとFATAL ERRORが出ている。ルールファイルのcheck flowができない様子。
キリがないので該当するルールファイルのパスをsnort.confからコメントアウト。
恐らくいいやり方ではないがとりあえずこれにて起動はできて、pingテストしてみるとちゃんと検出される。

ブラウザから閲覧できるようにし、Oinkmasterでルールファイルを自動更新する設定に。

一応設定が終わったので、最近稼動しなくなったFreeBSDのsnortの修復を試みる。。。

アンインストールしてみても「インストールされてないよ」とアラートが出る。
ならばと新規インストールしてみるとheimdalとkrb5がコンフリクトしてるという。。
krb5を削除すると依存パッケージのpostgresqlが入らないし、新規インストールしてもコンフリクトは変わらず。heimdalを削除しても同様の現象が。
ならばとpostgresqlのソースを持ってきてインストしようとするが、コンパイル時にエラーが出る。。。
「mysql_query」がどうてらこうてら。

むむむ、いったいどうすりゃいいのか。いっそ連休時にでもOSそのものをインストールしてやろうか?

いや、あまりにもかったるい。。。

CentOS ネットワークの設定

CentOSのネットワーク設定に関するメモ。

全般的な設定…/etc/sysconfig/network

ネットワークの再起動…service network restart

ルーティングの確認…route

IPアドレスの設定…/etc/sysconfig/network-scripts/ifcg-<デバイス名>

DNSサーバの指定…/etc/resolv.conf

Drupal

ひょんなことからCMSのDrupalをいじることに。
CMSってのはContents Managing Syatemとかいうもので、比較的簡単に高機能なサイトが構築できるプログラムモジュール群。

とりあえずインストールしてみたが、サクっと入った。今まで使ったことあるCMSと比べても段違いに簡単だ。そんでもってちょこちょこモジュールをいれてみる。
本日いれたのは

・image
・img_assist
・jquery_update
・potx

の4つ。色々いじって遊んでたらなんかすごーくいいアイディアを思いついた。
早く誰かに話したくてしょうがない。

>>WEB系ランキング

追記を表示

vi(vim) 操作メモ

久しぶりにviの操作を書籍を読んで復習。うーむ、、、深い。
忘れないようにメモ。

テキスト追加 a …カーソルの後ろから入力
A …カレント行末より入力 = $a
i …カーソル位置より入力
I …行の先頭位置より入力 = 0i

テキスト変更 cw …単語の末尾まで
c2b …2語前まで
c$ …行末まで
c0 …行頭まで
cc …行全体を変更

テキスト変換 s …一文字を変換
S …行全体を変換
~ …大文字と小文字を変更

テキスト検索置換
:s/new/old/ …カレント行のnewをoldに変換
:s/new/old/g …カレント行内全てのnewをoldに変換
:1,$ s/new/old/g …ファイル内全てのnewをoldに変換
:%s/new/old/g …同上
:s/new/old/gc …確認しながら置換
:g/pattern/s/new/old/g …patternがある行のnewをoldに変換

\U …置換コマンド 全て大文字に変換
\u …置換コマンド 単語の先頭文字を大文字に変換
\l …置換コマンド 全て小文字に変換
\L …置換コマンド 単語の先頭文字を小文字に変換

テキスト削除 d
dw …単語単位での削除
db …上記逆方向単語単位での削除
de …単語の末尾までだけの削除
d0 …行頭までの単語単位での削除
d$ …行末までの単語単位での削除 =D
dd …行単位での削除
x …1文字単位での削除 >>WEB系ランキング

追記を表示

FreeBSD 特定の時間にシステム終了

特定の時間にシステムを終了するコマンド。

#shutdown -h +10 …10分後にシステム停止。

#shutdown -h 0903220745 …2009年3月22日7時45分にシステム停止。

shutdownコマンドは通常root権限で実行。

FreeBSD Apache Mysql FTP デーモン 自動起動

ここ数日、FreeBSDのApache Mysql FTPが自動起動しないという事態に陥っていた。

色々いじくって少々時間がかかったがようやく原因判明。

/usr/local/etc/rc.cd/以下の起動スクリプトを見るとなぜか自動起動しないサービスの拡張子が消えていた。

ls -l

apache2 mysql-server proftpd

なのでそれぞれコピって拡張子.shをつけた。

ls- l

apace2.sh mysql-server.sh proftpd.sh

で再起動したら各サービスが自動起動した。解決。

FreeBSD phpのモジュール関連

phpで以下のモジュールが使用できない。crontabで定期実行しているphpを実行すると、いつの間にかこんな↓警告文が発せられるようになっていた。

Warning文面
PHP Warning: Unknown():Unable to load dynamic library '/usr/local/lib/php/20020429-debug/php_mbstring.dll'…

似たような文面がつらつらと続く。で要は以下のdllが無いというアラートだった。

php_mbstring.dll
php_domxml.dll
php_gd2.dll
php_gettext.dll
php_mime_magic.dll
php_msql.dll
php_pdf.dll
php_xmlrpc.dll

ここら辺はいついじったのか正直覚えていない。
とりあえず、php4をreinstallしようとすると'autoconf262'からみのエラーが出る。
出力ファイルのinfoがないような警告。

/usr/ports/devel/autoconf262でreinstallしようとしてもできない。
autoconf262のエラーは他のアプリ、環境をインストールしている際にも出ている。
なので仕方なくポートをアップグレード。

FreeBSD# cvsup -g -L 2 /etc/ports-supfile <= portsの更新
FreeBSD# portsdb -Uu <= INDEXファイル・データベースの作成・更新
FreeBSD# pkgdb -aF <= 依存関係の不一致を直す

その後
FreeBSD# portupgrade -a てのパッケージのアップデート。(結構時間かかった。)

>>WEB系ランキング

追記を表示

Appendix

プロフィール

Author:ダースプレイガス
はまってばっかの輩

アクセスカウンター

技術系スポンサー

ありがとうございます

ブロとも申請フォーム

この人とブロともになる

検索ワードメモ

vi viというテキストエディタ使い方 Solaris UNIX LinuxディストリビューションviクローンOS ASCIIコード日本語文字コードEUC, JIS, SJISテキスト入力と置換カーソル移動.exrcファイルワイルドカード('*', '?'などコマンドモードインサートモードホームポディションラインエディタハッカーズライフEmacs対viハッカー「Emacsかviか」スクリーンエディタ文字の訂正カーソルの移動 行の移動とコピー もっと速く移動するには 文字列単語のコピーと移動DNS エラーダイナミックDNS DNSサーバDNS 設定DNSサフィックス Domain Name System ホスト名IP アドレスサーバソフトウェアネームサーバ名前解決DNSZONE DNSサーバの構築ENUM分散型データベース自宅でインターネットサーバーダイナミックDNS(DDNS)固定IPアドレスJPRS 再帰的な問合せDDoS 攻撃の対策アクセス制限グローバルIP NATやIPMasquerade DNS & BIND クックブックネームサーバ管理者レシピ集BINDドメインの登録サブドメイン DNSレコードレジストリレジストラお名前.comインターネットレンタルサーバー専用サーバーダイナミック サービスネームサーバアドレス再帰的な問い合わせサブドメインブロードバンド回線TCP/IP nslookup(dig)テストdig日本レジストリサービス(JPRS) JPドメイン名セカンダリネームサーバエラーダイナミック 逆引きラウンドロビンキャッシュDynamic The FreeBSD FreeBSD友の会 セキュリティ メーリングリスト 日本語マニュアル コマンド インストール方法 カリフォルニア大学バークレー校 プラットフォーム パッチキット jail PC/AT互換機用のUNIX互換OS ソースコード 技術評論社FreeBSD FreeBSD 7.0 7.0-RELEASE 備忘録 cpan CPANモジュール BSDカーネル FreeBSD-5系. SunOS スワップ Debian GNU/kFreeBSD- サーバ セキュリティ Linux DB Web CGI Perl Java XML プログラムLDAP 迷惑メール(スパム) ウイルス スパイウェア トロイの木馬 Linux raid 復旧可能 エンジニア タワー RAID 最新CPU Redhat Turbo SuSE Miracle Unix系オペレーティングシステム(OS) x86 Linuxカーネル Linuxディストリビューション - フィンランドのヘルシンキ大学 Linus Torvalds フリーソフトウェア Apache MySQL Xen Linuxコマンド集 Vine Linux Red Hat Enterprise Linux レッドハット オープンソース・カンパニーRed Hat Linuxの開発・供給元。 Turbolinux ターボリナックスデスクトップ Ubuntu Japanese UNIX/Linuxコマンド

技術系スポンサー

  • seo
あわせて読みたいブログパーツ
  1. 無料アクセス解析