# [gelöst] Usb-Laufwerk nicht beschreibbar für user

## uhai

Ich habe folgendes Problem:

Auf einem externen USB_Laufwerk habe ich meine Digi-Bilder und die Datenbank von Digikam. Über udev wird das Laufwerk als /dev/Fotos angelegt und in /home/uhai/Fotos gemountet. Beim Start von Digikam versucht digikam immer die Datenbank Einträge zu korrigieren. Die Einträge sind mangels Rechten allerdings nicht änderbar. Der Download de rBilder von den Kameras funktioniert allerdings. Die neuen Bilder werden in Digikam nicht angezeigt, in Konqueror schon. Anscheinend kann ich die SQlite-DB von Digikam nicht aktualisieren, da meine Rechte als user nicht ausreichen.

Als user ist 1004 und als group users nach dem mounten angegeben. Als uid gibt es 1004 nicht, bei den groups ist es scanners.

Das ist mein Eintrag in den udev.rules:

```

BUS=="usb", ATTRS{serial}=="57442D5743414D5234303237313834", NAME="Fotos", SYMLINK="/home/uhai/Fotos", OWNER="uhai", GROUP="users", Mode="0640"
```

Einen Eintrag in fstab habe ich nicht, ein chown funktioniert auch nicht.

Was habe  ich denn versemmelt? Wie bekomme ich nach dem mounten meinen User als owner für /dev/Fotos?

uhaiLast edited by uhai on Wed Nov 07, 2007 8:21 pm; edited 1 time in total

----------

## SvenFischer

Standardmäßig macht Gentoo das über die plugdev Gruppe, bist Du dort Mitglied?

----------

## uhai

ja, da bin ich dabei.   :Confused: 

----------

## SvenFischer

