snbhsmt_log

ネットワークとコンピュータ、その他いろいろ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

CentOS 5 インストール出来ず

CentOS 5 レスキュー CD のカーネルを /boot にコピーして ネットワーク・インストールしようとしたら以下のメッセージが出た。
You do not have enough RAM to install
CentOS on this machine.
64MB のメモリでは足りないらしい。 Pentium II 266MHz なマシンじゃメモリを増設する気にもならないので、 とりあえず CentOS 4.3 (ServerCD) をインストール。

HDD エラー

RHL6 の頃からお世話になっていた HDD がとうとうダメらしい。

selene$ grep hda /var/log/messages
Nov 30 22:57:37 selene kernel:     ide0: BM-DMA at 0xd800-0xd807, BIOS settings: hda:DMA, hdb:pio
Nov 30 22:57:37 selene kernel: hda: QUANTUM FIREBALL ST4.3A, ATA DISK drive
Nov 30 22:57:37 selene kernel: hda: attached ide-disk driver.
Nov 30 22:57:37 selene kernel: hda: task_no_data_intr: status=0x51 { DriveReady SeekComplete Error }
Nov 30 22:57:37 selene kernel: hda: task_no_data_intr: error=0x04 { DriveStatusError }
Nov 30 22:57:37 selene kernel: hda: 8418816 sectors (4310 MB) w/81KiB Cache, CHS=524/255/63, UDMA(33)
Nov 30 22:57:37 selene kernel:  hda: hda1 hda2 < hda5 hda6 hda7 hda8 hda9 >
Nov 30 23:03:17 selene kernel: hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
Nov 30 23:03:17 selene kernel: hda: dma_intr: error=0x84 { DriveStatusError BadCRC }

Fedora 8 レスキューCD カーネルのチェックサム

Fedora 8 レスキュー CD のカーネルのチェックサムをメモしておく。 レスキュー CD の ISO イメージは改竄チェック済み。

bohm$ sha1sum vmlinuz initrd.img
70a7d0dc0113e3b29e37af0837e2a4cb641e24be  vmlinuz
f5e7853c7a4dc38362ec454d2857aee58d9cd7d8  initrd.img
bohm$ md5sum vmlinuz initrd.img
880d6643506698377e5dc06f9995f55c  vmlinuz
9141501476f612e5f6e69f2794705d2c  initrd.img

vim の文字コードに関する設定

vim での文字コードの確認、設定について調べてみた。 ファイルを開く毎にいちいち文字コードを確認していられないので、 文字コードと改行コードをステータス・ラインに表示する様にした。
環境 : Windows XP SP2 / vim 6.4

文字コードに関する変数名 (と省略形) とその意味は以下。

変数名省略形意味
encodingenc 内部での文字コードを指定
fileencodingfenc 現在のファイルの文字コードを指定
fileencodingsfencs 自動判別に用いる文字コードをカンマで区切って優先度の高い順に指定
fileformatff改行コードを指定

値を確認する。

:set encoding?

設定する。 設定ファイルに記述する場合は先頭のコロンは不要。

:set encoding=euc-jp

設定できる文字コード値の一部。

  • sjis
  • euc-jp
  • utf-8
  • iso-2022-jp

設定できる改行コード値。

  • dos
  • mac
  • unix

statusline 変数に以下を含めると、 ステータス・ラインに文字コードと改行コードを表示できる。 fileencoding (&) が空文字列でなかったら fileencoding を、 そうでなければ encoding (&enc) を表示。 fileformat (&ff) はそのまま表示。 値はそれぞれ "[...]" で囲んで表示している。

set statusline= ... [%{&fenc!=''?&fenc:&enc}][%{&ff}] ...

CentOS 5 のインストール・カーネルのチェックサム

CentOS 5 のインストール・カーネルのチェックサムをメモしておく。

$ cd /mnt/isolinux
$
$ sha1sum vmlinuz initrd.img
9a2707ea86a538ceed7b5c65521cdfee714e3587  vmlinuz
68cb04bda8271ba352c35460d2767e397a560eaf  initrd.img
$
$ md5sum vmlinuz initrd.img
846800dad6d6b872a28244bcbb401d5a  vmlinuz
e0e45a29f1478e1406d822656092b6bc  initrd.img

この値を表示するまでの手順は以下。

まず CentOS 5 の 1 枚目の ISO イメージをダウンロード。

$ wget http://ftp.riken.jp/Linux/centos/5.0/isos/i386/CentOS-5.0-i386-bin-1of6.iso
ISO イメージのチェックサムファイルと署名もダウンロード。
$ wget http://ftp.riken.jp/Linux/centos/5.0/isos/i386/sha1sum.txt
$ wget http://ftp.riken.jp/Linux/centos/5.0/isos/i386/md5sum.txt
$
$ wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.0/isos/i386/sha1sum.txt.asc
$ wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/5.0/isos/i386/md5sum.txt.asc

チェックサムファイルを署名検証。

$ gpg --verify sha1sum.txt.asc
          :
gpg: Good signature from ...
$
$ gpg --verify md5sum.txt.asc
          :
gpg: Good signature from ...

チェックサムファイルの署名が正しい事が分かったので、このファイルで ISO イメージの改竄チェック。

$ sha1sum --check sha1sum.txt
CentOS-5.0-i386-bin-1of6.iso: OK
          :
$ md5sum --check md5sum.txt
CentOS-5.0-i386-bin-1of6.iso: OK
          :

ISO イメージが改竄されていない事が分かったのでマウント。

# mount -t iso9660 -o loop ./CentOS-5.0-i386-bin-1of6.iso /mnt

Linux で無線 LAN カード利用

