Linux 備忘録

・LinuxConfの文字化け
・Astec-Xを使えるようにする
・*.src.rpmなパッケージの導入
・設定変更後のデーモンの再起動
・ファイル検索データベースを作る
・バックアップファイルを一括削除する
・crontabの呼び出すエディタを変更する
・crontabの送ってくるメールを止める
・crontabの実行時にエラーが表示される時の対応
・環境変数を表示する
・telnet時のログインメッセージを変更する
・カーネルのバージョン等の各種情報を表示する
・特定のディレクトリ以下の全ファイルの属性を変更する
・カーネルパニック時に自動的に再起動させる


【LinuxConfの文字化け】

/home/[username]/.bashprofile
export LANG=ja_jp.ujis を追加する

GNOMEアプレットからの起動は要調査


【Astec-Xを使えるようにする】

/etc/X11/gdm/gdm.conf
[xdmcp]
Enable=1
に変更する

Windows側はAstec-Xのコントロールパネルの[XDMCP/REXEC]タブで以下の様に設定


【 *.src.rpmなパッケージの導入】

hogehoge.src.rpmなファイルがあるディレクトリで
rpm --rebuild hogehoge.src.rpm する

出来上がりは
/usr/src/redhat/RPMS/i386 あたりにあるので

rpm -Uvh hogehoge.rpm する


【設定変更のデーモン一括再起動】

httpdの様に複数プロセスが実行されるーモンを一括で新しい設定ファイルを読みこませる時などに使用
killall -HUP httpd


【ファイル検索データベースを作る】

findで探すと時間がかかるので検索用データベースを作る。
updatedb

findと違いcd /とかしてルートに移動してから実行しなくてもすべてのディレクトリを検索してくれる。

構築したデータベースの検索は
locate hogehoge


【バックアップファイルを一括削除する】

confファイルなどを編集した時に出来る「hogehoge.conf~」などの様に「~」で終わっているバックアップファイルを一括削除する時などに使用する。上記の様にupdatedbを実行しておいてから
locate *~ | xargs rm


【crontabが呼び出すエディタを変更する】

crontabが標準で呼び出すエディタはviになっているが、これを変更する場合は環境変数の[EDITOR]の値を変更すれば良い。/usr/bin/jedに変更する場合は
export EDITOR=/user/bin/jed


【crontabの送ってくるメールを止める】

cronが実行したコマンドが吐き出す文字列のうち、stdout(標準出力)に出されたものは、たんなる動作時のメッセージであり、これがメールで送られてくるとウルサイので(笑)crontabの登録で実行するコマンドのstdout出力をヌルデバイスにリダイレクト(下の例の赤字部分)してしまえばメールが送られなくなる。
00 04 * * * /usr/sbin/ntpdate gps.kek.jp 1 > /dev/null

標準出力と標準エラー出力の解説はここを参照。


【crontabの実行時にエラーが表示される時の対応】

ちょっとトホホなお話だが(笑)Windowsマシンのターミナルソフトでログインして、crontab -eでjobを追加する時にWindows上のテキストファイルからコピー・ペーストすると間違って改行コードまで貼り付けてしまうことがある。
これをやるとcronのjob実行時に、余分な改行コードまでjobの引数として渡してしまいエラーになる。

これが原因かどうか確認するにはcat /var/log/cronしてログを見ると以下の様に残っているのですぐ判る。
(赤字の部分が余分な改行コード)
Jul 5 23:09:00 lxs CROND[1081]: (root) CMD (/sbin/hwclock "--systohc"^M)

やってしまった場合はcrontab -rで一旦全てのjobを消してから登録しなおす。


【環境変数を表示する】

env
これだけ(笑)


【 telnet時のログインメッセージを変更する】

telnet時に表示されるメッセージは
/etc/issue

ただし再起動時に/etc/rc.d/rc.localスクリプトに書き換えられてしまうためスクリプトの以下の部分をコメントアウトする。

echo "" > /etc/issue
echo "$R" >> /etc/issue
echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue
cp -f /etc/issue /etc/issue.net
echo >> /etc/issue


【カーネルのバージョン等の各種情報を表示する】

uname<option>
で各種情報が表示される。オプションは以下の通り。

-a--allすべての情報を出力する
-m,--machineコンピュータ(ハードウェア)の種類を出力する
-n,--nodenameネットワークにおけるホスト名を出力する
-r,--releaseOS のリリース番号を出力する
-s,--sysnameOS の名称を出力する
-p,--processorホストの CPU タイプを出力する
-v OS のバージョンを出力する
--help 使い方を標準出力に表示する
--version バージョン情報を標準出力に表示する


【カーネルパニック時に自動的に再起動させる】

参照ページはここの「3.5.12. 'panic=' 引数」の辺りを参照。

カーネルの起動時に panic=(秒数) とする事でパニックから指定秒数後に再起動する。
もしくはカーネル起動後に echo (秒数) > /proc/sys/kernel/panic としても同様の動作を行う。


【特定のディレクトリ以下の全ファイルの属性を変更する】

パーミション変更、オーナー変更、グループ変更ともに-Rオプションを付けて実行する。

*例:/home/ftp以下の全ファイルのパーミションを666に変更する。
chmod -R 666 /home/ftp/*
*例:/home/ftp以下の全ファイルのオーナーをftpに変更する。
chown -R ftp /home/ftp/*
*例:/home/ftp以下の全ファイルのグループをftpに変更する。
chgrp -R ftp /home/ftp/*

[back]
[top]