# Read-Only Filesystem bei Vfat-Partitionen!?!

## Vecha

Ich hab ein ganz großes Problem,

ich habe 5 FAT32-Partitionen, die ursprünglich (und immernoch) für WinXP gedacht waren.

wenn ich boote, werden alle Partitionen nach /data/windows gemeountet --> also /data/windows/D, /data/windows/F .. usw.

bisher hat alles wunderbar funktioniert, nur seit neuestem kann ich meistens nicht mehr Daten dort abspeichern ...

ich arbeite überwiegend mit dem konqueror, wobei ich auch schon gedacht hab, das liegt an dem - aber geht ja net, denk ich o_O

fehler beim konqueror:  

Could not make folder /data/windows/F/Dokumente & Präsentationen/ ..blubb

in der shell sieht das dann so aus:

```
vecha@sternchen:/data/windows/F > mkdir test

mkdir: cannot create directory `test': Read-only file system

root@sternchen /data/windows/F> mkdir test

mkdir: cannot create directory `test': Read-only file system
```

wenn ich /data/windows/F dann unmounte und wieder mounte, gehts meistens wieder, allerdings lässt sich das oft nicht machen weil dann die Meldung kommt 'Device busy' wobei das eigentlich nicht der Fall ist  :Sad: 

```
root@sternchen /data/windows> umount /data/windows/F/

umount: /data/windows/F: device is busy

umount: /data/windows/F: device is busy

root@sternchen /data/windows> 
```

Meine fstab sieht so aus:

```
#EDIT

/dev/hdc5                       /                               ext3            noatime                                 0 0

/dev/hdc1                       /boot                           ext2            noauto,noatime                          1 2

/dev/hdc2                       none                            swap            sw                                      0 0

/dev/hdb                        /mnt/dvdrom                     iso9660         user,unhide,noauto                      0 0

/dev/sr0                        /mnt/cdrw                       iso9660         user,unhide,defaults,noauto,ro,exec     0 0

/dev/fd0                        /mnt/floppy                     auto            noauto,user                             0 0

none                            /proc                           proc            defaults                                0 0

none                            /proc/sys/fs/binfmt_misc        binfmt_misc     defaults                                0 0

none                            /dev/shm                        tmpfs           defaults                                0 0     

/dev/hdc4                       /data                           ext3            defaults                                0 0

/dev/hdd1                       /data/windows/C                 vfat            rw,uid=1000,gid=35,umask=007            0 0 

/dev/hdd6                       /data/windows/E                 vfat            rw,uid=1000,gid=35,umask=007            0 0

/dev/hdd5                       /data/windows/D                 vfat            rw,uid=1000,gid=35,umask=007            0 0     

/dev/hdd7                       /data/windows/F                 vfat            rw,uid=1000,gid=35,umask=007            0 0

/dev/hdd8                       /data/windows/G                 vfat            rw,uid=1000,gid=35,umask=007            0 0

luna:/data                      /data/luna                      nfs             auto,timeo=30                           0 0

luna:/usr/portage/distfiles     /usr/portage/distfiles          nfs             auto,timeo=30                           0 0     

~                                                                                                                                     

~
```

ich bin echt ratlos, kann mir da bitte jemand helfen!? ich bin nur noch am rummounten *seufz*Last edited by Vecha on Mon Aug 16, 2004 6:38 pm; edited 3 times in total

----------

## amne

Poste mal die Ausgabe von mount und deine /etc/fstab.

----------

## steveb

wie mountest du die partitionenen? mit einträgen in /etc/fstab? wenn ja, dann poste doch mal den inhalt.

gruss

steve

----------

## Vecha

Sorry, ich hatt net gesehn, dass schon jemand geantwortet hat ..

Hab meinen Eintrag noch editiert - jetzt müsst alles nötige drin stehn

----------

## Jlagreen

Hi,

kann dir zwar nicht direkt helfen, aber mit diesen optionen funzt es einwandfrei (hab es 1:1 aus dem forum) und da hast mit jedem user schreib-/lese-zugriff

in der fstab

```

/dev/hda5          /mnt/Downloads          vfat         auto,rw,umask=000,user     0 0

```

----------

## Vecha

also das mit dem lese-schreib-zugriff werd ich probieren - müsst nur erstmal die platte ungemountet kriegen o_O

meine Mount-Ausgabe übrigens:

