[[FrontPage]] /////////////////////////////////////////////////////////////////////////////////// * 目次 [#a8107e23] #contents /////////////////////////////////////////////////////////////////////////////////// * 独立コンテンツ [#q284ad8f] #ls2(System/); /////////////////////////////////////////////////////////////////////////////////// * CPU暴走対策 [#ie137ee4] - htt_server (仮名漢字変換サーバ) -- top で追えなくなっている場合もある -- 次の方法で再起動する # /etc/init.d/iiim restart /////////////////////////////////////////////////////////////////////////////////// * 特定のポート(socket)やファイルを使っているプロセスを調べたりkillする [#s3b2028e] - socketの場合: $ fuser -n tcp <port> ...で、そのportを使用するプロセスのPIDが分かる - ファイルの場合 $ fuser <file> で、以下のような書式で表示される。 USER PID ACCESS COMMAND <used-file>: <user-name> 21969 f.... gdb - -k を使うと、指定したファイルにアクセスしているプロセスをkillすることが出来る。-signal で指定しなければ、シグナルは SIGKILL が送られる。 /////////////////////////////////////////////////////////////////////////////////// * Sound [#a72e7d30] ** RealPlayer 終了後、他の動画・オーディオプレーヤーが正常に動かない [#a0d5ca98] - しゃっくり状態(一瞬動き、一瞬止まる、の繰り返し)になった場合、pulseaudio のせいである可能性がある。&br; もし、 ps -u <ユーザ名> で pulseaudio のエントリが引っかかってくるようなら、 $ killall pulseaudio [RETURN] で直るかもしれない。&br; 本来、 # /etc/init.d/pulseaudio stop [RETUEN] で止まるべきである気がするのだが、この方法では停止出来ない。 /////////////////////////////////////////////////////////////////////////////////// * ハードウェアのスペックを調べる [#oefab033] - システム情報は、基本的に /proc 以下を見れば分かるようになっている ** CPU [#r60501e7] # cat /proc/cpuinfo ** Memory [#f3e4522e] # cat /proc/meminfo /////////////////////////////////////////////////////////////////////////////////// * 仮想コンソールの数の変更 [#eb376148] 仮想コンソールの数は、 /etc/inittab に、次のように記述されている。 1:2345:respawn:/sbin/getty 38400 tty1 2:23:respawn:/sbin/getty 38400 tty2 3:23:respawn:/sbin/getty 38400 tty3 4:23:respawn:/sbin/getty 38400 tty4 5:23:respawn:/sbin/getty 38400 tty5 6:23:respawn:/sbin/getty 38400 tty6 数を減らす場合は、コメントにする。&br; 例えば、仮想コンソールの数を3つに減らしたい場合は、下3行をコメントに。 /////////////////////////////////////////////////////////////////////////////////// * OOM-killer を止める [#of3b0151] - メモリ不足に陥ったときに、OOM-killerが勝手にプロセスを殺してしまうのを止めさせる。 - 以下のコマンドで止めることが出来る # sysctl -w vm.overcommit_ratio=99 # sysctl -w vm.overcommit_memory=2 - 起動時に毎回設定する ++ root で /etc/init.d/oom-killer という名前でファイルを作成 #!/bin/sh sysctl -w vm.overcommit_ratio=99 sysctl -w vm.overcommit_memory=2 ++ 毎回起動時に実行させるようにする。 # update-rc.d oom-killer defaults 20 /////////////////////////////////////////////////////////////////////////////////// * ストレージ関連 [#tc348ec8] ** mount [#kfa1833c] vfatのパーティションを素でmountすると、日本語ファイル名が文字化けして読めなくなってしまう。&br; この場合は、mount のオプションで、 iocharset=euc-jp,codepage=932 を追加する。/etc/fstabに書くと、例えばこんな感じ: /dev/hda1 /webern vfat defaults,codepage=932,iocharset=euc-jp 0 2 ** デバイス上の不良ブロックを探す [#y2ac9433] - badblocks を使う - ddrescue を使う -- Debian でのパッケージ名は "ddrescue"、但しコマンドは "dd_rescue" # dd_rescue /dev/sdb2 - > /dev/null /////////////////////////////////////////////////////////////////////////////////// * strace [#d6b8f3a7] /////////////////////////////////////////////////////////////////////////////////// * パスワードを忘れた場合の対応 [#d62dba48] まずはインストーラのsecureモードでrootパスワードの変更を試みる。 ** インストーラ [#s3bea9de] ** インストーラが使えない場合 [#p3f5ee0b] grub メニュー "e" を入力 kernel 2.6.**** (つまり、使うカーネル)にカーソル合わせる "e" を入力 kernel 2.6.**** root=/dev/sda1/ ro quiet Linux single init=/bin/sh mount -o remount,rw / # これはどこでやったらいいのか要確認。 "b" を入力 /////////////////////////////////////////////////////////////////////////////////// * IDE HDD のパフォーマンスチューニング [#na84dc59] - MacやWindows* でよくやるデフラグメントではなく、HDDパフォーマンスを改善するためのパラメータ設定です。 - hdparm コマンドを使用します。 - コマンド書式: # hdparm <パラメータ設定値> <IDE-HDD装置名(/dev/hdaなど)> - 入手 # apt-get install hdparm - パフォーマンステスト~ どのようなパラメータを与えるのが良いかを検討するため、まずは何もしない状態でのパフォーマンスを確認します(/dev/hdaの場合)。 # hdparm -t /dev/hda 結果は、例えばこのように表示されます: /dev/hda: Timing buffered disk reads: 64 MB in 18.09 seconds = 3.54 MB/sec - 次に、現在使用しているIDE-HDDに対し、高速化の効果のあるパラメータを探します。~ 基本的には、次の4つを対象とすれば良いでしょう(括弧内は各パラメータのON/OFFを設定する時のコマンド引数): -- 32bit I/O オン ( -c ) -- using_dma ( -d ) -- multiple sector count ( -m ) -- unmaskirq ( -u ) - これらを、単独で設定したり、組み合わせて設定したりして、パフォーマンスをチェックします。 パラメータをON にするときは、各々の引数に1(ただし、 -m オプションの場合は16)を与えます。例えば、「32bit I/O 」をONにする場合は # hdparm -c1 /dev/hda とします。パラメータを変更した後、次のコマンドでテストをします。 # hdparm -t /dev/hda 結果が出たら、どこかに記録しておき、後で比較に使用します。~ テストしたら、次のパラメータでテストをやるため、先程設定したパラメータは OFF にします。OFFにする場合、先程引数に与えた "1" の代わりに "0" を与えて、同じようにコマンドを実行します。 # hdparm -c0 /dev/hda ...これを各オプションについて繰り返し、それが済んだら2つ以上のオプションの組合せで、また同じようにテストを繰り返します。~ その結果、当時の私の環境(ThinkPad X24)では、 -- 32bit I/O ( -c ): ON -- using_dma ( -d ) : ON -- multiple sector count ( -m ): ON -- unmaskirq ( -u ) : OFF に設定したときのパフォーマンスが最も良く、その時のテスト結果は以下の通りでした。 /dev/hda: Timing buffered disk reads: 64 MB in 2.85 seconds = 22.46 MB/sec - Boot時に自動で設定するようにする~ 最適な設定が決まったら、これをOS起動時に自動的に設定させるようにします。~ /etc/init.d/hdparm を作成した後、これに実行権限を設定( chmod で 755 に )し、更に # update-rc.d hdparm defaults 20 を実行します。 - [[/etc/init.d/hdparm>archive:hdparm]] /////////////////////////////////////////////////////////////////////////////////// * Links [#xa7f2d97] - [[Linuxサーバ運用マニュアル 第6話「リソースをチェックしよう!」>http://ash.jp/linux/unyo/06.htm]] - [[HDDベンチマーク手順+性能測定結果一覧>http://plaza18.mbn.or.jp/~moriban/linux/HardDiskPerformance.html]] - [[Kernel Watch>http://www.atmarkit.co.jp/flinux/index/indexfiles/watchindex.html]]