Accessing files from WindowsXP NTFS external firewire hdd...
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Accessing files from WindowsXP NTFS external firewire hdd...
I hope this is in the right forum...
I've searched the forums high and low, and I've found certain threads with useful information, but I'm still confused.
How can I access the files on my NTFS formatted firewire external hdd? I can see the drive, which linux mounts automatically, but it's empty. I've found info about the mount command, but I get an error message saying it's the wrong file system when I type:
mount -t NTFS /dev/sda /mnt/hd
So I get this response:
mount: wrong fs type, bad option, bad superblock on /dev/sda,
or too many mounted file systems
So, after checking just about every forum I can think of, I hear stuff about fstab. So I go check it out.
it says a lot of stuff, but these are the lines that I think are relevant to the external drive.
I have NO IDEA what that all means. I see it says SCSI, which I read somewhere linux sometimes thinks a firewire drive is. other than that, it might as well be chinese. (I don't speak chinese.) I considered just deleting the line, but then what? Can I just type the mount command I pasted above to mount it properly, this time?
Basically, how on earth do I see the files that I put on that drive from windows?
Some supplemental info:
I run a dual-boot system. one internal hard drive is partitioned into 3 sections. 2 windows NTFS partitions on hda1 and hda2, and 3 linux partitions (hda5, 6 and 7). I don't know what hda3 and 4 are. the only other hdd is the external firewire. One large NTFS 160 gig partition that already has data on it I'm not willing to lose from before I installed linux. I can see the internal partitions from windows just fine, and they're the exact same file system.
I'm running Mandrake 10 CE linux. It's a dual Althon MP 2000+ system. I understand that I can't write to NTFS, but that's ok. I just want access to my mp3s and porn while in linux. I... I don't want to have to hurt anybody.
If I can just get at my porn from linux, I can get out of here and no one has to get hurt, alright?
Just like jack the stripper, let's go piece by piece....
1. Post here the entire /etc/fstab so we can try and hack it a bit more. These lines are of little help.
2. There's a link/button in the upper right of every linuxquestions forum page named "hcl", see? Check it out, if your firewire drive is supported.
3. hda5, 6 and 7 are logical partitions. The lowest number a logical partition can display is 5, because every hdd can have up to 4 primaries. Even if you don't currently use four primaries, the system will not assign a logical partition a number lower than 5. The swap should be hda3 and the extended one containing 5, 6 and 7 should be 4, or vice-versa. Got it? Try to issue the command "df" on the console.
4. Take a look at the output of the command "dmesg" and see if it contains any firewire lines. Also, look at the boot.log messages. You might find something useful.
5. Post again.
Last edited by bruno buys; 04-26-2004 at 12:01 AM.
and this: (since it mentions SCSI, and I have no SCSI drives)
Quote:
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0
I figure I should also point out that in Mandrake Control Center, under Hardware, it lists this drive under Disk Drives as "sda" and has the following information:
Quote:
Bus: SCSI
Location on the bus: 0:0:0
Channel: 00
New devfs device: /dev/scsi/host0/bus0/target0/lun0/disc
Old device file: /dev/sda
Floppy format: Maxtor 6 Y160P0
Media class: hd
now, it seems to me that it clearly thinks this is a different drive than it is. Can I fix this? Even if there isn't any official support for the make and model drive I have? I don't need to write to it, only read.
Does these win partition under hda (1 and 2) read ok? Since fstab lists them as ntfs, i'm assuming your ntfs kernel module is loading ok. To make sure, issue (as root): "modprobe ntfs". If it succeeds, there will be no output. If it fails, will print some info. Then, list the currently loaded modules: lsmod (without arguments). Look for the ntfs entry.
Now, one thing called my attention in your fstab. The last entry:
dev=/dev/scsi/host0/bus0/target0/lun0/part1,fs=ext2:vfat,--,umask=0,iocharset=iso8859-1,kudzu,codepage=850 0 0
If this entry addresses your device, the filesystems are wrong, right? Should be ntfs. You see scsi here because linux uses scsi emulation for a variety of devices. My ide cdrw lists as sc0, for example.
What does this line mount?
none /mnt/hd supermount
Does firewire need any special driver? Try looking at the output of lsmod for any firewire related stuff.
What do you mean by "I can see the drive?" in your first post? Where can you see it?
Not listed in hcl is not a conclusive answer, since the database is mantained by the same people who answers questions. Maybe no one bothered to fill an entry for this device. But a positive entry would be good news, indeed.
Re: Re: Accessing files from WindowsXP NTFS external firewire hdd...
Quote:
Originally posted by citrus i might be really out of line when i say
did you try
mount /dev/sda1 /mnt/hd
adding the 1 in there..... (given that the ntfs partition your are trying to access is the first partition on the drive....)
sorry if this really doesn't help at all since i have no experience with this
and my buddy had to compile to 2.6 to get is firewire drive working correctly.........
Yeah, I tried that after I posted, when I realized my error. But it still didn't work. I got precisely the same error message. and I'm pretty sure I'm using 2.6.
Originally posted by bruno buys
Does these win partition under hda (1 and 2) read ok? Since fstab lists them as ntfs, i'm assuming your ntfs kernel module is loading ok. To make sure, issue (as root): "modprobe ntfs". If it succeeds, there will be no output. If it fails, will print some info.
Yeah, they read ok. I can read the data on the windows partitions just fine and modprove doesn't output anything.
Quote:
Then, list the currently loaded modules: lsmod (without arguments). Look for the ntfs entry.
Now, one thing called my attention in your fstab. The last entry:
dev=/dev/scsi/host0/bus0/target0/lun0/part1,fs=ext2:vfat,--,umask=0,iocharset=iso8859-1,kudzu,codepage=850 0 0
If this entry addresses your device, the filesystems are wrong, right? Should be ntfs. You see scsi here because linux uses scsi emulation for a variety of devices. My ide cdrw lists as sc0, for example.
Yeah, I noticed that, too. So what does this mean for me?
Quote:
What does this line mount?
none /mnt/hd supermount
no idea.
Quote:
Does firewire need any special driver? Try looking at the output of lsmod for any firewire related stuff.
see above for lsmod output.
Quote:
What do you mean by "I can see the drive?" in your first post? Where can you see it?
I just meant that the scsi entry listed in fstab (which seems to me to be the entry for my firewire drive) is mounted and visible on my desktop as a drive. But when I open it there's nothing inside. One of the things that bothers me is that fstab seems to think it's both a vfat formatted drive and a SCSI drive as well. obviously neither is the case.
Quote:
Not listed in hcl is not a conclusive answer, since the database is mantained by the same people who answers questions. Maybe no one bothered to fill an entry for this device. But a positive entry would be good news, indeed.
Well, my friend... I'm running out of ideas.
What most certain to me, so far is:
Your firewire device is NOT listed in /etc/fstab. It makes sense, since is a removable device. If it was written on the fstab, once you remove it, the next boot will popup errors, cause the system will look for it. It'd better be mounted and unmounted every time the user needs it.
Did you try and see if mdk has a control center for hardware, where it can list some info about this device?
You can try some experimental hacking on your box, and see what changes are made. These trials won't do no harm, don't be afraid. Make a backup of your /etc/fstab, just to be safe, before you start.
1. Comment out the line "none /mnt/hd supermount" from your fstab. Do you know the comment option? If you type a # (means a comment) in the beginning of the line the system ignores that line. This way you don't need to delete it.
Now reboot and see what changes.
2. Copy this entire line and paste it again in the fstab file, so as to have it duplicate. This way its very easy to consult the original one.
dev=/dev/scsi/host0/bus0/target0/lun0/part1,fs=ext2:vfat,--,umask=0,iocharset=iso8859-1,kudzu,codepage=850 0 0
Now comment out the first one. The second you will edit, and try to mount the device (if this line is correct. We don't know this, yet).
Try some editing like this:
".....arget0/lun0/part1,fs=ntfs,--,umask=0,iocharset=iso8859-1,kudz...." #Only ntfs as a fs
".....arget0/lun0/part1,fs=ntfs:vfat,--,umask=0,iocharset=iso8859-1,kudz...." # ntfs and vfat
".....arget0/lun0/part0,fs=ntfs,--,umask=0,iocharset=iso8859-1,kudz...." # part0 instead of part1, just trying.
3. If the device is still missing, you can try the command hdparm. hdparm is used by root to set some properties of harddisks and cdroms. I'm not sure if it can work on a firewire device, but is worth trying.
First try it on the hda drive, to see a simple use:
(as root): hdparm /dev/hda
This will list some info about the disk. Try and issue hdparm --help to see all the available commands.
If you do a hdparm /dev/hdc hdparm will show you the properties for your cdrom.
Now the funny stuff: try to point hdparm to places where it can find your fw device:
hdparm /dev/sc0
hdparm /dev/sd0
hdparm /dev/scd0
hdparm /dev/scd1
To make it more accurate, you can take a walk on /dev directory and see what kind of devices you have.
If we couldn't find anything up to here, I really don't know, friend.
Take a look at places over the internet where you can find info about firewire and drivers. Ask more.
Try downloading a distro that runs from a cd and see if it detects your drive. This is an easy way to know if any linux will see the drive. SuSE has a hardware support that is known to be very good. you can dowload their live eval CD 9.1. Try knoppix too. Knoppix is very good, fast and has a great hardware detecting system.
I know it's kinda frustrating, but my feeling is that this drive will work. Just needs a bit of time and patience. When you find out what's the problem, it will look ridiculous....
thanks for all the help. I'll try those things out. After that, i'll just throw myself into researching mount, fstab, and firewire until I understand them all as completely as possible to jury-rig it myself.
and went step by step through every process involved with making firewire work.... only to discover mandrake 10 has firewire working fine.
then I checked the FAQ on how to mount a firewire hard drive and they explained that it mounts as a SCSI device for a reason I don't fully understand.
then they gave the precise mount call to mount it, and it worked. I don't know why. I'd tried it before, and it didn't. it might be because I'd installed the libraw1394 files from linux1394 since then?
1 problem: only root can access the mount directory the filesystem was mounted TO. if I go into kde as root, that's no problem, but i don't like doing that.
I tried logging into kde as root and then right clicking the mnt/hd directory that I mounted the drive to to change the permissions but I got an error message saying it couldn't change the permissions for the directory without giving me a reason why. so now I'm stuck. how can I access this from my normal user login?
also: though not as important... fstab... any idea how to arrange the mount command I linked to above (in my case it would be: mount -t ntfs /dev/sda1 /mnt/hd) in fstab so that this thing mounts automatically at boot while still allowing all users to read the drive?
I tried /dev/sda1 /mnt/hd ntfs users ro 0 0
and at boot the computer just ignored that line and created a whole other convoluted scsi KUDZU line like the one i mentioned way above in an earlier post.
if I can't get it to mount automatically, is there a way to keep hotplug from automatically mounting it and making a bogus entry in fstab at every boot besides turning the drive off every time I reboot?
****mounts as a SCSI device for a reason I don't fully understand.*****
Sometimes its easier to adapt an existent software to work with new features than to write one from scratch. Scsi was the standard for mass storage devices, so I guess they justr used it for new devices. CDRW use scsi too, no matter they are ide.
*****then they gave the precise mount call to mount it, and it worked. I don't know why. I'd tried it before, and it didn't. it might be because I'd installed the libraw1394 files from linux1394 since then?*****
I guess it was.
****1 problem: only root can access the mount directory the filesystem was mounted TO. if I go into kde as root, that's no problem, but i don't like doing that.****
Not be be logged as root all the time is good practice. Keep like this.
Instead, try to create a new dir under /mnt, set the permissions the way you want, and then, edit fstab to point to this new one. Or better: If now you can unmount the firewire as root, just unmount it and mount in this new dir, to test (don't have to reboot like this). Then you see if it is acessible by normal users. If it is, edit fstab.
****I tried logging into kde as root and then right clicking the mnt/hd directory that I mounted the drive to to change the permissions but I got an error message saying it couldn't change the permissions for the directory without giving me a reason why. so now I'm stuck. how can I access this from my normal user login?*****
If the above procedure works, you don't have to workaround this. Anyway, what are the current permissions of the /mnt/hd dir?
*****also: though not as important... fstab... any idea how to arrange the mount command I linked to above (in my case it would be: mount -t ntfs /dev/sda1 /mnt/hd) in fstab so that this thing mounts automatically at boot while still allowing all users to read the drive?
I tried /dev/sda1 /mnt/hd ntfs users ro 0 0******
This line is correct. Strange....
I'm not sure about this, but try to replace "user" with "default".
****and at boot the computer just ignored that line and created a whole other convoluted scsi KUDZU line like the one i mentioned way above in an earlier post.*****
Can you post this line? So, when the computer boots up, the drive isn't mounted correctly?
****if I can't get it to mount automatically, is there a way to keep hotplug from automatically mounting it and making a bogus entry in fstab at every boot besides turning the drive off every time I reboot?*****
Well, you will be able to mount it correctly at boot time. We just have to figure why fstab entries are ignored. And there are other ways to implement mounting of this device. Instead of opening a console and typing the root command every time you need to mount the drive, you can write this command inside a shell script, save it, and link it on your desktop. Once you did that, mounting the drive is all about clicking an icon on the desktop. It's very easy, I can do that with you.
so, I created another directory in /mnt, and before I mounted the drive's filesystem to that directory, the permissions allowed everyone to read the directory. as soon as I mounted the drive, the permissions changed and it won't allow me to set them back. This, I believe, is because you can't change the permissions of a mount directory once something's been mounted to it. But why would it change the permissions at mount time? I'd put the umask=0000 option into fstab if it weren't for the fact that I can't seem to get fstab to work properly. I mean, OTHER devices and drives work fine with fstab, but the firewire drive gets rewritten into it every time I boot as follows:
and my own line for the device seems to create an error at boot. something about there being no device /dev/sda1.
what I find funny is that, if I change the above fstab line AT ALL, then a new one just like it gets written. even if I just change the fs option to fs=ext2:ntfs.
I still don't fully understand this supermount deal that I see in the line, and elsewhere in my fstab. if anyone can point me to a link detailing supermount, that would rock. as near as I can tell, you tell fstab your mounting NO DEVICE (none) at the mountpoint you want (/mnt/Tennyson) then you say you're doing a supermount THEN you list the device and some options. I don't know why. Anyway, thanks a whole lot. couldn't have done it without you.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.