今天遇到一個奇怪的問題,mount一個iso鏡像居然報錯了,報錯如下:
[root@BJS0-032 ~]# mount -o loop -t iso9660 rhel-server-6.3-x86_64-dvd.iso /mnt/cd-rom/
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
以前挂在CD光牒鏡像, 也是使用的這個指令啊,從沒出現的錯誤.
而且這個機器還是我前幾天我親自給供應商挂載的iso...
在發現這個錯誤之前,我使用yum安裝glibc,一直提示有錯誤,我想是不是挂載有問題,
于是就使用umount先解除安裝了,但是沒成功,因為被占用嘛,接着我用lsof查找占用,kill了2個占用,
umount成功後我重新挂載iso, 就報上面的錯了.
接着是排錯:
wrong fs type, bad option, bad superblock on /dev/loop0
其實這句話就應該能想到問題出在哪裡.
再看看dmesg | tail:
[root@BJS0-032 ~]# dmesg | tail
ISOFS: Unable to identify CD-ROM format.
不能識别cdrom格式,我再看看iso的大小和md5
[root@BJS0-032 ~]# ll -h rhel-server-6.3-x86_64-dvd.iso
-rw-r--r--. 1 root root 18M 2月 20 21:42 rhel-server-6.3-x86_64-dvd.iso
這很明顯是錯的,md5都不用看了.
于是重新copy個iso過去,終于可以正常挂載了.
我在解決這個問題上花了挺長時間,主要是iso是我之前copy過去的,還曾經挂載成功過,
不知道為什麼會變成18M了,本來應該是3.4G的,我猜是供應商自己搞壞的吧,難道是我kill程序搞壞的?