2008年11月17日月曜日

Linuxで起動と同時にサービス実行

Apache、Tomcat、PostgresSQL等をインストールした後、
起動時に自動的に実行したい場合、以下の手順で登録を行います。

1.「/etc/rc.d/init.d」 にスクリプトを作成
2.起動ランレベルに対してシンボリックリンクを唐!)

まずは1でデーモンを起動、終了、再起動、ステータス侮ヲを
行う事のできる共通的なシェルを作ります。

同一のディレクトリにあるものを参考に
start,stopのシェルを書きましょう。
(VI等でデーモンを開いて見てみましょう)

その後はランレベルに合わせたディレクトリに
シンボリックリンクを作成していきます。

ランレベルは「rc?.d」の?部分になります。
GUI起動だったら5、コンメ[ルなら3等、最悪すべてを
作っても良いと思います。

私の開発環境はGUIですので5にします。
逆に公開サーバ等は3に設定しておきます。

「rc5.d」にて
「ln -s ../init.d/作成したシェル S??作成したシェル」を実行します。
??は起動順序になります。
ネットワーク起動がまだの状態での
ネットワーク関係の起動を行いたくない等他のサービスと
関係がでて来る場合は意識が必要になります。

後は再起動等して確認しましょう。 


/sbin/chkconfig vsftpd on


でも可能みたいです。

Linuxでのフラッシュメモリ読み込み

Linuxでフラッシュメモリを読み込むなんてできるの?って思ってたら結構簡単にできるものです。
USBに指してみると、、、、あら!?LEDが光ってくれます。つうことは後はmountするだけ!!


mkdir /mnt/usbmem
mount -t vfat /dev/sda1 /mnt/usbmem/
cd /mnt/usbmem/
ls -ltr

完璧!!
だけど、、、、日本語のディレクトリが文字化けする場合があります。
※私はFedoraCore2だもんで化けました!!

だけど、UTF-8だから大丈夫のはず!!
んーと。。。。。マウントしているのは。。。
。。。。
。。。。

NFSを建てた時に見たファイル辺りに設定すれば良いのではないかと考えてみる。。。
/etc/fstab

ファイルシステムだからきっとそうだ!!


/dev/sda1   /mnt/usbmem/ auto                    noauto,user,iocharset=utf8 0 0

今までの経験で行けば、、キャラセットさえ設定すれば良いはず!!

んでumountして、、、
デバイスが使用中!!
使ってないのに!!

なんでこんな事を文句言うのかな。。。としばし考えてみる。。。。。。。。
かれこれ5秒位たった後、、、、
あっ!!ディレクトリに入りっぱなし!!

おもむろに

cd /tmp
umount /mnt/usbmem

これでOK!!
でもう一回マウントすると、日本語が表示されました。
きっと他のLinuxでもこれでいけるはず!!
※無論キャラコードは違うんでしょうけど。

Linuxでの環境変数設定

環境変数などを設定するには
/etc/profile.d
の位置にファイルを作成します。

例えばjava.shというファイルに


export JAVA_HOME=/usr/java/jdk1.5.0_06


また、java.cshというファイルに


setenv JAVA_HOME /usr/java/jdk1.5.0_06


を設定しておきます。
するとシェル起動時には読み込まれています。

LinuxでのDNSクライアント設定

/etc/resolv.conf を編集します。

nameserver 192.168.32.220
nameserver 192.168.32.1
nameserver 127.0.0.1

でOKです。再起動等は必要ありません。

LinuxでCDを焼く

LinuxのCDをLinuxで焼く方法を記述します。
なにやらカーネルのバージョンで違うようですが、
私の環境は2.6でした。

倍速やファイル名は各環境で違うと思います。

 /usr/bin/cdrecord -v speed=4 dev=/dev/hdc -eject FC-5-i386-disc1.iso

Linuxのアンチウィルスソフト

LinuxのアンチウィルスにはBitDefenderというソフトを使っています。

http://www.bitdefender.com/


単独のRPM配布ありで簡単に導入が可能です。

ダウンロード後は権限のあるユーザで


bdc --files /*


等とやるとチェックを行う事ができます。
プロキシサーバを使用している場合には


/opt/bdc/bdc.ini


があるので、ファイルに

HttpProxy = サーバのアドレス:ポート番号

を追加します。そうすると、

bdc --update

で定義の更新を行います。

2008年11月16日日曜日

Linuxのハードディスク増設

外付けHDDを購入しました。
ベアボーンなのでHDDも別購入となりました。
mountしましたがもちろんうまくいきません。
おなじみのパーティション作成と
ファイルシステムのフォーマットが必要ですね。




/sbin/fdisk /dev/sdb



これで別のコンソールが立ち上がります。
「n」でパーティションを作成して、
「w」で書き込みます。
まぁ「t」でIDを変更したり、色々できますね。
何より書き込まないと変更できないのがエライ!!




/sbin/mkfs -t ext3 /dev/sdb1



ext3はFAT32ですね。
ext2でもOKだったのですが、現在使っているNASが
FAT32なのでext3を指定しました。




mount -t ext3 /dev/sdb1 /mnt/hdd



これで可能ですね。