-   Linux - Hardware (
-   -   /dev/sda1 not valid block device (

pcpinkerton 02-22-2004 12:28 PM

/dev/sda1 not valid block device
I thought I had it!!??


After reading a thread on this issue I did the following :

modprobe usb_storage and was able to mount /dev/sda1 /mnt/usbhd
just fine.

After rebooting I cannot mount this device any more??

Is this telling me to mounr /dev/sg1?

If so I get the same error:

mount -t ext3 /dev/sg1 /mnt/usbhd
mount: /dev/sg1 is not a block device!!

Geeze It mounted yesterday. I only rebooted?

I get : dmesg snips
drivers/usb/core/usb.c: registered new driver usbfs
drivers/usb/core/usb.c: registered new driver hub

drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface driver v2.1
uhci_hcd 0000:00:1f.2: UHCI Host Controller
PCI: Setting latency timer of device 0000:00:1f.2 to 64
uhci_hcd 0000:00:1f.2: irq 5, io base 0000ef40
uhci_hcd 0000:00:1f.2: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
uhci_hcd 0000:00:1f.4: UHCI Host Controller
PCI: Setting latency timer of device 0000:00:1f.4 to 64
uhci_hcd 0000:00:1f.4: irq 9, io base 0000ef80
uhci_hcd 0000:00:1f.4: new USB bus registered, assigned bus number 2
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
drivers/usb/core/usb.c: registered new driver usbkbd
drivers/usb/input/usbkbd.c: :USB HID Boot Protocol keyboard driver
drivers/usb/core/usb.c: registered new driver usbmouse
usb 1-2: new full speed USB device using address 2
usb 2-2: new full speed USB device using address 2
SCSI subsystem initialized
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
Vendor: SONY Model: DVD RW DRU-510A Rev: 1.0c
Type: CD-ROM ANSI SCSI revision: 02
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
scsi1 : SCSI emulation for USB Mass Storage devices
Vendor: IC35L090 Model: AVV207-0 Rev: V23O
Type: Direct-Access ANSI SCSI revision: 02
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
drivers/usb/core/usb.c: registered new driver usb-storage
USB Mass Storage support registered.

Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 5
Attached scsi generic sg1 at scsi1, channel 0, id 0, lun 0, type 0

mount /dev/sda1 /mnt/usbhd
mount: you must specify the filesystem type.

mount -t ext3 /dev/sda1 /mnt/usbhd
mount: /dev/sda1 is not a valid block device.

usb_storage 65472 0
scsi_mod 115512 2 sg,usb_storage

0000:00:00.0 Host bridge: Intel Corp. 82850 850 (Tehama) Chipset Host Bridge (MCH) (rev 02)
0000:00:01.0 PCI bridge: Intel Corp. 82850 850 (Tehama) Chipset AGP Bridge (rev 02)
0000:00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB PCI Bridge (rev 02)
0000:00:1f.0 ISA bridge: Intel Corp. 82801BA ISA Bridge (LPC) (rev 02)
0000:00:1f.1 IDE interface: Intel Corp. 82801BA IDE U100 (rev 02)
0000:00:1f.2 USB Controller: Intel Corp. 82801BA/BAM USB (Hub #1) (rev 02)
0000:00:1f.3 SMBus: Intel Corp. 82801BA/BAM SMBus (rev 02)
0000:00:1f.4 USB Controller: Intel Corp. 82801BA/BAM USB (Hub #2) (rev 02)
0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon VE QY
0000:02:0a.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07)
0000:02:0a.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 07)
0000:02:0c.0 Communication controller: Conexant HCF 56k Data/Fax/Voice/Spkp Modem (rev 08)
0000:02:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 78)

uname -r

1,0,0 100) 'IC35L090' 'AVV207-0 ' 'V23O' Disk
Bus 002 Device 002: ID 0c0b:b001 Dura Micro, Inc. (Acomdata)


busbarn 02-22-2004 12:56 PM

I've had this happen before too and I don't know why. I guess when your computer starts, it assigns a device name to your devices depending on the order in which they were plugged in. For example, if you have another usb device plugged in, it might have become sda1 during the reboot, so now your device might be sdb1. There are only two ways that I have found to solve this problem:
1. Mount as root, including the fs type.

root# mount -t vfat /dev/sda1 /mnt/usbhd
2. Using the 2.6.3 kernel, I wrote udev rules so that the device is always named /dev/usbhd. Here's a good tutorial on how to do that.

pcpinkerton 02-22-2004 02:18 PM

still I get /dev/sda1 not a valid block device when I use as root mount -t ext3 /dev/sda1 /mnt/usbhd.

Like I said it worked before I re-booted ??

Thanks for trying though


busbarn 02-22-2004 02:33 PM

For some reason, your usb drive isn't being assigned a device address. It looks like the kernel can see it, it just doesn't label it. WHat kernel are you using--2.4.x or 2.6.x?

pcpinkerton 02-22-2004 02:44 PM

uname -r

When I run cdrecord -scanbus I get:


1,0,0 100) ' IC35L090 ' 'AVV207-0 ' 'V230' DISK

I assumed this was a valid address is it Not ?

pcpinkerton 02-22-2004 02:46 PM

See the end of my first post for more details

busbarn 02-22-2004 02:50 PM

have you installed udev or are you still using devfs?

pcpinkerton 02-22-2004 02:57 PM

not sure how do I tell ?? I did not install anything after installing the distro with 2.61 and using apt to upgrade to 2.6.2

