pendrive tylko do odczytu

Tematy związane z oprogramowaniem, instalacją, konfiguracją
ponton
Beginner
Posty: 406
Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw

pendrive tylko do odczytu

Post autor: ponton »

Chciałem sobie zrobić backup danych na pedrive'ie, ale przy konwertowaniu danych na FAT straciłbym prawa dostępów (w szczególności to, które pliki były uruchamialne, a które nie). Sformatowałem pena na ReiserFS, jednak wtedy system montuje mi go (automatycznie po włożeniu) tylko do odczytu (właścielem jest root z grupą root). To samo dzieje się przy każdym innym od FAT systemie plików. Zapisywanie jako root działa, ale chcę móc zapisywać jako użytkownik (a najlepiej chciałbym być jako właściciel zamontowanych danych).

Wiem, że mogę ręcznie zamotnować z odpowiednim parametrem (które pewnie mogę dopisać do fstab), ale to nie wchodzi w grę. Mamy XXI wiek przecież.

Log z dmesg (akurat pen był sformatowany jako ext4):

Kod: Zaznacz cały

[158525.312051] usb 1-4: new high speed USB device using ehci_hcd and address 9
[158525.446855] usb 1-4: New USB device found, idVendor=0951, idProduct=1607
[158525.446864] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[158525.446870] usb 1-4: Product: DataTraveler 2.0
[158525.446875] usb 1-4: Manufacturer: Kingston
[158525.446880] usb 1-4: SerialNumber: 2008012500000000000005FC
[158525.447063] usb 1-4: configuration #1 chosen from 1 choice
[158525.453987] scsi11 : SCSI emulation for USB Mass Storage devices
[158525.454359] usb-storage: device found at 9
[158525.454365] usb-storage: waiting for device to settle before scanning
[158530.452384] usb-storage: device scan complete
[158530.453048] scsi 11:0:0:0: Direct-Access     Kingston DataTraveler 2.0 1.00 PQ: 0 ANSI: 2
[158530.455991] sd 11:0:0:0: [sdb] 7888896 512-byte hardware sectors: (4.03 GB/3.76 GiB)
[158530.456985] sd 11:0:0:0: [sdb] Write Protect is off
[158530.456994] sd 11:0:0:0: [sdb] Mode Sense: 23 00 00 00
[158530.457025] sd 11:0:0:0: [sdb] Assuming drive cache: write through
[158530.459723] sd 11:0:0:0: [sdb] Assuming drive cache: write through
[158530.459731]  sdb: sdb1
[158530.583808] sd 11:0:0:0: [sdb] Attached SCSI removable disk
[158531.169745] EXT4-fs: barriers enabled
[158531.296974] kjournald2 starting: pid 24904, dev sdb1:8, commit interval 5 seconds
[158531.302941] EXT4 FS on sdb1, internal journal on sdb1:8
[158531.302948] EXT4-fs: delayed allocation enabled
[158531.302952] EXT4-fs: file extents enabled
[158531.303540] EXT4-fs: mballoc enabled
[158531.303570] EXT4-fs: recovery complete.
[158531.303577] EXT4-fs: mounted filesystem sdb1 with ordered data mode
A tu log, kiedy jest FAT i wszystko jest dobrze:

Kod: Zaznacz cały

[158730.584072] usb 3-1: new high speed USB device using ehci_hcd and address 6
[158730.718990] usb 3-1: New USB device found, idVendor=0951, idProduct=160f
[158730.718999] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[158730.719005] usb 3-1: Product: DT Mini Slim
[158730.719010] usb 3-1: Manufacturer: Kingston
[158730.719015] usb 3-1: SerialNumber: 0019E06B4A05A94077C003E7
[158730.719200] usb 3-1: configuration #1 chosen from 1 choice
[158730.720734] scsi12 : SCSI emulation for USB Mass Storage devices
[158730.721230] usb-storage: device found at 6
[158730.721235] usb-storage: waiting for device to settle before scanning
[158735.720442] usb-storage: device scan complete
[158735.721145] scsi 12:0:0:0: Direct-Access     Kingston DT Mini Slim     1.00 PQ: 0 ANSI: 2
[158735.724338] sd 12:0:0:0: [sdc] 3926016 512-byte hardware sectors: (2.01 GB/1.87 GiB)
[158735.725031] sd 12:0:0:0: [sdc] Write Protect is off
[158735.725041] sd 12:0:0:0: [sdc] Mode Sense: 23 00 00 00
[158735.725048] sd 12:0:0:0: [sdc] Assuming drive cache: write through
[158735.727635] sd 12:0:0:0: [sdc] Assuming drive cache: write through
[158735.727649]  sdc: sdc1
[158736.123616] sd 12:0:0:0: [sdc] Attached SCSI removable disk
[158736.868214] FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

