Unix/Linux

iptables

さくらVPSのプランを乗り換えたので、これを機にiptablesの設定もやっておくかと思い調べた。 だが結局自分のケースではSSHのポート変更とhosts.allowやhosts.denyの設定で事足りることが分かった。 備忘録的に書いておく。 Netfilterとは パケットフィルタ…

メールプロトコル

最近は小規模だがメールサーバを構築するお仕事もこなした。自宅サーバは持ちつつもずっと敬遠してきたメールサーバをきちんと構築するきっかけにもなったので本はいろいろと購入した。シンプルで分かりやすかったのが以下の本だ。著者のホームページもかな…

perldoc -lですぐに移動したい。

perldoc -l で目的のモジュールのパスを探し出した後、そこに移動していろいろと作業したい場合がある。 その時にcdしないといけないけどそれをいちいち打ち込むのが面倒だ。TABで補完したりもするけれど面倒。 一発で移動したいので試しにスクリプトを書い…

clamscanが重い場合の対処法

CentOSで試す。「/root/clamscan.exclude」ファイルを設置して「/sys/」と「/proc/」を一行ずつで書き加える。 cron.dailyのスクリプトに、除外する箇所を読み込むロジックが書いてあるので、その通りに実行してみました。

Subversionのsvnserve.confの設定

先頭にスペースがあるとエラーになるという罠にはまる。 コメントアウトを削除するだけでなく、その後のスペースもとらないとダメでした。ムキー!

openとchmod

apropos chmodコマンドで数パターンのmanコマンドがあるのが確認できる。 man 2 chmodでc言語で使う関数の方が確認できる。 #include <stdio.h> #include <fcntl.h> #include <sys/stat.h> int main(){ int fp; fp = open ("foobar.txt", O_WRONLY | O_CREAT); if(fp != -1) chmod("foobar</sys/stat.h></fcntl.h></stdio.h>…

openとread

#include <stdio.h> #include <fcntl.h> int main(){ int fp; char c[20]; fp = open("./test.txt", O_RDONLY); read(fp, c, 20); printf("%s", c); return 0; } /* test.txtは以下 0123456789 0123456789 ちなみに2行目の8まで表示される。*/ C言語の目次</fcntl.h></stdio.h>

fgetcとfputc

#include <stdio.h> int main(){ FILE *fp; char c; fp = fopen("test.txt", "r"); while( (c = fgetc(fp)) != EOF){ /*printf("%c", c);*/ fputc(c, stdout); } fclose(fp); return 0; } C言語の目次</stdio.h>

fgetsとfputs

備忘録、と。 #include <stdio.h> int main(){ FILE *fp; char str[256]; fp = fopen("./test.txt", "r"); while(fgets(str, 256, fp) != NULL){ /* printf("%s", str); */ fputs(str, stdout); } return 0; } C言語の目次</stdio.h>

getsとputs

getsは問題のある関数で使うべきではない、とされている。コンパイルすると警告が出る。実行はできるが。バッファサイズを指定できないのが問題か。 #include <stdio.h> int main(){ char str[10]; gets(str); puts(str); return 0; } C言語の目次</stdio.h>

getcとputc, getcharとputchar

こんがらがったので備忘録 #include <stdio.h> int main(){ char c; c = getc(stdin); putc(c, stdout); return 0; } #include <stdio.h> int main(){ char c; c = getchar(); putchar(c); return 0; } C言語の目次</stdio.h></stdio.h>

forkについて学ぶ

ようやくこの近辺に来つつある。psコマンドを叩いたときなんでbashだのcshだのが出ているんだろうと思っていたが少しずつ理解できてきたような気がする。 以下のコードはFreeBSDで動作しました。 #include <stdio.h> #include <stdlib.h> void child_code(int delay){ printf("c</stdlib.h></stdio.h>…

端末制御とシグナル

tty,sttyをさらっと。何周かすることになると思うので深堀するのは追々やっていこうかと。Unix/Linuxプログラミング理論と実践posted with amazlet at 09.05.06Bruce Molay アスキー・メディアワークス 売り上げランキング: 18985おすすめ度の平均: 深く掘り…

Unix/Linuxプログラミング

ぼちぼち再開。きちんと継続したい。 今日は「cp」コマンドを実際に書いてみた。open, write, creatなどのシステムコールを学ぶ。 amazonアソシエイトもamazletを利用してみた。これは自分でも作り直してみると面白そうだ。Catalystフレームワークを勉強中な…

FreeBSDにPHPを設定

pkg_addではダメ? VMwareにいろいろツッコンでもうサーバいぢるのが楽しい。でメモメモ。 pkg_addでphp5をインストールしていざhttpd.confに設定もして、ときた所でモジュールってどこにあるんだ?とはまってしまう。 ネットを検索したところどうやらpkg_ad…

ビープ音を消す FreeBSD

久しぶりのエントリだけどこんなんw kbdcontrol -b off 近所迷惑にさようなら。

Unix/Linuxプログラミング

もっともっと深くへ。。 学習の目次 moreを書く cpを書く 端末制御とシグナル forkについて 参考書籍 第1章 Unixシステムプログラミングの全体像 第2章 ユーザー、ファイル、マニュアル─最初はwhoから 第3章 ディレクトリとファイルのプロパティ─lsを徹底的…