2008年9月24日水曜日

inode不足

VMWare環境でディスク不足が発生。一時用とはいえ3Gでは足りなかったもよう。 ディスクを追加し、Ports用("/usr/ports")としてマウントした。"portsnap extract"としたところ、inode不足に。

"www/p5-WWW-*"を展開中に↓こんな感じに
Filesystem  1K-blocks    Used   Avail Capacity iused  ifree %iused  Mounted on
/dev/ad0s1a    304302  247550   32408    88%    2726  36696    7%   /
devfs               1       1       0   100%       0      0  100%   /dev
/dev/ad0s1e    202094   34632  151296    19%     251  26115    1%   /tmp
/dev/ad0s1f   3127410 1659936 1217282    58%   71609 352325   17%   /usr
/dev/ad0s1d    304302   89916  190042    32%   20500  18922   52%   /var
/dev/ad1s1f    233486       4  214804     0%       2  30204    0%   /iscsi
/dev/ad1s1d    738318  360492  318762    53%  115714   2044   98%   /usr/ports
/dev/ad1s1e    545326       4  501696     0%       2  70652    0%   /usr/src

"sysinstall"から、"Fdisk","Label"を使って作成したものではだめだったようなので、newfsでinode増やしてファイルシステムを再作成した。

# newfs -i 1024 /dev/ad1s1d

2008年8月30日土曜日

gawkでファイル削除

最近知った技を使う機会が。

$ ls -latr
合計 63636
drwxr-xr-x  2 kaz kaz    32768  3月  1 06:30 cddb_0301_data
drwxr-xr-x  2 kaz kaz    36864  4月  1 05:00 cddb_0401_data
drwxr-xr-x  2 kaz kaz    90112  5月  1 06:30 newage
drwxr-xr-x  2 kaz kaz   106496  5月  1 08:00 soundtrack
drwxr-xr-x  2 kaz kaz    36864  5月  1 08:30 reggae
drwxr-xr-x  2 kaz kaz   131072  5月  1 08:30 blues
drwxr-xr-x  2 kaz kaz   159744  5月  1 09:00 folk
drwxr-xr-x  2 kaz kaz    36864  5月  1 09:00 data
drwxr-xr-x  2 kaz kaz   135168  5月  1 09:00 jazz
drwxr-xr-x  2 kaz kaz   536576  5月  1 09:00 rock
drwxr-xr-x  2 kaz kaz   589824  5月  1 09:00 misc
drwxr-xr-x  2 kaz kaz    69632  5月  1 09:00 country
drwxr-xr-x  2 kaz kaz   225280  5月  1 09:00 classical
drwxrwxr-x  3 kaz kaz     4096  8月 16 17:46 include
drwxrwxr-x  3 kaz kaz     4096  8月 16 17:46 lib
drwxrwxr-x  4 kaz kaz     4096  8月 16 17:47 man
-rw-rw-r--  1 kaz kaz      272  8月 21 00:26 pet.txt
-rw-rw-r--  1 kaz kaz     4894  8月 21 01:20 my-medium.cnf
-rw-r--r--  1 kaz kaz  8255596  8月 28 00:33 freedb-update-20080401-20080501.tar.bz2
-rw-r--r--  1 kaz kaz  8724678  8月 28 00:33 freedb-update-20080301-20080401.tar.bz2
-rw-r--r--  1 kaz kaz  8359595  8月 28 00:33 freedb-update-20080201-20080301.tar.bz2
-rw-rw-r--  1 kaz kaz      152  8月 29 00:42 freedb.awk
-rw-r--r--  1 kaz kaz 37447502  8月 29 00:43 freedb.txt
drwx------ 10 kaz kaz     4096  8月 29 01:39 ..
drwx------  5 kaz kaz     4096  8月 29 07:02 var
drwxr-xr-x  2 kaz kaz     4096  8月 29 07:02 socket
drwxr-xr-x  2 kaz kaz     4096  8月 30 00:34 info
drwxrwxr-x  3 kaz kaz     4096  8月 30 00:34 share
drwxrwxr-x  2 kaz kaz     4096  8月 30 00:34 bin
drwxrwxr-x  2 kaz kaz     4096  8月 30 00:34 libexec
drwxrwxr-x 24 kaz kaz     4096  8月 30 00:34 .