Fedora 7 で無線 LAN カードを利用してみた。

  • Let's note (CF-A77)
  • Fedora 7
  • WLI-PCM-L11GP (無線 LAN カード)

カードを挿入すると /var/log/messages に以下が出力され、 orinoco_cs ドライバがロードされた。

Oct 21 02:19:34 tolkein kernel: pccard: PCMCIA card inserted into slot 0
Oct 21 02:19:34 tolkein kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean.
Oct 21 02:19:34 tolkein kernel: pcmcia: registering new device pcmcia0.0
# pccardctl ls
Socket 0 Bridge:        [yenta_cardbus]         (bus ID: 0000:00:0a.0)
Socket 0 Device 0:      [orinoco_cs]            (bus ID: 0.0)
# pccardctl status
Socket 0:
  5.0V 16-bit PC Card
  Subdevice 0 (function 0) bound to driver "orinoco_cs"
# pccardctl ident
Socket 0:
  product info: "MELCO", "WLI-PCM-L11", "Version 01.01", ""
  manfid: 0x0156, 0x0002
  function: 0x6 (network), 9
# lsmod | grep orinoco_cs
orinoco_cs             19781  1
orinoco                41941  1 orinoco_cs
hermes                 11201  2 orinoco_cs,orinoco

kudzu を実行すると modprobe.conf にドライバが書き加えられ、 ifcfg-eth1 が生成された。

# cat /etc/modprobe.conf
         :
alias eth1 orinoco_cs
# cat /etc/sysconfig/network-scripts/ifcfg-eth1
# MELCO WLI-PCM-L11 Version 01.01
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=dhcp
HWADDR=<無線 LAN カードの MAC アドレス>

ハードウェア的にちゃんと認識している様なので、 このインターフェイスを有効にしてみる。
無線 LAN の通信を暗号化するため WEP キーを設定。

# cd /etc/sysconfig/network-scripts
# touch keys-eth1
# chmod 400 keys-eth1
# echo 'KEY=<WEP キー>' > keys-eth1

ifup eth1 を実行すると dhclient が起動して eth1 がアクティブになった。

# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr **:**:**:**:**:**
          inet addr:192.168.0.69  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::202:****:****:****/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:75 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6002 (5.8 KiB)  TX bytes:1572 (1.5 KiB)
          Interrupt:3 Base address:0x100
# iwconfig eth1
eth1      IEEE 802.11b  ESSID:"*********"  Nickname:"HERMES I"
          Mode:Managed  Frequency:2.437 GHz  Access Point: **:**:**:**:**:**
          Bit Rate:11 Mb/s   Sensitivity:1/3
          Retry limit:4   RTS thr:off   Fragment thr:off
          Encryption key:****-****-****-****-****-****-**   Security mode:open
          Power Management:off
          Link Quality=56/92  Signal level=-39 dBm  Noise level=-95 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0
/etc/modprobe.conf と /etc/sysconfig/network-scripts/ifcfg-eth1, keys-eth1 が正しく設定されていれば PC カードを挿すだけで無線 LAN が使える様だ。

/etc/sysconfig/network-scripts/ifcfg-eth1 が存在するので、 この PC カードを挿して起動すれば eth1 がアクティブになる。 逆に PC カードを挿さないで起動するとエラー・メッセージが出るが動作には 影響無いのでたいした問題ではない。

いつも無線 LAN カードを利用する訳ではない場合は注意が必要。 kudzu を自動起動している場合、無線 LAN カードを挿していなくて eth1 が 存在しないと modprobe.conf から orinoco_cs ドライバが削除され、 ifcfg-eth1 が ifcfg-eth1.bak にリネームされてしまう。 この状態で無線 LAN カードを挿しても eth1 はアクティブにならない。 という事で chkconfig kudzu off して kudzu の自動起動をやめた。

pccardctl コマンドは pcmciautils パッケージに、 iwconfig コマンドは wireless-tools パッケージに含まれる。

kudzu の処理

kudzu プログラムはハードウェア構成をチェックして以下を作成する。

  • /etc/modprobe.conf
  • /etc/sysconfig/network-scripts/ifcfg-eth?
  • /etc/sysconfig/hwconf

例えば eth1 が PC カードの NIC だとして、 この PC カードを挿した状態で実行するとその情報が上記ファイルに記述され、 抜いた状態で実行するとその情報は上記ファイルに記述されない。

盲点だったのが ifcfg-eth? ファイルで、eth1 デバイスが存在し ifcfg-eth1 が存在しない場合は自動生成され、eth1 が存在せず ifcfg-eth1 が存在する場合は ifcfg-eth1.bak にリネームするという動作。

ifcfg-eth? の生成内容を制御する方法は無い様なので、挿入されている PC カードの種類によって生成する ifcfg-eth? の内容を変えるといった事は出来ないのだろうか。

  • Let's note (CF-A77)
  • Fedora 7
  • WLI-PCM-L11GP (PC カード)

Linux で PC カードを抜くとき

今 Socket 0 に PCMCIA カードが挿さっている。

# /sbin/pccardctl ls
Socket 0 Bridge:        [yenta_cardbus]         (bus ID: 0000:00:0a.0)
Socket 0 Device 0:      [orinoco_cs]            (bus ID: 0.0)

これを抜く場合、まず pccardctl eject 0 でシステム的な切り離し処理を行ってから物理的にカードを抜くのが安全らしい。

  • Let's note (CF-A77)
  • Fedora 7

« Prev|Top|Next »

HOME

Author:snbhsmt
Google Profiles

http://www.ksky.ne.jp/~snbhsmt/

全ての記事を表示する

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。