busbarn 02-22-2004 02:59 PM

what distro are you using?

pcpinkerton 02-22-2004 03:14 PM

Conectiva 10

Electro 02-22-2004 04:57 PM

Login as su or root and type fdisk -l /dev/sda. If /dev/sda1 doesn't show then the kernel doesn't recoqnize your USB device. You have to add a few lines of code to a certain file or add a line in the usb-distmap in the hotplug directory.

I don't know how kernel 2.6.x is setup. I'm still using kernel version 2.4.x. Probably between March and August I'll try to compile 2.6.x but it depends on VMware if they can revise their modules for 2.6.x kernel.

pcpinkerton 02-23-2004 03:04 PM

we may be getting some where as fdisk -l /dev/sda returns nothing?

Weird as this WAS WORKING until I rebooted!

Note I also need to use VMware and found it will not install.

pcpinkerton 02-23-2004 04:11 PM

I may have found the problem. I plugged the USB-STORAGE device into another system running 2.6.1 kernel
and it mounted ok.

Then I ran lsmod and compared with the 2.6.2 kernel system.

Seems the 2.6.2 kernel is missing usbcore module ? which is weird as my printer is usb and works?

busbarn 02-23-2004 04:20 PM

hmm try updating to 2.6.3 and see if that fixes it.

pcpinkerton 02-24-2004 01:12 PM

NO need to install 2.6.3 Here is what makes it work.

1) turn off USB-Storage device
2) re-boot system
3) turn on USB-Storage device
4) mount /dev/sda1 /mnt/usbhd

Not sure why this works? Perhaps a hot-plug feature/bug?


abs 02-24-2004 01:14 PM

i've got the same problem but with /dev/hda. it was working fine before except for this one time when it didn't. i had compiled a kernel. i just restarted and it worked. so i doubt it's a kernel issue. it's happening again now again, with another kernel. i doubt it's even a driver/module issue, but just to let ull know, the fs modules were included (vfat). why does this happen anyway? (works most of the time)

JaseP 02-24-2004 04:48 PM

I have a similar problem with a SanDisk Cruzer Mini 128 running on SuSE 8.2 with a 2.4.20 kernel.

On my desktop machine, I can get the thing to mount, but on the laptop machine I have, it hangs trying to mount. When I do a dmesg, I see that the thing is being assigned to /dev/sda1,... but it won't mount no matter what I do.

Frustrating. I can only assume it's a chipset related bug thing with USB services...

abs 02-25-2004 01:38 AM

so u're saying that the usb module (hotplug one) is causing the problem? i have installed that too. anything else common to systems with these probs?

abs 02-29-2004 04:08 AM

after a restart, it started reading the disk just fine. no idea what's causing this issue.

pcpinkerton 02-29-2004 08:48 AM

After upgrading to 2.6.3 the problem continued however I made the following changes :

1) removed the scsi emulation from the kernel
2) re-boot with the usb_storage device off
3) ran modprobe usb_storage
4) ran modprobe usb
5) lsmod

Module Size Used by
sd_mod 15648 2
uhci_hcd 28688 0
sg 36256 0
usb_storage 94992 1
scsi_mod 111416 3 sd_mod,sg,usb_storage
snd_pcm_oss 49188 0
md5 4096 1
ipv6 222016 6
psmouse 17800 0
parport_pc 37036 1
lp 11692 0
parport 39912 2 parport_pc,lp
3c59x 37416 0
quota_v2 8704 0
snd_mixer_oss 16896 1 snd_pcm_oss
snd_emu10k1 82180 1
snd_rawmidi 22944 1 snd_emu10k1
snd_pcm 89480 2 snd_pcm_oss,snd_emu10k1
snd_timer 23300 1 snd_pcm
snd_seq_device 8072 2 snd_emu10k1,snd_rawmidi
snd_ac97_codec 55300 1 snd_emu10k1
snd_page_alloc 11908 2 snd_emu10k1,snd_pcm
snd_util_mem 4608 1 snd_emu10k1
snd_hwdep 8964 1 snd_emu10k1
snd 49380 12 snd_pcm_oss,snd_mixer_oss,snd_emu10k1,snd_rawmidi,snd_pcm,snd_timer,snd_seq_device,snd_ac97_codec,sn d_util_mem,snd_hwdep
soundcore 9056 1 snd
agpgart 30248 0
rtc 11576 0
ext3 106152 2
mbcache 8324 1 ext3
jbd 53272 1 ext3

6) turn on usb_storage device
7) ran cdrecord -scanbus ( only way I know to see scsi devices address)
1,0,0 100) 'IC35L090' 'AVV207-0 ' 'V23O' Disk

At this point I still could not mount /dev/sda1 /mnt/usbhd ? HOWEVER !

I tried this next :

8) fdisk /dev/sda1

There was a message about block 0 that would be corrected with a "write" before
leaving fdisk. ( sorry for not coping the message) Well this always freaks me out so I just quit fdisk instead. When I quit fdisk the light flashed on my usb_storage disk so I tried mount /dev/sda1 /mnt/usbhd again. AND IT WORKED !!

I can only guess something weird was written to block zero at some point and prevented me from mounting the disk. I won't know if it was a complete success until I try to re-boot with the mount /dev/sda1 parameters in fstab

Any how for now my system is running 100% on kernel 2.6.3 Just need to figure out how to load the modules on boot instead of running modprobe manually. I think there is a module.conf file that takes cae of this.


All times are GMT -5. The time now is 12:45 AM.