いろいろ合わせて、削除対象を絞りこみ。最後の部分はgawkを使う。

$ find . -maxdepth 1 -type d -mtime +30 | egrep -v '_[0-9]{4}_' | gawk '{ print $0 }'
./country
./misc
./blues
./classical
./rock
./data
./soundtrack
./jazz
./reggae
./newage
./folk

gawkの記述を下のように変更して、実行

gawk '{ printf("rm -rf %s\n", $0) | "sh" }END { close("sh")}

$ find . -maxdepth 1 -type d -mtime +30 | egrep -v '_[0-9]{4}_' | gawk '{ printf("rm -rf %s\n", $0) | "sh" }END { close("sh")}'
無事に削除ができた
合計 61532
drwxr-xr-x  2 kaz kaz    32768  3月  1 06:30 cddb_0301_data
drwxr-xr-x  2 kaz kaz    36864  4月  1 05:00 cddb_0401_data
drwxrwxr-x  3 kaz kaz     4096  8月 16 17:46 include
drwxrwxr-x  3 kaz kaz     4096  8月 16 17:46 lib
drwxrwxr-x  4 kaz kaz     4096  8月 16 17:47 man
-rw-rw-r--  1 kaz kaz      272  8月 21 00:26 pet.txt
-rw-rw-r--  1 kaz kaz     4894  8月 21 01:20 my-medium.cnf
-rw-r--r--  1 kaz kaz  8255596  8月 28 00:33 freedb-update-20080401-20080501.tar.bz2
-rw-r--r--  1 kaz kaz  8724678  8月 28 00:33 freedb-update-20080301-20080401.tar.bz2
-rw-r--r--  1 kaz kaz  8359595  8月 28 00:33 freedb-update-20080201-20080301.tar.bz2
-rw-rw-r--  1 kaz kaz      152  8月 29 00:42 freedb.awk
-rw-r--r--  1 kaz kaz 37447502  8月 29 00:43 freedb.txt
drwx------ 10 kaz kaz     4096  8月 29 01:39 ..
drwx------  5 kaz kaz     4096  8月 29 07:02 var
drwxr-xr-x  2 kaz kaz     4096  8月 29 07:02 socket
drwxr-xr-x  2 kaz kaz     4096  8月 30 00:34 info
drwxrwxr-x  3 kaz kaz     4096  8月 30 00:34 share
drwxrwxr-x  2 kaz kaz     4096  8月 30 00:34 bin
drwxrwxr-x  2 kaz kaz     4096  8月 30 00:34 libexec
drwxrwxr-x 13 kaz kaz     4096  8月 30 01:03 .

参照:GNU Awk ユーザーズガイド: General Introduction(4.6 print や printfの出力のリダイレクト)

2008年7月7日月曜日

いまさらcpufreq-infoを知る

自動起動のからみで、CPUモジュールを自分でインストールして、cpufreq-infoあたりを初めて知った

お暇なときはこんな感じに

$ cpufreq-info
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: powernow-k8
  CPUs which need to switch frequency at the same time: 0 1
  hardware limits: 1000 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.80 GHz, 1000 MHz
  available cpufreq governors: conservative, userspace, ondemand, powersave, performance
  current policy: frequency should be within 1000 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 1000 MHz.
analyzing CPU 1:
  driver: powernow-k8
  CPUs which need to switch frequency at the same time: 0 1
  hardware limits: 1000 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.80 GHz, 1000 MHz
  available cpufreq governors: conservative, userspace, ondemand, powersave, performance
  current policy: frequency should be within 1000 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 1000 MHz.

CPU温度も下ってる

$ sensors
k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp:  +34.0°C
Core1 Temp:  +24.0°C

設定前は、40.0°C前後だった

Ubuntu 8.04で自動起動

PowerEdge T105のUbuntu 8.04(Server版)で自動起動をおこなう

19:30に自動起動をさせようと思ってこんなことをしてみた

# echo "2008-07-01 10:30:00" > /proc/acpi/alarm