Also bei mir gibt es ohne das nutzen einer eigenen UDEV Regel das Laufwerk standardmäßig in /media/*. Beobachte doch mal mit dem Befehl "udevmonitor" was passiert, wenn Du das Gerät anschließt. Evtl. machst Du einen Link im /home auf /media?! Bist Du auch in der Gruppe USB? Zeig mal Deinen Gruppen.

----------

## Genone

udev ist neurdings auch noch fürs mounten von Dateisystem verantwortlich?!?

----------

## musv

Soweit ich das mal verstanden hab, könnte man udev theoretisch dafür mißbrauchen.

http://reactivated.net/writing_udev_rules.html#external-run

Das externe Programm wäre dann in dem Fall ein Script, wo der mount-Befehl drinsteht.

----------

## uhai

@SvenFischer:

Das zeigt mir udevmonitor:

```
UEVENT[1194299200.034181] add      /devices/pci0000:00/0000:00:03.3/usb1/1-1/1-1.3/1-1.3:1.0/host3/target3:0:0/3:0:0:0 (scsi)

UEVENT[1194299200.034432] add      /class/scsi_disk/3:0:0:0 (scsi_disk)

UEVENT[1194299200.054066] add      /block/sdf (block)

UEVENT[1194299200.054153] add      /block/sdf/sdf1 (block)

UEVENT[1194299200.054170] add      /class/scsi_device/3:0:0:0 (scsi_device)

UDEV  [1194299200.129940] add      /devices/pci0000:00/0000:00:03.3/usb1/1-1/1-1.3/1-1.3:1.0/host3/target3:0:0/3:0:0:0 (scsi)

UDEV  [1194299200.135535] add      /class/scsi_disk/3:0:0:0 (scsi_disk)

UDEV  [1194299200.267734] add      /class/scsi_device/3:0:0:0 (scsi_device)

UDEV  [1194299200.287452] add      /block/sdf (block)

UDEV  [1194299200.351045] add      /block/sdf/sdf1 (block)

  
```

Unter media wird da wohl nichts angelegt. Ist das normal, dass udevmonitor auch andere devices listet (video4linux, Epson scanner & Drucker) wenn man das Laufwerk einsteckt?

Das sind meine Gruppen:

```
Gruppen=10(wheel),11(floppy),14(uucp),18(audio),19(cdrom),27(video),35(games),85(usb),100(users),250(portage),1000(uhai),1003(plugdev)

```

Fehlt da was?

@ musv und Genone:

Ich hatte auch schon einen fstab-Eintrag, das hat aber auch nicht funktioniert. Das war der fstab-Eintrag:

```
# /dev/Fotos            /home/uhai/Fotos        ext3    rw,users,defaults       0 2
```

Mit Eintrag in fstab ist 1004 der Besitzer des Laufwerks. Ohne ist das Laufwerk nicht gemountet. Mountet root das Laufwerk mit:

```
mount /dev/Fotos /home/uhai/Fotos
```

sind die Rechte und Probleme die gleichen wie oben beschrieben.

Ein Script habe ich nicht verwendet, das schien mir zu kompliziert.

----------

## musv

 *uhai wrote:*   

>  Das war der fstab-Eintrag:
> 
> ```
> # /dev/Fotos            /home/uhai/Fotos        ext3    rw,users,defaults       0 2
> ```
> ...

 

Das Script zum Mounten solltest du auch nicht verwenden. Ich wollte damit nur die Möglichkeit aufzeigen, daß man es über udev machen kann. Eine schöne Variante ist das aber nicht. 

Du hast ext3 als Dateisystem auf dem USB-Laufwerk. Ext3 speichert die Benutzer-ID, es ist also nicht nötig (möglich) die UID zu setzen wie unter FAT und NTFS, sondern sollte per default mit der richtigen UID / den richtigen Rechten funktionieren. Ich tippe mal stark darauf, daß du das Laufwerk auf einem anderen Rechner angelegt hast. Das würde zumindest die nichtvorhandene UID + Gruppe Scanner erklären. 

Lange Rede kurzer Sinn: 

Nimm "Owner" und "Group" aus der Udev-Regel raus. Mounte das Ding als root und versuch mit chown den Benutzer zu ändern. Wenn du als root eingeloggt bist, kann es eigentlich nicht sein, daß du den Benutzer und die Gruppe nicht ändern kannst.

----------

## uhai

ok, das habe ich.

Dan start in der Konsole mit "strace digikam" gibt folgendes: 

```
time(NULL)                              = 1194387312

stat64("/home/uhai/Fotos/2006/2006-01-03", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0

select(13, [12], NULL, NULL, {0, 0})    = 0 (Timeout)

gettimeofday({1194387312, 339092}, NULL) = 0

write(12, "*\0\1\0r\1\2\0 \0/home/uhai/Fotos/2006/"..., 42            
```

Da bleibt es dann stehen und digiksm startet nicht   :Crying or Very sad: 

uhai

----------

## firefly

 *uhai wrote:*   

> 
> 
> ```
> 
> BUS=="usb", ATTRS{serial}=="57442D5743414D5234303237313834", NAME="Fotos", SYMLINK="/home/uhai/Fotos", OWNER="uhai", GROUP="users", Mode="0640"
> ...

 

Wiso erstellst du ein symlink mit dem namen /home/uhai/Fotos auf das device /dev/Fotos (wird über die NAME="" geregelt) ?

Und zum anderen wird überhaupt das device /dev/Fotos angelegt und wie sehen die Rechte davon aus?

----------

## uhai

/dev/Fotos wird erstellt, seit dem chown mit user uhai, group users

Das mit dem Symlink habe ich (ohne nachzudenken   :Embarassed: ) übernommen...

Ist wohl nicht nötig. /dev/Fotos wird über fstab in /home/uhai/Fotos gemounted. Den Symlink nehme  ich heute abend raus und probiere es nochmal.

uhai

Ergänzung am Abend:

Digikam startet beim Start von KDE ohne Probleme mit - jetzt scheint es zu laufen.

Den Symlink habe ich zwischenzeitlich auch gelöscht, aber erst nach dem Start von Digikam.

Danke an alle für die Hilfe  :Razz: 

uhai

----------