ponton
Beginner
Posty: 406
Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw

Post autor: ponton »

Czytałem już dużo i nadal nie działa. To rozwiązanie z pierwszego linku powoduje, że pendrive nie montuje się w ogóle.

Podejrzewam, że może to być problem GNOME. W gconfie jest klucz /system/storage/default_options/, który ma różne systemy plików. Próbowałem ręcznie tam dodać reiserfs, ale wtedy przy pena jest błąd "Nieprawidłowe opcje montowania" (a są dokładnie takie same jak w innych).
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

ponton, przejrzyj cały temat z podanego odnośnika. Szczególnie teksty, które napisał szmergiell.
ponton
Beginner
Posty: 406
Rejestracja: 24 stycznia 2007, 01:40
Lokalizacja: Kalisz/Wroc³aw

Post autor: ponton »

Opcje montowania są w gconfie, w kluczu /system/storage/default_options/fs/mount_options, gdzie fs to system plików. Dodałem tam reiserfs i ustawiłem opcje montowania "uid=". Jestem na 90% pewien, że tak ma być. Jednak montowanie (automagiczne w Nautilusie) zwraca błąd "Błędna opcja montowania".

Pogooglałem i znalazłem przynajmniej komendę, która zwraca jakiś debug:

Kod: Zaznacz cały

% gnome-mount -vtd /dev/sdb1  
gnome-mount 0.8
** (gnome-mount:1115): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_1d07a82c_54b4_45dc_be36_0ffb8660d658
** (gnome-mount:1115): DEBUG: read default option 'uid=' from gconf strlist key /system/storage/default_options/reiserfs/mount_options
** (gnome-mount:1115): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_1d07a82c_54b4_45dc_be36_0ffb8660d658 with mount_point='backup', fstype='', num_options=1
** (gnome-mount:1115): DEBUG:   option='uid=1000'
** Message: Mount failed for /org/freedesktop/Hal/devices/volume_uuid_1d07a82c_54b4_45dc_be36_0ffb8660d658
org.freedesktop.Hal.Device.Volume.InvalidMountOption : The option 'uid=1000' is not allowed for uid=1000
Z roota ładnie się montuje:

Kod: Zaznacz cały

% sudo gnome-mount -vtd /dev/sdb1
gnome-mount 0.8
** (gnome-mount:1129): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_1d07a82c_54b4_45dc_be36_0ffb8660d658
** (gnome-mount:1129): DEBUG: Mounting /org/freedesktop/Hal/devices/volume_uuid_1d07a82c_54b4_45dc_be36_0ffb8660d658 with mount_point='backup', fstype='', num_options=0
Zamontowano /dev/sdb1 jako "/media/backup"
Więc to chyba wina jakiś praw dostępu -- zapewne PolicyKit. To na razie tyle, co udało mi się osiągnąć. Zabieram się za prześwietlanie PolicyKit.

EDIT: Dziwne, bo z roota mam takie coś:

Kod: Zaznacz cały

org.freedesktop.Hal.Device.Volume.InvalidMountOption : The option 'uid=1000' is not allowed for uid=0


[ Dodano: 2009-07-31, 19:40 ]
Może to głupio zabrzmi, ale zadziałała zmiana właściciela (chown) i od teraz montuje z właścicielem jako ja (nawet pod innym użytkownikiem). Zastanawiam się, jak to działa. Czy na innym komputerze się zamontuje jako root czy jako jakiś użytkownik (z tym samym UID co ja)?
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

ponton pisze:Czy na innym komputerze się zamontuje jako root czy jako jakiś użytkownik (z tym samym UID co ja)?
Sprawdź, korzystając z jakiejś dystrybucji livecd.
Awatar użytkownika
michnik
Beginner
Posty: 162
Rejestracja: 20 lipca 2009, 12:54
Lokalizacja: Kraków

Post autor: michnik »

A nie prościej potraktować kopię TAR-em z zachowaniem praw dostępu do plików?
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

michnik, to nie jest kwestia wykonania kopii, tylko sam fakt montowania urządzenia przenośnego w sposób uniwersalny.
ODPOWIEDZ