当日の1回だけしか起動せず、これだけではダメなことが判明
powersavedが未インストールだったので、インストールをおこなった

$ sudo apt-get install powersaved

acpidが無いといわれた(ような気がした)ので、インストール

$ sudo apt-get install acpid

途中で、"FATAL: Module speedstep_centrino not found"とかいわれたので、下のものをインストール

$ sudo apt-get install cpufrequtils
$ sudo apt-get install sysfsutils

関係ないかもしれなけど、CPUモジュールをインストールしてみた

$ sudo modprobe powernow-k8

これで完璧かと思ったらまだダメで、/etc/init.d/hwclock.shの変更が必要だった

*** 30,35 ****
--- 30,36 ----
  # as machine hardware clock type for Alphas.
  HWCLOCKPARS=

+ ACPITIME=`cat /proc/acpi/alarm`
  hwclocksh()
  {
      [ ! -x /sbin/hwclock ] && return 0
***************
*** 130,135 ****
--- 131,137 ----
                if /sbin/hwclock --systohc $GMT $HWCLOCKPARS $BADYEAR; then
                    verbose_log_action_msg "Hardware Clock updated to `date`"
                fi
+               echo "$ACPITIME" > /proc/acpi/alarm
            else
                verbose_log_action_msg "Not saving System Clock"
            fi

参考

2008年6月24日火曜日

とりあえず、まだCentOS5.1のままにしたい

1週間ぶりに、yum updateをしたら何か遅いなぁと思ったら、5.2が出たもよう。そういえば、週明けぐらいっていってたっけ。

でももう少し5.1にしたいなぁと思い、どうすればいいんだっけということで、調査

CentOS-Base.repoの$releaseverが関係してたような気が…

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

man yum.confしてみました。

VARIABLES
       There  are  a number of variables you can use to ease maintenance of yum’s
       configuration files. They are available in the values of  several  options
       including name, baseurl and commands.

       $releasever
              This  will be replaced with the value of the version of the package
              listed in distroverpkg. This defaults to the  version  of  ‘redhat-
              release’ package.

redhat-releaseパッケージのバージョンて?→【参照】CentOS 5.0 のままアップデートを続ける場合 - daily dayflowerということのようです。追試してみました。

# rpm -q --whatprovides redhat-release
centos-release-5-1.0.el5.centos.1
# rpm -q --whatprovides redhat-release --qf "%{VERSION}\n"
5

同じでした。引き続き上のページを参考にyum.confを変更。無事に戻りました。感謝。

[base]
name=CentOS-5.1 - Base
mirrorlist=http://mirrorlist.centos.org/?release=5.1&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

5.2へは、夏休みのころ?

2008年6月15日日曜日

PowerEdge T105にメモリ追加

メモリを追加

  • SanMax SMD-2G48EHP-8E-D
  • 1GBx2, DDR2-800, ECC, Unbuffered

これで、都合3GBになりました。いまのところUbuntu8.04から認識されて、元気に動作しています

実は、メモリ追加は1回失敗していて、そのときのメモリは今回と同じSanMaxでSMD-2G48HP-8E-Dというもの。これはUnbufferedなんだけど、non-ECCのタイプでした。全然認識しなくて、BIOS途中で再起動してしまう感じ。今はhpのML115で活躍してます。こちらは、non-ECCでも大丈夫でした。

2008年6月1日日曜日

Ubuntu 8.04にVMware Server

環境とか

  • Ubuntu 8.04 amd64 Desktop
  • Ubuntuは通常のインストール

足りなかったのでインストールしたもの

$ sudo apt-get install build-essential
$ sudo apt-get install xinetd
$ sudo apt-get install ia32-libs

インストール中に出たエラー

Unable to get the last modification timestamp of the destination file 
/etc/vmware/ssl/rui.key.

Execution aborted.

その対応

$ sudo touch /etc/vmware/ssl/rui.key
$ sudo touch /etc/vmware/ssl/rui.crt

Vmware Server Consoleが起動できなかったので

$ cd /usr/lib/vmware/lib
$ sudo mv libgcc_s.so.1 libgcc_s.so.1-bak
$ ln -s /lib/libgcc_s.so.1 libgcc_s.so.1