以前のリビジョンの文書です
かゆいところに届きそうで届かない場合につかえそうな小技をまとめてみようかと思う。
役に立つかたたないかは不明(w
ipから逆引きを行う関係でDDNSのドメインをそのままhosts.allowやhosts.denyに突っ込んでもちゃんと動いてくれない。
当たり前だけど(^^;
簡単な方法で正引きだけで制御する方法がないかとGoogle先生で調べると以下のサイトがHITした。
http://d.hatena.ne.jp/kazuhooku/20080502/1209704193
IPが書かれたファイルを読むことが可能なんだね。
このサイトではCRONでファイルに落としてるけど、『直接シェルスクリプト実行したらいいんじゃないの?』という神の声が聞こえてきたので試してみた。
まずIP取得用のスクリプトを用意する。(/etc/ddns_ip.shとでもする)
#!/bin/sh /usr/bin/host ドメイン名 | awk '/has address/ {print $4}'
保存して終了
パーミッションを適切に設定して実行できるようにしといてね
SSHの制限を行うのであれば以下のようにhosts.allowとdenyを編集します
・hosts.allow SSHD : /etc/ddns_ip.sh ・hosts.deny SSHD : ALL
指定したドメインから正常に接続が出来るか確認します。
接続出来なかった場合の事を考えて設定した時のSSHセッションは切らずに残しておくのが吉(w
なんちゃってプログラマがPHPでプログラム中にSESSIONを利用したのだが、/var/lib/php/session/(php.iniで指定可能)に保存されるsess_から始まるセッションファイルが削除されなくてどうしたものかと考えた挙句にCRONで一定時間毎に消すしか思いつきませんでした(^^;
すぐに忘れると思うのでメモ
find /var/lib/php/session/ -name “sess_*” -exec rm {} \;
swap領域を増やす事はインストールの時にちゃんと考えてたら大丈夫なんだけど。。。
どうしても増やしたいって場合あるよね(w
そんな時は以下の手順で増やす事が可能。
# dd if=/dev/zero of=/var/swapfile bs=1024 count=2000000
上記の例だと/var/swapfileに2GBのSWAPファイルの枠を作成するって事だね。
次にSWAPFILEをつくる
# mkswap -v1 /var/swapfile
これでSWAP領域は確保完了。
じゃあ、SWAP領域としてマウントしてみよう
# swapon /var/swapfile
ちゃんとSWAP領域が増えてるかfreeコマンドなどで確認
アンマウントする時は
# swapoff /var/swapfile
SWAP領域は全部で8つまで持つことができるよ(^^)
毎回手動でマウントするのが面倒な時は・・・
/etc/rc.d/rc.localに以下のコマンドを追加 /sbin/swapon /var/swapfile もしくはfstabを編集する vi /etc/fstab /swapfile swap swap defaults 0 0
認証させたくないディレクトリに.htaccessを設置して以下の3行を書くだけでおっけー!
Satisfy any order allow,deny allow from all
いつも忘れて他のサイトを探すので書いておこう(^^;
mount -t iso9660 -o loop マウントするisoファイル マウントポイント
そもそもisoファイルってどうやったら作れるのって方は読んでくださいね
CD/DVDをドライブに挿入したらmount不要で以下のコマンドを実行
dd if=/dev/cdrom of=ファイル名.iso
ほら、出来たでしょ(^^)
zip -P パスワード -e ZIPファイル名 圧縮するファイルやフォルダ
kccコマンドに-cオプションをつけて実行するとファイルの文字コードがわかる
$ kcc -c ファイル名 ファイル名: EUC
psコマンドのオプションはかなりあるので必要に応じて組み合わせを変えてやらないと思ったように結果が表示されない。
実行中のプロセス一覧にオプションも表示させたい場合
# ps -axf | more ■実行結果 PID TTY STAT TIME COMMAND 1 ? Ss 0:11 init [3] 2 ? S< 0:00 [migration/0] 3 ? SN 0:00 [ksoftirqd/0] 4 ? S< 0:00 [watchdog/0] 5 ? S< 0:00 [events/0] 6 ? S< 0:00 [khelper] 7 ? S< 0:00 [kthread] (以下続く)
実行中のプロセスのCPUやメモリの使用率なども表示したい場合
# ps auz | more ■実行結果 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 2068 612 ? Ss Aug17 0:11 init [3] root 2 0.0 0.0 0 0 ? S< Aug17 0:00 [migration/0] root 3 0.0 0.0 0 0 ? SN Aug17 0:00 [ksoftirqd/0] root 4 0.0 0.0 0 0 ? S< Aug17 0:00 [watchdog/0] root 5 0.0 0.0 0 0 ? S< Aug17 0:00 [events/0] root 6 0.0 0.0 0 0 ? S< Aug17 0:00 [khelper] root 7 0.0 0.0 0 0 ? S< Aug17 0:00 [kthread] root 10 0.0 0.0 0 0 ? S< Aug17 0:15 [kblockd/0] root 11 0.0 0.0 0 0 ? S< Aug17 0:00 [kacpid] root 78 0.0 0.0 0 0 ? S< Aug17 0:00 [cqueue/0] (以下続く)
fuserコマンドを利用する
# fuser -vn tcp 80 ■実行結果 USER PID ACCESS COMMAND 80/tcp: apache 942 F.... httpd apache 943 F.... httpd apache 944 F.... httpd apache 945 F.... httpd apache 946 F.... httpd apache 947 F.... httpd apache 948 F.... httpd apache 949 F.... httpd root 2007 F.... httpd
通常は
# htpasswd -c 認証用ファイル アカウント とコマンドを実行するとパスワード確認があって、正常に入力する事でパスワードファイルが完成する。
しかし、シェルスクリプトなどから実行の場合は出来ればパスワード入力を遠慮した。
そこで、以下のオプションを試してみよう
# htpasswd -nb アカウント名 パスワード
アカウントとパスワードが表示されたはずだが・・・どうだろうか?
この標準出力をhtpasswdに挿し込めば以上終了。
いや~簡単だったね。