```
root@sternchen /data/windows> mount

/dev/hdc5 on / type ext3 (rw,noatime)

none on /dev type devfs (rw)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

none on /dev/pts type devpts (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

none on /dev/shm type tmpfs (rw)

/dev/hdc4 on /data type ext3 (rw)

/dev/hdd1 on /data/windows/C type vfat (rw,uid=1000,gid=35,umask=007)

/dev/hdd6 on /data/windows/E type vfat (rw,uid=1000,gid=35,umask=007)

/dev/hdd5 on /data/windows/D type vfat (rw,uid=1000,gid=35,umask=007)

/dev/hdd8 on /data/windows/G type vfat (rw,uid=1000,gid=35,umask=007)

none on /proc/bus/usb type usbfs (rw)

luna:/usr/portage/distfiles on /usr/portage/distfiles type nfs (rw,timeo=30,addr=192.168.1.2)

luna:/data on /data/luna type nfs (rw,timeo=30,addr=192.168.1.2)

/dev/sr0 on /mnt/cdrw type iso9660 (ro,nosuid,nodev,unhide)

/dev/hdd7 on /data/windows/F type vfat (rw,uid=1000,gid=35,umask=007)

root@sternchen /data/windows> 
```

----------

## equinox0r

tipp:

mit lsof kannst du rauskriegen welcher prozess wo tätig ist.  :Smile: 

ansonsten mit "umount -l /dev/bla"

```
-l     Lazy unmount. Detach the filesystem from the filesystem hierarchy now, and cleanup all  references  to

              the filesystem as soon as it is not busy anymore.  (Requires kernel 2.4.11 or later.)
```

----------

## Vecha

So .. ich hab die fstab nun mal nur für die F-Partition umgeschrieben.

Meine aktuelle Mount-Ausgabe sieht jetzt so aus:

```
root@sternchen /data/windows> mount

/dev/hdc5 on / type ext3 (rw,noatime)

none on /dev type devfs (rw)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

none on /dev/pts type devpts (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

none on /dev/shm type tmpfs (rw)

/dev/hdc4 on /data type ext3 (rw)

none on /proc/bus/usb type usbfs (rw)

luna:/usr/portage/distfiles on /usr/portage/distfiles type nfs (rw,timeo=30,addr=192.168.1.2)

luna:/data on /data/luna type nfs (rw,timeo=30,addr=192.168.1.2)

/dev/sr0 on /mnt/cdrw type iso9660 (ro,nosuid,nodev,unhide)

/dev/hdd7 on /data/windows/F type vfat (rw,noexec,nosuid,nodev,umask=000)

root@sternchen /data/windows>
```

Es hat leider überhaupt nichts gebracht  :Sad: 

wenn ich frisch mounte, funktionierts und dann kaum dass ich irgendwie wieder (mit dem Konqueror) auf der Platte ein Verzeichnis erstellen will, kommt wieder der Fehler und in der Shell danach genauso:

```
root@sternchen /data/windows/F> mkdir test

mkdir: cannot create directory `test': Read-only file system

root@sternchen /data/windows/F> cd ..

root@sternchen /data/windows> umount F/   

umount: /data/windows/F: device is busy

umount: /data/windows/F: device is busy

root@sternchen /data/windows> 
```

*seufz*

----------

## steveb

du hast "user" in den options vergessen!

gruss

steve

----------

## pablo_supertux

Wenn du die FAT Partitionen nicht selber mountest, dann kann der Benutzer auf sie niht schreiben. Also du Benutzer der die FAT Partition benutzen will, (zum Schreiben) muss selber mountieren.

----------

## Vecha

```
/dev/hdc5                       /                               ext3            noatime                                 0 0

/dev/hdc1                       /boot                           ext2            noauto,noatime                          1 2

/dev/hdc2                       none                            swap            sw                                      0 0

/dev/hdb                        /mnt/dvdrom                     iso9660         user,unhide,noauto                      0 0

/dev/sr0                        /mnt/cdrw                       iso9660         user,unhide,defaults,noauto,ro,exec     0 0

/dev/fd0                        /mnt/floppy                     auto            noauto,user                             0 0

none                            /proc                           proc            defaults                                0 0

none                            /proc/sys/fs/binfmt_misc        binfmt_misc     defaults                                0 0

none                            /dev/shm                        tmpfs           defaults                                0 0     

/dev/hdc4                       /data                           ext3            defaults                                0 0

/dev/hdd1                       /data/windows/C                 vfat            rw,uid=1000,gid=35,umask=007            0 0 

/dev/hdd6                       /data/windows/E                 vfat            rw,uid=1000,gid=35,umask=007            0 0

/dev/hdd5                       /data/windows/D                 vfat            rw,uid=1000,gid=35,umask=007            0 0     

/dev/hdd7                       /data/windows/F                 vfat            auto,rw,umask=000,user                  0 0

#/dev/hdd7                      /data/windows/F                 vfat            rw,uid=1000,gid=35,umask=007            0 0

/dev/hdd8                       /data/windows/G                 vfat            rw,uid=1000,gid=35,umask=007            0 0

luna:/data                      /data/luna                      nfs             auto,timeo=30                           0 0

