2012/01/29

ファイルシステムを縮小させた

LVM上に1000GBほどのファイルシステムを作ったけれど、ちょっと大きすぎたみたい。
なので800GBに縮小してみる。

# resize2fs -p /dev/SrvGroup/movie 800G
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/SrvGroup/movie' first.

fsckしないとダメって怒られた。

# e2fsck -f /dev/SrvGroup/movie
e2fsck 1.41.12 (17-May-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/SrvGroup/movie: 1297/65536000 files (4.7% non-contiguous), 114706431/262144000 blocks

fsck完了

# resize2fs -p /dev/SrvGroup/movie 800G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/SrvGroup/movie to 209715200 (4k) blocks.
Begin pass 2 (max = 25)
Relocating blocks XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 8000)
Scanning inode table XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 90)
Updating inode references XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/SrvGroup/movie is now 209715200 blocks long.

resize2fsコマンドに800Gを指定して実行。
-pは進捗を表示するオプション。

# lvresize -L 800G /dev/SrvGroup/movie
WARNING: Reducing active and open logical volume to 800.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce movie? [y/n]: n
Logical volume movie NOT reduced

ファイルシステムを縮小したので合わせてLVも縮小させる。
が、LVが有効になっているので止めないといけないって怒られた。

# lvchange -a n /dev/SrvGroup/movie

LVを止める。

# lvresize -L 800G /dev/SrvGroup/movie
Reducing logical volume movie to 800.00 GiB
Logical volume movie successfully resized

今度はちゃんと縮小できました。

2012/01/19

partedでパーティションを作った。

# parted -s /dev/sdb mklabel gpt
# parted -s /dev/sdc mklabel gpt
# parted -s /dev/sdd mklabel gpt

# parted -s /dev/sdb mkpart md1 2048s 1000GB
# parted -s /dev/sdc mkpart md1 2048s 1000GB
# parted -s /dev/sdd mkpart md1 2048s 1000GB

これらをRAID5でつないでLVMで管理しよう。

2012/01/02

SL6でepgrecを動かすのにいくつかハマったメモ

・手動で番組表を取得しようとしたのにgetepg.phpが動かなかった。
 →do-record.shが悪かっただけ。
  デフォルトのdo-record.sh.pt1のリネーム、またはdo-record.shを使って録画して
  問題を切りわけるべきだった。

・こんなメッセージが出た。
 > PHP Fatal error: Call to undefined function msg_get_queue() in /var/www/epgrec/recorder.php on line 151
 > PHP Fatal error: Call to undefined function msg_get_queue() in /var/www/epgrec/Reservation.class.php on line 376

 これはパッケージが不足していたのが原因。
 メッセージ通りにmsg_get_queue()が見つからないということだったので調べたところ
 msg_get_queueはphp-processパッケージに入っているらしい。
 # yum install php-process を実行することで解決。

2012/01/01

SL6にPT2を設定しようとしてる。

SL6にPT2を設定しようとする場合、カードリーダーの動作確認としてpcsc_scanコマンドを導入するのにちょっと手間取るのでメモ。

pcsc_scanコマンドはpcsc-toolsパッケージに入っているのだけれど、SL6のデフォルトのリポジトリにはない。
なので、別ディストリのpcsc-toolsパッケージを使ってやる。

今回使ったのはfedora13用のpcsc-toolsパッケージ。

[root@localhost src]# rpm -q pcsc-tools
pcsc-tools-1.4.16-1.fc13.x86_64
[root@localhost src]# rpm -q pcsc-perl
pcsc-perl-1.4.8-2.fc13.x86_64

pcsc-toolsはpcsc-perlパッケージが必要なので、こちらもfedora13用のパッケージを使うことで解決。