yuu_nkjm blog
2012-02-05(Sun) [長年日記] 編集
[openSUSE][Linux][Windows][Troubleshooting] OSが正常起動しない
接続機器に問題がある
USB接続機器(USB HDD)の問題
- USB HDDなどのUSB接続機器がささっていると,OSがブートしなくなることがあるので,抜いてから起動してみる.抜いて起動したとしても,今度は「ディスクの接続状況の不整合」のようなエラーが待っていることも多い.
ハードディスクに問題がある
ディスクの接続状況の不整合
- yast->System->パーティション設定や/etc/fstabを確認する.
- /etc/fstabに書かれた/dev/sdaなどのディスクが存在しないと通常のブートが出来なくり,レスキューモードで起動される.「ブートに必須のデータが入っていないHDDだし,なくてもbootするやろ」と軽い気持ちでいると,やられることがある.
- レスキューモードでbootすると,rootのパスワードを聞かれる.ログインすると「通常起動するなら"systemctl default"と入れろ」など促される.yastを使うか/etc/fstabを編集するなどして,設定と接続状況が整合するようにする.
ファイルシステムの不整合
レスキューモードの様な形でOSが起動し,以下の様に表示されることがある.
ata_id HDIO_GET_IDENTITY failed for /dev/sdc: Invalid argument fsck.ext2 Bad magic number in super-block while trying to open sdc2
祈りながらfsckをするぐらいしかないのか….
fsck -y /dev/sdc2
[ツッコミを入れる]
2012-02-04(Sat) [長年日記] 編集
[KVM][openSUSE] KVMクライアントに新しい仮想HDDを追加する
disk1.rawにゲストOSがインストールされているとする.
仮想HDDの作成
qemu-img create -f qcow2 bkup.qcow2 50G ls -la drwxr-xr-x 2 root root 4096 2月 1 14:29 . drwxr-xr-x 7 root root 4096 2月 1 13:29 .. -rwxr-xr-x 1 root root 32212254720 2月 1 13:28 disk1.raw -rw-r--r-- 1 root root 197632 2月 1 14:27 bkup.qcow2
qcow2で作成すると,初期値は小さくてなかなか良い感じ.
仮想HDDの変換(余談)
変換したHDDを追加したいこともあると思うので,ここに載せる.例えば,rawからqcow2に変換するコマンドは以下.
qemu-img convert -O qcow2 /path/to/disk1.raw /path/to/disk1.qcow2
仮想HDDの追加
仮想マシンを選ぶ -> 詳細 -> ハードウェアの追加->ストレージ 管理しているストレージを選択する:先ほど作成した仮想HDDのパス デバイスの種類:Virtio キャッシュモデル:default Storage format: qcow2
起動しようとすると,起動できない!
bkup.qcow2を追加する前のkvm.nkjm.infoのdisk部分はこんな感じだった.
<disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/kvm/images/kvm.nkjm.info/disk1.raw'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk>
追加したあと"virsh dumpxml kvm.nkjm.info"として設定を確認すると,なぜかvdaがbkup.qcow2になってしまっている.
<disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/mnt/bkup/kvm.nkjm.info/bkup.qcow2'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/kvm/images/kvm.nkjm.info/disk1.raw'/> <target dev='vdc' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk>
追加したあとxmlを確認すると,なぜかvdaがbkup.qcow2になってしまっている.
"virsh edit kvm.nkjm.info"として下記の様に修正する.
<disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/kvm/images/kvm.nkjm.info/disk1.raw'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/mnt/bkup/kvm.nkjm.info/bkup.qcow2'/> <target dev='vdc' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk>
[ツッコミを入れる]
2012-02-03(Fri) [長年日記] 編集
[KVM][openSUSE][Linux][Network][Troubleshooting] ネットワークに接続できない
「サーバがネットワークに繋がらないんですけど」とか聞かれた時に,僕がやろうとぱっと思うことをメモ.
ネットワークに繋がっていない
- LANケーブルが正しいポートに刺さっていることを確認する.サーバだと複数のネットワークポートがあり,間違えることがある.
- LEDの確認をする.連載:詳説 TCP/IPプロトコル 第9回 イーサネット(その4)フロー制御とVLAN、トラブルシューティング -- 3.トラブルシューティング(LEDによる確認)
- 当該サーバの上流が生きていることを確認する.当該サーバのの上流のハブからLANケーブルを引き出し,当該サーバと同じネットワーク設定をしたノートPCにつなぎ,疎通を確認する.
- ping,telnet,sshなどを使って外部からのアクセスを確認する.ICMPによる通信が許可されていないのにpingで確認をしたり,sshdが起動していないのにsshで確認したりしないように気をつける.
- "ethtool eth0","ethtool br0"などして,有効なEthernetに接続されていることを確認する.
- ifconfigで,ネットワークカードが認識され,IPアドレスが意図通り割り振られていることを確認する.
- "/etc/init.d/network restart"をする.
名前解決ができていない
- dig google.comなどして,名前解決が出来ているかを確認する.
- 確実に通信ができるDNSサーバに対して名前解決を依頼する."dig @dns.nkjm.info google.com"
- yastのネットワークの設定から,DNSリゾルバのIPアドレス/etc/resolv.confの設定が,基本的なDNSリゾルバの設定である.
外部へのHTTPアクセスが出来ない
- wgetをプロキシが見つからず,外部へのHTTPアクセスができない.プロキシの設定が間違っていることもあるし,プロキシの設定はあっているのだが,名前解決ができていないこともある.
- プロキシの設定は/etc/sysconfig/proxy,~/.bashrc,/etc/wgetrcなどに書かれている.
その他
- どこでPROXYやDNSサーバの設定をしているのか分からないときは,"grep -iRI PROXY /etc /home/hoge/.*"などして,/etcやホームディレクトリを検索するとよい.
[ツッコミを入れる]