luna:/usr/portage/distfiles     /usr/portage/distfiles          nfs             auto,timeo=30                           0 0
```

So sieht die fstab derzeit aus ... das user steht drin hinter umask=000  :Sad: 

@pablo: ich bin noch ziemlich laie, was genau willst du mir sagen?

Soll ich die Partition jedesmal als User mounten!? geht das!??

das ist aber voll der Act ...

----------

## equinox0r

ich glaub er will sagen, dass der user der auf die platte zugreifen möchte diese auch mounten muss... 

durch die fstab wird eine partition von root gemounted, ich weiss aber nicht ob vfat partitionen sich wirklich daran stören ... *nicht weiter drüber nachdenk*  :Wink: 

----------

## pablo_supertux

Ich hatte früher 3 FAT Partitionen, heute habe ich keine, vielleicht ist es deshalb heute ein bisschen anderes.

Angenommen, ich hab den Benutzer rex

rex will in diese FAT Partition schreiben (d.h. Dateien ändern, löschen, anlegen) und das geht nur, wenn rex selber die Partition mountiert hab. Wenn ich als root diese Partition mountiert hätte, dann kann rex lesen, aber nicht schreiben.

----------

## Vecha

Hmm ..

das ist seltsam, da ich grundsätzlich als root mounte und dann gehts ja ne Weile.

ich hab eher das Gefühl dass das womöglich mit dem Konqueror zusammen hängt, weil ich in ner Shell direkt nach dem mounten auch DIRs erstellen kann.

```
root@sternchen /data/windows> umount F/

root@sternchen /data/windows> mount F/

root@sternchen /data/windows> exit

vecha@sternchen:/data/windows > cd F/

vecha@sternchen:/data/windows/F > mkdir test

vecha@sternchen:/data/windows/F > 
```

Und kaum dass ich mit dem Konqueror auf die F-Platte geh und mein Verzeichnis erstellen will, sagt der halt wieder, dass es net geht ..

Außerdem gings ja bisher auch ohne Probleme, ich hab das mit dem Mounten in der fstab ja schon ne ganze Weile so und die Fehler sind einiges jünger ...

----------

## equinox0r

 *Vecha wrote:*   

> das ist aber voll der Act ...

 

probiers mal damit .. das trägst in deine ~/.profile oder ~/.bashrc ein:

```
mount | grep -q "/dev/hdd7" || mount -t vfat -o auto,rw,umask=000,user /dev/hdd7 /data/windows/F
```

das mountet immer dann wenn in der ausgabe von mount das device nicht gefunden wurde  :Smile: 

----------

## equinox0r

die sache mit der mountoption "user" .. die wird generell nicht angezeigt oder?

----------

## Wildhoney

Mal ein schuss in Blaue, benutzt du einen 2.6.7 Kernel? da ist naemlich vfat broken, einfach kernel upgraden und dann sollte es das gewesen sein mit dem read only access.

Wild

----------

## equinox0r

hm..

ich benutze auch einen 2.6.7er kernel, meine vfat partition macht aber keine mucken ...

ich werd meinen kernel aber vorsichtshalber updaten, @Vecha vielleicht hilfts dir ja  :Smile: 

----------

## redflash

schau mal in /var/log/messages

Ich hatte unterm 2.6.7er kernel das problem, dass er nach kurzer zeit die vfat partition in read-only gewechselt hat weil er fehler im dateisystem gefunden hat.

wenn der 2.6.7er ein vfat fehler hat, dann dürfte es daran liegen. ich habe damals einfach auf ext3 gewechselt.

----------

## moe

Ich hatte gerade auch so ein Problem mit dem 2.6.8-rc3 Kernel, bei mir hat dmesg mir erzählt, dass ich beim Mounten codepage und iocharset angeben muss. Mit

```
mount -t vfat -o rw,codepage=850,iocharset=iso8859-1 /bla /bla
```

 gings dann. Ist das jetzt neu und immer so?

Gruss Maurice

----------

## equinox0r

ich glaub ich hab da was im changelog vom 2.6.8.1er kernel gelesen ... such da mal nach fat oder vfat .. wirst sicher fündig  :Wink: 

----------

## massimo

Du sagst, wenn du in der Shell mountest und dann Verzeichnisse erstellst etc., funktionierts, nur wenn du das via Konqueror machst, nicht? Du hast wahrscheinlich so ein Icon am Desktop, wenn du draufklickst, wird das Gerät eingebunden, ja? Vielleicht hast du in den Optionen zu diesem Icon "Nur lesen" angewählt?

my 2¢

----------

## Vecha

mit dem konqueror hat das nix zu tun - ich hab au keine icons aufm desktop  :Wink:  ..

nein, ich glaub, der fehler liegt tatsächlich an der hardware. ich hab ein fsck.vfat auf die platte gemacht und er hat haufenweise cluster-fehler gefunden, diese dann behoben und dann waren die probleme weg .. naja ne zeitlang zumindest  :Sad: 

das problem taucht weiterhin immer wieder auf, aber nach nem filesystem-check ist's ne weile ruhig.

ich werd jetzt mal die ganzen daten woanders sichern und die platte nochmal platt machen - mal schauen was der dann meint.

danke für die hilfe@all  :Smile: 

----------

